鞏稼民,馬豆豆,蔣杰偉,張雅瓊,裴夢(mèng)杰
1.西安郵電大學(xué)電子工程學(xué)院,陜西西安710121;2.山西醫(yī)科大學(xué)附屬山西省人民醫(yī)院消化科,山西太原030012;3.西安郵電大學(xué)計(jì)算機(jī)學(xué)院,陜西西安710121
慢性萎縮性胃炎是一種常見的消化道疾病,且在中國(guó)的發(fā)病率很高[1]。如果慢性萎縮性胃炎得不到及時(shí)治療,有可能發(fā)展成胃癌。2015年國(guó)家癌癥中心相關(guān)數(shù)據(jù)顯示,胃癌發(fā)病人數(shù)僅次于肺癌,是我國(guó)惡性腫瘤發(fā)病人數(shù)的第2 位[2]。醫(yī)學(xué)上將慢性萎縮性胃炎表征為嚴(yán)重的癌前病變。然而,胃鏡檢查在萎縮性胃炎檢查中的敏感性僅為約42%,并且活檢受許多因素的影響,檢查過程費(fèi)時(shí)費(fèi)力[3]。
目前,深度學(xué)習(xí)由于其學(xué)習(xí)特征的特性而不斷發(fā)展,在圖像領(lǐng)域已經(jīng)取得了巨大的成功。同時(shí),卷積神經(jīng)網(wǎng)絡(luò)(CNN)是醫(yī)學(xué)圖像識(shí)別和分類領(lǐng)域的出色工具,應(yīng)用于各種眼科疾病的識(shí)別和診斷[4-6]、腫瘤和癌癥的檢測(cè),比如胃癌[7]、肺結(jié)節(jié)[8]、乳腺癌[9]等。Tajbakhsh 等[10-12]將各種息肉的特征通過CNN 應(yīng)用于檢測(cè)息肉的系統(tǒng)。Zhu等[13]將用于特征提取的CNN與支持向量機(jī)作為的分類器相結(jié)合,用以檢測(cè)內(nèi)窺鏡圖像的病變區(qū)域。Pogorelov等[14]檢測(cè)了單疾病和多疾病計(jì)算機(jī)輔助檢測(cè)的疾病,并比較了6 層和3 層CNN 的性能。Zhang 等[15]提出了一個(gè)GPDNet 用于檢測(cè)胃癌的癌前病變。
癌癥的排查很重要,但是慢性萎縮性胃炎的防治也有極大意義。然而,在利用胃鏡的胃竇圖像計(jì)算機(jī)輔助篩查慢性萎縮性胃炎方面仍然存在很大的差距。因此,利用深度學(xué)習(xí)方法協(xié)助胃鏡檢查慢性萎縮性胃炎是一項(xiàng)開創(chuàng)性的研究工作。本文提出的方法優(yōu)于其他常規(guī)方法,慢性萎縮性胃炎的檢出率為87.92%,為自動(dòng)診斷慢性萎縮性胃炎提供了可能性。并且通過對(duì)Apriori算法挖掘萎縮性胃炎與其他癥狀之間的關(guān)聯(lián)關(guān)系,輔助醫(yī)生的診斷。
從2018年4月至2019年4月,從山西人民醫(yī)院胃鏡圖像數(shù)據(jù)庫(kù)中的1 699 例患者中收集了5 470 張胃竇圖像,并將這些圖像的病理結(jié)果作為標(biāo)記這些圖像的金標(biāo)準(zhǔn),有3 042張萎縮性胃炎的圖像和2 428張無(wú)萎縮性胃炎的圖像。
首先,對(duì)所有胃竇圖像進(jìn)行調(diào)整,使圖像的長(zhǎng)度和寬度相同,大小為512×512,圖像格式為bmp。由于每個(gè)圖像中都有水印,有些水印會(huì)與目標(biāo)區(qū)域重疊,這會(huì)干擾所要研究的目標(biāo)。第一步是使用INPAINT_TELEA方法對(duì)圖像進(jìn)行預(yù)處理,以去除圖像中的水印噪聲。INPAINT_TELEA算法用于處理胃鏡圖像某些區(qū)域中的水印,例如年齡、性別、時(shí)間和系統(tǒng)。目的是去除與患者有關(guān)的敏感信息,避免在萎縮性胃炎圖像識(shí)別中出現(xiàn)白色水印干擾。并且使用雙線性插值法統(tǒng)一圖像尺寸。所有胃鏡圖像均未壓縮,圖像信息已完全保留。通過INPAINT_TELEA算法去除水印的過程如圖1所示。
圖1 INPAINT_TELEA 算法去除水印的過程Fig.1 Process of INPAINT_TELEA algorithm to remove watermarks
將80%和20%的萎縮性胃炎圖像和非萎縮性胃炎圖像隨機(jī)分配給訓(xùn)練集和測(cè)試集,利用五折交叉驗(yàn)證來評(píng)估實(shí)驗(yàn)結(jié)果,并驗(yàn)證模型的可靠性,然后使用測(cè)試集來評(píng)估模型的有效性[16]。為了評(píng)價(jià)SRCAGnet模型的性能,將其與4 個(gè)評(píng)價(jià)指標(biāo)進(jìn)行比較,它們分別是準(zhǔn)確性、敏感性、特異性和精確度,計(jì)算公式如式(1)所示:
其中,TN、FN、TP和FP分別表示真陰性、假陰性、真陽(yáng)性和假陽(yáng)性的數(shù)目。此外,ROC的概念也被引入了機(jī)器學(xué)習(xí)領(lǐng)域,用以評(píng)估分類和測(cè)試結(jié)果。因此,ROC曲線是一項(xiàng)非常重要的統(tǒng)計(jì)分析方法。AUC是ROC曲線下的面積,也可用于評(píng)價(jià)網(wǎng)絡(luò)模型結(jié)果的性能。
在計(jì)算機(jī)視覺領(lǐng)域,CNN 已成為主流的方法,例如Alexnet、GoogleNet、Incepetion 以及殘差網(wǎng)絡(luò)(ResNet)[17]等。本文在殘差網(wǎng)絡(luò)的基礎(chǔ)上,結(jié)合Zagoruyko 等[18]提出的寬殘差神經(jīng)網(wǎng)絡(luò)的思想,淺層網(wǎng)絡(luò)增加寬度也可以提升模型的性能。因此在基于ResNet-32 的基礎(chǔ)上,針對(duì)圖像的輸入大小通過修改第一層卷積層的卷積核大小以及每層卷積層中的特征圖數(shù)量得到一個(gè)改進(jìn)的20層的殘差網(wǎng)絡(luò)。
首先,在第一層卷積層中使用大小為5×5的卷積核,獲取更多的信息,填充像素?cái)?shù)(p)設(shè)為2,步長(zhǎng)(s)設(shè)為1,使得輸出與輸入具有相同的特征圖,然后輸入到殘差單元中。所改進(jìn)的殘差網(wǎng)絡(luò)包含有9 個(gè)殘差模塊:首先使用3×3的卷積操作對(duì)上一層輸入進(jìn)行特征提取,p為1,s為1 以保證每個(gè)殘差模塊的輸入與輸出特征圖大小相同。其次采用批歸一化算法對(duì)輸出數(shù)據(jù)進(jìn)行處理,防止過擬合現(xiàn)象,并采用ReLu激活函數(shù)增強(qiáng)網(wǎng)絡(luò)之間的非線性關(guān)系[19]。然后將其輸入到第二個(gè)卷積層中,所用參數(shù)與第一個(gè)卷積層一樣。在經(jīng)過9個(gè)殘差單元后,通過全局平均池化融合學(xué)習(xí)到的特征并與全連接層(FC)連接,F(xiàn)C 層輸出為本文分類數(shù)。通過實(shí)驗(yàn)證明了改進(jìn)的殘差網(wǎng)絡(luò)與ResNet-32 相比,分類的精度提高0.6%,兩者的網(wǎng)絡(luò)參數(shù)對(duì)照如表1所示。
表1 改進(jìn)前后的殘差模塊網(wǎng)絡(luò)參數(shù)Tab.1 Parameters of residual block network before and after improvement
為進(jìn)一步提高萎縮性胃炎的識(shí)別率,在基于改進(jìn)的殘差網(wǎng)絡(luò)的基礎(chǔ)上融入了Squeeze_and_Excitaion(SE)模塊,形成SR-CAGnet。SENet是由Hu等[20]在2017年提出,它基于一個(gè)稱為SE模塊的新結(jié)構(gòu)單元。圖2是SE模塊的結(jié)構(gòu)圖。給定輸入x,特征通道數(shù)為C1。經(jīng)過一系列的卷積和其他變換后,獲得了具有特征通道數(shù)量為C2的特征。與傳統(tǒng)的CNN不同,該模塊將先前的特征通過3個(gè)操作(Squeeze、Excitation和Scale)進(jìn)行了重新校準(zhǔn)。
圖2 SE模塊的結(jié)構(gòu)圖Fig.2 Architecture of SE block
(1)Squeeze操作,該操作通過全局平均池化來實(shí)現(xiàn),沿空間維度執(zhí)行特征壓縮,將每個(gè)二維特征通道轉(zhuǎn)換為實(shí)數(shù),如文獻(xiàn)[19]中給出的式(2)所示:
其中,輸入是經(jīng)過卷積操作后所輸出的一個(gè)三維矩陣,特征通道的數(shù)目為,mt為寬度,nt為高度,為三維矩陣中特定的通道。
(2) Excitation 操作即 Support(A→B) =其中,P(B|A)是第一個(gè)FC的參數(shù),P(A?B)是第二個(gè)FC 的參數(shù),P(A)是ReLu 激活,N(A?B)為sigmiod 激活,N(S)為縮放參數(shù),取16。該操作通過運(yùn)算操作,顯式地建立特征通道之間的相關(guān)性。首先,將尺寸減小到輸入的1/16,然后通過全連接層FC 返回原始尺寸,最終得到參數(shù)s,如文獻(xiàn)[19]中給出的式(3)所示:
(3)Scale 操作,將Excitation 輸出的權(quán)重作為特征選擇,然后通過將權(quán)重之前的特征相乘進(jìn)行輸出,如式(4)所示:
改進(jìn)的網(wǎng)絡(luò)SR-CAGnet 引入了短路機(jī)制并利用特征重用原理,使得網(wǎng)絡(luò)在增加層數(shù)的同時(shí)不會(huì)出現(xiàn)梯度消失的現(xiàn)象,并將胃竇圖像中特征的強(qiáng)弱賦予不同的權(quán)重,減少冗余的特征。SR-CAGnet 的基礎(chǔ)模塊如圖3所示,該網(wǎng)絡(luò)充分利用了殘差網(wǎng)絡(luò)和SE模塊的優(yōu)點(diǎn)。將所設(shè)計(jì)的SR-CAGnet網(wǎng)絡(luò)應(yīng)用到胃竇圖像中CAG 的自動(dòng)診斷過程中,取得了良好的分類效果。
圖3 SR-CAGnet的基礎(chǔ)模塊結(jié)構(gòu)Fig.3 Basic module structure of SR-CAGnet
SR-CAGnet 網(wǎng)絡(luò)中包含了9 個(gè)SE 模塊,分類過程如圖4所示,首先通過卷積層將輸入的胃竇圖像進(jìn)行淺層特征的提取,然后再通過殘差模塊對(duì)特征進(jìn)行進(jìn)一步的學(xué)習(xí),SE block對(duì)進(jìn)一步學(xué)習(xí)的特征執(zhí)行特征重標(biāo)定策略,使用全局平均池化融合學(xué)習(xí)到的特征,最后用Softmax分類器進(jìn)行分類。
圖4 SR-CAGnet模型的分類框圖Fig.4 Architecture of classification framework of SR-CAGnet model
為了比較優(yōu)化算法對(duì)模型準(zhǔn)確率的影響,本文分別對(duì)比了Adam 算法和SGD 算法對(duì)網(wǎng)絡(luò)模型的影響。其中,自適應(yīng)隨機(jī)優(yōu)化方法Adam 算法[21]等效于對(duì)原始梯度進(jìn)行指數(shù)加權(quán)平均,執(zhí)行歸一化過程,然后更新梯度值。從而將獨(dú)立的自適應(yīng)學(xué)習(xí)率設(shè)置為不同的參數(shù)。其公式如式(5)所示:
式中,mt、nt分別是對(duì)梯度的一階矩估計(jì)和二階矩估計(jì)是對(duì)mt、nt的校正。Adam 算法在實(shí)踐中具有優(yōu)勢(shì),即所需內(nèi)存較少且計(jì)算高效。
關(guān)聯(lián)規(guī)則挖掘[22],也稱為購(gòu)物籃分析,最早用于在超市銷售數(shù)據(jù)庫(kù)中發(fā)現(xiàn)不同商品之間的關(guān)系。這個(gè)算法反映一個(gè)事件與其他事件之間的關(guān)系。如果我們能夠了解多個(gè)事件之間的明確關(guān)系,那么理論上其中一個(gè)事件可以被其他事件預(yù)測(cè)。Apriori 算法[23]是用于挖掘頻繁數(shù)據(jù)集的最經(jīng)典、最常用的算法。關(guān)聯(lián)規(guī)則挖掘廣泛應(yīng)用于生物醫(yī)學(xué)領(lǐng)域,例如微生物能量勘探[24]和污染流行病學(xué)[25]。Apriori 算法中有兩個(gè)重要參數(shù):支持度和置信度。支持度從字面上看是一種支持程度,換句話說,它表示事件A和事件B同時(shí)出現(xiàn)的百分比。置信度揭示了當(dāng)事件A出現(xiàn)時(shí)事件B是否必須發(fā)生,如果發(fā)生,它出現(xiàn)的可能性。如果A到B的置信度為100%,則表示當(dāng)A出現(xiàn)時(shí)B將出現(xiàn)(返回不一定成立)。關(guān)聯(lián)規(guī)則的支持度和置信度通過式(6)和式(7)表示:
其中,P(B|A)表示假設(shè)如果發(fā)生了事件A,則發(fā)生事件B的概率;P(A?B)表示同時(shí)發(fā)生事件A和事件B的概率;P(A)表示事件A的概率;N(A?B)表示事件A和事件B同時(shí)發(fā)生的次數(shù);N(S)表示所有的次數(shù)。
由于胃鏡圖像的數(shù)據(jù)集還包括其他癥狀,例如化生、粘膜粗糙等。因此,挖掘它們與萎縮性胃炎之間的關(guān)系是有必要的。通過Apriori 算法,可以了解其他癥狀和萎縮性胃炎之間的關(guān)聯(lián)關(guān)系,以輔助醫(yī)生的診斷。
在實(shí)驗(yàn)中,使用Caffe 環(huán)境[26]實(shí)現(xiàn)SR-CAGnet 網(wǎng)絡(luò),并在兩個(gè)NVIDIA TITAX X GPU 上同時(shí)進(jìn)行訓(xùn)練。每個(gè)GPU 上的batch size 大小為64,以加速參數(shù)收斂?;A(chǔ)學(xué)習(xí)率設(shè)置為0.001,優(yōu)化算法比較了Adam和SGD,最大迭代次數(shù)設(shè)為4 000。
在訓(xùn)練過程中,本文嘗試了幾種不同的網(wǎng)絡(luò)體系結(jié)構(gòu)Alexnet、改進(jìn)的ResNet 和SR-CAGnet。然后通過實(shí)驗(yàn)比較各個(gè)網(wǎng)絡(luò)的性能。在訓(xùn)練過程中,模型采用了原始圖像的隨機(jī)剪切策略,并在不同的優(yōu)化算法下分別進(jìn)行實(shí)驗(yàn)。表2說明了不同的CNN 在不同優(yōu)化算法下的分類結(jié)果。通過表2的數(shù)據(jù),可以得出在改進(jìn)的網(wǎng)絡(luò)中Adam算法優(yōu)于SGD算法,因此實(shí)驗(yàn)選用Adam算法作為網(wǎng)絡(luò)的優(yōu)化算法。
表2 不同CNN模型在不同優(yōu)化算法下的準(zhǔn)確率(%)Tab.2 Accuracies of different convolutional neural network models using different optimization algorithms(%)
研究表明,SR-CAGnet 網(wǎng)絡(luò)在識(shí)別慢性萎縮性胃炎方面具有很高的性能。通過K折交叉驗(yàn)證(K=5)以保證模型的可靠性,5 組模型測(cè)試集的準(zhǔn)確度約為87.9%,稍有變化,但變化幅度小,五折交叉驗(yàn)證的結(jié)果表明該模型具有較好的魯棒性。為了評(píng)價(jià)SR-CAGnet,計(jì)算了敏感性和特異性,分別為88.2%和85.6%。此外,使用ROC 曲線和AUC 值來研究改進(jìn)后模型的可靠性和泛化能力。本實(shí)驗(yàn)中的靈敏性和特異性是在0.5 的分類概率的位置上進(jìn)行截?cái)嗟贸龅?,即選擇輸出結(jié)果中概率值大的類別作為分類類別。從圖5可以看出,AUC 已經(jīng)達(dá)到0.895,表明SR-CAGnet具有良好的分類性能。
圖5 SR-CAGnet的ROC曲線Fig.5 Receiver operating characteristic curve of SR-CAGnet
在本實(shí)驗(yàn)的Apriori 算法中,設(shè)定最小置信度為0.7,則輸出的置信度都大于這個(gè)最小值,結(jié)果如表3所示。
從表3可以看出,胃鏡檢查下的黏膜粗糙和白相以及化生,與慢性萎縮性胃炎的最終診斷相關(guān),這將為醫(yī)生的診斷提供可解釋性。換句話說,如果醫(yī)生在胃鏡下觀察到黏膜粗糙,白相為主或者化生的現(xiàn)象,則極大可能診斷該患者的病理結(jié)果為慢性萎縮性胃炎。從總體病歷來看,患病年齡以中老年為主,且男女患病無(wú)明顯差異,如果能早期發(fā)現(xiàn)和治療慢性萎縮性胃炎,就可能延緩甚至阻止疾病的進(jìn)展。這些結(jié)果被醫(yī)生證實(shí)是有價(jià)值的。
表3 關(guān)聯(lián)規(guī)則算法的結(jié)果Tab.3 Results of association rule algorithm
為了探尋該模型在胃竇圖像上進(jìn)行黏膜萎縮判定時(shí)的決策依據(jù),本文利用CAM 生成熱力圖來查看胃鏡圖像中的哪些像素決定了模型的分類結(jié)果,如圖6所示。
圖6a 為原始圖像,其中黃色框?yàn)樵撃P驮谠紙D像上的隨機(jī)裁剪區(qū)域;圖6b 為從原始圖像上裁剪下來的區(qū)域,其中紅色框?yàn)獒t(yī)生標(biāo)注的病灶區(qū)域;圖6c為經(jīng)過CAM 可視化后生成的熱圖。從圖6中可以看出,CAM 熱圖在醫(yī)生所標(biāo)注的病灶區(qū)域附近顯示出了鮮艷的暗紅色,表明SR-CAGnet 模型在判別胃竇圖像是否存在黏膜萎縮時(shí)與醫(yī)生判斷是基本一致的。不僅如此,通過CAM 熱圖生成不僅完成了圖像分類,并定位出了病灶的相對(duì)位置。可見本文中所提出的模型是準(zhǔn)確有效的。
隨著計(jì)算機(jī)技術(shù)的高速發(fā)展,人工智能技術(shù)在消化道內(nèi)鏡領(lǐng)域的應(yīng)用越來越重要。由于深度學(xué)習(xí)的出現(xiàn),在許多領(lǐng)域中檢測(cè)和診斷醫(yī)學(xué)圖像是有效的。
由于胃竇圖像中慢性萎縮性胃炎的胃鏡下表現(xiàn)比較細(xì)微,因此從實(shí)驗(yàn)結(jié)果來看,本文所提出的SRCAGnet 由于結(jié)合了殘差網(wǎng)絡(luò)與SE block 的優(yōu)勢(shì),在本數(shù)據(jù)集上相比于其它網(wǎng)絡(luò)可以取得不錯(cuò)的分類效果。此外,通過Apriori 算法得出了萎縮性胃炎與其他癥狀的關(guān)聯(lián)關(guān)系,可以輔助醫(yī)生診斷,這是非常重要的一點(diǎn)。下一步,我們將研究性能更好的網(wǎng)絡(luò)以提高慢性萎縮性胃炎的檢出率,節(jié)省人工檢查的成本。
圖6 SR-CAGnet模型在胃竇圖像的慢性萎縮性胃炎篩查可解釋性熱圖Fig.6 SR-CAGnet model for the interpretation of chronic atrophic gastritis in the image of gastric antrum