模型算法评估指标

转载:https://zhuanlan.zhihu.com/p/34079183

二分类问题的结果有四种:

预测是positive-1和negative-0,true和false描述本次预测的对错。

True Positive, TP:预测为1,且实际为1,即预测正确;

False Positive, FP:预测为1,而实际为0,即预测错误;

False Negative,FN:预测为0,而实际为1,即预测错误;

True Negative:TN:预测为0,且实际为0,即预测正确;

一般作为positive-1的指标是你更加关注的样本表现,比如“是垃圾邮件”“是阳性肿瘤”“将要发生地震”等。

1.1 混淆矩阵(confusion matrix)

直观呈现以上四种情况的样本数

1.2 准确率(accuracy)

正确分类的样本/总样本数:(TP+TN)/(TP+FP+FN+TN)

用准确率来评价系统时,当出现样本不平衡的问题时,使用准确率难以准确度量。比如98%的正样本,2%的负样本的情况下,模型只需将样本全部预测为正,即可获得98%的准确率。

1.3 查准率(precision, 精度)

在预测为1的样本中,实际为1的概率:TP/(TP+FP)。

因此在垃圾邮件判断的场景中,要求模型具有更高的查准率,不能把正常邮件预测为垃圾邮件。一个都不能判断错误说的是查准率。

1.4 查全率(recall, 召回率)

在实际为1的样本中,预测为1的概率:TP/(TP+FN)。

因此在肿瘤判断和地震预测等场景中,要求模型具有更高的查全率,是个地震都不能放过。一个都不能放过说的是查全率。

1.5 ROC曲线(receiver operating characteristic curve)

ROC曲线指受试者工作特征曲线 / 接收器操作特性曲线(receiver operating characteristic curve), 是反映敏感性和特异性连续变量的综合指标,是用构图法揭示敏感性和特异性的相互关系,它通过将连续变量设定出多个不同的临界值,从而计算出一系列敏感性和特异性,再以敏感性为纵坐标、特异性为横坐标绘制成曲线,曲线下面积越大,诊断准确性越高。在ROC曲线上,最靠近坐标图左上方的点为敏感性和特异性均较高的临界值。ROC曲线常被用来评价一个二值分类器的优劣。

ROC曲线的横坐标为false positive rate(FPR, 假阳性率):FP/(FP+TN), 假阳性率:实际无病,但根据筛检被判为有病的百分比,即在实际为0的样本中,判断为1的概率;

ROC曲线的纵坐标为true positive rate(TPR, 真阳性率):TP/(TP+FN),真阳性率:实际有病,且根据筛检被判为有病的百分比,即在实际为1的样本中,判断为1的概率;此公式同时可以代表查全率。

接下来考虑一下ROC曲线中的四个顶点和一条线:

(1) 第一个点(0,0),FPR=TPR=0,即FP=0,TP=0,没有病没有被误判,有病的都没有检测到,都判别为0;

(2) 第二个点(0,1), FPR=0, TPR=1,即FP=0, FN=0,没有病的没有被误判,有病的都检测到,是一个完美的分类器,全部分类正确;

(3) 第三个点(1,0), FPR=1,TPR=0,即TN=0,TP=0,没有病的都被误判,有病的都没有检测到。是一个糟糕的分类器,全部分类错误;

(4) 第四个点(1,1), FPR=1,TPR=1,即TN=0, FN=0, 没有病的被误判,有病的都检测到,都判为1;

(5)曲线:ROC曲线上的每一个点对应于一个threshold,对于一个分类器,每个阈值下都会有一个TPR和FPR。比如Threshold最大时,TP=FP=0,对应于原点;Threshold最小时,TN=FN=0,对应于右上角的点(1,1)

综上分析可知,ROC曲线越接近左上角,该分类器的性能越好。即针对每一个分类器的ROC曲线,总能找到一个最佳的概率切分点使得自己关注的指标达到最佳水平。

如何绘制ROC曲线?

分类器输出的是概率值,我们往往通过设置一个阈值,如果大于阈值则判为1,否则判为0,而一般情况下将阈值设置为0.5,但基于不同的场景,可以通过控制概率输出的阈值来改变预测的标签,这样不同的阈值就会得到不同的FPR和TPR。

从0%-100%之间选取任意细度的阈值分别获得FPR和TPR,对应在图中,得到ROC曲线,阈值的细粒度控制了曲线的阶梯程度和平滑程度。

为什么使用ROC曲线?

因为ROC曲线有个很好的特性:当测试集的正负样本的分布变化时,ROC曲线能够保持不变。

1.6 AUC (Area Under Curve)

AUC被定义为ROC曲线下的面积,显然这个面积不会大于1,又由于ROC曲线一般都处于y=x这条直线的上方,所有AUC的取值范围在0.5和1之间。使用AUC作为评价标准是因为很多时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而作为一个数值,对应AUC更大的分类器效果更好。

AUC排序本质:大部分分类器的输出是概率值,需要设置阈值,才能将概率值转换为类别,问题在于阈值这个超参数的确定对优化指标的计算产生过于敏感的影响。

AUC的含义:从标签为1和标签为0的样本集中分别随机选择两个样本,同时分类器会输出两样本为1的概率,那么我们认为分类器对“标签1样本的预测概率>对标签0样本的预测概率 ”的概率等价于AUC。

1.7 F1分数

F1兼顾了分类模型的查准率和查全率,可以看作是两者的调和平均数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值