Quando registrar / expandir suas variáveis ​​ao usar modelos aleatórios de floresta?

13

Estou fazendo regressão usando florestas aleatórias para prever preços com base em vários atributos. O código é escrito em Python usando o Scikit-learn.

Como você decide se deve transformar suas variáveis ​​usando exp/ logantes de usá-las para se ajustar ao modelo de regressão? É necessário ao usar uma abordagem do Ensemble como a Random Forest?

Nyxynyx
fonte
3
Eu acho que isso é um pouco diferente dessa pergunta, devido ao aspecto aleatório de floresta / conjunto, mas a pergunta talvez possa ser reformulada depois de examinar o outro post.
Peter Flom - Restabelece Monica
@PeterFlom, você poderia me ajudar a reformular a pergunta? Eu não sou competente o suficiente nesta área :)
Nyxynyx
A maneira como a maioria das pessoas usa o termo "conjunto" de RF é apenas uma entrada em potencial para um conjunto.
Hack-R

Respostas:

16

A maneira como as florestas aleatórias são construídas é invariável às transformações monotônicas das variáveis ​​independentes. As divisões serão completamente análogas. Se você está apenas buscando precisão, não verá nenhuma melhoria nela. De fato, como as florestas aleatórias são capazes de encontrar relações não lineares complexas (por que você está chamando essa regressão linear?) E interações variáveis ​​em tempo real, se você transformar suas variáveis ​​independentes, poderá suavizar as informações que permitem que esse algoritmo faça isso corretamente.

Às vezes, as florestas aleatórias não são tratadas como uma caixa preta e usadas para inferência. Por exemplo, você pode interpretar as medidas de importância das variáveis ​​fornecidas, ou calcular algum tipo de efeito marginal da sua variável independente na sua variável dependente. Isso geralmente é visualizado como gráficos de dependência parcial. Tenho certeza de que essa última coisa é altamente influenciada pela escala das variáveis, o que é um problema ao tentar obter informações de natureza mais descritiva da Random Forests. Nesse caso, isso pode ajudá-lo a transformar suas variáveis ​​(padronizar), o que pode tornar comparáveis ​​os gráficos de dependência parcial. Não completamente certo disso, terá que pensar nisso.

Há pouco tempo, tentei prever os dados da contagem usando uma floresta aleatória, e a regressão na raiz quadrada e o log natural da variável dependente ajudaram um pouco, não muito, e não o suficiente para me deixar manter o modelo.

Alguns pacotes em que você pode usar florestas aleatórias para inferência:

https://uc-r.github.io/lime

https://cran.r-project.org/web/packages/randomForestExplainer/index.html

https://pbiecek.github.io/DALEX_docs/2-2-useCaseApartmetns.html

JEquihua
fonte
6

Ecoando @JEquihua, a precisão da previsão da Floresta Aleatória não melhorará.

Observe também que, se você mantiver o preditor original e o preditor transformado (como geralmente é feito na regressão linear), poderá causar problemas. Isso ocorre porque a RF escolhe aleatoriamente um subconjunto das variáveis ​​para aumentar cada árvore, e você basicamente coloca a variável transformada duas vezes. Se for um forte preditor, ele será usado e suas florestas aleatórias não serão tão correlacionadas quanto poderiam ter sido, levando a uma variação maior.

Scott Kaiser
fonte
1
Colocar um preditor transformado e não transformado em qualquer modelo é uma péssima idéia. Eles são perfeitamente colineares e certamente mexerão com o seu modelo, seja floresta aleatória ou regressão linear.
mkt - Restabelece Monica