带分类数据的sklearn树的混淆矩阵

sxissh06  于 2021-09-08  发布在  Java
关注(0)|答案(1)|浏览(384)

我已经在所有数据都是分类的数据集上训练了一个带有默认参数的sklearn树。数据集是关于汽车的。

最右边的列是与属性关联的标签。每一行都是一个输入示例。因为sklearn无法处理分类数据,所以我使用字典将功能的每个可能输入Map到字典中,并将它们Map到正整数,因此数据集不再是分类的,现在只包含整数,其中每个整数对每个功能都有意义。我使用新的训练集来训练分类器。


# x_train= training dat

# y_train= training data label

from sklearn.tree import DecisionTreeClassifier
clf=DecisionTreeClassifier()
clf.fit(x_train,y_train)

我能计算出一个任意变量的准确度 x_testy_test 输入 score(x_test, y_test) . 问题是我如何绘制和可视化的混乱矩阵 x_testy_test ?
谢谢

xzv2uavs

xzv2uavs1#

你可以用 plot_confusion_matrix 直观地表示混淆矩阵。你只需要通过拟合的估计器( clf 在您的情况下)以及输入( X_test )以及真正的目标值( y_test ). 以下是一个例子:

import matplotlib.pyplot as plt
from sklearn.tree import DecisionTreeClassifier

clf = DecisionTreeClassifier()
clf.fit(X_train, y_train)

plot_confusion_matrix(clf, X_test, y_test)
plt.show()

可以进一步定制绘图,例如,通过提供除中的标签以外的标签 y_test . 有关更多信息,请查看文档。

相关问题