机器学习评价指标

目录

1 分类

1.1  精确率与召回率

1.2 ROC和AUC

1.3 对数损失

1.4 铰链损失(Hinge loss)

1.5 混淆矩阵

1.6 kappa系数

1.7 准确率

1.8 海明距离

1.9 杰卡德相似系数

1.10 多标签排序

1.10.1 涵盖误差

1.10.2 标签排序平均精度

1.10.3 排序误差

2 拟合

2.1 平均绝对误差

2.2 平均平方误差

2.3 解释变异

2.4 决定系数

3 聚类

3.1 兰德指数

3.2 互信息

3.3 轮廓系数

4 信息检索


在使用机器学习算法的过程中,针对不同场景需要不同的评价指标。

1 分类

1.1  精确率与召回率

  • 精确率,又称查准率(Precision):指的是模型判为正的所有样本中有多少是真正的正样本;正样本的预测数/被预测为正样本的数量(注意:精确率和准确率不同),即: ;挑出的西瓜中有多少比例是好瓜

  • 召回率(Recall)又称查全率:指的是所有正样本有多少被模型判为正样本,即召回;分类正确的正样本个数占正样本个数的比例,即:所有好瓜中有多少比例被挑出来

分析查准率查全率是一对矛盾的度量。若要让查准率比较高,则只挑最有把握的瓜,则难免会漏掉不少好瓜,查全率较低;若要查全率比较高,则通过增加选瓜的数量来实现,若全部瓜都参选,则查全率最高,此时,查准率较低;
应用:在推荐系统中,为了少打扰用户,则查准率比较高;在逃犯信息检索系统中,更希望尽可能少漏掉逃犯,则查全率比较高。

F1-Score:

        在介绍F1-Score之前,首先介绍调和平均值,调和平均值为:又称倒数平均数,是总体各统计变量倒数的算术平均数的倒数。

F1度量的一般形式——Fβ能够表达对差准率 和查询率的不同偏好:

       

        其中,β>1时,查全率更有影响;β=1时,退化为标准的F1;β<1时,查准率更有影响。

        F1值的一般形式为差准率和查全率的调和均值。 是分类与信息检索中最常用的指标之一。

       

1.2 ROC和AUC

        ROC(Receiver Operating Characteristic)曲线,以及AUC(Area Under Curve),常用来评价一个二值分类器的优劣,ROC横轴为false positive rate,FPR,“假正例率”,也就是误判为正确的比例;纵轴是true positive rate,TPR,“真正例率”,也就是正确的判断为正确的比例。

        设模型输出的正样本集合为 A ,真正的正样本集合为 B ,所有样本集合为 CC ,我们称 真正率(True-positive rate), 假正率(False-positive rate)。定义如下:
这里写图片描述 

        考虑ROC曲线图中的四个点和一条线。第一个点,(0,1),即FPR=0, TPR=1,这意味着FN(false negative)=0,并且FP(false positive)=0。Wow,这是一个完美的分类器,它将所有的样本都正确分类。第二个点,(1,0),即FPR=1,TPR=0,类似地分析可以发现这是一个最糟糕的分类器,因为它成功避开了所有的正确答案。第三个点,(0,0),即FPR=TPR=0,即FP(false positive)=TP(true positive)=0,可以发现该分类器预测所有的样本都为负样本(negative)。类似的,第四个点(1,1),分类器实际上预测所有的样本都为正样本。经过以上的分析,我们可以断言,ROC曲线越接近左上角,该分类器的性能越好。

              

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

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

1.3 对数损失

        对数损失(Log loss)亦被称为逻辑回归损失(Logistic regression loss)或交叉熵损失(Cross-entropy loss)。

        对于二分类问题, 设y∈{0,1},则对每个样本的对数损失为:

        

        可以很容易地将其扩展到多分类问题上。设Y为指示矩阵,即当样本i的分类为k时;设P为估计的概率矩阵,即,则对每个样本的对数损失为:

          

1.4 铰链损失(Hinge loss)

        铰链损失(Hinge loss)一般用来使“边缘最大化”(maximal margin)。

        铰链损失最开始出现在二分类问题中,假设正样本被标记为1,负样本被标记为-1,y是真实值,w是预测值,则铰链损失定义为:

         

        然后被扩展到多分类问题,假设是对真实分类的预测值,是对非真实分类预测中的最大值,则铰链损失定义为:

          

        注意,二分类情况下的定义并不是多分类情况下定义的特例。

