评估指标

线下使用机器学习评估指标,线上使用的是业务指标。需要进行多轮模型迭代使两个指标变化趋势相同。

分类指标

精确率和召回率

用于二分类问题,结合混淆矩阵。

精确率 P = TPTP+FP\frac{TP}{TP+FP}TP+FPTP​
召回率 R = TPTP+FN\frac{TP}{TP+FN}TP+FNTP​

精确率:也称作查准率。在被识别为正类别的样本中,确实是正类别的比例。

召回率:也成为查全率。在所有正类别样本中,被正确识别为正类别的比例

以召回率R为横轴,以精确率P为纵轴画P-R曲线,越靠近右上角性能越好。曲线下的面积为AP分数(Average Precision Score) 。

如果一个PR曲线完全包含另一个,则前者性能更优。如果两个曲线发生交叉,则比较平衡点,远离原点的更好。

F值

2F1=1P+1R\frac{2}{F_1} = \frac{1}{P} + \frac{1}{R}F1​2​=P1​+R1​

可泛化成为Fα=(1+α2)∗P∗Rα2∗P+RF_\alpha = \frac{(1+\alpha^2)*P*R}{\alpha^2*P+R}Fα​=α2∗P+R(1+α2)∗P∗R​

在不同的情况下,对精准率和召回率的偏重是不一样的,如在推荐系统中,为了尽可能少打扰用户,更希望推荐的内容是用户喜欢的,这时,精准率比较重要;而在逃犯检索系统中,更希望尽可能少漏掉逃犯,此时召回率比较重要。

当参数α\alphaα>1时,召回率有更大影响,可以考虑为,α\alphaα无穷大时,分母中的R和分子中的1都可忽略不计,则F=R,只有召回率起作用。

准确率和错误率

不要将精确率和准确率搞混。准确率是模型预测正确的结果所占的比例。

而且精确率仅仅适用于二分类概念。

ROC

接受者操作特征 Receiver Operating Characteristic (ROC)

解决了使用精确率等指标进行模型评估时,需要对预测概率设分类阈值,增添超参数,的问题。

真正率 TPR = TPTP+FN\frac{TP}{TP+FN}TP+FNTP​

假正率 FPR = FPFP+TN\frac{FP}{FP+TN}FP+TNFP​

以假正率为x轴,以真正率为y轴,ROC曲线越靠近左上角越好。此时TPR=1,FPR=0。在采用有限测试样例绘制ROC图时,无法画出光滑曲线。过程:给定m1m_1m1​个正例和m2m_2m2​个反例,根据预测结果对样例进行排序,把分类阈值设为最大,即把所有样例均预测成为反例,此时TPR=FPR=0,在(0,0)处标记一个点。然后,将分类阈值依次设为每个样例的预测值,依次将每个样例划分为正例。设前一个标记点坐标为(x,y)(x,y)(x,y),当前若为真正例,则对应标记点坐标为(x,y+1m1)(x,y+\frac{1}{m_1})(x,y+m1​1​),否则对应标记点坐标为(x+1m2,y)(x+\frac{1}{m_2},y)(x+m2​1​,y)。用线段连接相邻点。

相较于PR曲线,ROC曲线在正负样本的分布发生变化时更容易保持稳定。

AUC

Area Under ROC Curve (AUC)是指ROC曲线下的面积。取值越大,说明模型越可能将正样本放在负样本前面。AUC计算主要与排序有关,对预测分数没那么敏感。

lrank=1m1+m2∑x+∑x−I(f(x+)<f(x−)+0.5I(f(x+)=f(x−)))l_{rank} = \frac{1}{m_1+m_2} \sum_{x^+}\sum_{x^-} I(f(x^+)<f(x^-) + 0.5I(f(x^+) = f(x^-)))lrank​=m1​+m2​1​∑x+​∑x−​I(f(x+)<f(x−)+0.5I(f(x+)=f(x−)))

AUC=1−lrankAUC = 1-l_{rank}AUC=1−lrank​

在非均等代价下,ROC曲线不能直接反映出学习器的期望总体代价,而代价曲线可以。横轴是取值为[0,1]的正例概率代价,纵轴是取值为[0,1]的归一化代价。

cost01,cost10cost_{01}, cost_{10}cost01​,cost10​ 分别代表type one error和type two error。

P(+)cost=p∗cost01p∗cost01+(1−p)∗cost10P(+)cost = \frac{p*cost_{01}}{p*cost_{01} + (1-p)*cost_{10}}P(+)cost=p∗cost01​+(1−p)∗cost10​p∗cost01​​

costnorm=FNR∗p∗cost01+FPR∗(1−p)∗cost10p∗cost01+(1−p)∗cost10cost_{norm} = \frac{FNR*p*cost_{01} + FPR*(1-p)*cost_{10}}{p*cost_{01} + (1-p)*cost_{10}}costnorm​=p∗cost01​+(1−p)∗cost10​FNR∗p∗cost01​+FPR∗(1−p)∗cost10​​

