Skip to content
Guides1 min read

原始 IoU 不等于一致性

在一份典型的检测语料上,标注者之间的平均 IoU 大约读作 0.95,即便标注者从未看过图片也是如此。一个经机遇校正的替代方案是什么样的,以及为什么在 IoU 距离上套用 Krippendorff's alpha 行不通。

Potato Team

每一个会报告标注者间一致性的计算机视觉标注平台,报告的都是对照每类阈值的原始 IoU。CVAT 的共识引擎如此,V7 的共识环节如此,Label Studio Enterprise 的指标清单也是精确匹配、数值差、IoU 与跨度重叠。

它们都没有做机遇校正,而缺少校正时,这个数字的含义并不是它看上去的那样。

具体地说,问题在哪

设想一份检测语料,其中每张图片都有一个大致居中的大目标。两位标注者都给它画了框。他们的框高度重叠,平均 IoU 算出来约 0.95,看板上显示一致性极佳。

现在把其中一位标注者换成一个"看都不看、在每张图中间画个框"的流程。平均 IoU 仍在 0.9 左右。

这个度量报告的是语料的性质——这个任务受约束到什么程度——而不是标注者的性质。这与百分比一致率在某一类别占主导时于类别标签上遭遇的失败完全相同,而自 1960 年 Cohen 提出 kappa 以来,那边的问题早已被认识清楚。

空间标注一直没有等价的修正。

显而易见的补救行不通

Krippendorff's α 接受任意距离函数。因此最直接的做法是在 1 − IoU 上套用 α,这也正是我们最初的方案。

它因为一个结构性原因而失败。α 计算的是 1 − D_o/D_e,其中 D_e 是随机配对下的期望分歧。IoU 距离被限制在 [0, 1] 区间内,而随机配对的两个框几乎总是 IoU 为 0。于是 D_e 收敛到约等于 1,整个系数退化为 1 − 平均观测距离,内部已不剩任何有效的机遇校正。

还有第二个问题。IoU 恰恰在标注者产生分歧的地方是平的:两个不相交的框,无论相邻还是分处图像的对角,得分都是 0。这个度量在你真正关心的区间里没有梯度。

这不只是理论上的异议。Braylan、Alonso 与 Lease(WWW 2022)以"所得的一致性分数能否正确地对标注者质量排序"——可以说是唯一重要的性质——来评估候选距离函数,并发现对于边界框,α 会把普通 L2(0.687)排在 IoU(0.505)与 GIoU(0.507)之上。这与他们自己基于分布的度量给出的排序、以及实践者给出的排序都恰好相反。

我们实际报告什么

σ,它保留了 α 的形式,但以经验方式估计机遇基线:

text
σ = 1 − 平均(同一条目内距离) / 平均(不同条目间距离)

分母是关键改动。不再假设某种随机配对的分布,而是去比较不同条目的标注。这就给出了"如果这些标注者看的不是同一个东西,他们之间会相距多远"的经验答案,而这正是机遇基线本应表达的东西。

σ读法
1.0完全一致
0.0与标注互不相关的图片并无二致
小于 0在同一张图上比在不同图上系统性地相距更远

我们不把负值截断到零。"在同一张图上比在不同图上分歧更大"是一种真实且可诊断的状态,而且它几乎总是意味着规范存在歧义,而非标注者粗心。把它藏起来对谁都没有好处。

在 σ 之外,我们还报告同一条目内与不同条目间两组距离分布之间的双样本 Kolmogorov–Smirnov 统计量。σ 比较的是两个均值,可能被离群值拖动;KS 比较的是整个分布。当两者互相矛盾时,说明少数条目承载了绝大部分分歧,这会告诉你该去打开哪些条目。

反正单一数字从来就不够

即便机遇校正做对了,单一的空间一致性数字仍然无法说明以下三件事中是哪一件出了问题:

  • 检测。 他们究竟有没有找到相同的对象?
  • 分类。 对已匹配的对象,他们给出的标签是否相同?
  • 定位。 已匹配的对象是否位于相同位置?

一位找全了所有对象却把标签全标错的标注者,和一位标签正确但框画得松垮的标注者,是完全不同的问题。纠正方式也不同。因此这三项是分开报告的。

掩码与三维需要各自的工具

对于像素掩码,"他们是否一致"与"数据集该记录谁的边界"是两个不同的问题。后者由 STAPLE 回答,它在估计潜在共识边界的同时,给出每位标注者的敏感度与特异度。这两项分开报告,因为分割不足与分割过度的纠正方式恰好相反。

STAPLE 还会按已表现出的可靠性加权,而不是数票,这在认真的标注者人数处于劣势时尤为重要。两位认真的标注者对三位噪声标注者:多数表决相对真值的 Dice 为 0.846,STAPLE 为 1.000。

对于三维立方体,请使用精确的带旋转三维 IoU。轴对齐的近似对水平的车载数据尚可,对无人机、手持与室内扫描则是错的,在那里它会制造出属于度量方式产物的分歧。

为什么拖到现在才做

诚实的回答是:先有的是那个缺陷。Potato 的裁决逻辑比较的是标注的键名,而图像模式会把所有内容存放在一个名为 _data 的键下。于是每一对图像标注都得到 1.0 的一致性。两位在任何地方都不一致的标注者看上去完全一致,并且没有任何一张图片被送去复核。

修复它,意味着要追问"正确的数字本该是什么",而文献对几何形状并没有一个定论。这就是我们的答案,并附上它的边界:时间片段目前只有未经校正的度量,因为当各段视频长度不同时,"来自另一段视频的片段"并不是一个有意义的机遇比较对象。

延伸阅读