平均交集比聯集
平均交集比聯集(mIoU)是語意分割的標準量尺,在這類任務中模型必須為每一個像素標上類別(道路、汽車、天空、行人)。單看像素準確率在此是陷阱:若 80% 的像素是「道路」與「天空」,模型只要把大片區域塗對就能得高分,卻完全漏掉細瘦的行人。mIoU 修正了這點——它衡量每個類別的「預測區域」與「真實區域」重疊得多好,再公平地對各類別取平均,使小類別與大類別同等重要。
對單一類別,IoU(又稱 Jaccard 指數)是「預測與真實的重疊面積」除以「兩者聯集的面積」:IoU = 交集 / 聯集 = TP / (TP + FP + FN),計算的是像素。分子獎勵你標對的像素;分母同時懲罰你誤標成此類的像素(FP)與此類中你漏掉的像素(FN)。IoU 為 1 代表完美重疊;為 0 代表毫無重疊。關鍵在於:因為聯集在分母,你無法靠「過度塗抹」一個區域來灌水分數——多餘的錯誤像素會擴大聯集、壓低 IoU。
mIoU 接著是「資料集中所有類別之各類別 IoU 的算術平均」。這種對各類別取平均正是重點所在:一個只佔 1% 像素的類別,與一個佔 40% 像素的類別,對最終分數的貢獻相等,因此模型被迫去處理稀有與細瘦的結構,而不只是主宰畫面的背景。在 Cityscapes、ADE20K、Pascal VOC 等基準上,mIoU 就是回報的數字,而且它對小物件與邊界誤差遠比單純的像素準確率敏感。
留意細節。IoU 是把整個資料集中每個類別的像素彙整起來計算的(標準的「資料集層級」IoU),而非對「每張影像的 IoU」取平均——後者會不穩定地獎勵那些恰好含有某類別的影像。某張影像中缺席的類別貢獻零像素,但仍計入「對各類別的平均」。對於實例分割與全景分割,相關指標(遮罩 AP、Panoptic Quality)把同樣的重疊概念延伸到區分個別物件實例。又由於 IoU 不可微,訓練通常會優化一個替身(交叉熵、Dice 損失,或軟性 IoU 代理),而把 IoU 留作評估目標。
在一個 3 類別場景中,各類別 IoU 為道路 0.95、汽車 0.70、行人 0.30。像素準確率可能讀到 92%(道路佔多數),但 mIoU = (0.95+0.70+0.30)/3 = 0.65,誠實地反映出行人分割得很差。