1.5 混淆矩阵

       混淆矩阵又被称为错误矩阵,是除了ROC曲线和AUC之外的另一个判断分类好坏程度的方法。下面给出二分类的混淆矩阵:

  Predicted as Positive Predicted as Negative
Labeled as Positive True Positive(TP) False Negative(FN)
Labeled as Negative False Positive(FP) True Negative(TN)

如上表,可以将结果分为四类:
* 真正例(True Positive, TP):真实类别为正例,预测类别为正例;
* 假负例(False Negative, FN):真实类别为正例,预测类别为负例;
* 假正例(False Positive, FP):真实类别为负例,预测类别为正例 ;
* 真负例(True Negative, TN):真实类别为负例,预测类别为负例;

进一步可以推出这些指标:
* 真正率(True Positive Rate, TPR),又名灵敏度(Sensitivity):被预测为正的正样本数 / 正样本实际数,即:
* 假负率(False Negative Rate, FNR):被预测为负的正样本数/正样本实际数,即:
* 假正率(False Positive Rate, FPR):被预测为正的负样本数/负样本实际数,即:
*真负率(True Negative Rate, TNR),特异度(Specificity):被预测为负的负样本数/负样本实际数,即:

进一步,由混淆矩阵可以计算以下评价指标:

  • 准确率(Accuracy):分类正确的样本数/所有样本数量,即:

  • 平均准确率(Average per-class accuracy):每个类别下的准确率的算术平均,即:

  • 错误率:分类错误的样本/所有样本的数量,即:

