《Machine Learning Yearning》第15章

本章主要讲了一个误差分析的方法。就是列一个表格,这个表格由一些错误分类的样本组成。观察它们的特点,例如是把狗识别成了猫,还是因为图像太模糊。统计出那些错误类别占的比例。这样就能估计出如果修改这个错误最多能消除的误差率。

15 Evaluating multiple ideas in parallel during error analysis

 你的团队对提升猫检测器有几个建议:

  • 修正你们的算法将狗识别为猫的这个错误。
  • 修正你们算法将大型猫科动物(狮子、豹子等)识别成家猫(宠物)这个错误。
  • 提升系统对模糊图像的性能。
  • ….

 你可以同时有效地评估所有这些想法。我一般会创建一个表格,将浏览那100个错误分类的开发集时填上去。我也会记下那些有可能帮助我记住特殊样本的注释。为了说明这个过程,让我们看一下你可能用4个开发集样本创建的表格:
这里写图片描述
 图像3同时有“大型猫科动物”和“模糊”这两列。因为有可能一个样本与很多个因素相关,所以底部的百分比或许就不等于100%

 尽管你可能第一次制定这个类别(狗、大型猫科动物、模糊图像),然后手动给这些样本分类。实际上,一旦你开始浏览这些样本,你很可能会发现新的错误类别。例如,你看了十几张照片,然后有很多错误照片经过了Instagram过滤的。你可以回去再添加一个“Instagram”列到表格里。人为地查看这些被算法错误分类的样本,然后思考你作为人类是如何/是否能正确标记这些图片,这会激发你提出新的错误分类类别和解决方案。

 最有帮助的错误分类是你有一个能改进这个错误的想法,例如,如果你有一个想法可以“消除”Instagram滤波器并恢复成原图,那么将Instagram类别添加到表格中最能帮助到你。但是你不必仅限于那些你知道如何改进的错误类别。这个过程的目标是建立你对最有希望的部分的直觉。

 错误分析是一个迭代的过程,如果你一开始没有考虑类别请不要担心。看了几张图以后,你或许能有一些错误类别的想法。手动分类一些图片后,你可能会考虑新的类别然后根据新类别重新检查图像,以此类推。

 假设你完成了对100个来自开发集的错误分类的分析,然后得到了以下内容。
这里写图片描述

 你现在知道做一个解决狗错分问题的项目最多能改进8%的误差。致力于大型猫或者模糊图像可能会消除更多的误差。因此,你应该从后两个类别中挑一个。如果你的团队有足够的人可以同时处理几个方向,你也可以要求一些工程师做大型猫,另一部分做模糊图像。

 错误分析不是产生一个标准的数学公式,这个公式告诉你最优任务是什么。你必须考虑你希望在不同类别上取得多少进展以及每个类别所需的工作量。

猜你喜欢

转载自blog.csdn.net/lisa_ren_123/article/details/81138797