Ich lerne mit "100 Schlägen Python-Praxis". Ich denke, dieses Buch ist wirklich gut, weil Sie die Datenanalyse mit Daten untersuchen können, die der tatsächlichen Situation nahe kommen (obwohl es tatsächlich viele noch schlechtere Daten gibt ...). In Kapitel 5 dieses Buches gibt es eine Szene, in der Scikit-Learn zur Analyse mithilfe eines Entscheidungsbaums verwendet wird. Also habe ich ein Modell erstellt, aber ich habe versucht, die Baumstruktur mit graphviz zu visualisieren, also habe ich es dieses Mal versucht.
Python übt 100 Schläge -> Kapitel 5 10 klopft an, um den Kundenabzug vorherzusagen -> Knock 49: Überprüfen wir die beitragenden Variablen des Modells
Installieren Sie zuerst das Hauptgerät mit Homebrew.
brew install graphviz
Installieren Sie außerdem die Bibliothek für Python mit pip (anaconda scheint dies mit conda zu können).
pip install graphviz
Sie müssen lediglich den folgenden Code hinzufügen. Es ist sehr leicht.
from sklearn import tree
import graphviz
dot_data = tree.export_graphviz(model, out_file=None)
graph = graphviz.Source(dot_data)
graph
Sie können eine PDF-Datei mit nur wenigen Änderungen am letzten Code erstellen. In diesem Beispiel wird "test.pdf" im aktuellen Verzeichnis erstellt.
from sklearn import tree
import graphviz
dot_data = tree.export_graphviz(model, out_file=None)
graph = graphviz.Source(dot_data)
graph.render('test')
Ich habe mit der Funktion export_graphviz von sklearn.tree eine Entscheidungsbaumdatei im DOT-Sprachformat erstellt und Systembefehle auf dem Jupyter-Notizbuch ausgeführt.
from sklearn import tree
import graphviz
with open('test.dot', mode='w') as f:
tree.export_graphviz(model, out_file=f)
!dot -T png test.dot -o test.png
Dieser Artikel wurde unter Bezugnahme auf die folgenden Informationen verfasst. Weitere Informationen finden Sie weiter unten. 1.10. Entscheidungsbäume (offizielles Dokument) sklearn.tree.export_graphviz (auch offizielle Dokumentation) Probieren Sie den Entscheidungsbaum mit Python aus: scicit-learn (ich habe ihn als Referenz verwendet)
Recommended Posts