One-hot-encoding, o que é?

Arthur Lamblet Vaz
Jun 15, 2018 · 2 min read

Parece ser algo difícil né, mas é o oposto disso! Um termo bastante usado em data science principalmente para quem costuma tratar muitos os dados: One-Hot-Encoding.

Alguns algoritmos conseguem trabalhar diretamente com variáveis categóricas, maioria dos casos dos modelos de árvore de decisão por exemplo. Entretanto, em sua maioria, os modelos necessitam que sejam transformados em valor. E para isso, devemos nos atentar em duas etapas basicamente: Integer Encoding e One-Hot Encoding.

Cada categoria deverá ser renomeada por um número, exemplo de um modelo para Banco. Precisa classificar entre cliente muito bom, bom, ruim e muito ruim. Logo, terá 4 números (1, 2, 3 e 4), essa transformação é chamada de label encoding ou um integer encoding.

Contudo, usando label enconding pode resultar uma performance ruim em seu modelo. Nesses casos, devemos one-hot-encoding que significa em transformá-las em variáveis(colunas) e binárias.

Segue um exemplo com o script disponível para o R.

Segue um exemplo de uma tabela bem simples. Como pode observar existe duas colunas categoricas.

Aplicamos o label encoding, onde as duas colunas transformaram em números: coluna Color: Green = 1; Red = 2; Blue = 3 e na coluna Shape: Square = 1; Triangle = 2; Circle = 3.

Aplicando one-hot-encoding, as categorias se transformaram em colunas (variáveis) onde o número 1 representa o valor afirmativo e o 0 negativo.

Bem simples né? Agora quando alguém usar esse termo já sabe o que se trata!

Arthur Lamblet Vaz

Written by

Surfista, natureba e engenheiro de Produção com ênfase em Data Science🌱🌍♻️

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade