這是我入AI讀的第一篇paper,很簡單卻很經典的思路。
1.題目:Semi-supervised Segmentation of Optic Cup in Retinal Fundus Images Using Variational Autoencoder(使用VAE對視網膜光學杯進行半監督分割)
2.Paper來源:MICCAI 2017;作者,IBM實驗室。
3.背景:這篇文章是對視杯進行分割,對于青光眼等疾病中,杯盤比(C/D)是指視乳頭直徑與其中的小凹的直徑之比。它客觀的反應了視神經的狀況,當C/D大于0.5時可能診斷視神經萎縮,需要找出原發病(比如青光眼)。正常人的C/D一般在0.3左右,不超過0.5。所以視杯的分割尤其重要。而目前用于視杯的分割是因為不清楚和不均勻的邊界使其分割非常具有挑戰性。完全監督的方法需要大量的注釋圖像來實現合理的魯棒性和準確性,這通常是不可取的,因為它可能是耗時且昂貴的。半監督方法通過利用大量未標記的數據以及標記的數據來解決這個問題,以提高性能。所以本文采取半監督的分割方式,使用變分自動編碼器(VAE)作為生成模型。
4.方式:從大量未標記的數據中訓練生成模型。然后,從生成模型嵌入的特征被并入分割模型中,使得可以從有限數量的標記圖像訓練分割模型。我們使用變分自動編碼器(VAE)作為生成模型,根據低維潛變量對每個觀測值進行建模。VAE有兩部分:將輸入入圖像映射到連續潛在變量z的編碼器網絡,以及使用潛變量z來重構圖像的解碼器網絡。
GVAE使用神經網絡模擬圖像的概率分布,由兩部分組成: 生成編碼器(GE)和生成解碼器(GD)。GE將圖像x作為輸入,輸出平均值μg和標準偏差σg。GE使用具有五個卷積層的卷積神經網絡建模,其中每個卷積層之后是最大池層,其有效地將特征響應的尺寸減小一半。 然后將兩個密集層附加到從最后一層的特征響應,以輸出σz和μz。GD網絡由五個網絡內反褶積層組成,其采用潛在表示z并重構圖像x。使用由變分下限給出的以下損失函數對GVAE進行訓練:
p(z)是球面高斯分布p(z)= N(0,I),作為編碼器網絡的輸出的后驗分布qφ(z|x)也是高斯分布,所以上式第一項可以轉換成:
SVAE的目標是通過利用GVAE學習的特征嵌入來預測來自給定圖像的光學杯的分割掩模。與GVAE類似,SVAE由兩部分組成:分段編碼器(SE)和分段解碼器(SD)。 SE使用五個卷積塊和最大池層,然后是兩個輸出σv和μv的密集層進行建模
使用以下損失函數訓練SVAE網絡:
其中第一項是KL散度,根據p(z)是球面高斯分布p(z)= N(0,I),可以轉化為:
第二項是表示預期的重建誤差,可以使用二進制交叉熵計算的分割掩模,β表示SD網絡的參數,第三項是在GE和SE產生的潛在代碼之間歐幾里德距離損失。
5.算法
6.實驗
本研究中使用的數據集由EyePACS1提供,包含12000個高分辨率眼底圖像。我們選擇600張圖像來創建一個標記的集合,其中通過臨床醫生手動描繪所有圖像的杯區域來獲得地面真相。剩余的11400張圖像用作未標記的集合。
將標簽集合分為400個訓練和200個測試集。為了評估培訓樣本數量的效果,我們進一步將訓練集劃分為四個包含50,100,200,400個樣本的子集。首先用20000次迭代的未標記集訓練生成模型(GVAE)網絡。我們使用帶有動量和批量大小為50的RMSprop算法使用小批量梯度下降,學習速率設置為0.001。
使用算法1中描述的訓練的GVAE來訓練使用標記集的分割模型(SVAE)。使用小批量梯度下降訓練了10000次迭代的SVAE網絡,并且學習率為0.0001的Adam優化器。
7.結果
比較所提出的SVAE,Unet方法和SAVE-Plain的地面實數和預測分段之間的平均骰子系數(DC),結果如下:
結果表示,本文的方法在完全訓練集后平均DC為0.80,略高于Unet和SVAE-Plain。然而,當我們使用較少數量的訓練樣本時,所提出的方法在Unet和SVAE-Plain都顯著改善。這表明當標記圖像的數量有限時,所提出的方法提高了分割性能。
下圖為分割結果,紅色是真實的視杯,綠色是本文方法分割出來的視杯。