专栏首页上善若水秘籍0x02基础误差分析

秘籍0x02基础误差分析

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 开发集来用于人工误差分析、模型选择和调超参。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • L004Linux和androidNDK之c代码风格及约定

    上善若水.夏
  • 022android初级篇之android的Context

    Interface to global information about an application environment. This is an abs...

    上善若水.夏
  • 009android初级篇之APP中使用系统相机相册等集成应用

    这是第一种方式 在启动相机前先指定好图片的文件位置,通知intent,同时也保留在成员变量中。然后在函数中,可以直接打开该文件

    上善若水.夏
  • 17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个

    假设你有一个含有5000个样本的大型开发集,其中有20%的错误率。这样,算法对约1000个图片进行错误分类。手动检查1000张图片是非常耗费时间的, 所以我们可...

    YingJoy_
  • 17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个

    YingJoy_
  • 倍轻松多店齐开,想把轻松体验馆开进你心里

      最近有个云南的朋友跟我说:“在昆明长水机场见到倍轻松的新体验馆,感觉好舒服。”真是一个观察入微的朋友。

    互联资讯
  • SAP ABAP实用技巧介绍系列之 在xslt里call ABAP method

    line 16 定义一个local variable,其值为匹配的title 节点的value line 18: call ABAP method ZCL_T...

    Jerry Wang
  • 操作系统入门(四)存储器管理

    -计算机系统中存储器一般分为内存储器和辅助存储器两级 -内存可以分成系统区和用户区两部分,系统区用来存储操作系统等系统软件,用户区用于分配给用户作业使用

    看、未来
  • 别乱提交代码了,看下大厂 Git 提交规范是怎么做的!

    git是现在市面上最流行的版本控制工具,书写良好的commit message能大大提高代码维护的效率。但是在日常开发中由于缺少对于commit message...

    搜云库技术团队
  • 别乱提交代码了,看下大厂 Git 提交规范是怎么做的!

    现在市面上比较流行的方案是约定式提交规范(Conventional Commits),它受到了Angular提交准则的启发,并在很大程度上以其为依据。约定式提交...

    Erwin

扫码关注云+社区

领取腾讯云代金券