導讀  

自監督學習是指從數據本身產生某種形式的標籤並訓練神經網絡,用來解決某些特定任務或者學習通用的圖像、視頻、語言的特徵表達。在學術界,自監督學習被證明可以解決光流預測、深度估計、場景遮擋等問題,不需要額外的人工標籤。另外,基於自監督學習的無監督表徵學習近年來也獲得了飛速發展,大有超越有監督表徵學習的趨勢。

2020年6月11日,本文轉自商湯泰坦公開課,由商湯聯合實驗室的兩位同學分享了團隊在自監督學習方面最新的研究工作,小助手已爲大家做了圖文整理,快來一睹爲快吧~

Part 1  自監督學習領域綜述

Part 2  論文分享

自監督場景去遮擋

在線自監督學習及其在視覺里程計上的應用

Part 3  Q&A問答

Part 4  答疑交流

課程PPT及視頻回放獲取方式見文末提示~

Part 1 自監督學習 領域綜述

1. Introduction

自監督學習屬於無監督學習,其典型的pipeline是給出unlabeled data並設計一個CNN architecture,需要設計一個自監督的proxy task,從圖像本身中找出標籤,再解決這個task。在這個過程中CNN可以學到很多東西,並可以transfer到一個目標的任務上。其中最重要的是如何設計proxy task。

現有的proxy task中Image Colorization、Jigsaw Puzzles、Image In-painting這一類的特點就是把圖像破壞掉再恢復,其缺陷是可能存在domain差異問題;

Rotation Prediction、Instance Discrimination、Counting這一類不需要破壞圖像;

第三類是利用Motion來學習新的東西,如Motion Prediction、Moving foreground Segmentation、Motion propagation等。

2. Why does SSL learn new information?

利用Prior,例如Imaging利用了顏色的prior,利用物體和顏色分佈的關聯;In-painting利用了物體類別和其形狀紋理的關聯;Rotation Prediction則利用了物體默認朝向和物體類別的關聯。

利用Coherence,圖像具有空間連貫性、視頻具有時間空間連貫性。

利用Structure,例如Contrastive Learning。

3. What to consider in proxy task design?

Shortcut (以jigsaw puzzles爲例):爲解決圖像patch之間的連續性帶來的Shortcut,應讓兩個patch之間有隨機的margin;色散會帶來照片的色差,神經網絡會通過色差帶來的紫色、綠色邊緣判斷patch在圖像中所在的位置。類似的還有彗差、畸變、暗角等。上述問題的解決辦法是讓patch儘量靠近圖片中心。

Ambiguity:利用prior的自監督學習都會存在ambiguity的問題,解決方法是利用Low-entropy priors來設計自監督任務。

Difficulty:給任務設定難度,例如Jigsaw Puzzles的patch數量不同會帶來不同難度。

Part 2 論文解讀

Self-Supervised Scene De-occlusion

現有的數據包括 RGB 的圖片、modal mask 和物體類別。modal mask 是指物體可見部分的 mask,其實就是一般意義的 instance segmentation 的 mask。這些其實正好構成了一個 instance segmentation 的數據集,例如 COCO、KITTI、LVIS 這些。注意,這樣的數據集裏並沒有遮擋關係和 amodal mask 的標註,所以用有監督學習的思路是無法解決上述問題的。

研究者希望將一張真實場景圖片分解爲完整的物體和背景,物體間根據遮擋關係組成一個有向圖。他們將場景去遮擋這個問題分解爲如下步驟:

1. 兩兩鄰接的物體之間的順序恢復。有了 pair-wise ordering 之後,就可以得到一個描述場景遮擋關係的有向圖,稱之爲 遮擋關係圖 (occlusion graph)。

2. Amodal completion:在遮擋關係圖中,可以檢索到任意一個物體被哪些物體遮擋了,這樣就可以進行 amodal completion 步驟,把物體完整的 mask 恢復出來。

3. Content completion:有了 amodal mask 之後,就知道了物體的被遮擋區域(不可見部分),那麼下一步就可以想辦法在不可見部分填充 RGB 內容,使得這個物體完整的樣子被恢復出來。

完整補全是指給定被遮擋的物體和它的遮擋物,一次性將物體完整的 amodal mask 補全,當然它的前提是需要有ground truth amodal mask作爲監督。研究者發現一次完整補全等價於一系列的部分補全。

這裏的 部分補全 (partial completion)是指:給定某一個遮擋物,只補全目標物體被當前遮擋物遮擋的部分。例如給定上圖中的圓形遮擋物,把 M_0補全爲M_1。

