Como a RF pode lidar com a não linearidade, mas não pode fornecer coeficientes, seria aconselhável usar a floresta aleatória para reunir os recursos mais importantes e depois conectá-los a um modelo de regressão linear múltipla para obter seus coeficientes?
regression
machine-learning
feature-selection
random-forest
regression-strategies
Hidden Markov Model
fonte
fonte
Respostas:
Interpreto a pergunta de uma frase do OP como significando que ele deseja entender a conveniência do seguinte pipeline de análise:
Eu não acho que esse pipeline realizará o que você gostaria. Variáveis importantes em florestas aleatórias não têm necessariamente nenhum tipo de relação linearmente aditiva com o resultado. Essa observação não deve surpreender: é o que torna a floresta aleatória tão eficaz na descoberta de relacionamentos não lineares.
Aqui está um exemplo. Criei um problema de classificação com 10 recursos de ruído, dois recursos de "sinal" e um limite de decisão circular.
E quando aplicamos o modelo de RF, não nos surpreendemos ao descobrir que esses recursos são facilmente identificados como importantes pelo modelo. (Nota: este modelo não está totalmente ajustado .)
Mas quando selecionamos apenas esses dois recursos úteis, o modelo linear resultante é horrível.
A parte importante do resumo é a comparação do desvio residual e do desvio nulo. Podemos ver que o modelo basicamente não faz nada para "mover" o desvio. Além disso, as estimativas do coeficiente são essencialmente zero.
O que explica a grande diferença entre os dois modelos? Bem, claramente o limite de decisão que estamos tentando aprender não é uma função linear dos dois recursos de "sinal". Obviamente, se você conhecesse a forma funcional do limite de decisão antes de estimar a regressão, poderia aplicar alguma transformação para codificar os dados de uma maneira que a regressão pudesse descobrir ... (Mas nunca conheci a forma do limite à frente tempo em qualquer problema do mundo real.) Como estamos trabalhando apenas com dois recursos de sinal nesse caso, um conjunto de dados sintéticos sem ruído nos rótulos das classes, esse limite entre as classes é muito óbvio em nosso gráfico. Mas é menos óbvio ao trabalhar com dados reais em um número realista de dimensões.
Além disso, em geral, a floresta aleatória pode ajustar modelos diferentes para diferentes subconjuntos dos dados. Em um exemplo mais complicado, não será óbvio o que está acontecendo em um único gráfico, e construir um modelo linear de poder preditivo semelhante será ainda mais difícil.
Como estamos preocupados apenas com duas dimensões, podemos criar uma superfície de previsão. Como esperado, o modelo aleatório descobre que a vizinhança em torno da origem é importante.
Como está implícito em nossa saída do modelo abismal, a superfície de previsão para o modelo de regressão logística de variável reduzida é basicamente plana.
HongOoi observa que a associação à classe não é uma função linear dos recursos, mas que uma função linear está sob uma transformação. Como o limite de decisão é se enquadrarmos esses recursos, poderemos construir um modelo linear mais útil. Isso é deliberado. Embora o modelo de RF possa encontrar sinal nesses dois recursos sem transformação, o analista precisa ser mais específico para obter resultados igualmente úteis no GLM. Talvez isso seja suficiente para o OP: encontrar um conjunto útil de transformações para 2 recursos é mais fácil que 12. Mas o que quero dizer é que, mesmo que uma transformação produza um modelo linear útil, a importância do recurso de RF não sugerirá a transformação por si só.1=x21+x22,
fonte
A resposta do @Sycorax é fantástica. Além dos aspectos totalmente descritos do problema relacionados ao ajuste do modelo, há outro motivo para não prosseguir com um processo de várias etapas, como executar florestas aleatórias, laços ou rede elástica para "aprender" quais recursos devem alimentar a regressão tradicional. Regressão simples não saber sobre a penalização que adequadamente se passou durante o desenvolvimento da floresta aleatória ou outros métodos, e caberia efeitos unpenalized que são mal tendenciosa parecer demasiado forte na previsão de . Isso não seria diferente do que executar a seleção de variáveis passo a passo e relatar o modelo final sem levar em consideração como ele chegou.Y
fonte
Uma floresta aleatória executada corretamente aplicada a um problema que é mais "apropriado para a floresta aleatória" pode funcionar como um filtro para remover o ruído e gerar resultados mais úteis como entradas para outras ferramentas de análise.
Isenções de responsabilidade:
Eu tenho que dar um "grito" aos meus "espreitadelas" que fizeram "Aranha". ( link ) O problema de exemplo deles informou minha abordagem. ( link ) Eu também amo estimadores de Theil-Sen, e gostaria de poder dar apoio a Theil e Sen.
Minha resposta não é sobre como errar, mas sobre como pode funcionar se você acertar. Enquanto eu uso ruído "trivial", quero que você pense em ruído "não trivial" ou "estruturado".
Um dos pontos fortes de uma floresta aleatória é o quão bem ela se aplica a problemas de alta dimensão. Não consigo mostrar 20k colunas (também conhecido como espaço dimensional de 20k) de uma maneira visual limpa. Não é uma tarefa fácil. No entanto, se você tiver um problema dimensional de 20k, uma floresta aleatória pode ser uma boa ferramenta quando a maioria das pessoas cai de cara no chão.
Este é um exemplo de remoção de ruído do sinal usando uma floresta aleatória.
Deixe-me descrever o que está acontecendo aqui. Esta imagem abaixo mostra os dados de treinamento para a classe "1". A classe "2" é aleatória uniforme no mesmo domínio e intervalo. Você pode ver que as "informações" de "1" são principalmente uma espiral, mas foram corrompidas pelo material de "2". Ter 33% dos seus dados corrompidos pode ser um problema para muitas ferramentas de ajuste. Theil-Sen começa a se degradar em cerca de 29%. ( link )
Agora separamos as informações, apenas tendo uma idéia do que é ruído.
Aqui está o resultado apropriado:
Eu realmente gosto disso porque pode mostrar os pontos fortes e fracos de um método decente para um problema difícil ao mesmo tempo. Se você olhar perto do centro, poderá ver como há menos filtragem. A escala geométrica da informação é pequena e a floresta aleatória está ausente. Diz algo sobre o número de nós, o número de árvores e a densidade da amostra para a classe 2. Há também uma "lacuna" próxima (-50, -50) e "jatos" em vários locais. Em geral, no entanto, a filtragem é decente.
Compare vs. SVM
Aqui está o código para permitir uma comparação com o SVM:
Isso resulta na imagem a seguir.
Este é um SVM decente. O cinza é o domínio associado à classe "1" pelo SVM. Os pontos azuis são as amostras associadas à classe "1" pela RF. O filtro baseado em RF funciona comparativamente ao SVM sem uma base explicitamente imposta. Pode-se ver que os "dados restritos" próximos ao centro da espiral são muito mais "rigorosamente" resolvidos pelo RF. Também existem "ilhas" em direção à "cauda", onde o RF encontra associação que o SVM não encontra.
Estou entretido. Sem ter experiência, fiz uma das primeiras coisas também feitas por um colaborador muito bom em campo. O autor original usou "distribuição de referência" ( link , link ).
EDITAR:
Aplique o FOREST aleatório neste modelo:
Embora o usuário777 tenha uma idéia interessante de um CART sendo o elemento de uma floresta aleatória, a premissa da floresta aleatória é "agregação de grupos de alunos fracos". O CART é um aprendiz fraco conhecido, mas não é nada remotamente próximo de um "conjunto". O "conjunto" embora em uma floresta aleatória é destinado "no limite de um grande número de amostras". A resposta do usuário777, no gráfico de dispersão, usa pelo menos 500 amostras e isso diz algo sobre a legibilidade humana e o tamanho das amostras nesse caso. O sistema visual humano (em si um conjunto de alunos) é um incrível sensor e processador de dados e considera esse valor suficiente para facilitar o processamento.
Se tomarmos as configurações padrão em uma ferramenta de floresta aleatória, podemos observar o comportamento do erro de classificação para as primeiras várias árvores e não atingir o nível de uma árvore até que haja cerca de 10 árvores. Inicialmente o erro cresce, a redução do erro se torna estável em torno de 60 árvores. Por estável, quero dizer
Qual produz:
Se, em vez de olharmos para o "aprendiz fraco mínimo", olharmos para o "conjunto mínimo fraco" sugerido por uma breve heurística para a configuração padrão da ferramenta, os resultados são um pouco diferentes.
Note que usei "linhas" para desenhar o círculo indicando a aresta sobre a aproximação. Você pode ver que é imperfeito, mas muito melhor do que a qualidade de um único aluno.
A amostragem original possui 88 amostras "interiores". Se o tamanho da amostra for aumentado (permitindo a aplicação do conjunto), a qualidade da aproximação também melhora. O mesmo número de alunos com 20.000 amostras se encaixa incrivelmente melhor.
As informações de entrada de qualidade muito mais alta também permitem avaliar o número apropriado de árvores. A inspeção da convergência sugere que 20 árvores é o número mínimo suficiente nesse caso específico para representar bem os dados.
fonte