/ / Make graphviz de sklearn RandomForestClassifier (não de clf.estimators_ individuais) - python, scikit-learn, graphviz, floresta aleatória, árvore de decisão

Faça graphviz de sklearn RandomForestClassifier (não de clf.estimators_ individuais) - python, scikit-learn, graphviz, floresta aleatória, árvore de decisão

Python. Sklearn. RandomForestClassifier. Após a montagem RandomForestClassifier, isso produz algum tipo de árvore de consenso única "melhor" e "média" que poderia ser usada para criar um graphviz?

Sim, olhei a documentação. Não, não diz nada sobre isso. RandomForestClassifier não tem um tree_ atributo. No entanto, você pode obter as árvores individuais na floresta de clf.estimators_ então eu sei que eu poderia fazer um graphviz de um desses. Há um exemplo disso aqui. Eu poderia até marcar todas as árvores e encontrar a árvore com a maior pontuação entre a floresta e escolher aquela ... mas isso não é o que eu estou pedindo.

Eu quero fazer um graphviz a partir do resultado do classificador de floresta aleatório final "em média". Isso é possível? Ou o classificador final usa as árvores subjacentes para produzir pontuações e previsões?

Respostas:

3 para resposta № 1

UMA RandomForest é um método conjunto que usa a média para fazer previsão, ou seja, todos os subclassificadores ajustados são usados, tipicamente (mas nem sempre) em um grupo de votação majoritária, para chegar à previsão final. Isso geralmente é verdade para todos os métodos de conjunto. Como Vivek Kumar ressalta nos comentários, a previsão não énecessariamente sempre uma maioria pura de votos, mas também pode ser uma maioria ponderada ou, na verdade, alguma outra forma exótica de combinar as previsões individuais (a pesquisa sobre métodos conjuntos está em curso, embora um tanto marginalizada pela aprendizagem profunda).

Não há árvore média que possa ser representada graficamentesomente os tocos de decisão que foram treinados a partir de subamostras aleatórias de todo o conjunto de dados e das previsões que cada um deles produz. São as previsões que são calculadas, não as árvores / tocos.


Apenas por completude, a partir do artigo da wikipedia: (grifo meu)

Florestas aleatórias ou florestas de decisão aleatórias1[2] são um método de aprendizado conjunto para classificação, regressão e outras tarefas, que operam construindo uma multiplicidade de árvores de decisão no momento do treinamento e produzindo a classe que é a modo das classes (classificação) ou significar predição (regressão) das árvores individuais.

modo sendo o valor mais comum, em outras palavras, a predição majoritária.