混淆矩阵
混淆矩阵:
-
真阳性(TP):预测为阳性,实际为阳
-
真阴性(TN):预测为阴性,实际为阴
-
假阳性(FP):预测为阳性,实际为阴
-
假阴性(FN):预测为阴性,实际为阳
准确率
准确率为是指在所有事件中预测结果与实际情况相符的事件所占比例
F值
机器学习中使用精确率(precision)、召回率(recall)、F值等指标进行性能评估
精确率
预测问阳的数据中,实际为阳的比例
召回率
实际为阳的数据,被预测为阳的比例
F值
F值是由精确率与召回率组合计算的值(调和平均)
编程
import numpy
from sklearn.metrics import *
y_true=[0,0,0,1,1,1]
y_pred=[1,0,0,1,1,1]
comfmat=confusion_matrix(y_true,y_pred)
print("混淆矩阵:\n",comfmat)
print("精确率:",precision_score(y_true,y_pred))
print("召回率:",recall_score(y_true,y_pred))
print("F1:",f1_score(y_true,y_pred))
PR曲线
召回率与精确率的关系: 召回率与精准率成反比例
纵轴为精确率,横轴为召回率
基于PR曲线的模型评估
由于精确率与召回率成反比例,一个升高则另一个降低
不过存在精确率与召回率相同的点,该点被称为平衡点(Break Even Point,BEP)