幾何形狀上的一致性
Potato 如何為邊界框與多邊形報告經機遇校正的一致性——拆解為檢測、分類與定位三部分,並以 σ 和 KS 統計量對照經驗機遇基線。
Potato 把空間一致性拆成三個問題——標註者是否找到了相同的物件、是否給出了相同的名稱、是否放在了相同的位置——並且用經驗估計的機遇基線來回答第三個問題,而不是用原始 IoU。
原始 IoU 的問題
CVAT 的共識引擎與 V7 的共識環節都以原始 IoU 對照每個類別的閾值來比較標註者。兩者都沒有做任何機遇校正,這使得那個頭條數字本身無法解讀:
如果一個語料中每張圖片都只有一個居中的大目標,那麼無論誰來標註,平均 IoU 都會在 0.95 左右。這也包括那些根本沒看圖片、只在中間畫了一個框的標註者。
機遇校正的作用,就是把"這些標註者意見一致"和"這個任務根本沒有分歧的餘地"區分開。
在 1 − IoU 上套用 Krippendorff's α 行不通
這原本是這裡的初始方案,而從實證來看它是錯誤的預設選擇。
Braylan、Alonso 與 Lease(WWW 2022)以"所得的一致性分數能否正確地對標註者品質排序"作為評估候選距離函式的標準——這才是真正重要的性質——並報告稱:對於邊界框,α 會把普通 L2(0.687)排在 IoU(0.505)與 GIoU(0.507)之上,這與他們自己基於分佈的度量以及實踐者的判斷都恰好相反。
這背後有結構性的原因。IoU 距離被限制在 [0, 1] 區間內並且會飽和:隨機配對的兩個形狀幾乎總是 IoU 為 0,於是期望分歧收斂到約等於 1,α 退化為 1 − 平均距離,其中已不剩任何有效的機遇校正。
普通 IoU 還會在最關鍵的地方失去分辨力。兩個不相交的框,無論是彼此相鄰還是分處影像的對角,得分都是 0,因此恰恰在標註者產生分歧的地方,這個度量沒有梯度。
Potato 實際報告的內容
σ,主要度量
σ = 1 − 平均(同一條目內距離) / 平均(不同條目間距離)
這是把 α 自身的 1 − D_o/D_e 形式推廣到任意距離,其中機遇基線通過比較不同條目的標註來經驗地估計。
| σ | 含義 |
|---|---|
| 1.0 | 完全一致 |
| 0.0 | 標註者之間的一致程度,與他們在互不相關的條目上的表現無異 |
| 小於 0 | 系統性分歧,通常是定義問題,而非粗心 |
負值不會被截斷到零。"在同一張圖上比在不同圖上分歧更大"是一種真實且可診斷的狀態,把它藏起來對誰都沒有好處。
KS,配套度量
同一條目內與不同條目間兩組距離分佈之間的雙樣本 Kolmogorov–Smirnov 統計量。σ 比較的是兩個均值,可能被少數離群值拖動;KS 比較的是整個分佈,在條目難度參差不齊時更穩健。
兩者都要看。它們互相矛盾本身就是有用的資訊:這意味著少數條目承載了絕大部分分歧。
拆解
單一的空間一致性數字無法說明三種不同失效中發生了哪一種:
| 組成部分 | 問題 | 度量 |
|---|---|---|
| 檢測 | 他們究竟有沒有找到相同的物件? | 存在性上的名義 α |
| 分類 | 對已匹配的物件,他們給出的標籤是否相同? | 標籤上的名義 α |
| 定位 | 已匹配的物件是否位於相同位置? | σ 與 KS,外加 GIoU 距離 |
一位找全了所有物件卻把標籤全標錯的標註者,和一位標籤正確但框畫得鬆垮的標註者,是兩種不同的問題,而一個合併後的分數無法區分它們。
配置
agreement_metrics:
enabled: true報告位於 /admin/iaa。