机器学习常用的评价指标
一、分类问题
混淆矩阵
如图所示,混淆矩阵其实就是一个表格,以二分类任务来说,混淆矩阵中有四个值
TP–预测值为正且真实值为正
FP–预测值为正且真实值为负
FN–预测值为负且真实值为正
TN–预测值为负且真实值为负
显然,TP和FN占比越高的模型分类效果越好,这就引出了机器学习评价指标中最常用的一个–准确率,其次,为了评价一个模型的性能,在混淆矩阵的基础上还定义出了几个其他指标,如查全率、查准率。
准确率
准确率(accuracy)的计算公式如下所示
准确率表示了一个模型分类正确的样本数占总样本数的比例,但单纯使用准确率并不能很好的评价一个模型,还需要用到其他的指标,原因是通常情况下样本类别不平衡。
查准率
查准率又叫做精确率(precision),计算公式如下
查准率表示在所有被预测为正例的样本中,真正例所占的比例
查全率
查全率又叫做召回率(recall),计算公式如下
查全率表示在所有真实为正例的样本中,被预测为正例的样本所占的比例
查准率和查全率之间的矛盾
最理想的模型当然是准确率、查准率、查全率都为100%的模型,但实际中根本不可能有这种模型
假设我们有200个样本,其中20个正例,180个反例,当某一模型的分类结果如下表所示时可以求得
accuracy=90%
precision=50%
recall=100%
positive | negative | |
---|---|---|
positive | 20 | 20 |
negative | 0 | 160 |
如果我们的应用场景是疲劳检测,我们希望能将所有的疲劳情况检测出来,即我们希望recall为100%,那这个模型就能满足我们的需求,但如果我们的应用场景希望precision更高一些,也可以舍弃recall
F-score
计算公式如下所示
β是用来平衡Precision,Recall在F-score计算中的权重,取值情况有以下三种:
取1,表示Precision与Recall一样重要
取小于1,表示Precision比Recall重要
取大于1,表示Recall比Precision重要
一般情况下,β取1
F-score越大说明模型质量更高,但还要考虑模型的泛化能力,F-score过高可是因为模型过拟合
PR曲线
P-R曲线刻画查准率和查全率之间的关系,如图所示横轴是查全率,纵轴是查准率
如果一个分类器的P-R曲线被另一个学习器的P-R曲线完全包住,则可断言后者的性能优于前者,例如上面的A和B优于学习器C,但是A和B的性能无法直接判断,但我们往往仍希望把学习器A和学习器B进行一个比较,我们可以根据曲线下方的面积大小来进行比较,但更常用的是平衡点或者是F1-score。平衡点(BEP)是查准率=查全率时的取值,如果这个值较大,则说明学习器的性能较好。
ROC曲线
ROC的全称是Receiver Operating Characteristic Curve,中文名字叫“受试者工作特征曲线”,曲线的坐标分别为真正例率(TPR)和假正例率(FPR),定义如下:
ROC曲线如下图所示
绘图过程很简单:给定m个正例子,n个反例子,根据学习器预测结果进行排序,先把分类阈值设为最大,使得所有例子均预测为反例,此时TPR和FPR均为0,在(0,0)处标记一个点,再将分类阈值依次设为每个样例的预测值,即依次将每个例子划分为正例。设前一个坐标为(x,y),若当前为真正例,对应标记点为(x,y+1/m),若当前为假正例,则标记点为(x+1/n,y),然后依次连接各点。因现实任务中通常利用有限个测试样例来绘制ROC图,因此应为无法产生光滑曲线,如右图所示。
当绘制完成曲线后,可以对模型进行量化的分析,此时需要引入一个新的概念,就是AUC(Area under roc Curve),是指ROC曲线下的面积大小,而计算AUC值只需要沿着ROC横轴做积分就可以了。AUC的值越大,说明该模型的性能越好。
二、回归问题
1.均方误差
(mean squared error,mse)
观测值与真值偏差的平方和与观测次数的比值:
这就是线性回归中最常用的损失函数,线性回归过程中尽量让该损失函数最小。那么模型之间的对比也可以用它来比较。
MSE可以评价数据的变化程度,MSE的值越小,说明预测模型描述实验数据具有更好的精确度。
2.均方根误差(标准误差)
(root mean squard error,RMSE)
标准差是方差的算术平方根。
标准误差是均方误差的算术平方根。
标准差是用来衡量一组数自身的离散程度,而均方根误差是用来衡量观测值同真值之间的偏差,它们的研究对象和研究目的不同,但是计算过程类似。
它的意义在于开个根号后,误差的结果就与数据是一个级别的,可以更好地来描述数据。标准误差对一组测量中的特大或特小误差反映非常敏感,所以,标准误差能够很好地反映出测量的精密度。这正是标准误差在工程测量中广泛被采用的原因。
3.平均绝对误差
(mean absolute error,MAE)
平均绝对误差是绝对误差的平均值:
平均绝对误差能够更好地反映预测值误差的实际情况。