然而,這些部分補全過程還是無法訓練的,因爲補全的中間狀態(如M_1)和最終狀態(如M_2)都是未知的。

接下來則是最關鍵的操作。如下圖,將 M_0 再「切一刀」,即從數據集中隨機選一個物體,用它的 modal mask 來蓋住 M_0,得到 M_{-1},然後訓練部分補全,從M_{-1}恢復 M_0。這個過程是可訓練的。

有了部分補全機制之後,爲了方便後續的步驟,還需要引入一個正則機制,即下圖 case 2。

Case 1是之前介紹的用隨機選擇的surrogate object來遮擋住目標物體。用 case 1 來訓練的部分補全會永遠增加物體的面積,網絡無法學習到目標物體和surrogate object之間的遮擋關係。研究者又引入了 case 2,將surrogate object放在目標物體下面,然後要求在部分補全過程中保持目標物體不變。

訓練過程在 case 1 和 2 之間隨機切換,那麼網絡在訓練過程中需要從輸入中挖掘信息來判斷目標物體是否被 surrogate object 遮擋,只有在目標物體被遮擋的時候,它纔會被部分地補全,否則就會保持不變。

我們用一個神經網絡來模擬這個部分補全過程。部分補全網絡(Partial Completion Network - Mask,簡稱 PCNet-M)的訓練過程如下,其中 A 物體爲目標物體,B 爲 surrogate object,對於 case 1 和 2,PCNet-M 都需要恢復出 A 的初始 modal mask。

如下圖,有了訓練好的 PCNet-M 之後,我們設計瞭如下推理過程來恢復遮擋順序。給定 A1 和 A2 兩個鄰接的物體,分別以 A1 爲目標物體,A2 爲 surrogate object,發現 PCNet-M 並沒有增加 A1 的面積;

反過來,以 A2 爲目標物體,A1 爲 surrogate object,結果發現 A2 的面積增加了。由此可以判斷出來,A1 遮擋了 A2。

如下圖,有了遮擋順序之後,可以構建出一個遮擋順序圖。圖中的邊從遮擋物指向被遮擋物,這樣一來,從圖中對於任意一個物體,可以得到它的所有祖先節點,即爲它的所有遮擋物。其中一階祖先節點爲直接遮擋物,高階祖先節點爲間接遮擋物。例如下圖例子中可以得到,物體 3 有兩個直接遮擋物,分別爲 2 和 4。判斷出遮擋物之後,就可以再次利用部分補全網絡(PCNet-M)來恢復出 amodal mask。

這裏還需要解釋一下爲何要選取所有祖先節點作爲遮擋物,而非僅僅直接遮擋的一階祖先節點。如下圖,這裏需要補全物體 1。從遮擋關係圖中,它的一階祖先節點(即直接遮擋物)是 2 和 4,高階祖先節點(間接遮擋物)是 3。研究者發現,只考慮一階遮擋物,無法完整地補全物體 1 被物體 3 間接遮擋的部分。只有考慮所有祖先節點,纔可以獲得正確的補全結果。

內容補全網絡 (Partial Completion Network-Content,縮寫 PCNet-C)的訓練方式和PCNet-M類似。同樣地,此處無法在訓練的時候用完整內容補全的結果來監督,研究者設計瞭如下的部分內容補全的訓練策略。給定目標物體 A和surrogate object B,用A∩B來擦除圖片的RGB,作爲缺失的需要填充的內容,然後用 A\B 來代表缺失的內容屬於哪個物體。訓練的目標是恢復原圖。

測試的時候,有了遮擋物(occluders)和目標物體的 amodal mask,取交集,就得到了需要填充內容的區域(即被遮擋的區域)。同時目標物體的 modal mask 也作爲輸入,用來表示缺失的區域屬於該目標物體而非其他物體。最後 PCNet-C 將物體完整的樣子補全了出來。

應用1: amodal mask 自動生成

給一個普通的instance segmentation dataset,例如下圖中的KITTI training set,研究者訓練了PCNet-M並且仍舊在training set上應用amodal completion方法,就可以得到pseudo amodal masks。這樣相當於在training set上免費拿到了一批amodal mask。

應用 2: 場景編輯和重組

既然現在能將場景分解開,那麼就可以對場景進行編輯和重組。如下圖,其中的 baseline modal-based manipulation 是基於普通的image inpainting做的,只有modal mask,沒有ordering和amodal mask。本文提出的方法基於ordering 和amodal mask,能做更加自然的場景編輯。

