Eu tenho um conjunto de dados com principalmente variáveis financeiras (120 recursos, exemplos de 4k) que são altamente correlacionadas e muito barulhentas (indicadores técnicos, por exemplo), então eu gostaria de selecionar cerca de 20-30 máx. Para uso posterior no treinamento de modelo (classificação binária - aumentar diminuir).
Eu estava pensando em usar florestas aleatórias para a classificação de recursos. É uma boa ideia usá-los recursivamente? Por exemplo, digamos que na primeira rodada eu diminua os piores 20%, a segunda também e assim por diante até obter o número desejado de recursos. Devo usar validação cruzada com RF? (É intuitivo para mim não usar o CV, porque isso é praticamente o que a RF já faz.)
Além disso, se eu for com florestas aleatórias, devo usá-las como classificadores para o binário ou regressor para o aumento / diminuição real para obter importâncias de recursos?
A propósito, os modelos que eu gostaria de experimentar após a seleção de recursos são: SVM, redes neurais, regressões ponderadas localmente e floresta aleatória. Estou trabalhando principalmente em Python.
built-in
atributo RandomForestClassifier em sklearn
chamado feature_importances_
....? Você o verá no link.