文章目录
1.机器学习中的评价指标
简要介绍精度、精确率、召回率、P-R曲线、F1 值、TPR、FPR、ROC、AUC等指标
基础
(一)分类指标评价
在分类任务中,各指标的计算基础都来自于对正负样本的分类结果,用混淆矩阵表示为:
from sklearn.metrics import confusion_matrix
y_pred = [0,1,0,1]
y_true = [0,1,1,1]
confusion_matrix(y_true, y_pred, labels=[1, 0])
下面的表中P或者N都是代表了为预测出来的分类,分别代表了正类和负类,然后T或者F就代表了样本实际的分类与预测是一样的还是不一样的,我觉得这样去理解,应该就不会混了。
精度
1.Accuracy
定义:(TP+TN)/(TP+FN+FP+TN)
即所有分类正确的样本占全部样本的比例
## accuracy
import numpy as np
from sklearn.metrics import accuracy_score
y_pred = [0,1,0,1]
y_true = [0,1,1,1]
print('ACC:',accuracy_score(y_true,y_pred))
精确率
2.Precision、查准率
定义:(TP)/(TP+FP)
即预测是正例的结果中,确实是正例的比例
分母为预测为正样例的个数 ;分子为预测为实际正样例被预测准的个数
from sklearn import metrics
y_pred = [0,1,0,1]
y_true = [0,1,1,1]
print('Precision',metrics.precision_score(y_true,y_pred))
召回率
3.Recall、查全率
定义:(TP)/(TP+FN)
即所有正例的样本中,被找出的比例
分母为实际正样例的个数;分子为预测为实际正样例被预测准的个数
from sklearn import metrics
y_pred = [0,1