Skip to content

ジオメトリの一致度

バウンディングボックスとポリゴンについて 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 が代わりに報告するもの

σ、主たる測度

text
σ = 1 − mean(within-item distance) / mean(between-item distance)

これは α 自身の 1 − D_o/D_e の形を任意の距離に一般化したもので、偶然ベースラインは異なる項目のアノテーション同士を比較することで経験的に推定します。

σ意味
1.0完全一致
0.0無関係な項目の場合と変わらない程度にしか一致していない
0 未満系統的な不一致。多くは不注意ではなく定義の問題

負の値は丸め上げません。「同じ画像上のほうが別々の画像上より離れている」というのは実在する診断可能な状態であり、隠しても誰の得にもなりません。

KS、補助的な測度

項目内距離と項目間距離の分布同士の二標本コルモゴロフ–スミルノフ統計量です。σ は二つの平均を比較するため少数の外れ値に引きずられますが、KS は分布全体を比較するので項目の難易度がばらついても崩れにくくなります。

両方を報告してください。両者が食い違うこと自体が情報になります。それは一部の項目が不一致の大半を担っていることを意味します。

分解

単一の空間一致度スコアでは、三種類の異なる失敗のどれが起きたのかを言えません。

成分問い測度
検出そもそも同じ対象を見つけたか存在に関する名義 α
分類対応づいた対象に同じラベルを与えたかラベルに関する名義 α
位置決め対応づいた対象が同じ位置にあるかσ と KS、加えて GIoU 距離

すべての対象を見つけたうえで全部ラベルを取り違えたアノテーターと、ラベルは正しいがボックスが緩いアノテーターは別種の問題であり、合算したスコアでは区別できません。

設定

yaml
agreement_metrics:
  enabled: true

レポートは /admin/iaa に表示されます。

関連ページ