目录

误差分析

类偏斜的误差度量

查准率和查全率之间的权衡

机器学习的数据


【此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出!】

误差分析


在本次课程中,我们将会讲到误差分析( Error Analysis)的概念。如果你准备研究机器学习的东西,或者构造机器学习应用程序,最好的实践方法不是建立一个非常复杂的系统,拥有多么复杂的变量,而是构建一个简单的算法,这样你可以很快地实现它。

构建一个学习算法的推荐方法为:

1. 从一个简单的能快速实现的算法开始,实现该算法并用交叉验证集数据测试这个算法。

2. 绘制学习曲线,决定是增加更多数据,或者添加更多特征,还是其它选择。

3. 进行误差分析:人工检查交叉验证集中算法产生预测误差的实例,看看这些实例是否有某种系统化的趋势。

如:以垃圾邮件过滤器为例,误差分析要做的是检验交叉验证集中我们的算法产生错误预测的所有邮件,看是否能将这些邮件按照类分组。例如医药品垃圾邮件,仿冒品垃圾邮件或者密码窃取邮件等。然后看分类器对哪一组邮件的预测误差最大,并着手优化。

思考怎样能改进邮件分类器。例如,发现是否缺少某些特征,记下这些特征出现的次数, 然后从出现次数最多的情况开始着手优化。

误差分析并不总能帮助我们判断应该采取怎样的行动。有时我们需要尝试不同的模型,然后进行比较,在模型比较时,用数值来判断哪一个模型更好更有效,通常做法是看交叉验证集的误差。

推荐在交叉验证集上来实施误差分析,而不是在测试集上。

类偏斜的误差度量


类偏斜情况表现为训练集中有非常多的同一种类的实例,只有很少或没有其它类的实例。

在类偏斜的情况下, 交叉验证集误差的大小是不能视为评判算法效果的依据(因为如果某类样本占大部分比率,如99%,即使模型最后把交叉验证集都判定为该类,得到的误差也是1%,虽然得到的误差很小,但是该模型的效果并不是合理)。

我们将算法预测的结果分成四种情况:

查准率/精确率( Precision): (Precision) = TP / (TP + FP)

查全率/召回率( Recall) : (Recall) = TP / (TP + FN)

如负类样本占大部分比率,如99%,即使模型最后把交叉验证集都判定为负类, 得到查全率是 0。

查准率和查全率之间的权衡


查准率和查全率作为偏斜类问题的评估度量值,在很多应用中,我们希望能够保证查准率和查全率的相对平衡。

假设算法输出的结果在 0-1 之间,我们使用阀值 0.5 来预测真和假。在不同阀值情况下,把查全率与查准率的关系绘制成图表, 曲线的形状根据数据的不同而不同:

我们希望有一个帮助我们选择这个阀值的方法。一种方法是计算 F1 值( F1 Score),其计算公式为:

我们选择使得 F1 值最高的阀值。

机器学习的数据


将不同的算法用于不同大小的训练集中,可以发现,随着训练集的增加,不同算法都能得到不错的预测效果:

这些趋势非常明显, 大部分算法都具有相似的性能。

这样的结果,在机器学习中引起了普遍共识: "取得成功的人不是拥有最好算法的人,而是拥有最多数据的人"。

这句话不是在所有的情况下都正确的,所以我们要先诊断算法是处于高偏差还是高方差,在高方差的情况下是正确的,而在高偏差的情况下并无效果。

