
簡述:
image-level弱監督語義分割是近年來深入研究的一個具有挑戰性的問題。大多數的解決方案都利用了
類激活特征圖( CAM [1] )。然而,由于
CAM隻能發現目标最具判别力的部分的緣故,利用CAM作為監督資訊訓練出的語義分割網絡始終與真正的ground truth作為監督資訊的網絡存在較大差距。在這篇論文中,作者提出了一個自監督的等變注意機制(SEAM)來縮小CAM與ground truth差距。
論文位址:https://arxiv.org/pdf/2004.04581.pdfarxiv.org
代碼位址:YudeWang/SEAMgithub.com
一、背景簡述
語義分割是一項基礎的計算機視覺任務,其目的是預測圖像的像素級分類結果。然而,與其他的分類和檢測任務相比,語義分割需要收集像素級的類标簽,這既耗時又昂貴。近年來,人們對
弱監督語義分割(WSSS)進行了大量的研究,利用
image-level分類标簽、塗鴉和邊界框等弱監督手段,試圖實作與全監督方法相當的分割性能。本文主要研究image-level分類标簽的語義分割。
大多數先進的WSSS方法都是基于類激活特征圖(CAM)的,這是一種通過圖像分類标簽對目标進行定位的有效方法。然而,CAM通常隻覆寫了對象中最具識别性的部分,在背景區域激活不正确,這可以分别概括為
目标的激活不足和
背景的激活過度。此外,如圖1所示,當圖像被仿射變換增強時,生成的CAM不一緻。
圖1:比較由不同尺度的輸入圖像生成的CAM。(一)傳統的CAM。(b)作者提出的SEAM預測的CAM。可以看出,SEAM在不同尺度上的定位更加一緻而全面。
作者認為,導緻上述問題的根本原因是全監督和弱監督語義分割之間的監督差距。
為了減小上一差距,作者提出通過
自監督的思想來為image-level的弱監督提供額外的監督以縮小上述弱監督與全監督之間的差距,這個方法稱為
自監督等變注意力機制(Self-supervised Equivariant Attention Mechanism,SEAM)。在SEAM中,作者引入了
像素相關子產品(pixel correlation module, PCM),該子產品為每個像素捕獲上下文外觀資訊,并通過習得的關聯注意圖對原始CAM進行修改。
二、方法詳解
圖2:SEAM的網絡結構
圖3:PCM子產品結構
PS:對這篇論文還沒有做過實驗,是以不敢說從原理的角度去闡述方法,這裡還隻能浮在表面上每每一步是怎麼做的上面來表達,後續如果有了深入的了解再更新。
作者認為,在進行資料增強的時候 ,會用到各種仿射變換。在全監督的情況下,由于會同時給ground truth做資料增強,這就隐式的給網絡加上了
等變化的限制,使得其在各種尺度下的分割都保持一定的一緻性,但是,弱監督的監督資訊隻有分類标簽,原圖做了仿射變化之後,分類标簽不可能做同樣的變化,這樣就失去了原有的隐式限制,導緻了圖1所展示的問題。是以作者引入了孿生網絡(Siamese Network)。
何為孿生網絡?就是兩個結構一模一樣,而且共享權值的網絡。它會衡量兩個輸入的相似程度。孿生神經網絡有兩個輸入(Input1 and Input2),将兩個輸入feed進入兩個神經網絡(Network1 and Network2),這兩個神經網絡分别将輸入映射到新的空間,形成輸入在新的空間中的表示。通過Loss的計算,
評價兩個輸入的相似度。
那麼作者這裡引入孿生網絡的目的就出來了。兩個網絡的的輸入分别是原圖和經過仿射變換之後的圖,通過孿生網絡的映射,形成新的表示,然後再設計Loss使得這兩個表示盡可能的小,也就是loss盡可能的小,進而顯性的給網絡加上前面所提到的等變限制。
再來看作者是怎麼設計loss的,文中loss一共分為三個:
- :
詞語之間的語義相似度怎麼算_CVPR2020-弱監督語義分割:SEAM(自監督等變注意力機制)...
這個就是正常的多标簽分類函數,論文中使用的是
multi-label soft margin loss。具體操作就是特征圖經過全局平均池化後與分類标簽計算損失,這是網絡能夠完成分類任務以及進行CAM操作的基礎。也就是這個損失函數是基礎損失,與評價兩個輸入的相似度無關
-
詞語之間的語義相似度怎麼算_CVPR2020-弱監督語義分割:SEAM(自監督等變注意力機制)...
這個是一個原圖的CAM與仿射變換後圖像的CAM之間相似度的名額。評價的标準選用1範數。具體來說,如下:
A表示仿射變換,即,将原圖的CAM經過仿射變換之後與仿射變換後圖像的CAM求一範數。當然,該值越小越好
-
詞語之間的語義相似度怎麼算_CVPR2020-弱監督語義分割:SEAM(自監督等變注意力機制)...
這同樣是一個評價相似度的名額。對象變為求:1)原圖經過PCM修正後的的CAM與仿射變換後圖像的CAM的一範數;2)原圖的CAM與仿射變換後圖像經過PCM修正後的CAM的一範數。具體如下:
同樣,這項名額也是越小越好
最後再來說一下PCM子產品,也就是Pixel Correlation Module。它其實就是self-attention。對于self-attention參見我公衆号的一篇文章:
self-attention在語義分割中的發展mp.weixin.qq.com
但是,與self-attention不同:1)激活函數沒有用sigmoid而是用的Relu;2)去掉了跳層連接配接(可能是覺得原始的CAM加上反而增加更多的錯誤資訊)。總而言之,它通過學習上下文關系修正了原始的CAM子產品。
三、實驗
消融實驗:作者使用訓練得到修正後的CAM,去訓練了CVPR2018一篇論文
[2]的架構,并與其他架構對比:
四、總結
實際上這篇文章的根本動機與魏雲超CVPR2018年一篇文章Revisiting Dilated Convolution
[3]一樣,都認為CAM是很多弱監督語義分割模型的基礎,提升CAM的效果就能改進弱監督語義分割模型的性能。實際上也沒錯,好的CAM是能夠起到上述作用的。但是個人愚見,使用分類網絡得到的CAM終究還是和ground truth之間有着不可逾越的鴻溝,因為終究分類和分割之間還是有着本質的沖突。并且這篇文章的CAM不見得比Revisiting Dilated Convolution的CAM好,隻是因為這篇文章使用了更好的訓練模型[2] 最終性能上才能超過Revisiting Dilated Convolution。
參考文獻:
[1] CVPR2016_Learning Deep Features for Discriminative Localization
[2] Jiwoon Ahn and Suha Kwak. Learning pixel-level semantic affinity with image-level supervision for weakly supervised semantic segmentation. In Proc. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.
[3] CVPR2018_Revisiting Dilated Convolution: A Simple Approach for Weakly- and Semi-Supervised Semantic Segmentation
歡迎關注公衆号,閱讀更多深度學習、計算機視覺、圖像分割領域論文筆記: