董 煦 胡珂立 洪方雨
(紹興文理學(xué)院 計(jì)算機(jī)科學(xué)與工程系, 浙江 紹興 312000)
結(jié)直腸息肉是一種結(jié)直腸黏膜表面突出到腸腔內(nèi)的隆起狀病變,在未確定性質(zhì)之前均稱為息肉.當(dāng)前多項(xiàng)臨床研究顯示,息肉在特定條件下發(fā)生惡變率較高,也是誘發(fā)結(jié)直腸癌的主要原因[1].據(jù)Globocan’2020信息,結(jié)直腸癌是全球第三大癌癥,是第二大致死癌癥.在中國(guó),結(jié)直腸癌的致死率也排在前列.根據(jù)2019年國(guó)家癌癥中心發(fā)布的全國(guó)癌癥統(tǒng)計(jì)數(shù)據(jù),我國(guó)十大最常見(jiàn)癌癥中結(jié)直腸癌排名第三,僅次于肺癌和胃癌.據(jù)2019年浙江省腫瘤醫(yī)院公布的最新一期《2019年浙江省腫瘤登記年報(bào)》顯示,結(jié)直腸癌排名第四,僅次于肺癌、女性乳腺癌、甲狀腺癌.其中在男性癌癥發(fā)病中結(jié)直腸癌排名第二.結(jié)直腸癌的最初表現(xiàn)是腸息肉,結(jié)腸鏡檢查也是結(jié)直腸癌篩查的金標(biāo)準(zhǔn).通過(guò)結(jié)腸鏡篩查并進(jìn)行必要的腸息肉摘除是防止結(jié)直腸癌的有效方法,提前發(fā)現(xiàn)息肉并在息肉轉(zhuǎn)化為癌細(xì)胞前將其摘除尤為重要.結(jié)腸鏡篩查主要依賴醫(yī)生臨床經(jīng)驗(yàn),僅依靠醫(yī)生仍可能有6%~27%的息肉漏檢[2].結(jié)腸鏡檢查結(jié)合病例活檢是確認(rèn)息肉組織學(xué)類型的金標(biāo)準(zhǔn),由于息肉圖像存在不同程度的不確定性,醫(yī)師很有可能無(wú)法用肉眼進(jìn)行鑒別[3].研究發(fā)現(xiàn),早期每提高1%的息肉檢測(cè)率,并進(jìn)行必要的摘除,結(jié)直腸癌轉(zhuǎn)化率將降低3%[4].
采用計(jì)算機(jī)智能分析輔助結(jié)腸鏡篩查是提升息肉檢出率、降低漏檢率的有效手段.息肉成像存在類內(nèi)差異大、類間差異小等挑戰(zhàn),為息肉自動(dòng)檢測(cè)帶來(lái)巨大挑戰(zhàn).傳統(tǒng)機(jī)器學(xué)習(xí)算法已被用于結(jié)腸鏡圖像智能分析[5-8].Yuan等[5]將自下而上與自上而下機(jī)制結(jié)合的顯著性檢測(cè)算法用于息肉區(qū)域自動(dòng)識(shí)別,Tajbakhsh等[7]利用形狀和上下文信息在結(jié)腸鏡圖像序列中進(jìn)行智能檢測(cè).傳統(tǒng)算法需要根據(jù)息肉特征人為設(shè)計(jì)特征,并制定某種規(guī)則或者利用分類器進(jìn)行檢測(cè).人為特征設(shè)計(jì)主要來(lái)自研究人員經(jīng)驗(yàn).由于息肉差異性極大,人為設(shè)計(jì)特征難以適應(yīng).近年,卷積神經(jīng)網(wǎng)絡(luò)在圖像分析等多個(gè)領(lǐng)域中表現(xiàn)出了遠(yuǎn)超傳統(tǒng)方法的性能.將卷積神經(jīng)網(wǎng)絡(luò)引入結(jié)腸鏡圖像識(shí)別,輔助人工盡早發(fā)現(xiàn)并對(duì)息肉進(jìn)行及時(shí)處理可以大大降低腸息肉轉(zhuǎn)化概率.該項(xiàng)研究不僅具有巨大挑戰(zhàn)性和研究意義,還有很大的醫(yī)學(xué)和現(xiàn)實(shí)意義[9-11].Yuan等[12]將旋轉(zhuǎn)不變性和圖像相似度引入,提出了用于內(nèi)窺鏡圖像識(shí)別的RIIS-DenseNet網(wǎng)絡(luò),F(xiàn)ang等[13]將邊緣信息引入,將網(wǎng)絡(luò)分為區(qū)域提取和邊緣提取兩大分支,通過(guò)分支網(wǎng)絡(luò)信息交互提升了息肉區(qū)域提取精度.本文針對(duì)人工特征設(shè)計(jì)困難、息肉成像差異大等問(wèn)題,瞄準(zhǔn)圖像級(jí)息肉檢測(cè)識(shí)別,針對(duì)VGG16[14]、ResNet18[15]、GoogLeNet[16]、EfficientNet[17]、SeNet[18]五種卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行了腸息肉檢測(cè)適應(yīng)性研究,對(duì)五種網(wǎng)絡(luò)識(shí)別結(jié)果進(jìn)行了分析,為圖像級(jí)息肉自動(dòng)篩查提供支撐.
GoogLeNet是一種典型的遷移應(yīng)用學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò),由輸入層、多卷積層、多歸一化層、多池化層、多采樣層和輸出層構(gòu)成,結(jié)構(gòu)如圖1所示.
圖1 GoogLeNet網(wǎng)絡(luò)結(jié)構(gòu)
GoogLeNet是基于Inception模塊的深度神經(jīng)網(wǎng)絡(luò)模型,網(wǎng)絡(luò)中的Inception Moudle可以擴(kuò)展網(wǎng)絡(luò)深度.GoogLeNet采用了多層傳感和局部最優(yōu)的系數(shù)結(jié)構(gòu)替代普通卷積神經(jīng)網(wǎng)絡(luò)中的廣義線性結(jié)構(gòu)和全連接方式.
在進(jìn)行模型訓(xùn)練時(shí),會(huì)遇到網(wǎng)絡(luò)性能不足等情況,提升網(wǎng)絡(luò)性能最直接的辦法是增加網(wǎng)絡(luò)深度和寬度,但是過(guò)多的增加網(wǎng)絡(luò)深度和寬度會(huì)帶來(lái)很多問(wèn)題,如參數(shù)過(guò)多,產(chǎn)生過(guò)擬合.網(wǎng)絡(luò)越大,參數(shù)越多,計(jì)算復(fù)雜度越大,導(dǎo)致網(wǎng)絡(luò)難以應(yīng)用.網(wǎng)絡(luò)深度加深易出現(xiàn)彌散問(wèn)題,難以優(yōu)化模型.在增加網(wǎng)絡(luò)深度和寬度的同時(shí)減少參數(shù)是一種解決方案.實(shí)踐證明全連接變?yōu)橄∈柽B接后計(jì)算量并不會(huì)有質(zhì)的提升,在這種需求下,Inception方法被提出.
GoogLeNet可較好解決網(wǎng)絡(luò)層數(shù)增加而導(dǎo)致地過(guò)擬合、梯度爆炸和梯度消失等問(wèn)題.GoogLeNet采用Inception結(jié)構(gòu).Inception結(jié)構(gòu)把多個(gè)卷積和池化操作組裝成一個(gè)網(wǎng)絡(luò)模塊,如圖2所示.相比于VGG等傳統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu),GoogLeNet在一層網(wǎng)絡(luò)中存在多個(gè)不同尺度的卷積核,可以更高效地利用資源,得到更多特征,從而優(yōu)化訓(xùn)練結(jié)果.
圖2 Inception模塊
激活函數(shù)的主要作用是引入非線性因素.在卷積神經(jīng)網(wǎng)絡(luò)中,卷積操作對(duì)像素點(diǎn)進(jìn)行線性操作.但樣本不一定線性可分,為了解決這個(gè)問(wèn)題,需要引入非線性因素強(qiáng)化網(wǎng)絡(luò)學(xué)習(xí)能力.
GoogLeNet采用的激活函數(shù)為ReLU函數(shù).深度學(xué)習(xí)中梯度消失是致命問(wèn)題,在使用Sigmod等飽和激活函數(shù)下這種情況特別突出,而ReLU函數(shù)具有線性、非飽和的特點(diǎn),訓(xùn)練速度會(huì)快很多,ReLU函數(shù)如式(1).
F(x)=max(0,x)
(1)
損失函數(shù)(Loss Function)是用來(lái)估計(jì)模型預(yù)測(cè)值與真實(shí)值不一致程度的函數(shù),是一個(gè)非負(fù)實(shí)值函數(shù).本文采用Softmax loss函數(shù)作為損失函數(shù):
(2)
L是損失,Sj是Softmax的輸出向量S的第j個(gè)值,表示此樣本是第j個(gè)類別的概率,y是一個(gè)1×T的向量,只有一個(gè)值是1,其他T-1個(gè)全是0.
數(shù)據(jù)樣本來(lái)自200余位病人結(jié)腸鏡圖像,數(shù)據(jù)集共有2 100張圖像,其中有息肉圖像1 100張,無(wú)息肉圖像1 000張.
實(shí)驗(yàn)時(shí)將圖像統(tǒng)一縮放為32×32,并且對(duì)圖像進(jìn)行隨機(jī)水平翻轉(zhuǎn)和隨機(jī)垂直翻轉(zhuǎn)處理來(lái)進(jìn)行數(shù)據(jù)增強(qiáng),按照70%訓(xùn)練集和30%測(cè)試集的方式進(jìn)行劃分.
在數(shù)據(jù)集中,圖像從視覺(jué)上可分為三種,第一種有息肉且明顯,第二種有息肉但不明顯,第三種無(wú)息肉,如圖3、圖4及圖5.
圖3 有息肉且很明顯 圖4 有息肉且不明顯 圖5 無(wú)息肉
在進(jìn)行實(shí)驗(yàn)時(shí),訓(xùn)練集共800個(gè)epoch,每個(gè)epoch都會(huì)檢測(cè)訓(xùn)練集圖片,得出準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall),每五個(gè)epoch生成一個(gè)模型用于驗(yàn)證測(cè)試集,最后得出160組模型用于測(cè)試集的測(cè)試,測(cè)試集得出160組數(shù)據(jù).
實(shí)驗(yàn)采用帶動(dòng)量(momentum)的隨機(jī)梯度下降(SGD)優(yōu)化算法,參數(shù)配置:學(xué)習(xí)率=0.01,momentum=0.9,weight_decay=5e-4.設(shè)置權(quán)重衰減(weight_decay)的作用是調(diào)節(jié)模型復(fù)雜度對(duì)損失函數(shù)的影響,目的是為了防止過(guò)擬合,動(dòng)量是梯度下降中常用的加速技術(shù),目的是使模型加速收斂,抑制梯度下降時(shí)上下振蕩的情況,帶動(dòng)量的SGD公式如下:
vi=momentum*vi-1-lr*dx(i≥1)
(3)
xi=xi-1+vi-1(i≥1)
(4)
其中v是梯度更新量,momentum為動(dòng)量系數(shù),lr為學(xué)習(xí)率,x是梯度,當(dāng)本次梯度下降-lr*dx的方向與上次更新量v方向相同時(shí),則這次下降的幅度就會(huì)加大,加速收斂.
采用準(zhǔn)確率、精確率、召回率、F1和F2作為測(cè)試指標(biāo),式(5)至式(7)中TP、TN、P、N、FP、FN分別指將正類預(yù)測(cè)為正類數(shù)、將負(fù)類預(yù)測(cè)為負(fù)類數(shù)、正類數(shù)、負(fù)類數(shù)、將負(fù)類預(yù)測(cè)為正類數(shù)、將正類預(yù)測(cè)為負(fù)類數(shù).
(1)準(zhǔn)確率:分類正確的樣本數(shù)和樣本總數(shù)的比值.此外,分類錯(cuò)誤的樣本數(shù)占樣本總數(shù)的比例稱為“錯(cuò)誤率”(error rate).
(5)
(2)精確率:即正類預(yù)測(cè)正確的個(gè)數(shù)和所有預(yù)測(cè)成正類樣本數(shù)的比值.
(6)
(3)召回率:即預(yù)測(cè)正類樣本和原來(lái)一共正類樣本數(shù)的比值.
(7)
五種網(wǎng)絡(luò)F1、F2結(jié)果對(duì)比圖如圖6、圖7.
圖6 五種網(wǎng)絡(luò)F1對(duì)比
圖7 五種網(wǎng)絡(luò)F2對(duì)比
對(duì)比五種網(wǎng)絡(luò)的準(zhǔn)確率、精確率、召回率,如圖8至圖10所示.從訓(xùn)練集結(jié)果中可以看出GoogLeNet的準(zhǔn)確率、精確率、召回率明顯高于其他四種網(wǎng)絡(luò)模型.
圖8 五種網(wǎng)絡(luò)訓(xùn)練集準(zhǔn)確率對(duì)比
圖9 五種網(wǎng)絡(luò)訓(xùn)練集精確率對(duì)比
圖10 五種網(wǎng)絡(luò)訓(xùn)練集召回對(duì)比
各算法在測(cè)試集上的準(zhǔn)確率、 精確率、 召回率對(duì)比結(jié)果如圖11至圖13所示.
圖11 五種網(wǎng)絡(luò)測(cè)試集準(zhǔn)確率對(duì)比
圖12 五種網(wǎng)絡(luò)測(cè)試集精確率對(duì)比
圖13 五種網(wǎng)絡(luò)測(cè)試集召回對(duì)比
由圖11至圖13可以看出,在準(zhǔn)確率方面: GoogLeNet達(dá)到了99.84%, 比VGG16高0.79%,比ResNet18高11.59%.說(shuō)明GoogLeNet的識(shí)別準(zhǔn)確率(ACC)要優(yōu)于其他四種網(wǎng)絡(luò).在精確率方面:GoogLeNet達(dá)到了100%,比VGG16高0.91%,比ResNet18高7.62%.說(shuō)明GoogLeNet的識(shí)別精確率要優(yōu)于其他四種網(wǎng)絡(luò).在召回率方面:GoogLeNet達(dá)到了99.7%,比SeNet高0.31%,比ResNet18高15.15%.說(shuō)明GoogLeNet的識(shí)別召回率要優(yōu)于其他四種網(wǎng)絡(luò).
通過(guò)VGG16、ResNet18、GoogLeNet、EfficientNet和SeNet五種網(wǎng)絡(luò)模型比較分析, GoogLeNet在2 100張圖像規(guī)模的數(shù)據(jù)集中達(dá)到了準(zhǔn)確率99.84%、精確率100%、召回率99.7%的性能, 其準(zhǔn)確率、精確率、召回率等評(píng)價(jià)指標(biāo)優(yōu)于其他模型.
表1選取了8張結(jié)腸鏡圖像,其中第1至4列是有息肉圖像,息肉成像差異較大,第5至8列是無(wú)息肉圖像,有光滑、褶皺等不同的結(jié)腸鏡圖像.對(duì)比結(jié)果如表1所示. 可以看出GoogLeNet模型識(shí)別結(jié)果全部正確,VGG16模型識(shí)別第五列結(jié)腸鏡圖像錯(cuò)誤,EfficientNet模型識(shí)別第四列、第八列結(jié)腸鏡圖像錯(cuò)誤,ResNet18模型識(shí)別第二列、第五列、第八列結(jié)腸鏡圖像錯(cuò)誤,SeNet模型識(shí)別第三列結(jié)腸鏡圖像錯(cuò)誤.
表1 VGG16、ResNet18、GoogLeNet、EfficientNet、SeNet定性分析表
雖然GoogLeNet網(wǎng)絡(luò)相較于其他網(wǎng)絡(luò)模型具有更高的準(zhǔn)確率,準(zhǔn)確率達(dá)到了99.84%,但在一萬(wàn)張圖像檢測(cè)中,平均還會(huì)有16張檢測(cè)錯(cuò)誤.測(cè)試集共有630張圖像,準(zhǔn)確率99.84%表示630張圖像有1張識(shí)別錯(cuò)誤,收集準(zhǔn)確率最高一組前后各五組識(shí)別錯(cuò)誤圖像,將錯(cuò)誤樣本進(jìn)行整理匯總,觀察錯(cuò)誤樣本,分析發(fā)現(xiàn)識(shí)別錯(cuò)誤的有息肉圖像主要是息肉較小且息肉顏色與周圍極度相似的圖像(圖A至圖D), 識(shí)別錯(cuò)誤的無(wú)息肉圖像主要是結(jié)腸鏡圖像中存在光滑褶皺的圖像(圖E至圖J),光滑褶皺跟息肉較為相似,比較難以識(shí)別.兩種圖像即使在進(jìn)行人工識(shí)別時(shí)都難以區(qū)分,漏檢概率較大.
圖J
圖E
圖D
圖A
通過(guò)對(duì)誤識(shí)別數(shù)據(jù)進(jìn)行分析發(fā)現(xiàn), 雖然GoogLeNet在對(duì)腸息肉圖像識(shí)別上已經(jīng)取得了不錯(cuò)的識(shí)別效果,但在息肉細(xì)節(jié)特征的提取以及相似度較高的圖像識(shí)別上,仍有較大的進(jìn)步空間.
針對(duì)腸息肉智能識(shí)別工作,本文將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于腸息肉圖像識(shí)別中.針對(duì)GoogLeNet、VGG16、ResNet18、EfficientNet、SeNet五種卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行腸息肉檢測(cè)適應(yīng)性研究,觀察了卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程,對(duì)訓(xùn)練集和驗(yàn)證集的準(zhǔn)確率、精確率、召回率進(jìn)行對(duì)比分析,結(jié)果表明,GoogLeNet識(shí)別效果優(yōu)于其他模型,可為結(jié)腸鏡輔助息肉篩查提供支撐.錯(cuò)誤樣本分析為后續(xù)息肉檢測(cè)自動(dòng)化和息肉識(shí)別網(wǎng)絡(luò)模型改進(jìn)提供有效支撐.在未來(lái)工作中,我們將從息肉邊緣等多類特征融合和網(wǎng)絡(luò)不同級(jí)特征交互方面展開(kāi)研究,以進(jìn)一步提升識(shí)別性能.
圖B
圖C
圖F
圖G
圖H
圖I