【发布时间】:2020-05-19 08:17:36
【问题描述】:
我为我的数据创建了一个混淆矩阵,如下所示:
knn = KNeighborsClassifier(n_neighbors = 85).fit(x_train, y_train)
accuracy = knn.score(x_test, y_test)
knn_pred = knn.predict(x_test)
print(knn_pred)
from sklearn.metrics import confusion_matrix
cm = confusion_matrix(y_test, knn_pred)
在上面的代码中,y_test 是一个包含情绪的标签列表['neutral', 'happy','sad', 'angry','fearful','surprised','calm', '厌恶']。 现在,当我运行上面的代码来打印混淆矩阵时,我得到的输出如下:
[[31 2 0 0 6 0 0 9]
[ 0 38 5 0 0 1 4 0]
[ 8 6 13 1 3 0 0 17]
[12 5 6 13 2 0 1 9]
[ 5 10 4 4 10 0 1 14]
[ 0 16 5 0 1 0 1 1]
[ 5 24 6 2 2 1 2 6]
[ 6 8 2 2 7 0 0 23]]
现在我怀疑上面矩阵中的行对应于哪种情绪。如何在我上面得到的混淆矩阵中找到对应于一行的情感标签。还告诉我如何在带有标签的热图上绘制混淆矩阵。
【问题讨论】:
标签: python matplotlib machine-learning