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 的一致性。兩位在任何地方都不一致的標註者看上去完全一致,並且沒有任何一張圖片被送去複核。

修復它,意味著要追問"正確的數字本該是什麼",而文獻對幾何形狀並沒有一個定論。這就是我們的答案,並附上它的邊界:時間片段目前只有未經校正的度量,因為當各段影片長度不同時,"來自另一段影片的片段"並不是一個有意義的機遇比較物件。

延伸閱讀