Visualisez l'arbre de décision avec le notebook Jupyter
import numpy as np
import pydotplus
from sklearn.feature_extraction.text import TfidfVectorizer
from IPython import display
from sklearn import tree
from io import StringIO
from operator import itemgetter
%matplotlib inline
%load_ext autoreload
%autoreload 2
input_text=np.array([
'Physique Mathématiques Japonais', #Document 1
'Pan de riz au chocolat', #Document 2
'Immeuble appartement', #Document 3
'Hokkaido Fukuoka Kanagawa' #Document 4
])
#Le document 1 vaut 1
#Le document 2 vaut 2
#Le document 3 vaut 3
#Le document 4 vaut 4
target_data = np.array([
1,2,3,4
])
#Document tf-Convertir en vecteur idf
vectorizer=TfidfVectorizer()
input_data=vectorizer.fit_transform(input_text)
np.set_printoptions(precision=2) #Remplacez le nombre de chiffres d'affichage valides par 2 chiffres
print(input_data.toarray())
#Générer un modèle d'arbre de décision
model = tree.DecisionTreeClassifier(max_depth=5)
model = model.fit(input_data, target_data)
model.predict(input_data)
feature_names = list(map(itemgetter(0),
sorted(vectorizer.vocabulary_.items(), key=itemgetter(1))))
data = StringIO()
tree.export_graphviz(model, out_file=data, feature_names=feature_names)
graph = pydotplus.graph_from_dot_data(data.getvalue())
display.display(display.Image(graph.create_png()))
Ça ressemble à ça. Ça fait du bien de voir le compte de Gini!
Recommended Posts