预测0
预测1
实际0
True negative
False positive
实际1
False negative
True positive
简单的说就是混淆矩阵有四个部分,这四个部分由预测结果和实际标签两个部分交叉出来的结果。
首先说按照老外的思维:对于结果有两个态度,一个是积极的(positive),一个是消极的(negative)。
所以预测为1的时候,被称为positive,被预测为消极的时候,被称为negative。
当实际值为1,但预测为消极的时候,这时的结论就是假消极,(False negative)。当实际值为0,预测值也为0的时候,这时的结论就是真消极(True nagative)。
当实际值为0,但预测为积极的时候,这时的结论就是假积极,(False positive)。 当实际值为1,预测值也为1的时候,这时的结论就是真积极(True positive)
from sklearn.metrics import confusion_matrix
y_true = [0,1,0,1,1,1,0,1,0,0]
y_pred = [0,0,0,1,1,0,0,1,0,1]
confusion_matrix(y_true, y_pred)
return:
array([[4, 1],
[2, 3]], dtype=int64)
cm = confusion_matrix(y_true=y_test, y_pred = log_reg.predict(Xtest))
准确度 accuracy = (TP + TN)/(TP+TN+FP+FN)
错误率 error rate = (FP + FN)/(TP+TN+FP+FN)
查准率 precision = (TP)/(TP+FP) (猜对1)
敏感度 sensitivity = recall = TP/(TP+FN) (找到)
特异度 specificity = TN/(TN+FP)