对数损失

logistic loss = −logP(Y∣X)-logP(Y|X)−logP(Y∣X) = −1NC∑i=0N∑j=0Cyij∗logpij-\frac{1}{NC}\sum_{i=0}^N\sum_{j=0}^C{y_{ij}*logp_{ij}}−NC1​∑i=0N​∑j=0C​yij​∗logpij​

衡量预测概率分布和真实概率分布的差异性。取值越小越好。对预测概率敏感。

回归指标

平均绝对误差

平均绝对误差Mean Absolute Error,也称为L1范数损失。

MAE = 1N∑i=0N∣yi−pi∣\frac{1}{N}\sum_{i=0}^N{|y_i-p_i|}N1​∑i=0N​∣yi​−pi​∣

对数据分布的中值进行拟合。

缺点:

  • 有些模型(如XGBoost)必须要求损失函数有二阶导,不能直接优化MAE。

加权平均绝对误差Weighted Mean Absolute Error是其变种。比如可以考虑时间因素。

WMAE = 1N∑i=0Nwi∣yi−pi∣\frac{1}{N}\sum_{i=0}^N{w_i|y_i-p_i|}N1​∑i=0N​wi​∣yi​−pi​∣

平均绝对百分误差

MAPE = 100N∑i=0N∣yi−pi∣yi\frac{100}{N}\sum_{i=0}^N{\frac{|y_i-p_i|}{y_i}}N100​∑i=0N​yi​∣yi​−pi​∣​,要求yi≠0y_i\neq0yi​​=0

优点:

  • 其计算与量纲无关,易于比较。

缺点:

  • 对负值误差的惩罚大于正值误差(因为分母y小了)。
  • 在yiy_iyi​ = 0处无定义,或者太小的时候导致MAPE过大

均方根误差

对数据分布的平均值进行拟合。

RMSE = 1N∑i=0N(yi−pi)2\sqrt{\frac{1}{N}\sum_{i=0}^N{(y_i-p_i)^2}}N1​∑i=0N​(yi​−pi​)2​

缺点:

  • 对大误差样本有更大惩罚。有可能模型在95%的情况下都有较好的预测结果,但是剩下的情况导致模型的RMSE一直居高不下。
  • 对离群点敏感,健壮性不如MAE。

均方根对数误差

Root Mean Squared Logarithmic Error (RMSLE)

RMSLE = 1N∑i=0N(log(yi+1)−log(pi+1))2\sqrt{\frac{1}{N}\sum_{i=0}^N{(log(y_i+1)-log(p_i+1))^2}}N1​∑i=0N​(log(yi​+1)−log(pi​+1))2​

缺点:

  • 对预测值偏小的样本惩罚比对预测值偏大的样本惩罚更大。

  • 有可能无法直接优化RMSLE,但是若可以优化RMSE,可以先对预测目标进行对数变换ynew=log(y+1)y_{new}=log(y+1)ynew​=log(y+1)。

排序指标

// TODO

平均准确率均值

Mean Average Precision (MAP)

公式分两部分计算

AP@K =

归一化贴现累计收益

Normalized Discounted Cumulative Gain (NDCG)

比较检验

假设检验

我们不知道学习器泛化错误率,只能知道测试错误率。设泛化错误率是ϵ\epsilonϵ,测试错误率是ϵ^\hat\epsilonϵ^, 测试样本为m,其中有e个样本被误分类。则该学习器被测出来测试错误率为ϵ^\hat\epsilonϵ^的概率是P(ϵ^;ϵ)=C(m,ϵ^∗m)ϵϵ^∗m(1−ϵ)m−ϵ^P(\hat\epsilon;\epsilon)=C(m, \hat\epsilon*m)\epsilon^{\hat\epsilon*m}(1-\epsilon)^{m-\hat\epsilon}P(ϵ^;ϵ)=C(m,ϵ^∗m)ϵϵ^∗m(1−ϵ)m−ϵ^.

交叉验证t test

可采用5*2交叉验证:做5次2折交叉验证。每次2折交叉验证之前随即将数据打乱。

t=μ0.2∑i=15σi2t = \frac{\mu}{\sqrt{0.2\sum_{i=1}^5\sigma_i^2}}t=0.2∑i=15​σi2​​μ​

McNemar检验

若我们假设两学习器性能相同,应该有e01e_{01}e01​ = e10e_{10}e10​(下标分别表示两个学习器分类是否正确的情况). 变量|e01e_{01}e01​-e10e_{10}e10​|应当服从正态分布,均值为1,方差为e01e_{01}e01​+e10e_{10}e10​。称作卡方分布。

Friedman检验与Nemenyi后续检验

在一组数据集上比较多组算法。

距离

余弦距离

在文本、图像等领域,研究的对象特征维度很高,余弦相似度应用较广。欧氏距离的数值受到维度影响较大,范围不固定,含义比较模糊。

