自監督與表徵學習

SwAV

SwAV(Swapping Assignments between Views,交換視角間的分配)用線上分群取代成對比較。它不問「這兩個嵌入是否靠近」,而問「這兩個視角是否屬於同一群」,並透過「用一個視角的特徵去預測另一個視角的群分配」來學習。這就繞開了「每張影像都得與其他每張影像比較」的需求,因此 SwAV 不需要龐大的顯式負樣本庫,卻仍能阻止表徵崩潰。

其機制使用一組固定數量 K 的可訓練原型向量(prototype),可把它們想成學習而得的群中心。對每個視角,將其嵌入與原型比較,計算出柔性的群分配(稱為碼,code)。訓練目標是交換預測:從視角 A 的特徵必須預測出視角 B 的碼,反之亦然。由於同一張影像的兩個擴增應落在同一群,這便透過群這一層、而非直接的嵌入距離來強制一致性。分配是在每個批次內線上計算的,因此不需要對整個資料集做離線分群。

防止「把每張影像都倒進同一群」這種顯而易見崩潰的訣竅,是 Sinkhorn-Knopp 演算法,它解一個最佳傳輸(optimal transport)問題,使一個批次內的群分配在 K 個原型間均勻平衡。這個等分割(equipartition)約束就是 SwAV 的反崩潰機制。SwAV 還引入了多裁切(multi-crop):對每張影像取兩個標準解析度的全域裁切,外加數個低解析度的局部裁切,以極少的額外計算換來更多視角,並顯著改善結果;多裁切效果極佳,後來被 DINO 等方法採用。

又稱
SwAVSwapping Assignments between Views