Pular para o conteúdo principal

Visão geral de metodologias de codificação

Neste tutorial, você vai conhecer técnicas de codificação e ver referências avançadas que ajudam a trabalhar com variáveis categóricas.
Atualizado 17 de set. de 2026  · 5 min lido

Explorar com IA

ChatGPTClaudePerplexity
pencils graphic

"Em muitas atividades práticas de ciência de dados, o conjunto de dados terá variáveis categóricas. Essas variáveis geralmente são armazenadas como valores de texto". (Practical Business Python) Como o aprendizado de máquina se baseia em equações matemáticas, manter variáveis categóricas como texto pode causar problemas. Muitos algoritmos aceitam valores categóricos sem grandes ajustes, mas mesmo nesses casos costuma haver discussão sobre codificar ou não as variáveis. Já os algoritmos que não suportam valores categóricos exigem metodologias de codificação. Vamos explorar alguns métodos.

Metodologias de codificação

Label encoding

No label encoding, mapeamos cada categoria para um número ou rótulo. Os rótulos escolhidos para as categorias não têm relação entre si. Assim, categorias que possuem alguma proximidade entre elas perdem essa informação após a codificação.

Frequency encoding

Nesse caso, usamos a frequência das categorias como rótulos. Quando a frequência tem alguma correlação com a variável alvo, isso ajuda o modelo a entender e atribuir pesos em proporção direta ou inversa, dependendo da natureza dos dados.

One-hot encoding

Nesse método, mapeamos cada categoria para um vetor que contém 1 e 0 indicando a presença ou ausência da característica. O número de vetores depende das categorias que queremos manter. Para variáveis de alta cardinalidade, esse método gera muitas colunas e pode desacelerar bastante o aprendizado. Existe um debate entre one-hot encoding e dummy encoding e quando usar cada um. Eles são bem parecidos, mas o one-hot gera um número de colunas igual ao de categorias, enquanto o dummy gera uma a menos. No fim, cabe à pessoa que modela decidir isso durante a validação.

Armadilha da variável dummy:

Imagine que você tenha duas categorias em uma variável categórica. Após aplicar one-hot encoding, haverá duas colunas representando a variável, mas, olhando de perto, apenas um vetor já é suficiente para representar ambos os valores. Por exemplo, uma variável categórica com os valores "red" e "blue". Depois do one-hot, dois vetores são formados: um indicando "red" e outro "blue". Porém, a informação pode ser aprendida usando apenas um vetor, e o outro será redundante. Podemos então remover um vetor, reduzindo a quantidade de dados com que os algoritmos precisam ser treinados. Isso ajuda o modelo a performar melhor e facilita a explicação do funcionamento do modelo. Em cenários reais, lidamos com muitas variáveis categóricas, às vezes já conhecendo parte delas pelos resultados. As práticas de codificação ajudam a tratar a entrada de dados, mas também podem tornar o processo e o aprendizado mais pesados.

Target, Impact ou Likelihood encoding

Target encoding é parecido com label encoding, mas aqui os rótulos são correlacionados diretamente com a variável alvo. Por exemplo, no mean target encoding, para cada categoria da variável, o rótulo é definido pela média do alvo nos dados de treino. Esse método evidencia a relação entre categorias semelhantes, porém essas relações ficam limitadas às categorias e ao próprio alvo. As vantagens do mean target encoding são não alterar o volume de dados e acelerar o aprendizado; a desvantagem é ser mais difícil de validar. Regularização é necessária na implementação desse tipo de codificação. Veja o target encoder em python e em R.

Estatísticas de codificação

A variabilidade da codificação descreve a variação da codificação dentro de uma mesma categoria. No caso do one-hot encoding, a variabilidade depende do momento da implementação, quando se decide o número de categorias a manter com impacto suficiente no alvo. Outras metodologias de codificação também apresentam variabilidade significativa, geralmente identificada na etapa de validação.

Para calcular a distinguibilidade da codificação, contamos os rótulos das categorias e então calculamos o desvio padrão desses rótulos. Isso indica o quanto as categorias codificadas são distinguíveis — se estão bem separadas ou agrupadas.

Lembre-se: se você optar por um estilo de codificação simples ao construir um modelo, ele tende a ficar enviesado. Para entender melhor, confira esta discussão. Além disso, para cada tipo de modelo, ajuste sua metodologia de codificação: para regressão, por exemplo, você pode usar mean target encoding; para classificação, vale considerar relative frequency encoding.

Por fim, compartilho um transformer no estilo scikit-learn que ajuda a codificar variáveis categóricas com diferentes técnicas.

category_encoders

Esta biblioteca compatível com scikit-learn oferece as seguintes técnicas já implementadas:

  • Ordinal
  • One-Hot
  • Binary
  • Helmert Contrast
  • Sum Contrast
  • Polynomial Contrast
  • Backward Difference Contrast
  • Hashing
  • BaseN
  • LeaveOneOut
  • Target Encoding

Ela aceita dataframes do pandas como entrada e pode transformar os dados. Também é compatível com pipelines do sklearn; para detalhes, visite aqui.

Se quiser aprender mais sobre scikit-learn, faça o curso Supervised Learning with scikit-learn da DataCamp.

Tópicos
Aprendizado de máquina

Saiba mais sobre machine learning

Curso

Entendendo Machine Learning

2 h
308.6K
Uma introdução ao aprendizado de máquina sem programação.
Ver detalhesRight Arrow
Iniciar Curso
Ver maisRight Arrow
Relacionado
Machine Learning

blog

33 projetos de machine learning para todos os níveis em 2026

Projetos de machine learning para iniciantes, estudantes do último ano e profissionais. A lista tem projetos guiados, tutoriais e exemplos de código-fonte.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Tutorial

Tutorial de manipulação de dados categóricos de aprendizado de máquina com Python

Aprenda os truques comuns para lidar com dados categóricos e pré-processá-los para criar modelos de aprendizado de máquina!
Moez Ali's photo

Moez Ali

14 min

Tutorial

O que é modelagem de tópicos? Uma introdução com exemplos

Obtenha insights de dados não estruturados com modelagem de tópicos. Explore os principais conceitos, técnicas como LSA e LDA, exemplos práticos e muito mais.
Kurtis Pykes 's photo

Kurtis Pykes

13 min

Tutorial

Vendo como uma máquina: Guia para iniciantes em análise de imagens em aprendizado de máquina

Descubra como os computadores "veem" e interpretam imagens, as técnicas usadas para manipular imagens e como o aprendizado de máquina mudou o jogo.
Amberle McKee's photo

Amberle McKee

15 min

Tutorial

Tutorial de visão geral do banco de dados SQL

Neste tutorial, você aprenderá sobre bancos de dados em SQL.
DataCamp Team's photo

DataCamp Team

3 min

Tutorial

Autoencodificadores variacionais: Como eles funcionam e por que são importantes

Aprenda os princípios básicos, as aplicações e os benefícios práticos dos autoencodificadores variacionais e acompanhe uma implementação passo a passo com o PyTorch.
Kurtis Pykes 's photo

Kurtis Pykes

14 min

Ver MaisVer Mais