在模型评估过程中,分类、回归、排序问题往往使用不同的指标进行评估。分类问题通常用准确率、召回率、精准率、F1值等指标进行评估;回归问题使用MSE、RMSE、R^2、MAPE等;

1 分类评估原理

1.1 准确率的局限性

我们经常接触的评价指标就是准确率,当准确率很高,我们则认为这个模型很好,但是如果存在数据样本不均衡,当负样本占99%时,分类器将所有的样本都预测为负样本,也可以获得99%的准确率。所以,当不同类别的样本比例非常不均衡时,占比大的类别就成了影响准确率的最主要因素。

1.2混淆矩阵

针对“二分类”问题,我们可以建立混淆矩阵。

预测值

P

N

P

TP

FP

N

FN

TN

其中,P是Positive,代表正例,N是Negative,代表负例。

  • TP:真实值为正例,被预测成正例
  • FP:真实值为正例,被预测成负例
  • TN:真实值为负例,被预测成负例
  • FN:真实值为负例,被预测成正例
  • 精准率(Precision):判断正例有多少被预测准确的,即TP/(TP+FP)
  • 召回率(Recall):判断被预测为正例的有多少是准确的,即TP/(TP+FN)
  • F1:2*(P*R/P+R)

1.3 P-R曲线和ROC曲线

P-R曲线是从查准率和查全率的角度去衡量学习模型的泛化性能,P-R曲线的横轴是召回率,纵轴是精准率,在曲线上的一个点都代表,在某一阈值下,模型将大于该阈值的样本判定为正样本,小于该阈值的样本判定为负样本。

ROC曲线是受试者工作特征曲线(Receiver Operating Characteristic Curve),常用来进行模型评估。ROC曲线是通过不断移动分类器的“截断点”来生成曲线上的一组关键点的,设定阈值(截断点),当预测样本的概率大于阈值时,被判断为正例。ROC的横纵坐标表示为

  • 横坐标(假阳性率FPR):FP/N
  • 纵坐标(真阳性率TPR):TP/P

当截断点是正无穷时,所有的样本被判定为负例,则FP和TP为0,FPR和TPR也为0,曲线的第一个坐标为0.反之,最后一个坐标为(1,1)。

经测试,在样本不均衡时,ROC曲线基本保持原貌,而P-R曲线则变化较大。

1.4 AUC

AUC是ROC曲线下的面积大小,该值能够量化地反映基于ROC曲线衡量出的模型性能。AUC的取值范围在0.5-1之间。

1.5 BLEU(机器翻译)

BLEU(bilingual evaluation understudy)是机器翻译常用指标。

1.6 RougeL(文本摘要)

RougeL是基于LCS(最长公共子序列)的Recall-Oriented Understudy for Gisting Evaluation,常用于文本摘要。

2、回归问题评估指标

回归问题通常是用MSE,RMSE,MAPE等指标

MSE是均方误差(Mean Squared Error),真实值减去预测值,公式为

RMSE是均方根误差(Root Mean Squared Error),公式为

当模型因为个别离群点导致RMSE指标表现性不好时,可以考虑用MAPE指标。

MAPE是平均绝对百分比误差(Mean Absolute Precent Error),公式为

3 paddle的应用

3.1.Paddle

所在包:paddle.metric

  • 准确率Accuracy

参数:

  • AUC(ROC曲线下的面积)

参数:

  • 精准率(Precision)是被预测为正样例中实际为正的比例。

参数:

  • 召回率(Recall)是指得到的相关实例数占相关实例总数的比例。

参数:

3.2.Paddlenlp

所在包:

  • BLEU(bilingual evaluation understudy)是机器翻译常用指标

  • ChunlEvaluator是常用于序列标注任务,例如命名实体识别(NER),计算组块chunk的precision, recall and F1-score

  • DistinctDistinct是一种通过计算不同n-gram的数量来评估生成文本的文本多样性的算法。不同n-gram的数量越大,文本的多样性越高

  • AccuracyAndF1是计算Accuracy, Precision, Recall and F1 metric logic

  • MCC是计算 Matthews correlation coefficient (相关系数)
  • PearsonAndSpearman是计算Pearson correlation coefficient and Spearman's rank correlation coefficient .(相关系数)
  • Perplexity是计算交叉熵的时候用的

  • RougeL是基于LCS(最长公共子序列)的Recall-Oriented Understudy for Gisting Evaluation

参考:

常见32项NLP任务及其评价指标和对应达到SOTA的paper

paddlenlp

飞浆官网

更多推荐

Paddle——常见的评估指标