机器学习——ROC、AUC、查准率、查全率、F1

错误率、查准率、查全率

错误率:有多少比例的西瓜被判断错误;

查准率(precision):算法挑出来的西瓜中有多少比例是好西瓜;

查全率(recall):所有的好西瓜中有多少比例被算法跳了出来。

继续按照上述前提,对于二分类问题,我们根据真实类别与算法预测类别会有下面四个名词:

在写下面四个名词前,需要给一些关于T(true)、F(false)、P(positive)、N(negative)的解释:P表示算法预测这个样本为1(好西瓜)、N表示算法预测这个样本为0(坏西瓜);T表示算法预测的和真实情况一样,即算法预测正确,F表示算法预测的和真实情况不一样,即算法预测不对。


TP:正确地标记为正,即算法预测它为好西瓜,这个西瓜真实情况也是好西瓜(双重肯定是肯定);
FP:错误地标记为正,即算法预测它是好西瓜,但这个西瓜真实情况是坏西瓜;
FN:错误地标记为负,即算法预测为坏西瓜,(F算法预测的不对)但这个西瓜真实情况是好西瓜(双重否定也是肯定);
TN:正确地标记为负,即算法标记为坏西瓜,(T算法预测的正确)这个西瓜真实情况是坏西瓜。

我们可以把多个由P-R关系画出的曲线的模型放在一个图例里面,当某个模型可以包裹住另一个模型时候,我们可以认为这个大的模型的性能更高,当我们无法做出判断时,可以计算出模型的积分,比较大小,积分大的则性能更好。


平衡点(BEP)

比较P-R曲线下方面积大小,它在一定程度上表征了学习器在查准率和查全率上取得双高的比例,但这个值不太容易估算,因此,人们设计了一些综合考虑查准率查全率的性能度量。

计算出 查全率 查准率 P-R曲线

查准率=查全率 时的取值 ,平衡点越大,学习器越优秀。

F 1 = ( 1 + b 2 ) ∗ P ∗ R ( b 2 ∗ P ) + R ) F_{1}=\frac{(1+b^2)*P*R}{(b^2*P)+R)} F1=(b2P)+R)(1+b2)PR

b=1时退化为标准的 F 1 F_1 F1;b>1时查全率影响更大,b<1查准率影响更大

宏查准率和查全率记为 ( P i , R i ) = ( 1 n ∑ 1 n P i , 1 n ∑ 1 n R i ) (P_i,R_i)=(\frac{1}{n}\sum_{1}^{n}P_i,\frac{1}{n}\sum_{1}^{n}R_i) (Pi,Ri)=(n11nPi,n11nRi)

前期了解到这些其实足够了


ROC和AUC

受试者工作特征

ROC曲线以真正例率TPR为纵轴,以假正例率FPR为横轴,在不同的阈值下获得坐标点,并连接各个坐标点,得到ROC曲线。
对于一个分类任务的测试集,其本身有正负两类标签,我们对于这个测试集有一个预测标签,也是正负值。分类器开始对样本进行分类时,首先会计算该样本属于正确类别的概率,进而对样本的类别进行预测。

AUC(Area Under Curve)被定义为ROC曲线下的面积,显然这个面积的数值不会大于1。

简单说 ROC是一个量化的直观评价,AUC是对这个直观评价的面积求积分,跟上面所说的BEP的概念几乎一模一样。AUC值越大的分类器,正确率越高。

你可能感兴趣的:(人工智能)