Reference

  • 《美团机器学习实践》by美团算法团队,第一章
  • 《机器学习》by周志华,第二章
  • 《百面机器学习:算法工程师带你去》by葫芦娃,第二章

机器学习基础专题:评估指标相关推荐

  1. 机器学习中的评估指标与损失函数

    1. 写在前面 在准备找工作面试时, 发现机器学习中的评估指标和损失函数是一个经常要问题的话题, 对于一个算法工程师,衡量模型的好坏以及怎么根据出现的问题进行调整是必备的技能,损失函数代表着模型的优化 ...

  2. 评估指标_机器学习评估方法与评估指标总结

    离线评估方法 离线评估的基本原理是在离线环境中,将数据集划分为"训练集"和"测试集",用"训练集"训练模型,用"测试集" ...

  3. 机器学习框架及评估指标详解

    目录 机器学习的步骤 train_test_split函数的详解 机器学习评估指标 分类模型评估指标

  4. 【机器学习】--模型评估指标之混淆矩阵,ROC曲线和AUC面积

    一.前述 怎么样对训练出来的模型进行评估是有一定指标的,本文就相关指标做一个总结. 二.具体 1.混淆矩阵 混淆矩阵如图:  第一个参数true,false是指预测的正确性.  第二个参数true,p ...

  5. 机器学习基础专题:特征工程

    特征工程 特征提取 将原始数据转化为实向量之后,为了让模型更好地学习规律,对特征做进一步的变换.首先,要理解业务数据和业务逻辑. 其次,要理解模型和算法,清楚模型需要什么样的输入才能有精确的结果. 探 ...

  6. 机器学习基础专题:样本选择

    样本选择 选择最少量的训练集S⊂\sub⊂完整训练集T,模型效果不会变差. 优势: 缩减模型计算时间 相关性太低的数据对解决问题没有帮助,直接剔除 去除噪声 数据去噪 噪声数据 特征值不对(缺失.超出 ...

  7. 机器学习基础专题:高斯混合模型和最大期望EM算法以及代码实现

    高斯混合模型 混合模型是潜变量模型的一种,是最常见的形式之一.而高斯混合模型(Gaussian Mixture Models, GMM)是混合模型中最常见的一种.zzz代表该数据点是由某一个高斯分布产 ...

  8. 机器学习基础专题:逻辑回归

    逻辑回归 广义线性模型. 原理 输入 训练集数据T=(x1,y1)...(xM,yM)T = {(x_1,y_1) ... (x_M,y_M)}T=(x1​,y1​)...(xM​,yM​),xi∈X ...

  9. 机器学习基础专题:感知机

    感知机 原理 思想是错误驱动.一开始赋予w一个初始值,通过计算被错误分类的样本不断移动分类边界. 输入 训练集数据D=(x1,y1)...(xM,yM)D = {(x_1,y_1) ... (x_M, ...

最新文章

  1. linux3.0 nand分区,OK6410(256MRAM2Gnandflash) Linux3.0.1内核移植
  2. MongoDB 空指针引用拒绝服务漏洞
  3. 华南师范大学计算机学院广东录取,华南师范大学2020年广东省各批次分专业录取分数统计(含位次)...
  4. php mysql上传多张图片_PHP实现一次性多张图片上传功能
  5. kafka manager 2.0 工具下载 已打包完成
  6. java注解 @SuppressWarnings注解用法
  7. 函数加正则实现简单计算器
  8. QA:阿里云K8s启动容器后无法访问网络
  9. 畅捷通T+任意文件上传(CNVD-2022-60632 )漏洞复现
  10. mysql 字段 符号_mysql数据库字段带符号的问题
  11. VBS写出有趣的整人代码
  12. xsmax无法进入dfu模式_iPhoneXS/XSMax如何强制重启?如何进入恢复模式或DFU模式?...
  13. 可能是全网唯一Elastic/Kibana认证考试报名还有优惠的地方
  14. HTML网页上播放AVI视频代码示例
  15. regulator框架
  16. linux小记 查看dd进度,linux小记:查看dd进度
  17. 有关与windows的一些资料以及链接(一)
  18. iphone相册储存空间已满_苹果iPhone手机存储空间满了怎么办以及解决方法
  19. 度阴山先生的《知行合一王阳明》有感
  20. 复现东方证券研报--特质波动率因子研究

热门文章

  1. SQL 基础之DDL语句创建和管理表(十四)
  2. 仓库管理系统gitlab
  3. 借助亚马逊S3和RapidMiner将机器学习应用到文本挖掘
  4. HP1020打印机“传递给系统调用的数据区域太小” 如何处理?
  5. HDU 1052 Tian Ji -- The Horse Racing
  6. [C# 开发技巧系列]如何动态设置屏幕分辨率
  7. Helloj2ee WPF书评系列——缘起
  8. FPGA异步时序和多时钟模块
  9. 51单片机模块化编程初识
  10. 大学最重要的七项学习