天天看點

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN

這是專欄《圖像分割模型》的第5篇文章。在這裡,我們将共同探索解決分割問題的主流網絡結構和設計思想。

條件随機場有點複雜,那能不能用神經網絡的方式搞定CRF後處理呢?今天我們一起看一看穿上RNN外套的CRF長什麼樣。

作者 | 孫叔橋

編輯 | 言有三

本期論文《Conditional Random Fields as Recurrent Neural Networks》

1 預備知識

條件随機場(CRF或CRFs)與隐馬爾科夫模型有着千絲萬縷的聯系。為了了解CRF,這裡先簡單說一下馬爾科夫鍊(MC, Markov Chain)和隐馬爾科夫模型。

1.1 馬爾科夫鍊

馬爾科夫鍊是指具有馬爾可夫性質且存在于離散指數集合狀态空間内的随機過程。那麼什麼是馬爾科夫性質呢?

從定義上來說,當一個随機過程在給定現在狀态及過去所有狀态的情況下,其未來狀态的條件機率分布僅依賴于目前狀态;換句話說,在給定現在狀态時,其過去狀态(即該過程的曆史路徑)是條件獨立的。

這個表述比較抽象,我們舉個馬爾科夫鍊的例子了解一下:

比如有一隻螞蟻在下圖所示的網格内爬行(網格區域無限大),由于牆壁的存在,它隻能向前、後、左、右四個防線之一前進,每次前進一步。假設螞蟻從位置S開始,那麼在給定前n步的選擇後,目前螞蟻的所在位置就是知道的(假設在紅色點處);那麼下一步依然是四個方向之一,即下一步的狀态僅依賴與目前狀态,且選擇随機。同時,之前走過的每一步之間是條件獨立的,即上一步走的方向不會影響這一步的方向。

由于存在的選擇隻有四個,即選擇離散,是以我們稱這個過程為馬爾科夫鍊。當選擇連續時,稱為馬爾科夫過程(Markov Process)。

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN

1.2 隐式馬爾科夫模型

隐式馬爾科夫模型(HMM,Hidden Markov Model)是關于時序的機率模型,描述由一個隐藏的馬爾科夫鍊随機生成的不可觀測的狀态随機序列,再由各個狀态生成一個觀測而産生觀測序列的過程。隐藏的部分稱為狀态序列;生成的觀測組成的随機序列稱為觀測序列。

同樣,我們舉個例子來了解一下隐式馬爾科夫模型:

比如我們現在需要進行天氣預測,已知天氣的狀态有兩種:天氣好(晴天)和天氣不好(雨雪霧、陰天等),分别用1和2表示。

很明顯,要預測明天天氣的話,今天及以前的天氣是已知的。是以,我們可以通過曆史天氣計算出下圖中各個狀态之間的傳遞機率。比如,如果今天是晴天,那麼明天是晴天的機率為0.6,則狀态1到1為0.6(圖中的1-α)、狀态1到2的機率則為0.4;同理,假設今天天氣不好那麼明天天氣也不好的機率為0.9,則狀态2到2機率為0.9(圖中的1-β),那麼狀态2到1的機率為0.1。

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN

1.3 什麼是CRF

CRF是一種判别式機率模型,是随機場的一種,結合了最大熵模型和隐式馬爾科夫模型的特點;CRF是一種無向圖模型,圖中的頂點代表随機變量,頂點間的連線代表随機變量間的相依關系。其條件機率分布模型可以表述為P(Y|X),即給定一組随機變量的條件下,随機變量Y的馬爾科夫随機場(MRF,Markov Random Field)。

1.4 平均場理論

平均場理論(MFT,Mean Field Theory)是将随機過程模型中一個單體受到的所有影響近似為一個外部場,進而将多體問題分解為多個單體問題,再進行求解的範式和理論。簡單來說,就是把環境對物體的作用進行集體處理,然後用平均作用效果代替單個作用效果的加和的方法。

2 圖像分割中的CRF

在圖像分割問題中,CRF将被标注的像素視為一個MRF中的随機變量,整幅圖像就是一個全局觀測。那麼,标注x的能量函數就可以表示為:

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN

其中,第一項通常為CNN的分割結果,第二項為平滑項(後處理)。此時,最小化能量函數就能得到目前圖檔下最可能的标注組合。

這個過程可以通過下圖所示的方式分解為一系列的CNN層:

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN

把這個過程圖形化:

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN
3 網絡結構

前面已經說明了,均場CRF問題可以變成一個CNN,簡化結構如下圖所示:

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN

那麼,如果用一個FCN模型完成第一階段的分割任務,用RNN形式的CRF完成第二階段的後處理(CRF-RNN),則可以搭建如下形式的端到端分割網絡結構模型:

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN
4 實驗結果

下圖是CRFasRNN在Pascal VOC 2012下的實驗結果:

【圖像分割模型】以RNN形式做CRF後處理—CRFasRNN
總結

本文我們了解了上下文資訊整合的CRF方法,并将其以RNN的形式實作。作為平滑後處理,CRF能夠大幅提升分割的效果。盡管空洞卷積和CRF都能夠整合上下文資訊,但是目标的尺度問題它們卻沒有着重考慮。那麼下回我們就讨論下多尺度的分割任務。

本專欄文章:

第一期:​​【圖像分割模型】從FCN說起​​

第二期:​​【圖像分割模型】編解碼結構SegNet​​

第三期:​​【圖像分割模型】感受野與分辨率的控制術—空洞卷積​​

第四期:​​【圖像分割模型】快速道路場景分割—ENet​​

繼續閱讀