論文翻譯:Conditional Random Fields as Recurrent Neural Networks


 

 

Conditional Random Fields as Recurrent Neural Networks

 

ICCV2015    cite237   

 

1摘要:

像素級標注的重要性(語義分割 圖像理解)-- 現在開始利用DL----但DL無法描述visual objects----本文引入新型的CNN,將CNN與CRF概率圖模型結合---用高斯pairwise勢函數定義的CRF作為RNN,記為CRF-RNN----將其作為CNN的一部分,使得深度模型同時具有CNN和CRF的特性,同時本文算法完美結合了CRF和CNN,弄成了一個端對端的系統,可以由反向傳播訓練,避免了物體描述的問題。----在語義分割問題上測試,在Pascal VOC2012上取得最高結果。

 

2 Introduction

 

像素標注應用場景:底層視覺中的語義分割、圖片深度估計,之前是特征表示來做,會考慮其他因子比如邊、視覺連續性、空間連續性等。

找出合適的特征表示很重要,很多人做:隨機森林等。最近CNN成功應用在high-level的視覺問題上,如識別、檢測等----->研究CNN在像素標注上的應用。都在研究用深度模型學出一個更深層更有效的特征,替代之前的手工特征。FCN,DeepLab等證實有效。

CNN從highlevel視覺問題轉化為像素標注有挑戰:1)CNN的卷積層,濾波器有大的感受野,當產生像素級的標簽時會使結果非常粗。而maxpooling更加劇了這一現狀。2)CNN不考慮平滑約束,相似像素並不被鼓勵相同的標簽,失去了空間和外觀的連續性。這將導致對物體的理解不夠,且會產生假的區域。

概率圖模型走的與DL不一樣的路,用來對像素進行標注。MRF和其變體CRF在視覺領域取得成功。CRF在語義標注問題上的關鍵idea是將標簽分配問題轉化為概率推理問題,基於一些假設,比如相似像素標簽一致等。CRF推理可以精細化弱的、粗糙的像素標簽預測問題,從而得到sharp的邊界以及精細的分割。所以,可以用來克服CNN的不足。

一種方式使把CRF接在CNN后邊,改善CNN的標簽輸出。但這並不能充分利用CRF,因為沒有整合進DL模型中,深度模型做的時候並不知道CRF這回事(這理由,,?)。

本文:端對端的模型解決像素級標注,結合CNN和CRF。提出mean-field 近似推理,以帶有高斯pairwise的勢函數的密集CRF作為RNN,在前向過程中對CNN粗糙的輸出精細化,同時在訓練時將誤差返回給CNN。結合了CNN與RNN的模型可以正常的利用反向傳播來端對端的訓練。

經過適當的訓練,我們的模型會好於那種將CRF獨立的作為CNN的后處理部分的模型。在Pascal VOC上取得了74.7%的正確率。

 

3 相關工作

 

將深度學習與CNN應用到low-level的視覺任務中,尤其是圖像語義分割。---方法分為兩類:

1)將其作為獨立的特征提取的方法,分割方法去尋找圖中的邊。---找出超像素塊,繼而找出圖中的結構模式,但一開始的proposal要是錯了,對后邊影響很大。又提出了RNN模型用於對空間依賴性建模。圖模型與CNN結合可以達到更好的效果。

2)直接學習出一個將圖像映射到標簽的非線性模型。17中,將最后的全連接層替換為卷積層,以保留空間信息。37中,FCN,頂層包含了物體識別的特征,底層包含了圖像基本結構特征,如邊。這些層之間的連接聯系了這些特征。10,41利用CRF調整CNN得到的分割結果。還有通過物體識別來分割的等。我們的模型同時學習CNN與CRF兩者的參數,在統一的網絡中。

用神經網絡來預測結構化的輸出:14將深度神經網絡與馬爾科夫網結合,用於序列數據的標注。26說明CNN可以在圖像恢復中與MRF或CRF表現同樣好。手寫數字識別也對CNN結合的挺好,在NLP,60說明基於RNN的詞語標注可以通過整合CRF來提高效率,6中作者便結合了CNN與HMM,最近,45用了CRF的變體。25中,CNN和CRF用於語句識別,57同時訓練CNN與MRF用於人臉姿勢估計,11用相同的方法做圖像分類。21用一種MRF作為神經網絡的一層。我們用另一種圖模型(CRF)作為神經網絡的層。

自動學習圖模型的參數,同時訓練分類器與圖模型。4在其Active隨機場方法中同時訓練MRF或CRF與一種推理算法。15提倡在圖模型中使用反向傳播算法,當一種近似推斷方式如mean-field及信念傳播等被使用的時候。28使用了這一想法,二值化的密集CRF被用於人臉姿勢估計。47,54與之相似,說明了信念傳播可以優化模型參數。。。。

我們方法說明了將密集CRF作為RNN是可行的,這樣可以建立一個整合了深度學習與圖模型的端對端的系統用於圖像語義分割。

 

4 CRF

 

CRF用於像素級別的標簽預測,將像素標簽視為隨機變量,構建一個以全局為條件的馬爾科夫隨機場,這個全局條件一般取為對應的圖片。

本文中X相關的是對於像素的標注,是隨機變量,是預先定義好的共L個。圖G=(V,E),V便是N個像素的標注X,圖片,也即全局條件,記為I。I和X的關系可以由CRF來建模,定義為一個Gibbs分布:P(X=x | I)=。E(x)是x取某個值的能量,Z(I)是配分函數。

