1. 评估指标的局限性

        要合理地运用评估指标,才可以发现模型本身的问题,不然反其道而行之得出错误的调参结论。

        先讲了TP、FP、FN、和FP这几个值。

这几个率真的是看一次忘一次,人都麻了

准确率的局限性

定义:分类正确的样本 占 总样本的个数的比例:

缺陷:当不同类别的样本比例非常不均衡的时候,占比大的类别往往成为影响准确率的最主要因素,当某一类的占比高达99%,且这一类模型都分对了,那意思是模型的准确率有99%吗?答案显然是不可能的呀。

        精确率和召回率的权衡

       这里一定要和准确率好好区分开

精确率的定义:分类正确的正样本个数 占 分类器判定为正样本的个数的比例。

召回率的定义:分类正确的正样本个数 占 真正的正样本个数的比例

他们两一直是一个很矛盾的指标,分类器往往需要尽量在“更有把握”时才把样本预测为正样本(分母在变少,精确率在变大),但此时往往会因为过于保守而漏掉很多“没有把握”的正样本,导致召回率的分子变少,从而整个召回率变少。

也就是说他们在相互扼制,也就是说,精确率和召回率也不是非常全面地衡量模型的性能,于是我们引出了PR曲线去衡量模型,做一个全面的评估:

P-R曲线的纵轴是精确率 横轴是召回率

PR曲线上的一个点代表着,在某一个参数/阈值下,该模型此时的召回率和精确率。直接看图,当召回率接近于0的时候,也就是召回率的分子非常低 (模型谨慎),此时精确率都很高,因为精确率分母在变小。

随着召回率在增加,精确率要满满下滑了,因为模型开始变得大胆了,不是那么有把握的也分到正类里面去,于是这时候就召回率的分子开始变大,但是精确率的分母也在变大,所以精确率在变小。这就可以衡量到什么阈值/参数下,多个模型的对比了

除此之外,F1 Score 也是综合反应一个模型的性能,F1 Score是精确率和召回率的调和平均值。

F1-Score指标综合了Precision与Recall的产出的结果。F1-Score的取值范围从0到1的,1代表模型的输出最好,0代表模型的输出结果最差。 例如:

当然还有ROC曲线!

        平方根误差的“意外”

RMSE经常被用来衡量回归模型的好坏,但是按照书上的例子,我们却看到了不论换什么模型RMSE都非常高,但事实却是95%的时间区间内的预测误差都小于1%。这是为啥呀?

在实际问题,如果存在个体偏离程度非常大的离群点,即使离群点数量非常少,也会让RMSE指标变得很差。

虽然是除平均了,但是有平方在,还是很大的。

于是针对这歌问题,我们可以从三个角度去思考。第一就是在数据的预处理的阶段将噪声/离群点过滤掉。第二就是不认为这是离群点,转而去提高模型的预测能力,将离群点也囊括进去。第三就是找更合适的指标去评估模型,例如平均绝对百分比误差。

综上!我们需要一组互补的指标去评估模型。

2. ROC曲线

ROC曲线的横坐标是假阳性率(FPR),纵坐标是真阳性率(TPR),FPR和TPR的计算方法是:

        如何绘制ROC曲线

        ROC曲线是通过不断移动分类器的“截断点”来生成曲线上的一组关键点的。

所谓的截断点其实就是threshold,高于这个threshold就划分为正类,低于这个threshold就划分为负类。

每一个截断点都会对应一个FPR和TPR,找到每个截断点对应的位置。然后连接所有点。

当阈值是0.9,对应只有一个TP,正类有10个,所以TPR = 1 / 10,没有错误样本,所以FPR=0,所以对应ROC曲线是 (0,0.1)

        如何计算AUC:

AUC指的是ROC曲线下的面积,只需要沿着ROC横轴做积分就好了。该值能够量化地反应基于ROC曲线衡量出的模型性能,AUC的取值越大越好,这是为啥呢?

        因为AUC越大,说明面积越大,面积越大,就说明曲线越靠近Y轴,也就是真阳率,换句话说也就是真阳率会比较高。

        ROC曲线相比P-R曲线有什么特点

相比于P-R曲线,ROC曲线有一个特点,就是当政府样本的分布发生变换时,ROC曲线的形状可以保持不变,而PR曲线的形状一般会发生变化,从而降低不同测试集带来的干扰,更加客观衡量模型本身的性能。

