未知物體也能輕松識別分割,效果可遷移
從來沒有見過的新物體,它也能進行很好地分割。
這是DeepMind研究出的一種新的學習框架:目標發現和表示網絡(Object discovery and representation networks,簡稱Odin)
以往的自我監督學習(SSL)方法能夠很好地描述整個大的場景,但是很難區分出單個的物體。
現在,Odin方法做到了,并且是在沒有任何監督的情況下做到的。
區分出圖像中的單個物體可不是很容易的事,它是怎么做到的呢?
方法原理
能夠很好地區分出圖像中的各個物體,主要歸功于Odin學習框架的“自我循環”。
Odin學習了兩組協同工作的網絡,分別是目標發現網絡和目標表示網絡。
目標發現網絡以圖像的一個裁剪部分作為輸入,裁剪的部分應該包含圖像的大部分區域,且這部分圖像并沒有在其他方面進行增強處理。
然后對輸入圖像生成的特征圖進行聚類分析,根據不同的特征對圖像中各個物體的進行分割。
目標表示網絡的輸入視圖是目標發現網絡中所生成的分割圖像。
視圖輸入之后,對它們分別進行隨機預處理,包括翻轉、模糊和點級顏色轉換等。
這樣就能夠獲得兩組掩模,它們除了剪裁之外的差異,其他信息都和底層圖像內容相同。
而后兩個掩模會通過對比損失,進而學習能夠更好地表示圖像中物體的特征。
具體來說,就是通過對比檢測,訓練一個網絡來識別不同目標物體的特征,同時還有許多來自其他不相干物體的“負面”特征。
然后,最大化不同掩模中同一目標物體的相似性,最小化不同目標物體之間的相似性,進而更好地進行分割以區別不同目標物體。
與此同時,目標發現網絡會定期根據目標表示網絡的參數進行相應的更新。
最終的目的是確保這些對象級的特性在不同的視圖中大致不變,換句話說就是將圖像中的物體分隔開來。
那么Odin學習框架的效果究竟如何呢?
能夠很好地區分未知物體
Odin方法在場景分割時,沒有先驗知識的情況下遷移學習的性能也很強大。
首先,使用Odin方法在ImageNet數據集上進行預訓練,然后評估其在COCO數據集以及PASCAL和Cityscapes語義分割上的效果。
已經知道目標物體,即獲得先驗知識的方法在進行場景分割時,效果要明顯好于其他未獲得先驗知識的方法。
而Odin方法即使未獲得先驗知識,其效果也要優于獲得先驗知識的DetCon和ReLICv2。
除此之外,Odin方法不僅可以應用在ResNet模型中,還可以應用到更復雜的模型中,如Swim Transformer。
在數據上,Odin框架學習的優勢很明顯,那在可視化的圖像中,Odin的優勢在何處體現了呢?
將使用Odin生成的分割圖像與隨機初始化的網絡(第3列),ImageNet監督的網絡(第4列)中獲得的分割圖像進行比較。
第3、4列都未能清晰地描繪出物體的邊界,或者缺乏現實世界物體的一致性和局部性,而Odin生成的圖像效果很明顯要更好一些。
參考鏈接:
[1] https://twitter.com/DeepMind/status/1554467389290561541
[2] ?https://arxiv.org/abs/2203.08777