Guia Definitivo Para o Tratamento de Valores Ausentes em Data Science – Estratégias Avançadas

Este guia definitivo foi elaborado para ser seu recurso completo sobre o tratamento de valores ausentes. Iremos além das soluções rápidas e mergulharemos fundo na teoria estatística que governa a ausência de dados. Em seguida, traduziremos essa teoria em estratégias práticas. Ao final deste guia, você estará equipado não apenas para aplicar técnicas de tratamento, mas para justificar suas escolhas, compreendendo os trade-offs e tomando decisões informadas que fortalecem a robustez e a confiabilidade de seus projetos. Por ser uma guia realmente definitivo dividimos o guia em 6 partes. E se precisar de ajuda para aplicar a teoria em projetos práticos orientados às necessidades do mercado de trabalho, recomendamos a Formação Cientista de Dados 4.0 ou a Formação Analista de Dados 4.0.
Aproveite este incrível guia agora com a Parte 4. A Parte 3 você encontra aqui.
Enquanto a imputação univariada (que vimos na Parte 3 deste guia) “preenche” os dados, a imputação multivariada tenta “prever” os valores ausentes de forma mais inteligente, utilizando as relações entre as variáveis. Esta abordagem é fundamentalmente mais robusta, especialmente em cenários MAR. Mas, como a imputação multivariada é mais avançada, ela também pode trazer um pouco mais de complexidade em muitos casos. Vejamos as principais técnicas nessa categoria.
Imputação Por K-Nearest Neighbors (KNN)
Como Funciona: O KNNImputer opera com uma lógica intuitiva: “você é parecido com seus vizinhos”. Para uma linha com um valor ausente em uma determinada coluna, o algoritmo identifica as ‘k’ linhas mais similares (os “vizinhos mais próximos”) com base nos valores das outras colunas (features). A similaridade é tipicamente medida pela distância euclidiana. O valor ausente é então preenchido com a média (ou outra medida de agregação) dos valores daquela mesma coluna nos ‘k’ vizinhos encontrados.
Vantagens:
- Preserva Relações: Ao contrário da imputação simples, o KNN utiliza as correlações entre as variáveis, resultando em imputações mais plausíveis e que preservam a estrutura dos dados.
- Flexibilidade: Pode capturar relações complexas e não-lineares entre as variáveis que uma imputação por regressão linear simples poderia perder.
Desvantagens:
- Custo Computacional: A necessidade de calcular distâncias para encontrar os vizinhos mais próximos torna o KNN computacionalmente intensivo, especialmente em datasets com muitas linhas e colunas.
- Sensibilidade à Escala: Como se baseia em métricas de distância, o KNNImputer é altamente sensível à escala das features. Variáveis com escalas maiores (ex: salário) dominarão o cálculo da distância em detrimento de variáveis com escalas menores (ex: idade). É importante normalizar ou padronizar os dados antes de aplicar o KNN.
- Sensibilidade a Outliers: A presença de outliers pode distorcer o cálculo da média dos vizinhos, levando a imputações pobres.
- Escolha de k: A performance depende da escolha do hiperparâmetro k (o número de vizinhos), que pode exigir ajuste.
Imputação Iterativa com MICE (IterativeImputer)
A Imputação Múltipla por Equações Encadeadas (MICE, do inglês Multivariate Imputation by Chained Equations) é amplamente considerada uma das abordagens mais sofisticadas e eficazes para a imputação de dados ausentes. No Scikit-learn, ela é implementada pela classe IterativeImputer.
Como Funciona: O processo é mais complexo, mas pode ser entendido como uma série de modelos de regressão que se refinam mutuamente:
- Inicialização: O processo começa com uma imputação simples para todos os valores ausentes no dataset (ex: preenchimento com a média).
- Ciclo Iterativo: O algoritmo seleciona uma coluna que continha valores ausentes e a trata como a variável alvo (y). Todas as outras colunas são usadas como variáveis preditoras (X).
- Modelagem: Um modelo de regressão (o estimator, por padrão BayesianRidge no Scikit-learn) é treinado para prever y a partir de X, usando apenas as linhas onde y era originalmente conhecida.
- Predição e Atualização: O modelo treinado é então usado para prever os valores ausentes em y. Esses valores imputados substituem as estimativas iniciais.
- Repetição: O processo é repetido para a próxima coluna com valores ausentes, que agora se torna a nova y. É importante notar que, ao prever para esta nova coluna, as colunas já imputadas na mesma iteração são usadas como preditores com seus valores atualizados.
- Convergência: Este ciclo completo através de todas as colunas é repetido por um número definido de iterações (max_iter). A cada iteração, as estimativas dos valores ausentes são refinadas, pois são baseadas em previsões cada vez melhores das outras colunas. O processo para quando as imputações se estabilizam ou o número máximo de iterações é atingido.
Vantagens:
- Robustez e Precisão: Ao modelar cada variável em função de todas as outras, o MICE captura a estrutura de correlação multivariada dos dados, preservando a variância e as relações de forma muito mais eficaz do que outros métodos.
- Flexibilidade: Permite o uso de diferentes tipos de modelos de regressão como estimadores. Para relações não-lineares, pode-se usar um DecisionTreeRegressor ou RandomForestRegressor, por exemplo.
- Redução de Viés: É particularmente eficaz em cenários MAR, pois utiliza explicitamente as variáveis observadas para informar a imputação, reduzindo o viés.
Desvantagens:
- Custo Computacional: A natureza iterativa e a necessidade de treinar múltiplos modelos tornam o IterativeImputer significativamente mais lento e computacionalmente mais caro do que outras técnicas.
- Complexidade: Requer mais configuração e compreensão dos parâmetros (estimator, max_iter, etc.) para um uso eficaz.
- Suposição MAR: Assim como o KNN, sua validade teórica repousa na suposição de que os dados são MAR.
Seguiremos com o guia na Parte 5.
Equipe DSA
Referências:
Business Analytics e Machine Learning Para Projetos de Data Science
[…] Parte 4 traremos as estratégias […]