我正在学习 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具有三个可能的值A、B、,C它们又分别被矢量化为0,0、。我在图表上想要的是而不是0,11,0FEATURE_1 == AX[1] <= 0.5