如果希望更多地看到模型在特定数据集上的表现,P-R曲线则可以更好更直观地反应出来

3. 评估样本间的距离

        余弦相似度:

余弦相似度的取值范围是 [-1,1], 相同两个向量之间的相似度为1. 我们可以做一个 1-操作,映射一下结果到 [0,2] 的空间上。

        为什么在一些场景中要使用余弦相似度而不是欧氏距离

        余弦距离关注的是向量之间的角度关系,并不关心他的绝对值的大小,我们可以理解为余弦距离关注的是方向,而欧氏距离关注的是距离。

在推荐系统,特征的维度往往都会很高,在这么高的维度下入如果算特征的欧氏距离,那会很大,但是算余弦距离,可能会很小。这主要是因为余弦相似度在高维的情况下依旧保持“相同为1,正交为0,相反为-1”的特性。

根据不同的业务,我们应该选用不同的距离去衡量。

        

4. AB测试的陷阱

AB测试就是有两种不同的模型,但是不知道实战效果怎么样,于是就划分人群实验组,对照组,对不同的人群用不同的模型,然后统计数据,作出判断。其中确保同一个用户每次只能分到同一个桶中,在分桶的过程中,用户的选取也必须是随机的,保持样本的无偏。

在对模型进行充分的历险评估之后,为什么还需要进行在线的AB测试

1. 离线的评估无法完全消除模型的过拟合影响,因此离线的评估结果无法完全替代线上评估结果

2. 离线评估无法完全还原线上的工程环境

3. 许多商业指标无法在离线评估得出。离线评估往往关注对于存量数据的评估,譬如ROC,P-R曲线。而线上评估可以得到更多的信息,用户点击率,留存时长等指标

5. 模型评估方法

在样本划分和模型验证的过程中,存在不同的抽样方法和验证方法,关键是在不同的问题下找到合适的评估方法。

    有哪些评估方法,各自的有缺点是啥?

Holdout检验

将原始的样本集合随机划分成训练集和验证集两部分,这么粗鲁的划分很明显最后的评估指标和分组有莫大的关系

交叉验证

首先将全部的样本划分成K个大小相等的样本子集,依次遍历这K个子集,每次都把子集座位验证集,其余的所有子集都座位训练集,进行模型的训练和评估,最后把k次的评估指标做加权平均处理。

        留一验证

每次留下一个样本去做为验证集,其余搜有样本作为训练集,杨本总数为n,依次对n个样本进行遍历演这个。再将评估指标也做一个加权平均。

交叉验证和留一验证都能保证所有样本都参与到训练和验证当中,取消划分数据集对指标的影响

        自助法

当数据集比较小的时候,如果再划分的话,数据集会更加小,于是我们对于总数为n的样本集合,进行n次有放回的随机抽样,得到大小为n的俊脸集,在采样过程中,有的样本会被重复采样,有的样本没有被抽出过。于是我们将这些没有被抽出过的点样本作为验证集,进行模型验证

        在自助法的采样过程中,对n个样本的进行n次自助抽样,当n趋向于无穷大,最终有多少数据从未被选择过?

6. 过拟合和欠拟合

        在模型评估过程中,过拟合和欠拟合具体是指什么现象。

        过拟合就是模型对于训练数据拟合呈现过当的情况,反映到评估指标上,就是模型在训练集上表现很好,但是在测试集和新数据上表现较差

欠拟合就是模型在训练和预测时的表现都不好的情况

  降低过拟合的方法

        1. 从数据入手,获得更多的训练集是解决过拟合问题最有效的手段。数据增强,GAN等方式

2. 降低模型复杂度,减少网络层数,神经元个数等,避免模型拟合过多的采样噪声

3. 正则化:L1,L2正则化,BatchNorm等方法。

写过一点关于L1,L2的解释,但后面肯定还要继续优化的

4. 用Bagging,降低单一模型拟合的风险,同时保留准确度。

