机器学习面笔试-模型评估篇

1.衡量分类器的好坏

(1)常用的指标:
查准率 precision = TP/(TP+FP) = TP/~P (~p为预测为真的数量)
召回率 recall = TP/(TP+FN) = TP/ P
(2)F1 score
F1值: 2/F1 = 1/recall + 1/precision
(3)ROC和AUC

2. P-R图

P-R图,即以查全率做横轴,查准率做纵轴的平面示意图,通过P-R曲线,来综合判断模型的性能。
P-R图的画法是先对对预测结果进行排序,排在前面的是学习器认为最可能是正例的样本,排在最后面的是最不可能的样本。按顺序,依次将每一个样本划分为正例进行预测,就得到了多组查准率和查全率的值。


p-r

当曲线没有交叉的时候:外侧曲线的学习器性能优于内侧;
当曲线有交叉的时候:
第一种方法是比较曲线下面积,但值不太容易估算;
第二种方法是比较两条曲线的平衡点,平衡点是“查准率=查全率”时的取值,在图中表示为曲线和对角线的交点。平衡点在外侧的曲线的学习器性能优于内侧。
第三种方法是F1度量和Fβ度量。F1是基于查准率与查全率的调和平均定义的,Fβ则是加权调和平均。但在不同的应用中,对查准率和查全率的重视程度不同,需要根据其重要性,进行加权处理,故而有了Fβ度量。β是查全率对查准率的相对重要性。β>1时:查全率有更大影响;β=1时:影响相同,退化成F1度量;β<1时:查准率有更大影响。

f1fb

3.什么是ROC?

ROC全称是“受试者工作特征”(Receiver Operating Characteristic)。ROC曲线的面积是AUC(Area Under the Curve)。AUC用于衡量“二分类问题”机器学习算法性能(泛化能力)。
ROC空间是一个以假阳性率(FPR,false positive rate)为X轴,真阳性率(TPR, true positive rate)为Y轴的二维坐标系所代表的平面。
在一个二分类模型中,对于所得到的连续结果,假设已确定一个阀值,比如说 0.6,大于这个值的实例划归为正类,小于这个值则划到负类中。如果减小阀值,减到0.5,固然能识别出更多的正类,也就是提高了识别出的正例占所有正例 的比类,即TPR,但同时也将更多的负实例当作了正实例,即提高了FPR。为了形象化这一变化,在此引入ROC,ROC曲线可以用于评价一个分类器。
roc

4.ROC怎么画出来的?【参考

假设已经得出一系列样本被划分为正类的概率,然后按照大小排序,下图是一个示例,图中共有20个测试样本,“Class”一栏表示每个测试样本真正的标签(p表示正样本,n表示负样本),“Score”表示每个测试样本属于正样本的概率。


draw_roc

接下来,我们从高到低,依次将“Score”值作为阈值threshold,当测试样本属于正样本的概率大于或等于这个threshold时,我们认为它为正样本,否则为负样本。举例来说,对于图中的第4个样本,其“Score”值为0.6,那么样本1,2,3,4都被认为是正样本,因为它们的“Score”值都大于等于0.6,而其他样本则都认为是负样本, 其中分类的正确的(即模型认为是正例和反例的样本,其标记刚好也是正例和反例),TP = 3, FN = 9, FP = 1, TN = 7。

TPR=TPTP+FN=33+9=0.25
FPR=FPTN+FP=11+7=0.125

每次选取一个不同的threshold,我们就可以得到一组FPR和TPR,即ROC曲线上的一点。这样一来,我们一共得到了20组FPR和TPR的值,将它们画在ROC曲线的结果如下图:


ROC

5.AUC物理含义及如何计算?

AUC(Area under Curve):ROC曲线下的面积,介于0.1和1之间。AUC作为数值可以直观的评价分类器的好坏,值越大越好。
假设分类器的输出是样本属于正类的socre(置信度),则AUC的物理意义为,任取一对(正、负)样本,正样本的score大于负样本的score的概率。从而我们能够理解对于AUC而言,并不关心具体预测的结果是标签或者概率,也不需要卡什么阈值,只要在预测结果之间有排序即可。
那么如何计算AUC?
这里】介绍了三种方法。

原文地址:https://www.cnblogs.com/siucaan/p/9623118.html