机器学习常用模型及规范

1

查准率、查全率和F1

对于二分类问题,可将样例根据其真实类别与学习器预测类别的组合划分为真正例(TP),假反例(FN),假正例(FP),真反例(TN),具体分类结果如下 :

TP:预测为正样本,实际也为正样本的特征数

FP:预测为正样本,实际为负样本的特征数

TN:预测为负样本,实际也为负样本的特征数

FN:预测为负样本,实际为正样本的特征

P值(precision)就是查准率或者叫准确率,R值(recall)是召回率或者叫查全率

查准率P和召回率R分别定义为:

P=TP/(TP+FP)

R=TP/(TP+FN)

查准率关心的是”预测出正例的正确率”即从正反例子中挑选出正例的问题。

查全率关心的是”预测出正例的保证性”即从正例中挑选出正例的问题。

这两个指标应用的场景是不一样的。排序算法或者推荐算法,会更关注准确率;如果预期模型与空预期模型是怕被别人欺骗,会更关注召回率。这时会看一下PR曲线:

若一个学习器的P-R曲线被另一个学习器完全”包住”,则后者的性能优于前者。当存在交叉时,可以计算曲线围住面积,但比较麻烦,平衡点(查准率=查全率,BEP)是一种度量方式。

如果BEP看起来不是很方便的话,可以用F1和Fβ度量来看,他们分别是查准率和查全率的调和平均和加权调和平均。定义如下:

这里主要是看二分类的内容,但是实际上的预测排序模型不只是看二分类,如果一个值不太适合用pr线衡量,就会用roc曲线。

2

ROC和AUC

Roc曲线有真正率和假正率,真正率和召回率的算法是差不多。

很多学习器是为测试样本产生一个实值或概率预测,然后将测试的分值与一个阈值比较,若大于阈值分为正类,否则为反类,因此分类过程可以看作选取一个截断点。

曲线的坐标分别为真正例率(TPR)和假正例率(FPR),公式如下:

TPR=TP/[TP+FN] ,代表能将正例分对的概率

FPR=FP/[FP+TN] ,代表将负例错分为正例的概率

下图为ROC曲线示意图,因现实任务中通常利用有限个测试样例来绘制ROC图,因此应为无法产生光滑曲线,如下图所示。

假设有a个正例子,b个反例子,分类阈值非常高,使得所有例子均预测为反例,此时TPR和FPR均为0,在(0,0)处标记一个点,再将分类阈值依次设为每个样例的预测值,即依次将每个例子划分为正例。设前一个坐标为(x,y),若当前为真正例,对应标记点为(x,y+1/a),若当前为假正例,则标记点为(x+1/b,y),然后依次连接各点。

从几何的角度讲,RoC曲线下方的面积越大越大,则模型越优。所以有时候我们用RoC曲线下的面积,即AUC(Area Under Curve)值来作为算法和模型好坏的标准。此外,如果一个图中两个曲线有交叉,则需要计算曲线围住的面积(AUC)来评价性能优劣。

关注:i 小贝保险

选保险,不焦虑!

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20180615G1B3EZ00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券