2. 介紹
CLIP是近年來在多模態方面的經典之作,得益于大量的數據和算力對模型進行預訓練,模型的Zero-shot性能非常可觀,甚至可以在眾多數據集上和有監督訓練媲美。簡單來說,CLIP的high-level的idea非常直接,就是通過對比學習,對圖像特征空間和文本特征空間進行對齊,給定任意圖像和文本都可以映射到這個空間中,然后這些圖像和文本就可以直接計算相似度。通過這種方式,CLIP填平了文本和視覺信息的gap。
CLIP是基于分類任務完成的,那么相應的,我們就不免思考其在檢測和分割領域能否也發揮比較好的效果。如何不依賴于手工標注的分割標注,如何能真真的做到去用文本來作為監督信號來指導模型訓練,就是非常值得思考的一個問題。下面我們就來介紹一個基于CLIP的zero-shot實例分割方法。
對于傳統做分割的模型的一種方法就是通過像素相似度進行語義分割。
首先在圖上找一些中心點,然后通過像素相似然后將附近像素給到不同的目標區域,最終獲得segmentation mask區域。如上圖所示,為了實現擺脫手工標注這一目標,論文提出將分割中經典的group機制引入到深度網絡中,通過這種機制,語義的信息段可以在只需要文本監督的情景下自動出現。
通過對具有對比損失的大規模成對vision-language數據進行訓練,我們可以將模型zero-shot轉移到多個語義分割到word table中,而不需要進一步的注釋或微調。
總結論文的貢獻如下:
在深度網絡中,我們超越了規則形狀的圖像網格,引入了一種新的Group ViT體系結構,將視覺概念分層自下而上地分組為不規則形狀的組。
在不依賴任何像素級的標注情況下,只采用圖像級文本監督,成功地學會了將圖像區域分組,并以zero-shot的模式遷移到多個語義分割詞匯表。
本文是第一份在不使用任何像素標簽的情況下探索從文本監督到多個語義分割任務的零鏡頭轉移的工作,并為這一新任務建立了堅實的基線。
3. 方法
如上圖所示,本文提出的結構在ViT基礎上進行設計,是一個dual-encoder的結構。訓練過程主要分為三部:
第一步:把原始的image作為輸入,利用ViT結構的encoder進行圖像編碼。將圖像分成若干個patch之后,將每個patch作為path embedding的向量信息,構建出 部分的數據矩陣,然后利用線性層映射出一個embedding的數據。然后將圖像中的不同patch得到的embedding進行分類,構建出64*384大小的group token矩陣塊。
這里有兩種實現的方式,第一種,對于2-stage類型的GroupViT,
在GroupViT的第一階段,經過Transformer layers操作后可以得到64個group tokens,然后在6層Transformer層后插入grouping block。
在GroupViT的第二階段,grouping之后,都會得到8個segment tokens。對于1-stage類型的GroupViT,就非常簡單直接了,在grouping block之前,將64個group tokens通過MLP-Mixer layer映射成8個segment tokens。
然后Grouping Block將學到的group tokens 和image segment tokens作為輸入,通過Grouping Block更新image tokens,利用這些tokens將相似的images歸并到一起。每經過一個grouping stage,能夠得到更大更少的image segments。
第二步:基于上一步輸出的8384的group token后把文本數據和得到的數據聯合進行訓練。為了和Text信息進行關聯,能夠機選Clip的內積,需要把8維映射為1維,為了方便簡單,論文直接用avg pooling處理;
論文的訓練loss有兩項,包括image-text loss和multi-label contrastive loss with text prompting。
image-text loss包括image to text和text to image兩項:
multi-label contrastive loss with text prompting涉及到較為復雜的操作,可以參考原文進一步了解:
第三步:通過設計好的GroupViT結構,模型能夠自動將image分組成一個個的segment,所以可以很容易的zero-shot transfer到語義分割任務上,而不需要微調。由于GroupViT自動將圖像分組為語義相似的片段,它的輸出可以很容易地轉移到語義分割,而無需進一步的微調。如圖4所示。
為了推斷圖像的片段屬于對象類的有限詞匯table,論文通過Group VIT來傳遞一個測試圖像,而不對其最終的L輸出段應用AvgPool,并得到每個片段的嵌入為。每個段標記對應于輸入圖像的任意形狀的區域。然后,我們計算每個段標記的嵌入與數據集中所有語義類的文本嵌入之間的相似性。
我們將每個圖像片段分配給圖像文本embedding相似度最高的語義類定為最終分割結果。
4. 實驗結果
在無監督的情況下,自然是相較于其他的對比學習方式有了比較明顯的提升,但顯然和有監督的setting表現還是有一定的gap的(如VOC可以達到80%+),由此可見,無監督的語義分割還是有一定進步的空間的。
為了將CLIP zero-shot轉換為語義分割,在推理過程中首先對其輸出特征進行non-parametric的分組。然后計算每組的特征均值與數據集分割標簽的文本embeddings之間的相似度。這樣,任何結合CLIP的ViT非參數分組方法都可以被認為是一個零鏡頭的語義分割基線。如表4所示,分組ViT的性能大大優于其他分組方法。這表明,與使用CLIP訓練的ViT相比,我們的GroupViT在zero-shot轉換到語義分割方面更有效。
5. 結論
本文邁出了學習零樣本語義分割的第一步,也是重要一步,在只有文本,沒有任何明確的人類標注的監督下進行自監督。我們證明,使用GroupViT,從大規模噪聲圖像-文本對中學習到的表示可以以零鏡頭的方式轉移到語義分割。這項工作也證明了除了圖像分類之外,文本監督也可以轉移到更細粒度的視覺任務中,這是以前沒有探索過的,開辟了一個非常有趣的研究方向。
審核編輯:劉清
-
圖像編碼
+關注
關注
0文章
26瀏覽量
8315 -
Clip
+關注
關注
0文章
31瀏覽量
6667
原文標題:CVPR 2022: GroupViT 基于文本監督的語義分割算法
文章出處:【微信號:GiantPandaCV,微信公眾號:GiantPandaCV】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論