团队提出多个想法以改进猫检测器:
- 解决将狗检测为猫的问题
- 解决将“大猫”(狮子、黑豹等)误认为猫的问题
- 改进系统对模糊图片的识别
-
...
你可以并行的对所有这些想法进行高效的评估。我通常建立一个电子表格,在查看大约100个检测错误的图片时将结果填入表格中,并加入一些注释帮助我记住特定的例子。用测试集中的4个例子举例,你的表格看起来如下所示:
上图中的第三个例子中大猫和模糊都做了标记:一个例子可能和多个类别有关。这也是为什么最底部的百分比之和不一定等于100%
尽管我在描述这个例子的时候首先就指定了错误的类别(狗、大猫,模糊)然后逐个检查每个检测错误的例子并对其归类,但在实际操作中,一旦你开始逐个检查实例,你可能会灵感迸发提出一个新的错误类别。例如,也许在检查几十张图片后,你发现很多检测错误的图片是被Instagram的滤镜处理过的。这时你可以回过头来在表格中添加一列Instagram分类。手动的检查算法识别错误的图片,并且询问一下自己作为一个活生生的人怎样/是否能够正确的标记标签,通常会激发你想出新的错误分类或者解决方案。
最有用的归类是你已经得出改进方案的分类。例如,Instagram分类,如果你能设法撤销Instagram滤镜将图片恢复成原图,对于解决这类识别错误会很有帮助。但是,你没有必要局限于你已经得到改进方案的分类。这个过程的目的是建立你对哪一块区域需要关注的直觉。
错误分析是一个迭代过程。在开始的时候你头脑中可能还没有分类。通过观察图片,你可能会产生有关错误分类的一些想法。然后随着这个过程的进行,你手动的归类了一些图片,你可能会受到启发创建一些新的分类。然后根据新的类别重新返回来重新观察图片。
假设你观察完100个例子之后,得出下表:
你就会知道解决狗识别的问题可以消除大约8%的错误,解决大猫和模糊的问题会消除更多的错误。那么你就可以针对后面两个归类展开工作。如果你的团队有足够的人手,你就可以朝着这两个方向并行的展开工作。你可以分配一些工程师解决大猫的问题,另外一些工程师解决模糊的问题。
错误分析不会得出一个可以告诉你怎么安排工作优先级的数学公式。你必须考虑你期望每个类别需要取得多大的进展,以及解决每个类别的问题所需要的工作量。
网友评论