Classificação com um preditor dominante

9

Eu tenho um problema de classificação ( classe ), da ordem de 100 preditores de valor real, um dos quais parece ter muito mais poder explicativo do que qualquer outro. Eu gostaria de me aprofundar nos efeitos das outras variáveis. No entanto, as técnicas padrão de aprendizado de máquina (florestas aleatórias, SVMs etc.) parecem ter sido inundadas por um forte preditor e não me dão muita informação interessante sobre os outros.k

Se esse fosse um problema de regressão, eu simplesmente regressaria contra o forte preditor e usaria os resíduos como entradas para outros algoritmos. Eu realmente não vejo como essa abordagem pode ser traduzida para um contexto de classificação.

Meu instinto é que esse problema deve ser razoavelmente comum: existe uma técnica padrão para lidar com ele?

Martin O'Leary
fonte

Respostas:

2

Para problemas de 2 classes, você pode usar o pacote GBM em R , que ajustará iterativamente as árvores de classificação aos resíduos da função de perda. Infelizmente, ainda não suporta problemas com várias classes.

Parece um problema adequado para impulsionar, mas não conheço nenhum pacote de impulsionador que suporte problemas de classe k. Eu acho que o problema está escrevendo uma função de perda apropriada para as várias classes. Os glmnetpacotes possuem uma função de perda multinomial; talvez você possa procurar no seu código-fonte alguns indicadores.

Você pode tentar escrever seu próprio algoritmo de aumento ou transformar seu problema em k problemas de classificação binária (uma classe versus todas as outras classes), ajustar um modelo gbm a cada problema e calcular a média das probabilidades de classe de cada modelo.

Zach
fonte
2
Zach Não tem certeza de onde está na estabilidade do desenvolvimento, mas o GBM no R Forge tem a logística multinomial como uma função de perda, permitindo a classificação de várias categorias.
B_Miner
Obrigado! Concordo que o aumento provavelmente será uma boa maneira de abordar isso, e analisarei as coisas que você sugeriu. Ainda estou interessado em saber se existe uma boa maneira de resolver isso, transformando o problema.
Martin O'Leary
@ Zach Por favor, deixe-me saber como isso funciona.
22412 B_Miner