百面机器学习:模型评估相关推荐

  1. 机器学习模型评估指标总结!

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:太子长琴,Datawhale优秀学习者 本文对机器学习模型评估指标 ...

  2. 机器学习模型评估与超参数调优详解

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:李祖贤  深圳大学,Datawhale高校群成员 机器学习分为两类 ...

  3. 【机器学习基础】非常详细!机器学习模型评估指标总结!

    作者:太子长琴,Datawhale优秀学习者 本文对机器学习模型评估指标进行了完整总结.机器学习的数据集一般被划分为训练集和测试集,训练集用于训练模型,测试集则用于评估模型.针对不同的机器学习问题(分 ...

  4. 机器学习——模型评估,选择与验证

    文章目录 机器学习--模型评估,选择与验证 训练集与测试集 为什么要有训练集与测试集 如何划分训练集与测试集 欠拟合与过拟合 欠拟合 过拟合 偏差与方差 模型误差来源 偏差与方差 验证集与交叉验证 为 ...

  5. 二、机器学习模型评估

    二.机器学习模型评估 2.1 模型评估:基本概念 错误率(Error Rate) 预测错误的样本数a占样本总数的比例m E = a m E=\frac{a}{m} E=ma​ 准确率(Accuracy ...

  6. 周志华机器学习--模型评估与选择

    周志华机器学习–模型评估与选择 第一章 绪论 第二章 模型评估与选择 第三章 线性模型 第四章 决策树 第五章 支持向量机 第六章 神经网络 第七章 贝叶斯分类器 第八章 集成学习和聚类 文章目录 周 ...

  7. 【机器学习基础】机器学习模型评估教程!

    译者:追风者,Datawhale成员 如何在投入生产前评估机器学习模型性能? 想象一下,你训练了一个机器学习模型.也许,可以从中选几个候选方案. 你在测试集上运行它,得到了一些质量评估.模型没有过度拟 ...

  8. 机器学习模型评估指标总结

    常用机器学习算法包括分类.回归.聚类等几大类型,以下针对不同模型总结其评估指标 一.分类模型 常见的分类模型包括:逻辑回归.决策树.朴素贝叶斯.SVM.神经网络等,模型评估指标包括以下几种: (1)二 ...

  9. 机器学习模型评估与预测

    模型评估与预测 1.1经验误差与过拟合 1.2 评估方法 1.2.1留出法(hold-out) 1.2.2交叉验证法 1.2.3 自助法 1.3性能度量 1.3.1 查准率,查全率,准确率 1.3.2 ...

  10. 机器学习模型评估与改进:网格化调参(grid search)

    文章目录 简单网格化搜索 参数过拟合的风险 网格搜索与交叉验证 模型调参接口: GridSearchCV函数 整体流程 GridSearchCV( )函数 对交叉验证进一步分析 不同核方法的情况 网格 ...

最新文章

  1. Linux平台 Oracle 18c RAC安装Part2:GI配置
  2. 2020.12.07.记录
  3. 进程注入后门工具Cymothoa
  4. 机器学习(五)——缓解过拟合
  5. mysql 大表 备份_MySQL大表备份的简单方法
  6. 深入浅出分析MySQL常用存储引擎
  7. 为长篇文档快速创建目录
  8. ajxs跨域 php_PHP Ajax 跨域问题最佳解决方案
  9. 工业大数据技术简介--来源、特点、关键问题以及案例
  10. 图像处理(一)图像灰度化的三种方式
  11. 用ROS来做无人测试平台系列之国外的一些RACECAR
  12. SAD算法的OpenCV实现
  13. 何新生的英语史(九)—看好莱坞学英语,就是这么简单 2
  14. Java IO有这么难吗?
  15. 仿真通过AXI_lite接口读写寄存器时axi_awready信号无法拉高的一种原因
  16. 一次由图片引起的致命崩溃问题
  17. Eigenvalue and singular value
  18. docker下载安装Zookeeper
  19. Android Tv版嵌套滑动实现极光云视听顶部导航效果
  20. 一个老程序员的自白:小公司大岗位,大公司小岗位,程序员应如何选择?

热门文章

  1. 倒谱法的基因周期检测matlab,两种基音周期检测方法
  2. 这 10 条河,「贡献」了全球 95% 的海洋塑料污染
  3. tspl 重置打印机命令_命令行添加删除打印机
  4. ROS 清理log文件
  5. 青蛙的约会—POJ1061
  6. 娱美德举办WEMIX空投活动以庆祝《传奇M》在全球发布!
  7. python-模块使用方法
  8. python爬取酷狗音乐url_python-从酷狗下载爬取自己想要的音乐-可以直接拿来体验哟...
  9. AtCoder - agc005_b(单调栈)
  10. QT软件开发之基础控件--2.4.4 QTextEdit文本编辑器