Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >秘籍0x02基础误差分析

秘籍0x02基础误差分析

作者头像
上善若水.夏
发布于 2018-09-28 03:36:25
发布于 2018-09-28 03:36:25
3860
举报
文章被收录于专栏:上善若水上善若水
13-19章
  1. 快速构建并迭代你的第一个系统 试图在一开始就设计和构建出完美的系统会有些困难,不妨先花几天的时间构建并训练一个最基础的系统。 或许这个最基础的系统离我们所能构建的“最佳”系统相去甚远,但研究里面的基础功能也很有价值:你会很快地找到一些线索来帮助决定在什么方向投入时间
  2. 误差分析:根据开发集样本评估想法。 误差分析(Error Analysis) 指的是检查算法误分类的开发集样本的过程,以便你找到造成这些误差的原因。这将帮助你确定项目优先级(就像上面的例子提到的)并且获得关于新方向的灵感 。 一个想法对误差是否有改进,可以考虑极限的方式。 把精力放在改进空间最大的区域。
  3. 清洗误标注的开发集和测试集样本。 基于统计数据进行决策。
  4. 将大型开发集拆分为两个子集,专注其一。 将开发集明确地分为 Eyeball 和 Blackbox 开发两个子集将很有帮助,它使你了解在人为的误差分析过程中 Eyeball 开发集何时开始发生过拟合。 发生过拟合的时候,可以把更多的Blackbox 中的元素放到Eyeball中。
  5. Eyeball 开发集应该大到能够让你对算法主要的错误类别有所察觉。如果你正在处理一项人类表现良好的任务(比如识别图像中的猫),下面是一些粗略的指导方案 :
    • 如果分类器在 Eyeball 开发集上只犯错 10 次,这个开发集就有点小了。只有 10 个错误样本的话,很难准确估计不同错误类别的影响。但如果数据非常少且不能提供更多的 Eyeball 开发集样本时,聊胜于无,这将有助于确立项目的优先级。
    • 如果分类器在 Eyeball 开发集上样本上犯了约 20 次错误,你将会开始大致了解主要的误差来源。
    • 如果有约 50 个错误样本,你将会比较好地了解主要的误差来源。
    • 如果有约 100 个错误样本,你将会很清楚主要的误差来源。我见过有人手动分析更多的错误样本——有时候多达500个。只要你有足够多的数据,这将是无害的。

    Eyeball 开发集的大小将主要取决于你能够手动分析样本的时间,以及你所拥有的访问数据的权限;

  6. 小结:基础误差分析
    • 当你开始一个新项目,尤其是在一个你不擅长领域时,很难正确猜测出最有前景的方向。
    • 所以,不要在一开始就试图设计和构建一个完美的系统。相反,应尽可能快(可能在短短几天内)地构建和训练一个基本系统。然后使用误差分析去帮助你识别出最有前景的方向,并据此不断迭代改进你的算法。
    • 通过手动检查约 100 个算法错误分类的开发集样本来执行误差分析,并计算主要的错误类别。用这些信息来确定优先修正哪种类型的错误。
    • 考虑将开发集分为人为检查的 Eyeball 开发集和非人为检查的 Blackbox 开发集。如果在 Eyeball 开发集上的性能比在 Blackbox 开发集上好很多,那么你已经过拟合 Eyeball 开发集,并且应该考虑为其获得更多的数据。
    • Eyeball 开发集应该足够大,以便于算法有足够多的错误分类样本供你分析。对很多应用来说,含有1000-10000个样本的 Blackbox 开发集已足够。
    • 如果你的开发集不够大到可以按照这种方式进行拆分,那么就使用 Eyeball 开发集来用于人工误差分析、模型选择和调超参。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.05.23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Macheine Learning Yearning学习笔记(三)
