Faz sentido usar a seleção de recursos antes da Floresta Aleatória?

Respostas:

6

Sim, é e é bastante comum. Se você espera que mais de 50% dos seus recursos nem sejam redundantes, mas totalmente inúteis. Por exemplo, o pacote randomForest possui a função wrapper rfcv () que pré-treina um randomForest e omite as variáveis ​​menos importantes. função rfcv consulte este capítulo . Lembre-se de incorporar a seleção de recursos + modelagem em um loop externo de validação cruzada para evitar resultados otimistas demais.

[editar abaixo]

Eu poderia moderar "totalmente inútil". Uma única floresta aleatória geralmente não é, por exemplo, regressão com regularização do laço ignorando completamente os recursos, mesmo que estes (em retrospectiva simulada) fossem recursos aleatórios. As divisões da árvore de decisão por recursos são escolhidas por critérios locais em qualquer um dos milhares ou milhões de nós e não podem ser desfeitas posteriormente. Não defendo que os recursos sejam reduzidos a uma seleção superior, mas para alguns conjuntos de dados é possível obter um aumento substancial no desempenho da previsão (estimado por uma validação cruzada externa repetida ) usando essa seleção de variável. Uma descoberta típica seria que manter 100% dos recursos ou apenas alguns por cento funcionar menos bem e, em seguida, pode haver uma ampla faixa intermediária com desempenho de previsão estimado semelhante.

Talvez uma regra geral razoável: quando se espera que a regularização semelhante a um laço sirva melhor do que uma regularização semelhante a uma cordilheira para um determinado problema, pode-se tentar pré-treinar uma floresta aleatória e classificar os recursos pelo interior da mochila importância variável validada cruzada e tente descartar alguns dos recursos menos importantes . A importância variável quantifica quanto a previsão do modelo com validação cruzada diminui, quando um determinado recurso é permutado (valores embaralhados) após o treinamento, antes da previsão. Nunca se terá certeza se um recurso específico deve ser incluído ou não, mas provavelmente é muito mais fácil prever pelos 5% principais do que pelos 5% inferiores.

Do ponto de vista prático, o tempo de execução computacional pode ser reduzido e talvez alguns recursos possam ser economizados, se houver um custo fixo de aquisição por recurso.

Soren Havelund Welling
fonte
5
A capacidade dos dados de dizer que um recurso é inútil é severamente limitada, e espero que a opção a que você se refere esteja integrada ao algoritmo de floresta aleatória. Não seria apropriado fazer a exclusão antecipada de recursos antes de enviar os recursos candidatos ao algoritmo de floresta aleatória.
Frank Harrell
@FrankHarrell, tentei elaborar a minha resposta
Soren Havelund Welling
2
Discordo que você escolhe diferentes regras de pontuação para diferentes fins. Uma regra imprópria de pontuação de precisão leva à seleção dos recursos errados e ao fornecimento de pesos incorretos. Mais aparente é a arbitrariedade em certas regras de pontuação. É muito melhor escolher um modelo preditivo ideal e, em seguida, usar uma sólida teoria da decisão para tomar decisões ótimas usando esse modelo. Isso é feito aplicando uma função de utilidade às previsões contínuas.
31416 Frank Fellowski
11
@FrankHarrell - você pode dar uma resposta detalhada a esta pergunta? aparentemente, você tem alguns argumentos fortes contra fazendo seleção de características ...
ihadanny
11
c