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
/ log
antes de usá-las para se ajustar ao modelo de regressão? É necessário ao usar uma abordagem do Ensemble como a Random Forest?
Respostas:
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
fonte
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.
fonte