1.6 kappa系数

        kappa系数(Cohen's kappa用来衡量两种标注结果的吻合程度,标注指的是把N个样本标注为C个互斥类别。计算公式为

        

        其中是观察到的符合比例,是由于随机性产生的符合比例。当两种标注结果完全相符时,,越不相符其值越小,甚至是负的。

        现在举个栗子,对于50个测试样本的二分类问题,预测与真实分布情况如下表:

            

        预测与真实值相符共有20+15个,则观察到的符合比例为po=(20+15)/50=0.7。计算pe比较复杂,PREDICT预测为1的比例为0.5,GROUND中1的比例为0.6,从完全随机的角度来看,PREDICT与GROUND均为1的概率为0.5*0.6=0.3,PREDICT与GROUND均为0的概率为0.5*0.4=0.2,则PREDICT与GROUND由于随机性产生的符合比例为0.2+0.3=0.5,即pe=0.5,最后求得

Kappa系数用于一致性检验,Kappa计算结果为[-1, 1],但通常kappa是落在0~1之间,可分为五组表示不同级别的一致性。

大小 一致性程度
0.0 ~ 0.20 极低的一致性
0.21 ~ 0.40 一般的一致性
0.41 ~ 0.60 中等的一致性
0.61 ~ 0.80 高度的一致性
0.81 ~ 1 几乎完全一致

假设每一类的真实样本个数为:a_1, a_2, …, a_C;预测出来的每一类样本个数为:b_1, b_2, …, b_C;样本总个数为n 

1.7 准确率

        准确率(Accuracy)衡量的是分类正确的比例。设是是第i个样本预测类别,是真是类别,在个测试样本上的准确率为

        

       其中1(x)是indicator function,当预测结果与真实情况完全相符时准确率为1,两者越不相符准确率越低。

       虽然准确率适用范围很广,可用于多分类以及多标签等问题上,但在多标签问题上很严格,在有些情况下区分度较差。

1.8 海明距离

        海明距离(Hamming Distance)用于需要对样本多个标签进行分类的场景。对于给定的样本i是对第j个标签的预测结果,是第j个标签的真实结果,L是标签数量,则间的海明距离为

         

        其中1(x)是indicator function。当预测结果与实际情况完全相符时,距离为0;当预测结果与实际情况完全不符时,距离为1;当预测结果是实际情况的真子集或真超集时,距离介于0到1之间。

      我们可以通过对所有样本的预测情况求平均得到算法在测试集上的总体表现情况,当标签数量L为1时,它等于1-Accuracy,当标签数L>1时也有较好的区分度,不像准确率那么严格。

1.9 杰卡德相似系数

        杰卡德相似系数( Jaccard similarity coefficients)也是用于需要对样本多个标签进行分类的场景。对于给定的样本i,是预测结果,是真实结果,L是标签数量,则第i个样本的杰卡德相似系数为

           

        它与海明距离的不同之处在于分母。当预测结果与实际情况完全相符时,系数为1;当预测结果与实际情况完全不符时,系数为0;当预测结果是实际情况的真子集或真超集时,距离介于0到1之间。

        我们可以通过对所有样本的预测情况求平均得到算法在测试集上的总体表现情况,当标签数量L为1时,它等于Accuracy

1.10 多标签排序

        这节介绍一些更精细化的多标签分类效果衡量工具。设真实标签分类情况为,分类器预测情况为

1.10.1 涵盖误差

        涵盖误差(Coverage error)计算的是预测结果中平均包含多少真实标签,适用于二分类问题。涵盖误差定义为:

         

       其中。可以看到它实际衡量的是真实标签中有多少排在预测结果的前面。

1.10.2 标签排序平均精度

        标签排序平均精度(Label ranking average precision)简称LRAP,它比涵盖误差更精细:

        

        其中,

1.10.3 排序误差

         排序误差(Ranking loss)进一步精细考虑排序情况:

           

       其中,

2 拟合

        拟合问题比较简单,所用到的衡量指标也相对直观。假设是第i个样本的真实值,是对第i个样本的预测值。

2.1 平均绝对误差

      平均绝对误差MAE(Mean Absolute Error)又被称为l1范数损失(l1-norm loss):

      

2.2 平均平方误差

        平均平方误差MSE(Mean Squared Error)又被称为l2范数损失(l2-norm loss):

        

2.3 解释变异

         解释变异( Explained variance)是根据误差的方差计算得到的:

         

2.4 决定系数

       决定系数(Coefficient of determination)又被称为R2分数:

        

       其中,

3 聚类

3.1 兰德指数

         兰德指数(Rand index)需要给定实际类别信息C,假设K是聚类结果,a表示在C与K中都是同类别的元素对数,b表示在C与K中都是不同类别的元素对数,则兰德指数为:

         

        其中数据集中可以组成的总元素对数,RI取值范围为[0,1],值越大意味着聚类结果与真实情况越吻合。

      对于随机结果,RI并不能保证分数接近零。为了实现“在聚类结果随机产生的情况下,指标应该接近零”,调整兰德系数(Adjusted rand index)被提出,它具有更高的区分度:

          

          ARI取值范围为[−1,1],值越大意味着聚类结果与真实情况越吻合。从广义的角度来讲,ARI衡量的是两个数据分布的吻合程度。

3.2 互信息

        互信息(Mutual Information)也是用来衡量两个数据分布的吻合程度。假设U与V是对N个样本标签的分配情况,则两种分布的熵(熵表示的是不确定程度)分别为:

    

      其中

      U与V之间的互信息(MI)定义为:

     

     其中,

     标准化后的互信息(Normalized mutual information)为:

     

       与ARI类似,调整互信息(Adjusted mutual information)定义为:

       

        利用基于互信息的方法来衡量聚类效果需要实际类别信息,MI与NMI取值范围为[0,1],AMI取值范围为[−1,1],它们都是值越大意味着聚类结果与真实情况越吻合。

3.3 轮廓系数

        轮廓系数(Silhouette coefficient)适用于实际类别信息未知的情况。对于单个样本,设a是与它同类别中其他样本的平均距离,b是与它距离最近不同类别中样本的平均距离,轮廓系数为:

          

         对于一个样本集合,它的轮廓系数是所有样本轮廓系数的平均值。

         轮廓系数取值范围是[−1,1],同类别样本越距离相近且不同类别样本距离越远,分数越高。

4 信息检索

信息检索评价是对信息检索系统性能(主要满足用户信息需求的能力)进行评估,与机器学习也有较大的相关性。

参考:http://blog.sina.com.cn/s/blog_72995dcc01013oo9.html

猜你喜欢

转载自blog.csdn.net/weixin_39910711/article/details/82940210