Tracé de des arbres pour une Forêt Aléatoire en Python avec Scikit-Learn
Je veux tracer un arbre de décision d'une forêt aléatoire. Donc, j'ai créer le code suivant:
clf = RandomForestClassifier(n_estimators=100)
import pydotplus
import six
from sklearn import tree
dotfile = six.StringIO()
i_tree = 0
for tree_in_forest in clf.estimators_:
if (i_tree <1):
tree.export_graphviz(tree_in_forest, out_file=dotfile)
pydotplus.graph_from_dot_data(dotfile.getvalue()).write_png('dtree'+ str(i_tree) +'.png')
i_tree = i_tree + 1
Mais il ne génère pas de quoi que ce soit..
Avez-vous une idée de comment tracer un arbre de décision à partir de la forêt au hasard ?
Merci,
OriginalL'auteur Zoya | 2016-10-20
Vous devez vous connecter pour publier un commentaire.
En supposant que le Hasard de la Forêt modèle est déjà équipé,
d'abord, vous devez d'abord importer les
export_graphviz
fonction:Dans votre cycle, vous pouvez effectuer les opérations suivantes pour générer le
dot
fichierLa ligne suivante génère un fichier png
une Forêt Aléatoire est une liste d'arbres. Vous pouvez obtenir la liste à l'aide de la
estimators_
attribut. Vous pouvez exporter par exemple le premier arbre à l'aide derandom_forest.estimators_[0]
."export_graphviz" peut être utilisé uniquement pour les arbres de décision, mais pas de Forêts Aléatoires.
un arbre est un élément de la liste
clf.estimators_
len(random_forest.estimators_) donne le nombre d'arbres.
OriginalL'auteur user6903745
Vous pouvez dessiner un arbre unique avec le jeûne.ia bibliothèque.
OriginalL'auteur Mirodil