影像分類

測試時擴增 (test-time augmentation)

測試時擴增藉由在推論時(而不只是訓練時)套用擴增來改善預測。對每一張測試影像,你產生若干個轉換後的版本,例如原圖加上它的水平翻轉、幾個裁切,也許再加上小幅的縮放變化,把它們全部送進同一個模型,再把得到的各類別機率平均成單一、更可靠的預測。

其直覺是透過對多個視角做集成來降低變異:每個轉換後的視角都是對同一內容稍微不同、帶有雜訊的一瞥,把它們的預測平均起來就能抵銷各自特有的錯誤,效果就像多模型集成一樣,卻不需要訓練任何額外的模型。經典的最簡版本是「翻轉 TTA」,即原圖加上它的水平鏡像;經典的較重版本則是過去在 ImageNet 上使用的十裁切(四個角加中心,各自再加翻轉)。

TTA 能可靠地帶來小幅的準確率與校準提升,且不需重新訓練,這正是它在競賽與高風險部署中常見的原因。代價在推論時付出:對 n 個視角取平均會把推論計算量大約乘上 n,因此它是用延遲與能耗去換準確率。測試時所用的擴增應該是保標籤的,也就是只有不會改變正確類別的轉換才有效。

把一張影像與它水平翻轉版本的 softmax 輸出平均起來,在 ImageNet 上常能免費換回零點幾個百分點的準確率,代價是每張影像要跑模型兩次。

又稱
TTA