【发布时间】:2019-10-15 21:09:01
【问题描述】:
我正在使用sklearn.metrics.confusion_matrix 进行测试,看看如果预测数组中有一个不在标签和映射数组中的类会发生什么。
我的代码是:
from sklearn.metrics import confusion_matrix as cm
a = ["positive\n", "positive\n", "negative\n", "positive\n", "negative\n"]
b = ["negative\n", "negative\n", "don't\n", "negative\n", "negative\n"]
m = ["positive\n", "negative\n"]
c = cm(a, b, m)
TN, FP, FN, TP = c.ravel()
print(c)
print("")
print("{} {} {} {}\n".format(TN, FP, FN, TP))
输出是:
[[0 3]
[0 1]]
0 3 0 1
所以don't这个类被跳过了。
但是,如果您查看documentation 的版本v0.21.2,这是我安装的ravel() 方法“应该”输出我写的混淆矩阵的值:TN、FP、FN、TP .我的print 的输出不同。似乎ravel() 的真实输出被翻转:TP、FN、FP、TN。我的想法对吗?
【问题讨论】:
标签: python python-3.x scikit-learn confusion-matrix