代碼:https://github.com/nv-tlabs/GSCNN/blob/master/network/gscnn.py
論文:ICCV_2019
翻譯:論文閱讀筆記
如何將知識分離出來?
作者在論文中argue到,CNN在設(shè)計的過程中有一個固有的無效性膨报,因為他們會將color疼约,shape和紋理信息一起處理(感覺可以找個時間介紹一些钳枕,圖像中的color窿给,shape或者texture信息對于圖像的特征提取有哪些幫助作用)。但是實際上這些不同的信息衣吠,比如color或者shape帆赢,texture對于識別來說的話小压,應(yīng)該是包含不同的數(shù)量的信息的。作者舉了一個例子椰于,一個人剛開始看一個物體的時候怠益,需要看到完整地,細節(jié)地物體的邊界瘾婿,從而能夠得到具有辨別性的shape編碼蜻牢。但是color和texture就相對包含一些low-level的信息,意思是偏陪,對于物體的識別就沒有輪廓那么重要抢呆。這種思路實際上可以解釋為什么resnet需要residual skip來提升網(wǎng)絡(luò)的性能,或者是dense connection笛谦。以你為镀娶,通過添加這種additional connectivity能夠幫助不同類型的信息通過不同scale的深度進行融合流通(個人感覺這個說服力對于解釋為什么resnet work比較有說服力)。
這篇文章做了啥揪罕?
作者說到,在這篇文章中宝泵,他們提出了一個新的好啰,two-stream CNN,能夠顯式的講shape information獨立成一個processing branch儿奶。兩個stream框往,分別是傳統(tǒng)cnn的stream,另外一個是shape stream闯捎,能夠并行的處理信息椰弊。除了非常頂層的layer许溅,作者說不允許兩個stream信息的融合。
作者說到這篇文章的主要核心就是用一個門來控制兩路信息的交互秉版。具體來講就是贤重,作者利用傳統(tǒng)cnn stream的high-level的information來denoise前幾層shape stream的activations。這么一操作清焕,shape stream能夠有效的處理相關(guān)的信息并蝗。而且只使用比較淺的網(wǎng)絡(luò)。為了能夠使得shape information秸妥,作者在shape stream上添加了語義邊界loss滚停。我們更進一步的利用了一個新的loss function,來使得segmentation result和gt進行對齊粥惧。
并且作者還說道键畴,他們的GSCNN是plug-and-play的,可以用在任何cnn上突雪。作者做了大量的實驗起惕,比deep lab-v3的結(jié)果在miou指標(biāo)上高了1.5個百分點,在f-boundary指標(biāo)上高了4%個百分點挂签。而且作者說他們的實驗結(jié)果在一些很小的物體上的表現(xiàn)性能會更好疤祭,比如電線桿,交通標(biāo)識或者交通燈等饵婆。
相關(guān)工作的介紹
語義分割進展
作者貌似說文獻6已經(jīng)有人用邊界信息來refine實驗結(jié)果勺馆,但是和他們不一樣的是,作者是inject the learned boundary information到cnn的中間層侨核,而不是最終的結(jié)果草穆。作者還指出,之前文獻42也用了two stream network搓译,但是他們是恢復(fù)由pooling降低的高分辨率的feature悲柱。文獻15,35,48提出了用于學(xué)習(xí)結(jié)構(gòu)信息pixel級別的仿射信息,他們主要用來學(xué)習(xí)一個特定信息傳播模塊些己,作者提出的是學(xué)習(xí)高質(zhì)量的shape information豌鸡。
multitask learning
有一些工作是用來提出互補任務(wù)的學(xué)習(xí)。作者的目標(biāo)并不是訓(xùn)練一個多任務(wù)的網(wǎng)絡(luò)段标,而是能夠通過利用分割和邊界對偶性質(zhì)來加強結(jié)構(gòu)化信息的表示涯冠。文獻12,4能夠同時學(xué)習(xí)分割和邊界檢測的結(jié)果。31和40能夠?qū)W習(xí)intermediate的表示來輔助分割結(jié)果逼庞。但是這些工作對于邊界的約束只在loss function上蛇更,作者直接將邊界信息注入到網(wǎng)絡(luò)的中間層去,并且提出了一個對偶任務(wù)loss來同時refine 分割的mask和邊界預(yù)測的結(jié)果。
gated convolution
最近的在語言模型上的研究表明卷積上的gating mechanism是有效果的派任,比如文獻14提出了取代循環(huán)網(wǎng)絡(luò)中的循環(huán)connection的gated temporal convolution砸逊。文獻53提出了一個soft-gating的圖像不全的機制。文獻46提出了gated pixelcnn來做圖像生成掌逛。這里作者用gated covolution opreator來做語義分割以及控制兩個stream信息之間的流動师逸。
Gated Shape CNN
相當(dāng)于是作者把shape這一個分支獨立出來,因為考慮到shape對于分割而言是非常具有意義的颤诀,其實對于很多任務(wù)而言都是具有意義的字旭,比如雙目深度估計或者是單目深度估計,都是比較有意義的崖叫。作者整體的pipline如下
loss
作者定義了四個loss遗淳,對于分割或者是edge檢測的結(jié)果,分別定義了cross entropy loss心傀。然后還定義了對偶loss屈暗,關(guān)于對偶loss,作者的兩個對偶loss分別定義如下
另外一個對偶loss脂男,作者說探究了邊界以及分割的結(jié)果养叛,也并沒有看太懂,但是一個值得學(xué)習(xí)的點就是作者用一個可微的函數(shù)替代了argmax操作宰翅,感覺這個還是挺值得學(xué)習(xí)的弃甥。