机器学习-吴恩达-笔记-7-机器学习系统的设计相关推荐

  1. 机器学习-吴恩达-笔记-12-推荐系统

    目录 问题形式化 基于内容的推荐系统 协同过滤 向量化:低秩矩阵分解 推行工作上的细节:均值归一化 基于相似内容推荐和基于相似用户推荐(个人扩展) [此为本人学习吴恩达的机器学习课程的笔记记录,有错误 ...

  2. 机器学习-吴恩达-笔记-14-应用实例:图片文字识别

    目录 问题描述和流程图 滑动窗口 获取大量数据和人工数据 上限分析:哪部分管道得接下去做 [此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出!] 问题描述和流程图 图像文字识别应用,是从一张给 ...

  3. 机器学习-吴恩达-笔记-11-异常检测

    目录 问题的动机 高斯分布 算法 开发和评价一个异常检测系统 异常检测与监督学习对比 选择特征 多元高斯分布 使用多元高斯分布进行异常检测 [此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出! ...

  4. 机器学习-吴恩达-笔记-15-总结

    [此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出!] 机器学习是一门对科技.工业产生深远影响的重要学科. 机器学习的理论知识:微积分.线性代数.统计学.信息论等. 机器学习的实践框架:PyT ...

  5. 机器学习-吴恩达-笔记-13-大规模机器学习

    目录 大型数据集的学习 批量梯度下降 随机梯度下降 小批量梯度下降 随机梯度下降收敛 在线学习 映射化简和数据并行 [此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出!] 大型数据集的学习 如 ...

  6. 机器学习-吴恩达-笔记-10-降维

    目录 动机一:数据压缩 动机二:数据可视化 主成分分析问题 主成分分析算法 主成分分析的数量(选择k值) 重建的压缩表示(从低维还原回高维) 主成分分析法的应用建议 [此为本人学习吴恩达的机器学习课程 ...

  7. 机器学习-吴恩达-笔记-9-聚类

    目录 无监督学习:简介 K-均值算法(K-Means) 优化目标 随机初始化 选择聚类数 相似度/距离计算方法 聚类的衡量指标 [此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出!] 无监督学 ...

  8. 机器学习-吴恩达-笔记-8-支持向量机

    目录 优化目标 大边界的直观理解 大边界分类背后的数学 核函数-1 核函数-2 使用支持向量机 [此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出!] 优化目标 为了描述支持向量机,我们将会从 ...

  9. 机器学习-吴恩达-笔记-6-应用机器学习的建议

    目录 评估一个假设(假设函数) 模型选择和交叉验证集 诊断偏差和方差 正则化和偏差/方差 学习曲线 决定下一步做什么 [此为本人学习吴恩达的机器学习课程的笔记记录,有错误请指出!] 当我们运用训练好了 ...

最新文章

  1. update 改写 merge into
  2. TIOBE 8 月编程语言:C、Java 差距拉大,R 语言盛行
  3. 理解MySQL——复制(Replication)
  4. char[]:strlen和sizeof的区别
  5. 移植U-BOOT之支持烧写YAFFS文件系统以及制作U-BOOT补丁
  6. 高等数学同济第七版上册电子版_高等数学同济第七版(上册)第一章答案
  7. 今日恐慌与贪婪指数为79 贪婪程度有所上升
  8. azure云数据库_Azure中的新弹性数据库
  9. Python中tkinter.filedialog
  10. jms.jar 2.0_JMS API概述:JMS 1.x和JMS 2.x
  11. pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
  12. Android ROM制作教程,让你拥有自己喜欢的ROM
  13. 树莓派4b--红外遥控模块
  14. 浅谈人机关系在生活中的应用
  15. 数据结构学习笔记(考研 笔记 完结 西电)
  16. android模拟器连接不到本地服务器
  17. 3种常用的缓存读写策略
  18. 基于python的微信机器人_基于python的微信机器人
  19. 怎么用java做日历_怎么用java做日历?实例讲解
  20. greenplum官方监控工具 GPCC 安装、升级、卸载

热门文章

  1. Activiti 手工任务(manualTask)
  2. careercup-数学与概率 7.7
  3. linux 脚本使用第一篇
  4. 牛客网多校第9场 E Music Game 【思维+数学期望】
  5. vim:复制复制字符到vim的命令行窗口的4种方法
  6. 32位汇编寄存器含义解释
  7. PHP-线程安全与非线程安全版本的区别
  8. 问题:使用pandas中的DataFrame写入csv文件多出一行unnamed,如何解决呢??
  9. Failed to start component [StandardEngine[Catalina].StandardHost[localhost].错误解决方案
  10. 推荐系统实践:从多领域优化到AutoML框架