机器学习(深度学习)中的metrics

本文以二分类问题作讨论,多分类可以类推。

混淆矩阵
  1. 真阳性(True Positive,TP):样本的真实类别是正例,并且模型预测的结果也是正例
  2. 真阴性(True Negative,TN):样本的真实类别是负例,并且模型将其预测成为负例
  3. 假阳性(False Positive,FP):样本的真实类别是负例,但是模型将其预测成为正例
  4. 假阴性(False Negative,FN):样本的真实类别是正例,但是模型将其预测成为负例

总结为下表(以预测来看,预测对了相应的P或N前面就是T,否则为N,方便记忆):

准确率 Accuracy

所有样本中被预测正确的样本的比率,分类模型总体判断的准确率(包括了所有class的总体准确率)

精确率 Precision

预测为正类的准确率

T P / ( T P + F P ) TP / ( TP + FP ) TP/(TP+FP)

召回率 Recall

真实为正类的准确率

真实为负类的准确率

R e c a l l = T N / ( T N + F P ) Recall = TN/(TN+FP) Recall=TN/(TN+FP)

F1

用来衡量二分类模型精确度的一种指标。它同时兼顾了分类模型的准确率和召回率。F1分数可以看作是模型准确率和召回率的一种加权平均,它的最大值是1,最小值是0。

Roc曲线、AUC

Roc (Receiver operating characteristic) 曲线是一种二元分类模型分类效果的分析工具。首先需要知道如下定义:
Roc 空间将假阳性率(FPR)定义为 X 轴,真阳性率(TPR)定义为 Y 轴。

  1. FPR: 在所有实际为阴性的样本中,被错误地判定为阳性之比率 FPR = FP/N = FP/(FP + TN)
  2. TPR: 在所有实际为阳性的样本中,被正确地判断为阳性之比率 TPR = TP/P = TP/(TP+FN)

给定一个二元分类模型和它的阈值,就能从所有样本的(阳性/阴性)真实值和预测值计算出一个 (X=FPR, Y=TPR)坐标点。

从 (0, 0) 到 (1,1) 的对角线将ROC空间划分为左上/右下两个区域,在这条线的以上的点代表了一个好的分类结果(胜过随机分类),而在这条线以下的点代表了差的分类结果(劣于随机分类)。

完美的预测是一个在左上角的点,在ROC空间座标 (0,1)点,X=0 代表着没有伪阳性,Y=1 代表着没有伪阴性(所有的阳性都是真阳性);也就是说,不管分类器输出结果是阳性或阴性,都是100%正确。一个随机的预测会得到位于从 (0, 0) 到 (1, 1) 对角线(也叫无识别率线)上的一个点。
对于一个特定的分类器和测试数据集,显然只能得到一个分类结果,即一组FPR和TPR结果,而要得到一个曲线,我们实际上需要一系列FPR和TPR的值,这又是如何得到的呢?见如何画ROC曲线

AUC 最普遍的定义是 ROC 曲线下的面积,显然这个面积的数值不会大于1。但其实另一种定义更常用,分别随机从正负样本集中抽取一个正样本,一个负样本,正样本的预测值大于负样本的概率。后一个定义可以从前一个定义推导出来,有兴趣的可以看下 Wilcoxon-Mann-Witney Test。

AUC得含义

The AUC value is equivalent to the probability that a randomly chosen positive example is ranked higher than a randomly chosen negative example.

从AUC判断分类器(预测模型)优劣的标准:

  • AUC = 1,是完美分类器,采用这个预测模型时,存在至少一个阈值能得出完美预测。绝大多数预测的场合,不存在完美分类器。
  • 0.5 < AUC < 1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。
  • AUC = 0.5,跟随机猜测一样(例:丢铜板),模型没有预测价值。
  • AUC < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测。

既然已经这么多评价标准,为什么还要使用ROC和AUC呢?因为ROC曲线有个很好的特性:当测试集中的正负样本的分布变化的时候,ROC曲线能够保持不变。在实际的数据集中经常会出现类不平衡(class imbalance)现象,即负样本比正样本多很多(或者相反),而且测试数据中的正负样本的分布也可能随着时间变化。

推荐阅读:
机器学习之分类性能度量指标 : ROC曲线、AUC值、正确率、召回率
ROC与AUC的定义与使用详解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值