私は ML を学んでおりscikit-learn
、基本的な決定木分類を行うために使用しています。
機能の値はカテゴリであるためDictVectorizer
、元の機能値を変換するために使用しました。これが私のコードです:
training_set # list of dict representing the traing set
labels # corresponding labels of the training set
vec = DictVectorizer()
vectorized = vec.fit_transform(training_set)
clf = tree.DecisionTreeClassifier()
clf.fit(vectorized.toarray(), labels)
with open("output.dot", "w") as output_file:
tree.export_graphviz(clf, out_file=output_file)
しかし、出力グラフがわかりません。各ノードがマークされたツリーX[1] <= 0.5000
などがあります。私が期待したのは、 でマークされたノードFEATURE_1 == VALUE_1
、un-vectorized
情報がツリーに表示されることでした。
出来ますか?
アップデート:
たとえば、 には 、 、のFEATURE_1
3 つの可能な値A
があり、これらはそれぞれ、にベクトル化されます。私がグラフに望むのは、代わりにB
C
0,0
0,1
1,0
FEATURE_1 == A
X[1] <= 0.5