論文鏈接:

https://arxiv.org/abs/2004.02788

代碼:

https://github.com/XiaohangZhan/deocclusion

Self-supervised Deep Visual Odometry with online Adaptation

Background:

本篇文章是關於視覺里程計(visual odometry)以及它的在線適應的問題。首先我們來看問題的定義是什麼,以及它如何從自監督的角度去解決這個問題。然後,在一個未知的場景下應該如何進行在線的適應。

基於深度學習的視覺里程計(visual odometry)可以分爲兩個同步的步驟:1)給定多張圖,估計相機的相對位姿;2)給定一張圖,估計該圖的場景深度。此時可以基於三維的幾何變換規則,通過一張圖插值出另外一張圖,並將合成的圖和真實的圖片作差,即可實現自監督的視覺里程計學習。

下圖是典型的自監督視覺里程計的形式:例如,通過深度學習提取兩張圖片的對應點,利用隱式的方式求解兩幀的相對位姿變換和光流,並通過單目深度估計得到深度圖。然後,利用深度、光流、位姿變換三者之間的耦合關係,構建自監督的約束表達式。

然而,目前基於學習的視覺里程計有一個很致命的弱點:如果把預訓練好的模型放在完全沒有見過的場景(比如從白天到晚上,從室外到室內),它往往是不work的。本文將重點解決該問題:讓深度網絡以自監督的方式實現在線學習。

Challenges:

Deep VO performs bad in unseen 

environments → requires online adaptation

Unlikely to collect enough ground truth

data in advance when running VO in the open world

Naïve online learning suffers froms low 

convergence and catastrophic forgetting

Methods:

基於這三個Challenges,我們提出了基於元學習的在線自監督學習方法。

1. Online Meta-learning Objective

經典的在線學習是對於當前的數據做梯度下降,更新網絡參數。與此相反,meta-learning的目標函數是對兩個時刻的數據做梯度下降,且目標函數中待優化的自變量是前一個時刻的網絡參數。利用嵌套優化的方式。在目標函數的內層,首先對i時刻的數據進行梯度下降,得到較優參數估計,這一步可看作網絡的訓練;

之後,將優化好的參數在i+1時刻的數據上做測試,並最小化測試誤差。可以看到,經典在線學習方法的時間感受野是1,而meta-learning方法將時間感受野拓展爲2。通過這種方式,網絡在不同時刻都能有出色的表現。

該方法爲什麼能夠得到更好的結果呢?我們進行了一些數學分析:

傳統的在線學習很難克服遺忘問題,不同時刻接收到的數據是不同的,因此在不同時刻,網絡優化的梯度方向是隨機的,也就是說它的調整方向是毫無規律的。但是如果能夠把前一個時刻和後一個時刻的梯度做對齊的話,即最大化它們的梯度相似性,就相當於把前一個時刻的調整方向遷移到當前時刻,實現更快的收斂。這就是泰勒展開的第二項:最大化兩個時刻梯度方向的相似性。

2. Spatial-Temporal Aggregation

第二點是在時間和時空上的一致性約束。對於在線學習來說,網絡面臨的往往是未知場景,因此如果只用當前一張圖片做預測往往會非常困難。但是,時序的信息往往具有高度的相似性,如果在前一時刻網絡能得到較爲準確的估計,就可以將相鄰多幀的估計結果整合起來,做基於多幀的估計,這樣網絡就能得到更好、更魯棒的估計結果。因此,本文采用卷積LSTM的方式,將多個卷積LSTM嵌入 CNN中,在feature層面做時空的整合,使網絡做更好的估計。

3. Online Feature Alignment

這一步更像是一種標準化、歸一化的操作方式,在feature的統計分佈層面做在線的domain遷移。在一段時間內,輸入的圖片通過神經網絡抽取到上百維的feature,那麼就可以得到每一個feature維度的統計信息,例如均值和標準差。在GAN的風格遷移(styleGAN)理論中,feature的統計信息(均值和標準差)表徵了feature的style。

假如在訓練集中只有白天的數據,經過預訓練後網絡對白天的情況已非常熟悉。若此時將白天預訓練模型應用於夜晚場景,那麼可以調整夜晚圖像在feature上的統計特性,將夜晚圖像的分佈變爲白天圖像的分佈。這樣,預訓練網絡的輸入並沒有太大改變,因此網絡能實現快速的在線適應。

Experiments:

