文章目錄
- Extract Free Dense Labels from CLIP
- 相關資料
- 摘要
- 引言
- 方法
- Mask-CLIP
- Mask-CLIP+
- 實驗
Extract Free Dense Labels from CLIP
相關資料
代碼:https://github.com/chongzhou96/MaskCLIP
論文:https://arxiv.org/abs/2112.01071
摘要
對比語言-圖像預訓練(CLIP)在開放詞匯的零樣本圖像識別方面取得了顯著突破。許多最近的研究利用預訓練的CLIP模型進行圖像級別分類和操作。在本文中,我們希望檢查CLIP在像素級密集預測方面的內在潛力,特別是在語義分割方面。為此,我們展示了通過最小修改,MaskCLIP在沒有注釋和微調的情況下,在各種數據集上的開放概念中產生了引人注目的分割結果。通過添加偽標記和自訓練,MaskCLIP+在很大程度上超越了最先進的感應零樣本語義分割方法,例如,在PASCAL VOC/PASCAL Context/COCO Stuff上未見類別的mIoUs從35.6/20.7/30.3提高到86.1/66.7/54.7。我們還測試了MaskCLIP在輸入損壞下的魯棒性,并評估了其區分細粒度對象和新概念的能力。我們的發現表明,MaskCLIP可以作為密集預測任務的新可靠監督源,實現無需注釋的分割。源代碼在此處可用。
引言
我們的模型名為MaskCLIP,我們展示了一個可以直接從CLIP的圖像編碼器中提取密集的補丁級特征,即最后一個注意力層的值特征,而不會破壞視覺-語言關聯。用于密集預測的分類權重,本質上是1×1卷積,可以直接從CLIP文本編碼器的文本嵌入中獲得,而不需要任何刻意的映射。在我們的實證研究中,MaskCLIP在通過mIoU指標測量的定量性能和定性結果方面都產生了合理的預測。此外,MaskCLIP可以基于所有變體的CLIP,包括ResNets和ViTs。我們提供了兩種流行的骨干網絡之間的并排比較。我們還為MaskCLIP提出了兩種掩碼細化技術,以進一步提高其性能,即關鍵平滑和提示去噪,兩者都不需要訓練。具體來說,關鍵平滑計算不同補丁的關鍵特征(最后一個注意力層)之間的相似性,這些特征用于平滑預測。提示去噪通過刪除圖像中不太可能存在的類別的提示,從而減少干擾因素,使預測更加準確。
方法
Mask-CLIP
如圖2(b)所示,與傳統的全局平均池化不同,CLIP的圖像編碼器采用了Transformer風格的多頭注意力層,其中全局平均池化的特征作為查詢,每個空間位置的特征生成一個鍵-值對。因此,這一層的輸出是對傳入特征圖的空間加權和,然后是線性層 F ( ? ) F(·) F(?):
其中 C C C是一個常數縮放因子, E m b ( ? ) Emb(·) Emb(?)表示線性嵌入層。 x i x_i xi?表示空間位置i的輸入特征, x ˉ \bar{x} xˉ是所有 x i x_i xi?的平均值。Transformer層的輸出作為整個圖像的全面表示。我們相信這是可能的,因為在每個空間位置計算的#F(v_i)#已經捕獲了與CLIP文本嵌入中的標記很好地對應的局部語義的豐富響應。
基于這樣的假設,如圖2(b)所示,我們在我們的新嘗試中直接修改了CLIP的圖像編碼器:
- 移除查詢和鍵嵌入層;
- 將值嵌入層和最后的線性層重新制定為兩個各自的1×1卷積層。
- 我們保持文本編碼器不變,它以帶有目標類別的提示作為輸入。每個類別的得到的文本嵌入被用作分類器。
我們將得到的模型命名為MaskCLIP,因為它產生像素級掩碼預測而不是全局圖像級預測。然后,我們在各種標準分割基準測試以及網絡爬取的圖像上評估MaskCLIP。如圖1所示,MaskCLIP可以在沒有任何微調或注釋的情況下輸出合理的結果。有人可能會爭論,由于全局注意力池化是一個自注意力層,即使沒有修改,它也可以生成密集的特征。然而,由于查詢 q ˉ \bar{q} qˉ?是在CLIP預訓練期間訓練的唯一查詢,這種樸素的解決方案失敗了。我們將這個解決方案視為基線,并在實驗中將其結果與我們的進行比較。此外,ViT中的Transformer層與全局注意力池化非常相似。實際上,唯一的兩個區別是:
- 全局查詢是通過一個特殊的[CLS]標記而不是所有空間位置的平均值來生成的;
- Transformer層有一個殘差連接。因此,通過用q[cls]替換 q ˉ \bar{q} qˉ?并在輸出中添加輸入x,MaskCLIP可以與ViT骨干一起工作。
盡管MaskCLIP與現有的分割方法相比簡單,但提出的方法享有從CLIP繼承的多個獨特優點:
- MaskCLIP可以用作免費的分割注釋器,為使用有限標簽的分割方法提供豐富和新穎的監督信號。
- 其次,由于CLIP在MaskCLIP中保留了視覺-語言關聯,它自然具備分割開放詞匯表類別的能力,以及由自由形式短語描述的細粒度類別,如白色汽車和紅色公交車。
- 由于CLIP是在原始網絡策劃的圖像上訓練的,CLIP展示了對自然分布變化[45]和輸入損壞[47]的巨大魯棒性。
我們驗證了MaskCLIP在一定程度上保留了這種魯棒性。關鍵平滑和提示去噪。為了進一步提高MaskCLIP的性能,我們提出了兩種細化策略,即關鍵平滑和提示去噪。回想一下,在方程3中,除了 q ˉ \bar{q} qˉ?,關鍵特征 k i k_i ki?也在CLIP預訓練期間得到了訓練。然而,在原始的MaskCLIP中, k i k_i ki?被簡單地丟棄了。因此,在這里我們尋求利用這些信息來細化最終輸出。關鍵特征可以被視為相應補丁的描述符,因此具有相似關鍵特征的補丁應該產生相似的預測。基于這個假設,我們提出用以下方式平滑預測:
其中 k i k_i ki?和 p r e d i pred_i predi?分別是空間位置 i i i的關鍵特征和類別置信度預測, ∣ ∣ ? ∣ ∣ 2 ||·||_2 ∣∣?∣∣2?和 c o s ( ? ) cos(·) cos(?)分別表示L2歸一化和余弦相似性。我們稱這種策略為關鍵平滑。此外,我們還觀察到在處理許多目標類別時,由于在單個圖像中只有一小部分類別出現,其余的類別實際上是干擾因素,會削弱性能。因此,我們提出了提示去噪,它通過移除所有空間位置上的類別置信度都小于閾值t=0.5的提示的目標類別。
Mask-CLIP+
雖然MaskCLIP不需要任何訓練,但其網絡架構受限于CLIP的圖像編碼器。為了從架構限制中解放MaskCLIP并整合更高級的架構,如PSPNet[55]和DeepLab[5,6],我們注意到可以在訓練時而不是推理時部署MaskCLIP,它充當一個通用且魯棒的注釋器,提供高質量的偽標簽。結合標準的自訓練策略,得到的模型,稱為MaskCLIP+,實現了顯著的卓越性能。除了無需注釋和開放詞匯表分割,MaskCLIP+也可以應用于感應零樣本語義分割任務,其中MaskCLIP僅為未見類別生成偽標簽。
實驗