Os conjuntos de dados desequilibrados são comuns em muitas aplicações do mundo real, como detecção de fraudes, diagnóstico médico e detecção de anomalias. Abordar o desequilíbrio é crucial para a construção de modelos de aprendizado de máquina eficazes. Este artigo explora técnicas práticas apoiadas por princípios matemáticos para lidar com dados desequilibrados de forma eficaz.

Compreender o desequilíbrio dos dados

O desequilíbrio de dados ocorre quando o número de instâncias em uma classe excede significativamente as de outra. Este desequilíbrio pode influenciar modelos em relação à classe majoritária, reduzindo sua capacidade de detectar instâncias de classe minoritária. Matematicamente, se N é o número total de amostras e N[minoridade[ é o número de amostras de classe minoritária, a razão de desequilíbrio é IR = Nminoridade[.

Técnicas de tratamento do desequilíbrio

Várias técnicas podem atenuar os efeitos do desequilíbrio de dados, que podem ser amplamente categorizados em abordagens de nível de dados e nível de algoritmo.

Métodos de Nível de Dados

  • Excedente: Aumentar amostras de classe minoritária, muitas vezes usando métodos como o SMOTE, que gera pontos de dados sintéticos baseados em amostras minoritárias existentes.
  • Subsampling: Reduzindo amostras de classe majoritária para equilibrar o conjunto de dados, que pode arriscar perder informações valiosas.
  • Abordagens híbridas: Combinando sobreamostragem e subamostragem para otimizar o equilíbrio de dados.

Métodos de Nível de Algoritmo

  • Aprendizagem sensível ao custo:Atribuir custos de classificação incorreta mais elevados a erros de classe minoritários para influenciar o foco do modelo.
  • Ensemble methods:] Usando técnicas como o impulso para melhorar a detecção de classe minoritária.
  • Ajustando limiares de decisão: Modificando o ponto de corte de probabilidade para favorecer previsões de classe minoritária.

Fundações Matemáticas

Muitas técnicas são baseadas em conceitos estatísticos e matemáticos. Por exemplo, SMOTE cria amostras sintéticas interpolando entre pontos de classe minoritária:

xnew = xi + lambda (xj - x]i]]

onde xi e xj[[] são amostras de classe minoritária, e lambda[] é um número aleatório entre 0 e 1. Esta abordagem garante que os dados sintéticos se encontram dentro do espaço de características da classe minoritária, mantendo a integridade da distribuição de dados.