1
resposta

[Dúvida] Oversampling

Olá, me surgiu uma dúvida lendo isso de oversampling. No momento estou fuçando em um dataset do kaggle de classificação e verifiquei que tem esse detalhe de desbalanceamento, minha dúvida está mais em questão de boas práticas na hora de lidar com esse tipo de situação, voces acham melhor eu fazer o balanceamento aplicando o que foi mostrado no artigo antes de encontrar as melhores features utilzando como exemplo esse tipo de biblioteca: from sklearn.feature_selection import SelectKBest, chi2, minha dúvida é se afetaria na hora da seleçao de features esse balanceamento

1 resposta

Oi, Gediel, tudo bem?

Desculpe a demora em te responder!

Lidar com desbalanceamento de classes é uma preocupação importante ao trabalhar com problemas de classificação, e você está certo em considerar boas práticas para lidar com isso. A escolha de equilibrar ou não as classes antes de aplicar métodos de seleção de recursos, como o SelectKBest, pode depender da natureza do problema e de suas preferências. Algumas abordagens estão abaixo:

  • Balanceamento antes da seleção de recursos: primeiro, você pode equilibrar as classes usando técnicas de oversampling (aumentando o número de instâncias da classe minoritária) ou undersampling (diminuindo o número de instâncias da classe majoritária). Isso pode ajudar a evitar que o modelo seja tendencioso em direção à classe majoritária. Após o balanceamento, você pode aplicar técnicas de seleção de recursos, como SelectKBest ou outras, para identificar as melhores características do conjunto de dados equilibrado.

  • Seleção de recursos antes do balanceamento: outra abordagem é realizar a seleção de recursos antes de equilibrar as classes. Isso pode ser benéfico se você deseja reduzir a dimensionalidade do conjunto de dados antes de aplicar técnicas de balanceamento, o que pode economizar tempo de computação. No entanto, observe que a seleção de recursos em um conjunto de dados desbalanceado pode levar a resultados nçao tão bons, uma vez que o modelo pode ser influenciado pelas classes majoritárias.

  • Balanceamento e seleção de recursos iterativos: uma abordagem mais avançada é realizar o balanceamento e a seleção de recursos de forma iterativa. Você pode começar com um conjunto de dados desbalanceado, realizar a seleção de recursos e, em seguida, balancear as classes. Em seguida, você pode repetir esse processo várias vezes, ajustando o conjunto de recursos a cada iteração até obter um modelo satisfatório.

A escolha entre essas abordagens depende de vários fatores, como o tamanho do conjunto de dados, a disponibilidade de recursos computacionais e a importância relativa das características. Experimente diferentes estratégias e avalie o desempenho do modelo usando validação cruzada ou outras métricas apropriadas para o seu problema.

Lembre-se de que, ao realizar oversampling ou undersampling, é importante fazê-lo apenas no conjunto de treinamento, não no conjunto de teste, para evitar vazamento de informações.

Espero ter ajudado. Caso tenha dúvidas, não hesite em postar no fórum!

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!