實驗的軌跡圖中,紅線是本文經過在線學習後的結果,和虛線ground truth的結果非常接近。值得注意的是,該軌跡是上千幀位姿估計累乘得到的,每一個時刻的誤差都會傳播到下一個時刻。可以看到,本文的方法其實在遇到未知的場景時,累積誤差遠遠小於其他方法。

爲了測試該方法在不同數據集之間的遷移泛化能力,首先在虛擬數據集上進行預訓練,並將預訓練的模型在真實數據集上測試。可以看到,其他state-of-the-art的方法如果進行經典的online learning都是很不work的,預測軌跡和實際軌跡相差非常多。相比之下,我們的方法能夠得到與ground truth更加接近的結果。

我們還在室外的KITTI場景進行預訓練,然後把模型直接用在室內且相機運動方式與KITTI有很大不同的場景中。可以看到,雖然場景的 domain gap非常大,但本文的方法依然能得到較爲準確的軌跡估計結果。

Part 3 Q&A

Q :用surrogate obj人爲遮擋訓練出的補全模型,從而預測補全其他沒有amodal mask的遮擋部分?這樣做的前提是不是人工遮擋和天然遮擋的補全規則是一致的呢?

A:前提是我們假設了人爲製造遮擋和天然遮擋他們的規則是一樣的,但實際上人爲遮擋和天然遮擋是不可能做到一樣的。比如在製造人爲遮擋的時候,可能是一個人遮住了一個樹冠,實際上人只能遮住樹幹。這就說明它存在一些差距,但是這個差距在這裏是不會帶來嚴重問題的,因爲人爲遮擋是足夠隨機,什麼樣的遮擋都會出現,然後並且是足夠隨機的遮擋,所以在訓練的過程中見到了非常多的這樣情況,那麼其中肯定也包括了天然遮擋的情況,就能夠被解決掉。

Q:在線的深度估計效果如何?比如說我們在虛擬的數據集上去做一個深度估計的訓練,然後放在這個真實的自動駕駛場景,怎麼樣?

A:這個效果其實還是不錯的。其實單目深度估計其實更像是一個多級分類網絡,也就是比較圖像當中每個像素的遠近關係。因此,對於預訓練好的深度估計網絡,像素比對的分類部分其實是不需要改變的,我們只需要把網絡輸入的feature做一次變換,變換到預訓練時的feature分佈即可。所以如果用 online的 feature alignment做深度估計,效果還是可以的。

在虛擬數據集上,我們認爲最關鍵的問題其實是淺層的feature,因爲如果虛擬數據集上很多很多平面和紋理都是相同或相似的顏色,而且圖片基本沒有噪聲。但是真實世界中相機採集到的圖片往往含有很多噪聲。其實我們只需要在淺層的feature上做feature alignment,後邊的迴歸、分類完全都是可以work的。

Q: 在online adaptation的時候,效率和在線更新的效果之間如何平衡?

A:我們這篇論文是一個原型,所以沒有在這個效果上面去做一個更多的對比。我們目前的方法是在每一時刻只做一次梯度下降,但爲了得到更好的效果,在計算資源允許的情況下,其實也可以做更多次的梯度下降。

Q: 自監督學習好像大多是自編碼器的結構,如何把它應用到只需要encoder的網絡中呢?比如圖像分類、識別等任務?

A:早期的一些自監督的學習方法都是encoder decode的結構,colorization recovery base的方法都是encoder decoder,後來出現的新的方法,只需要encoder的就好了。特別是一些 predictive的task。自監督學習其實可以大致分成兩種,它一種是reconstruction task,是要把原圖尺寸的一些東西恢復出來。

第二種是predictive task,它是隻需要去predict一些特定的目標,比如說兩張圖是不是同一張圖,這裏面可能會用一些contrastive loss之類的,這個只有encoder。這兩種模式都有encoder,兩種encoder都可以拿來做圖像分類識別的人物都可以拿來做transfer。我有一些經驗上的結論,就是predictive的這種方法基本上都比reconstruction的方法要更好一點。用predictive方法,它學到的一些語義更加高級。

視頻回放:

https://www.bilibili.com/video/BV1pK4y1478z

在我愛計算機視覺公衆號後臺回覆 “012” ,即可獲取相應的 課程資料 哦!

備註:自監督

自監督/無監督學習交流羣

關注最新最前沿的自監督、無監督學習技術,

若已爲CV君其他賬號好友請直接私信。

我愛計算機視覺

微信號:aicvml

QQ羣:805388940

微博知乎:@我愛計算機視覺

投稿:[email protected]

網站:www.52cv.net

在看,讓更多人看到  

相關文章