Chapter 13、Build your first system quickly, then iterate(快速构建第一个系统,然后再一步步迭代)
yuquanle
2019/07/23
3200
Macheine Learning Yearning学习笔记(三)
18. Eyeball和Blackbox开发集应该多大?
你的 Eyeball 开发集应该足够大,大到可以让你了解到算法的主要错误类别。如果你正在从事一项人类可以表现很好的任务(如识别图像中的猫咪),下面是一些指导方针: • 一个使你分类器犯错10次的Eyeball开发集将会被认为是非常小的。只有10个错误,很难准确估计不同错误类别的影响。但是如果你的数据非常少,而且不能分出更多的Eyeball开发集,有总比没有好,这将有助于项目的优先顺序。 • 如果分类器在Eyeball开发集上犯错约20个样本,你将会大致了解主要的错误来源。 • 如果有约50个错误,你将会比较好的了解错误的来源。 • 如果有约100个错误,你将会很清楚错误的来源。我见过有人手动分析更多的错误——有时候多达500个。只要你有足够的数据。 假设你的分类器有5%的错误率,为了确保Eyeball开发集中有100个错误标记的样本,Eyeball开发集大概有2000个样本(因为0.05*2000 = 100).分类器的错误率越低,为了获取足够多的错误来分析,Eyeball开发集需要足够大。 如果你正在做一个连人类都不能做好的任务,那么检查Eyeball开发集的联系将没有什么必要。因为很难找出算法不能正确分类一个样本的原因。这种情况下,你可能会忽略Eyeball开发集。我们将在后面的章节继续讨论这些指导方针。
YingJoy_
2018/05/09
8611
18. Eyeball和Blackbox开发集应该多大?
吴恩达《ML Yearning》| 基础的误差分析& 偏差、方差分析
MachineLearning YearningSharing 是北京科技大学“机器学习研讨小组”旗下的文献翻译项目,其原文由Deep Learning.ai 公司的吴恩达博士进行撰写。本部分文献翻译工作旨在研讨小组内部交流,内容原创为吴恩达博士,学习小组成员只对文献内容进行翻译,对于翻译有误的部分,欢迎大家提出。欢迎大家一起努力学习、提高,共同进步!
马上科普尚尚
2020/05/14
3050
吴恩达《ML Yearning》| 基础的误差分析& 偏差、方差分析
19. 总结:基本错误分析
• 不要一开始就尝试设计和构建完美的系统,而是尽可能快的建立和训练一个基础的系统(几天之内),然后使用错误分析。帮助你找到最优的方向,并迭代改进你的算法。
YingJoy_
2018/05/09
6070
解读吴恩达新书的全球第一帖 (上)
在教完深度学习系列后,吴恩达 (之后称大神) 最近在继续完成他原来编写的《Machine Learning Yearning》一书 (翻译成机器学习秘籍)。该书现在只完成到第 19 章 (总共有 55 章),我读完目录总结出该书要讲的七个要点,如下:
用户5753894
2019/07/08
3740
解读吴恩达新书的全球第一帖 (上)
17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个
假设你有一个含有5000个样本的大型开发集,其中有20%的错误率。这样,算法对约1000个图片进行错误分类。手动检查1000张图片是非常耗费时间的, 所以我们可能决定在错误分析中不使用所有的图片。 在这种情况下, 我会明确的将开发集分为两个子集,只看其中一个子集,另一个不看。你可能会在你查看的那部分数据中过拟合,此时你可以使用那部分未使用的数据来进行调参。
YingJoy_
2018/05/09
6331
17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个
博客 | Machine Learning Yearning 要点笔记
Andrew Ng. 的新书终于出完了。薄薄一百多页的小册子,翻下来其实是一堆实操经验集合。感觉还是有一定借鉴意义的,按照我自己的理解简单地整理如下,也不展开说了。有过实际经验的肯定心里有数。
AI研习社
2018/10/24
4760
Macheine Learning Yearning学习笔记(四)
Chapter 20、Bias and Variance: The two big sources of error(偏差和方差是误差的两大来源)
yuquanle
2019/07/23
3480
吴恩达《机器学习训练秘籍》:7 条关于项目实践的实用建议
翻译 | shawn 出品 | 人工智能头条(公众号ID:AI_Thinker) 《机器学习训练秘籍》(Machine Learning Yearning)是吴恩达的新作,主要讲的是如何应用机器学习算法以及如何构建机器学习项目。本文从这本书中选出了 7 条非常有用的建议。 近年来,人工智能、机器学习和深度学习迅猛发展,给许多行业带来了变革。吴恩达是业内的领军人物之一,他是在线课程项目 Coursera 的联合创始人,前百度 AI Group 领导人,前 Google Brain 项目负责人。目前他正在编写
用户1737318
2018/06/05
5230
如何正确地做误差分析,NLP研究人员们需要学习一下
尝试分析机器学习模型在什么时候、以什么方式、由于什么原因失效,我们把这称为「误差分析(error analysis)」。对科研人员来说,他们需要通过误差分析选择后续的改进方向;模型的实际使用者们也需要根据误差分析来确定模型部署的许多细节。由于误差分析对后续的行动方向有显著的影响,如果误差分析中出现了偏倚,或者误差分析不完整,很可能会带来我们不想看到的后果。
AI科技评论
2019/08/23
1.5K0
26. 训练集误差分析
你的算法必须在训练集上表现得很好,才能期望它在开发集和测试集上能够有着良好的表现。除了先前提到的用于处理高偏差的技术外,我通常也会在训练数据上进行误差分析,处理方式类似于在开发集上设置一个 Eyeball 开发集。当你的算法有着高偏差时(例如算法没有很好拟合训练集的时候)这将有所帮助。 举个例子,假设你正在为一个应用程序构建一个语音识别系统,并收集了一组志愿者的音频片段。如果系统在训练集上表现不佳,你可能会考虑以约 100 个算法处理得很差的样本作为一组并人为去听它们,从而知道训练集误差的主要种类。类似于开发集上的误差分析,你可以计算不同类别的错误样本数量:
YingJoy_
2018/06/04
1.5K2
深度学习教程 | AI应用实践策略(下)
本系列为吴恩达老师《深度学习专项课程(Deep Learning Specialization)》学习与总结整理所得,对应的课程视频可以在这里查看。
ShowMeAI
2022/04/14
1.2K0
深度学习教程 | AI应用实践策略(下)
[DeeplearningAI 笔记]第三章 2.1-2.3 误差分析
吴恩达老师课程原地址: https://mooc.study.163.com/smartSpec/detail/1001319001.htm
演化计算与人工智能
2020/08/14
3190
[DeeplearningAI 笔记]第三章 2.1-2.3 误差分析
结构化机器学习项目
当一个算法最终应用的时候,出了问题,那我们怎么优化呢?优化的方法可能有很多,比如收集更多的数据,让数据的分布更加合理(更加分散,覆盖更多的情况),训练更长时间,使用adam替代梯度下降,尝试更大的网络,更小的网络,尝试dropout,尝试L2正则化,修改网络结构(修改激活函数,网络各层的节点数目)等等。
大龄老码农-昊然
2021/05/14
5370
结构化机器学习项目
22. 对比最优误差率
在我们的猫咪识别实例中,这个“想法”的错误率指的是——最优分类器的错误率接近0%,就像一个人可以很轻松的识别它。而且随时可以进行识别,我们希望机器也可以做到这点。 还有一些问题是比较困难的。例如:假设你建立了一个语音识别系统,并且发现有14%的音频杂音非常多,即使一个人也很难听出音频中在说什么。在这种情况下,这个“最优的”语音识别系统的误差大约为14%。 假设在这个语音识别系统中,你的算法效果如下: • 在训练集上的误差 = 15% • 在开发集上的误差 = 30% 在训练集上的效果接君最优误差14%。因此,在偏差和训练集上面进行改进是不会取得太大的效果的。然而这个算法并不适用于开发集;因此,由于方差的原因,在这里有很大的改进空间。 这个例子于上一章节的第三个例子类似,它有在训练集上有15%的误差,在开发集上有30%的误差。如果最优分类器的误差接近于0%的话,则训练集上有15%的误差改进空间非常大,减少偏差是非常有效的。但是如果最优错误率约为14%,那么近乎相同的训练集的数据告诉我们我们分类器是很难提高的。 对于最优错误率远大于0%的问题,这里有一个关于算法错误的更详细的分类。我们继续使用上面的语音识别示例,可以按如下方式分解在开发集上的30%误差。(在测试集上也可以类似进行错误分析) • 最优误差率 (“不可避免的偏差”): 14%. 假设我们认为,即使世界上最好的语言我们仍会有14%的误差,我们可以把这个看作为不可避免的部分。 • 可避免的偏差 : 1%.由训练集上的误差于最优误差的差值计算得到。3 • 方差 : 15%.训练集与开发集上误差的区别。 由我们之前的定义,我们定义这两者关系如下:4 偏差 = 最优误差(不可避免的偏差) + 可避免的偏差 这个可避免的偏差反映了你算法的在训练集上与最优分类器直接的差别。 方差的定义与之前的定义一样,从理论上讲,我们可以通过对大量训练集的训练,将方差减少到接近0%的水平。因此,如果数据量足够大,所有的方差都是可避免的,反之不可避免。
YingJoy_
2018/05/09
5682
吴恩达新书《机器学习训练秘籍》六大要点总结 | 资源
近日,一位名叫Niklas Donges的工程师小哥发表了一篇博客文章,提炼出了《机器学习训练秘籍》中的六大要点。
量子位
2019/04/23
3510
吴恩达新书《机器学习训练秘籍》六大要点总结 | 资源
算法金 | 决策树、随机森林、bagging、boosting、Adaboost、GBDT、XGBoost 算法大全
决策树是一种简单直观的机器学习算法,它广泛应用于分类和回归问题中。它的核心思想是将复杂的决策过程分解成一系列简单的决策,通过不断地将数据集分割成更小的子集来进行预测。本文将带你详细了解决策树系列算法的定义、原理、构建方法、剪枝与优化技术,以及它的优缺点。
算法金
2024/06/25
6510
算法金 | 决策树、随机森林、bagging、boosting、Adaboost、GBDT、XGBoost 算法大全
03.结构化机器学习项目 W2.机器学习策略(2)
几乎所有的机器学习程序可能会有50个不同的方向可以前进,并且每个方向都是相对合理的,可以改善你的系统?如何集中精力
Michael阿明
2021/02/19
3690
机器学习各类算法比较
导语:机器学习算法太多了,分类、回归、聚类、推荐、图像识别领域等等,要想找到一个合适算法真的不容易,所以在实际应用中,我们一般都是采用启发式学习方式来实验。通常最开始我们都会选择大家普遍认同的算法,诸如SVM,GBDT,Adaboost,现在深度学习很火热,神经网络也是一个不错的选择。假如你在乎精度(accuracy)的话,最好的方法就是通过交叉验证(cross-validation)对各个算法一个个地进行测试,进行比较,然后调整参数确保每个算法达到最优解,最后选择最好的一个。但是如果你只是在寻找一个“足够
IT派
2018/03/29
8380
机器学习各类算法比较
第十一章 应用机器学习的建议
该系列文章为,观看“吴恩达机器学习”系列视频的学习笔记。虽然每个视频都很简单,但不得不说每一句都非常的简洁扼要,浅显易懂。非常适合我这样的小白入门。 本章含盖 11.1 决定下一步做什么 11.2
tomas家的小拨浪鼓
2019/03/15
4660
推荐阅读
相关推荐
Macheine Learning Yearning学习笔记(三)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档