在全連接的pairwise的CRF(29工作)中,,其中,一元的前半部分衡量像素標注為x的cost;二元的后半部分衡量兩個像素同時取這兩個標注的cost。本文中,一元的損失由CNN計算而來,可以說是不考慮平滑與連續性的預測值。后半部分二元的則給出了依賴於具體圖像的平滑項,使得相似的像素更有可能標注一樣。這個二元的勢函數被定義為混合高斯(賦予不同的權重):.選用M個高斯核作用於特征向量f上,f一般由位置或RGB直接得來。μ為標簽兼容性函數,定義各標簽對之間的兼容性(未給具體形式?應該各個對對應的值早就知道作為先驗嗎)。

最小化CRF的勢函數E(x)可以得出標注結果,但這個過程很復雜,所以有了mean-field近似方法,近似最大后驗的邊緣分布進行推理。他用簡單化的Q(X)近似CRF的P(X),Q可被寫為各個獨立的邊緣分布的積。

 

5 Mean-field 迭代作為一堆CNN層

 

本文的主要貢獻就是說明了Mean-field CRF推理可以被公式化為RNN。為此,我們先由算法1給出Mean-field算法的單步運行情況,並且將他們描述維CNN的層。

 

 

(先初始化各個標簽的邊緣分布,然后將高斯核應用在各個i和j像素上,得出二元的勢函數,然后,將M個勢函數加權求和,然后考慮標簽對的相容性,算出這個標簽最終的二元情況下的邊緣分布,接着,加上一元的勢函數的影響(為何變為減去?),最后用配分函數歸一化)。這樣一層一個任務,便將CRF變為RNN。

 

 

本文的貢獻在與我們觀察到密集CRF中基於濾波的mean-field推理方法依賴於在每一個迭代中將高斯空間及雙邊濾波器應用於mean-field近似中。CNN中的濾波器在訓練后就固定了,而我們使用的是保留邊的高斯濾波器,其參數依賴於圖像原始的空間及外觀信息。

 

由於將推理過程改成了CNN的層,因此需要能夠計算每一層相對於其輸入的誤差,從而可以在反向傳播時傳給其前一層。於是,我們模型中CRF的參數如高斯核的參數、標簽相容性函數(原來是網絡學的)等可以在訓練網絡時自行決定。

介紹算法1:U表示負的一元能量函數(所以算法中會出現負號),,在傳統的CRF中,這些U一般由獨立的分類器得到。

 

5.1 初始化

(對各個步驟的解釋)

 

6 端對端的可訓練的網絡

 

為了介紹我們的端對端的用於語義分割的系統,我們先解釋重復的mean-field迭代過程是如何被重寫為RNN的。

 

6.1 CRF as RNN

 

在之前已經介紹了算法的一次迭代是可以被表示為多個CNN層的,圖1。我們用f_\theta 來表示一次迭代所帶來的轉化:有圖片I,像素級別的一元勢函數U和邊緣分布的估計Q,則mean-field一次mean-field迭代之后的下一步的邊緣分布的估計便是f_\theta(U,Q,I)。向量\theta為參數w(M個)和\mu。

多層mean-field迭代可以通過重復上述過程實現,每一次迭代的Q的估計來自於之前的一次迭代過程的結果,一元的勢函數還是保留原先的形式。這等價於將mean-field推理視為圖2所示的RNN。網絡的表現由下邊的式子表示,T是迭代次數:

 

 

 

(門函數是固定的,H1開始是由softmax作用於U上得來,后邊取H2上一時刻的值,,兩個G均無作為。)

我們稱此為CRF-RNN。模型的參數可以在RNN中由標准的反向傳播學得。29說明了密集CRF 的mean-field算法可以在少於10次的迭代內收斂。另外,實際使用時5次以上再增加就不會怎么變化了。因此,他不受RNN固有的梯度消失和梯度爆炸的影響。這也允許我們使用一些較簡單的(plain)RNN模型而不是復雜如LSTM的算法。

 

6.2 完成圖片標注

 

我們的模型包含一個全卷積網絡,不考慮圖片結構直接預測像素標注,然后跟着一個CRF-RNN模型,以基於CRF的概率圖模型來考慮結構的建模。所以這個模型結合了CNN和CRF的特性,可通過反向傳播BP和隨機梯度下降SGD等端對端的訓練。訓練時,整個圖像被用作mini-batch,網絡對每個像素輸出的值關於真實分割的誤差可以由一個適合的loss函數如softmax計算出來。我們用FCN-8s結構作為模型的第一部分,為CRF提供一元的勢函數。基於改變后的VGG-16,可以用來進行像素級別的預測。

在前向傳播時,一旦完成了CNN部分,轉到CRF-RNN中計算,數據會進行T次迭代才會離開RNN的循環。提供U的CNN以及CRF-RNN后邊的部分如loss層在此期間均不需要計算,因為調整,精細化過程只發生在RNN循環內部。一旦輸出Y離開了循環,softmax損失層便執行計算並作為網絡的終止。

在反向傳播中,一旦誤差傳到了CRF-RNN的輸出Y上,在傳到輸入U之前也是會進行T次迭代。在每次RNN內部的迭代中,誤差均會在各個部分之間計算,如算法1。

 

7 實現細節

 

8 實驗

 

9 總結


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM