李 筠, 汪 芳, 楊海馬, 宋夜夜
(上海理工大學(xué)光電信息與計算機(jī)工程學(xué)院, 上海 200093)
隨著生活條件的改善,人們的生活飲食結(jié)構(gòu)也發(fā)生了變化,流行病學(xué)研究顯示不同地區(qū)居民的大腸息肉檢出率在10.25%~26.64%,并呈逐年上升趨勢[1]。由于大腸息肉的早期癥狀不明顯,不易被發(fā)現(xiàn),所以結(jié)腸檢查對結(jié)直腸癌的早期診斷和預(yù)防非常重要[2]。為了解決醫(yī)療資源不足的問題,并且提高結(jié)腸檢查的準(zhǔn)確率,人們廣泛運(yùn)用高性能計算技術(shù)協(xié)助進(jìn)行醫(yī)療診斷。
在圖像分割的研究領(lǐng)域,ZHOU等[3]在U-Net模型的基礎(chǔ)上提出了UNet++,將編碼器和解碼器通過一系列嵌套的密集跳過路徑連接,從而縮小了編碼器和解碼器的特征映射之間的語義差距。FAN等[4]提出使用并行的部分解碼器組件獲取全局特征圖和遞歸反向注意模塊,然后通過全局特征圖和反向注意機(jī)制建立區(qū)域與邊界的關(guān)系,提高了對息肉分割的準(zhǔn)確性。YEUNG等[5]采用雙通道注意力,獲取上下文的特征進(jìn)行對比加權(quán)增強(qiáng)識別結(jié)果,彌補(bǔ)了傳統(tǒng)空間卷積丟失相關(guān)細(xì)節(jié)特征的缺陷。
從上述研究內(nèi)容可以看出,人們在基于U-Net模型的基礎(chǔ)上提出了許多改進(jìn)方案,但是這些改進(jìn)方案中大部分忽略了在U-Net模型不斷地編碼解碼的層次變換中出現(xiàn)了信息丟失,以及同一層次之間的編碼器與解碼器的聯(lián)系,對一些畸形的不容易分割的息肉圖像無法達(dá)到預(yù)期分割效果的問題。針對上述問題,本文在U-Net模型結(jié)構(gòu)的基礎(chǔ)上對編解碼器結(jié)構(gòu)模型進(jìn)行優(yōu)化,提出了一種新型結(jié)腸息肉圖像分割模型。
本文基于U-Net的編碼器-解碼器結(jié)構(gòu)的模型基礎(chǔ)提出了三種結(jié)構(gòu)。
(1)軸向注意力機(jī)制的結(jié)合模塊,彌補(bǔ)在網(wǎng)絡(luò)層次加深后造成的梯度爆炸或者梯度消失的問題。同時,通過軸向注意力機(jī)制,保持了特征中較遠(yuǎn)距離的位置之間的聯(lián)系。
(2)適應(yīng)聯(lián)系的訓(xùn)練。使用不同空洞膨脹率的空洞卷積彌補(bǔ)池化過程中的特征信息丟失問題。同時,采用自注意力模型彌補(bǔ)池化過程中空間結(jié)構(gòu)的信息丟失問題。
(3)雙通道注意力連接,挖掘特征圖中目標(biāo)區(qū)域的結(jié)構(gòu)信息,將粗略和低分辨率的預(yù)測圖細(xì)化為一個完整的包含目標(biāo)區(qū)域和細(xì)節(jié)高分辨率的顯著圖。
如圖1所示,本文所提研究模型基于U-Net模型的對稱編碼器-解碼器結(jié)構(gòu)。編碼器階段,在進(jìn)行每一層卷積運(yùn)算之前加入跳躍軸向注意力模塊,解決原編碼器結(jié)構(gòu)中存在的梯度問題;池化過程中,加入自適應(yīng)聯(lián)系訓(xùn)練,彌補(bǔ)池化過程中的信息丟失問題;解碼器階段,每層的輸入特征與同層的編碼器輸出特征進(jìn)行雙通道注意力連接,保留目標(biāo)區(qū)域信息。經(jīng)過4層編碼器-解碼器運(yùn)算,得到輸出結(jié)果。
圖1 模型結(jié)構(gòu)Fig.1 Model structure
隨著神經(jīng)網(wǎng)絡(luò)層次的增多,容易造成梯度爆炸和梯度消失的問題。梯度爆炸會導(dǎo)致神經(jīng)網(wǎng)絡(luò)的訓(xùn)練不穩(wěn)定,無法獲得有效的數(shù)據(jù),而梯度消失會導(dǎo)致訓(xùn)練權(quán)重的更新緩慢甚至停滯。于是,本文提出跳躍軸向注意力機(jī)制解決梯度問題。跳躍軸向注意力模塊結(jié)構(gòu)如圖2所示。
(1)先將每一層的輸入進(jìn)行2次卷積、1次批標(biāo)準(zhǔn)化及1次激活的運(yùn)算,運(yùn)算結(jié)果記為R1。
(2)將每一層的輸入進(jìn)行一次1×1的卷積運(yùn)算和批標(biāo)準(zhǔn)化,運(yùn)算結(jié)果記為R2。
(3)將R1與R2進(jìn)行矩陣相加融合,運(yùn)算結(jié)果記為R3。
(4)將R3加入軸向注意力模塊,軸向注意力即圖3所示的橫向注意力模塊與圖4所示的縱向注意力模塊的并聯(lián)結(jié)合,圖3中的V、Q、K分別代表值矩陣(Value Matrix)、查詢矩陣(Query Matrix)和鍵矩陣(Key Matrix)。這些矩陣都是在訓(xùn)練過程中隨機(jī)初始化的權(quán)重矩陣,并在梯度下降過程中進(jìn)行優(yōu)化。將兩個注意力的運(yùn)算結(jié)果進(jìn)行矩陣相加融合,結(jié)果記為整體跳躍軸向注意力機(jī)制的輸出。
圖3 橫向注意力結(jié)構(gòu)Fig.3 Row attention structure
圖4 縱向注意力結(jié)構(gòu)Fig.4 Col attention structure
1×1的卷積核提供了類似全連接的運(yùn)算,有效地增加了網(wǎng)絡(luò)的深度,保證輸入尺寸不變,同時增強(qiáng)了非線性運(yùn)算能力,有效地提高了整個網(wǎng)絡(luò)的表達(dá)能力[6]。軸向注意力將平面上的特征沿著橫向和縱向進(jìn)行平行的分解,將平面特征降為一維的線性特征,有效地降低了學(xué)習(xí)成本[7]。
在每一層運(yùn)算結(jié)束后,模型會進(jìn)行池化運(yùn)算再進(jìn)入下一層,這樣的池化操作會丟失較多的空間結(jié)構(gòu)信息,導(dǎo)致出現(xiàn)不同尺寸大小的圖像、分割目標(biāo)的尺寸相差過大,以及畸形或者尺寸較小的樣本等現(xiàn)象,會導(dǎo)致模型泛化能力變?nèi)?無法分割出復(fù)雜樣本區(qū)域[8]。于是,本文提出了適應(yīng)聯(lián)系訓(xùn)練用于抽取不同尺寸的樣本關(guān)聯(lián),從而適應(yīng)更多尺寸的樣本。適應(yīng)聯(lián)系訓(xùn)練結(jié)構(gòu)圖如圖5所示。
圖5 適應(yīng)聯(lián)系訓(xùn)練結(jié)構(gòu)圖Fig.5 Diagram of adaptive connection training structure
(1)對輸入分別進(jìn)行空洞膨脹率為1、3、5的空洞卷積,將輸出記為R1、R2、R3。
(2)將R1、R2、R3進(jìn)行Concat運(yùn)算融合,結(jié)果記為R4。
(3)將R4進(jìn)行一次3×3卷積運(yùn)算,結(jié)果記為R5。
(4)將R5加入如圖5所示的自注意力模塊,將輸入特征復(fù)制為3份,即I1、I2、I3,對I1進(jìn)行1×1卷積及標(biāo)準(zhǔn)化操作,得到R6,將R6與I2進(jìn)行相乘融合及兩次全連接運(yùn)算,得到R7,再將R7與I3進(jìn)行相加融合,作為模塊輸出。
通過空洞卷積,保留了圖像內(nèi)部結(jié)構(gòu)的特征。通過自注意力模型,將任意位置的信息關(guān)聯(lián),讓模型在充分利用池化的操作增強(qiáng)感受野優(yōu)勢的同時,也彌補(bǔ)了池化操作造成的信息丟失問題。
解碼階段,在進(jìn)行上采樣時,通常會忽視編碼器-解碼器特有的對稱結(jié)構(gòu)信息,沒有充分聯(lián)系對應(yīng)編碼層輸出所包含的信息,容易造成信息缺失[9]。于是,本文改造了上采樣階段流程,具體流程如圖6所示。
圖6 雙通道注意力門控模塊Fig.6 Dual channel attention gating module
(1)將前一層產(chǎn)生的輸入特征進(jìn)行上采樣運(yùn)算,運(yùn)算結(jié)果記為R1。
(2)通過長連接將對應(yīng)編碼層的輸出與R1進(jìn)行特征融合,結(jié)果記為R2。
(3)將R2通過圖7所示的雙通道注意力模塊,首先將模塊輸入與圖8所示的通道注意力模型進(jìn)行運(yùn)算,其次與模塊輸入進(jìn)行融合,再次與圖9所示的空間注意力模型進(jìn)行運(yùn)算,最后與模塊輸入進(jìn)行融合得到模塊輸出R3。
圖7 雙通道注意力結(jié)構(gòu)圖Fig.7 Diagram of dual channel attention structure
圖8 通道注意力結(jié)構(gòu)圖Fig.8 Diagram of channel attention structure
圖9 空間注意力結(jié)構(gòu)圖Fig.9 Diagram of spatial attention structure
(4)將R3進(jìn)行批標(biāo)準(zhǔn)化和激活運(yùn)算,作為整個模塊輸出。
(1)
如表1所示,本文所使用的數(shù)據(jù)集分別是:CVC-ClinicDB,Kvasir-SEG,其中CVC-ClinicDB包含612張樣本數(shù)據(jù),Kvasir-SEG包含1 000張樣本數(shù)據(jù)。將數(shù)據(jù)集分為8份訓(xùn)練集、1份驗(yàn)證集和1份測試集。訓(xùn)練集用于模型的訓(xùn)練,驗(yàn)證集用來進(jìn)行模型泛化使用,將得到的預(yù)測圖與標(biāo)記圖進(jìn)行比對,得到評價指標(biāo)得分,量化模型分割效果,測試集用來將得分最高的模型進(jìn)行泛化,得到預(yù)測圖。由于不同數(shù)據(jù)集的尺寸大小不一,所以訓(xùn)練前需要對數(shù)據(jù)集進(jìn)行預(yù)處理工作,將樣本圖片尺寸統(tǒng)一以保證訓(xùn)練參數(shù)的一致性。
表1 實(shí)驗(yàn)數(shù)據(jù)集的構(gòu)成Tab.1 The composition of the experimental dataset
本文引入4個分界定義:TP(真陽性),即樣本預(yù)測為正,標(biāo)記為正,預(yù)測正確;FN(假陰性),即樣本預(yù)測為負(fù),標(biāo)記為正,預(yù)測錯誤;FP(假陽性),即樣本預(yù)測為正,標(biāo)記為負(fù),預(yù)測錯誤;TN(真陰性),即樣本預(yù)測為負(fù),標(biāo)記為負(fù),預(yù)測正確。同時,引入了4個評價指標(biāo)量化檢驗(yàn)所用模型的效果,具體的評價指標(biāo)計算公式如下。
(1)Dice相似系數(shù)(Dice Similarity Coefficient):計算預(yù)測目標(biāo)區(qū)域與實(shí)際目標(biāo)區(qū)域的相似性。Dice公式計算如下:
(2)
(2)平均交并比系數(shù)(mIoU):計算預(yù)測值和實(shí)際值兩個集合的交集與并集的比值,結(jié)果的交并比系總和取平均值。mIoU公式計算如下,其中k表示類別,k+1表示加上了背景類,i表示真實(shí)值。
(3)
(3)準(zhǔn)確率(Precision):計算機(jī)預(yù)測符合要求的正確識別物體的個數(shù)占總識別出的物體個數(shù)的百分?jǐn)?shù),準(zhǔn)確率相關(guān)公式如下:
(4)
(4)正確率(Accuracy):計算機(jī)預(yù)測正確物體的個數(shù)占所有樣本個數(shù)的百分?jǐn)?shù),正確率計算公式如下:
(5)
如圖10所示,與同類模型相比,本文所提出的模型具有更好的分割效果。在CVC-ClinicDB數(shù)據(jù)集上,本文實(shí)驗(yàn)的mIoU和Dice數(shù)值分別為0.903和0.947,Precision為0.933,Accuracy為0.933,對比其他組實(shí)驗(yàn)均有更好的效果,在CVC-ClinicDB數(shù)據(jù)集上不同模型的結(jié)果對比如表2所示。
圖10 模型在CVC-ClinicDB數(shù)據(jù)集上的部分分割結(jié)果對比圖Fig.10 Comparison of partial segmentation results of the model on the CVC-ClinicDB dataset
表2 在CVC-ClinicDB數(shù)據(jù)集上不同模型的結(jié)果對比Tab.2 Comparison of results of different models on the CVC-ClinicDB dataset
在Kvasir-SEG數(shù)據(jù)集上,本文實(shí)驗(yàn)的mIoU和Dice的指標(biāo)分別為0.763和0.868,Precision為0.857,Accuracy為0.867,均比對比實(shí)驗(yàn)組有更好的效果,在Kvasir-SEG數(shù)據(jù)集上不同模型的結(jié)果對比如表3所示。
表3 在Kvasir-SEG數(shù)據(jù)集上不同模型的結(jié)果對比Tab.3 Comparison of results of different models on the Kvasir-SEG dataset
為了驗(yàn)證模型結(jié)構(gòu)的合理性,在CVC-ClinicDB數(shù)據(jù)集上進(jìn)行消融實(shí)驗(yàn)。Baseline為骨干網(wǎng)絡(luò);SAA為跳躍軸向注意力模塊;ACT為適應(yīng)聯(lián)系訓(xùn)練模塊;DCG為雙通道注意力門控模塊。本文設(shè)計了8組實(shí)驗(yàn)進(jìn)行評估:①骨干網(wǎng)絡(luò);②骨干網(wǎng)絡(luò)引入SAA模塊;③骨干網(wǎng)絡(luò)引入ACT模塊;④骨干網(wǎng)絡(luò)引入DCG模塊;⑤骨干網(wǎng)絡(luò)引入SAA和ACT模塊;⑥骨干網(wǎng)絡(luò)引入ACT和DCG模塊;⑦骨干網(wǎng)絡(luò)引入SAA和DCG模塊;⑧本文模型。不同模塊的消融實(shí)驗(yàn)結(jié)果對比如表4所示,在分別引入了三個模塊后對比骨干網(wǎng)絡(luò)均有顯著提升,引入三個模塊后,模型取得了較好的實(shí)驗(yàn)結(jié)果,證明了本文模型結(jié)構(gòu)的合理性。
表4 不同模塊的消融實(shí)驗(yàn)結(jié)果對比Tab.4 Comparison of ablation experimental results of different modules
本文提出了以編碼器-解碼器結(jié)構(gòu)模型為基礎(chǔ),通過采用1個跳躍連接模塊和接入軸向注意力機(jī)制,解決了因神經(jīng)網(wǎng)絡(luò)的層次加深導(dǎo)致的梯度消失或者梯度爆炸的問題,更好地獲取整個圖像遠(yuǎn)近位置的聯(lián)系。采用適應(yīng)聯(lián)系訓(xùn)練,有效地減少了池化過程中空間信息的丟失。采用雙通道門控模塊,保證了解碼過程中空間信息和通道信息的完整性。經(jīng)過對比實(shí)驗(yàn)驗(yàn)證了本文提出模型的效果和可行性。經(jīng)過消融實(shí)驗(yàn)驗(yàn)證了本文結(jié)構(gòu)的合理性。未來,需要豐富更多的數(shù)據(jù)集驗(yàn)證本文模型的效果,同時對模型進(jìn)行工程類的嵌入開發(fā),實(shí)現(xiàn)標(biāo)準(zhǔn)化輸入與標(biāo)準(zhǔn)化輸出,實(shí)現(xiàn)可以完成批量工業(yè)化處理圖像的能力。