文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.190651
中文引用格式: 劉志華,李豐軍,嚴(yán)傳波. 卷積神經(jīng)網(wǎng)絡(luò)在肝包蟲病CT圖像診斷中的應(yīng)用[J].電子技術(shù)應(yīng)用,2019,45(11):17-20.
英文引用格式: Liu Zhihua,Li Fengjun,Yan Chuanbo. Application of convolutional neural network in CT image diagnosis of hepatic echinococcosis[J]. Application of Electronic Technique,2019,45(11):17-20.
0 引言
肝包蟲病(hepatic echinococcosis)是一種地方性和自然流行性性人獸共患寄生蟲病,主要流行于中國西北地區(qū)的畜牧業(yè),是臨床常見寄生蟲疾病之一,及早發(fā)現(xiàn)和確診對病人的健康至關(guān)重要[1-3]。在臨床醫(yī)療工作中,CT檢查是診治肝包蟲病首選的檢查方法[4]。傳統(tǒng)的圖像分類方法主要是對圖像的顏色、紋理和形狀特征等進行特征提取,并設(shè)計分類器,通過數(shù)次實驗不斷調(diào)節(jié)參數(shù),以提高分類準(zhǔn)確率。如胡彥婷[5]等人利用尺度不變特征轉(zhuǎn)換(SIFT)和尺度局部二值模式(LBP)對病灶區(qū)進行紋理分析,使用支持向量機(SVM)分類器對肝包蟲圖像自動分類。近年來,卷積神經(jīng)網(wǎng)絡(luò)(Convonlutional Neural Network,CNN)作為深度學(xué)習(xí)的熱門領(lǐng)域,多用于圖像識別與圖像分類,是一種無監(jiān)督學(xué)習(xí)的方法[6]。而CNN在圖像分類和分割方面展示出了比傳統(tǒng)的淺層學(xué)習(xí)方法更顯著的效果和較好的臨床應(yīng)用前景[7]。如王翀[8]等人使用卷積神經(jīng)網(wǎng)絡(luò)對光學(xué)相干斷層掃描(OCT)視網(wǎng)膜圖像進行分類,準(zhǔn)確率達(dá)到了94.5%。面對大量的醫(yī)學(xué)圖像數(shù)據(jù),使用傳統(tǒng)的分類方法耗時、耗力,使用深度學(xué)習(xí)算法[9],不僅省時省力,其分類性能也得到了提高。卷積神經(jīng)網(wǎng)絡(luò)作為一種深度學(xué)習(xí)框架,直接提取輸入圖像特征,與傳統(tǒng)分類方法相比,不需要人工設(shè)計特征及選擇分類器[10]。LeNet-5[11]是一種典型的用來識別數(shù)字的卷積神經(jīng)網(wǎng)絡(luò),其模型結(jié)構(gòu)簡單,然而對于背景復(fù)雜的數(shù)據(jù),識別率往往不高。本文提出基于經(jīng)典的LeNet-5改進的卷積神經(jīng)網(wǎng)絡(luò)模型用于肝包蟲病CT圖像的診斷,探討將改進的卷積神經(jīng)網(wǎng)絡(luò)模型應(yīng)用于肝包蟲病CT圖像計算機輔助診斷的可行性,從而輔助醫(yī)生診斷肝包蟲病,做到早發(fā)現(xiàn)、早診斷、早治療。
1 卷積神經(jīng)網(wǎng)絡(luò)
卷積神經(jīng)網(wǎng)絡(luò)是人工神經(jīng)網(wǎng)絡(luò)的一種,已成為語音識別和圖像識別領(lǐng)域的研究熱點[12]。CNN是深度學(xué)習(xí)的代表模型,通過局部感受域和共享權(quán)重解決傳統(tǒng)前饋網(wǎng)絡(luò)中參數(shù)過多的問題[13-14]。CNN的結(jié)構(gòu)主要包括卷積層、池化層和全連接層[15]。卷積層由若干個卷積單元組成,每個卷積單元的參數(shù)通過反向傳播算法計算得到,該層主要用于提取輸入圖像的特征。池化層即下采樣(Down sampling)主要用于特征降維,對輸入的特征圖進行壓縮,提取主要特征,該操作可減少數(shù)據(jù)量,保留有效數(shù)據(jù)同時減少過擬合[16]。池化層常用的采樣方式有兩種,分別是平均值池化(mean-pooling)和最大值池化(max-pooling),大多數(shù)情況下采用最大值池化的方式[17]。全連接層是通過多層的卷積層、池化層操作后,將得到的特征圖按行展開,連接成向量,將輸出值送給分類器[18]。
2 CNN在肝包蟲病圖像中的診斷
2.1 數(shù)據(jù)收集與處理
實驗所用的圖像數(shù)據(jù)均來自新疆醫(yī)科大學(xué)第一附屬醫(yī)院放射科,本文選取單囊型和多囊型肝包蟲病CT圖像用于實驗,共計1 440張。實驗數(shù)據(jù)按照4:1的比例分為訓(xùn)練集和測試集??紤]到樣本量對實驗結(jié)果的影響,本文采用翻轉(zhuǎn)的方法進行數(shù)據(jù)增強,對每張圖像進行上下翻轉(zhuǎn)、左右翻轉(zhuǎn)、旋轉(zhuǎn)90°翻轉(zhuǎn)、180°翻轉(zhuǎn)等方法,擴增后的圖片為6 000張。擴增后效果如圖1所示。
由于肝包蟲病CT圖像的病灶區(qū)域、圖像尺寸大小各不相同,同時圖像攝片時受到各種噪聲的干擾,因此本實驗對圖像進行預(yù)處理操作,首先采用均勻量化的方法對圖像進行歸一化,其次使用改進的中值濾波算法[19-20]對肝包蟲病CT圖像進行去噪。經(jīng)過預(yù)處理后的圖像,清晰度得到了很大提高。預(yù)處理前后圖片如圖2所示。
2.2 卷積神經(jīng)網(wǎng)絡(luò)設(shè)計
LeNet-5網(wǎng)絡(luò)架構(gòu)由3個卷積層、2個池化層、1個全連接層和1個輸出層組成。卷積層卷積核尺寸為5×5,步長為1;池化層的池化窗口為2×2,步長為2,采用最大值池化的方法;全連接層包含84個神經(jīng)元;輸出層包含10個神經(jīng)元,每個神經(jīng)元代表一類。本文改進了經(jīng)典的LeNet-5模型,對肝包蟲CT圖像進行了有效的分類,并命名為CTLeNet。改進的網(wǎng)絡(luò)總共有4層卷積層,前兩層卷積層卷積核大小為5×5,后兩層卷積層卷積核大小為3×3,卷積核的數(shù)量隨網(wǎng)絡(luò)層的數(shù)量逐漸加深。改進的卷積神經(jīng)網(wǎng)絡(luò)實驗中使用的激活函數(shù)是ReLU激活函數(shù)[21],如式(1)所示:
式中,x表示樣本,為實數(shù)。
該模型的池化層使用2×2區(qū)域來最大值池化,并減少卷積層學(xué)習(xí)的特征。最后全連接層將特征圖按行展開連接成向量使用分類器進行分類。實驗中使用的損失函數(shù)采用交叉熵代價函數(shù),如式(2)所示:
式中,n為訓(xùn)練樣本數(shù),x表示樣本,a為神經(jīng)元輸出值,y為期望輸出值。
為防止改進的卷積神經(jīng)網(wǎng)絡(luò)模型對肝包蟲病CT圖像的識別效果不理想,模型泛化能力不好,本文使用翻轉(zhuǎn)的方法對數(shù)據(jù)進行擴增,提高模型的泛化能力。同時為防止模型出現(xiàn)過擬合問題,使用L2權(quán)重正則化方法。L2正則化如式(3)所示:
式中,M為原始損失函數(shù);λ為正則化系數(shù),實驗中設(shè)為0.000 1;w為權(quán)重;m為小批量數(shù)據(jù)個數(shù)。除此之外,簡單的網(wǎng)絡(luò)模型結(jié)構(gòu)也能夠減小過擬合問題,本實驗使用Dropout[22]方法在網(wǎng)絡(luò)訓(xùn)練過程中將網(wǎng)絡(luò)節(jié)點隨機丟棄,使每個batch都可以訓(xùn)練相同的網(wǎng)絡(luò)結(jié)構(gòu)。實驗中Dropout層添加在各個全連接層,keep_prob設(shè)為0.5。本文采用預(yù)處理后的肝包蟲病CT圖像對模型進行訓(xùn)練和測試,優(yōu)化后的模型能夠?qū)Ω伟x病患者的CT圖像進行輔助診斷。改進后的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,圖中Conv1-Conv4代表4層卷積層;Pool1-Pool4代表4層池化層;ReLU1-ReLU6代表ReLU激活函數(shù),每層激活函數(shù)相同;Drop1-Drop2代表Dropout層;Fc1-Fc3代表3層全連接層。
3 實驗結(jié)果及分析
3.1 樣本擴增前后對比
本文使用不同類型的翻轉(zhuǎn)方法擴增樣本量,將樣本擴增前與樣本擴增后的數(shù)據(jù)進行訓(xùn)練,樣本量擴增前后的準(zhǔn)確率如表1所示。
由表1可得,與擴增前相比樣本量擴增了將近4倍左右,模型的準(zhǔn)確率由85.5%提高到了97.5%。說明適當(dāng)?shù)臄?shù)據(jù)增強有利于提高網(wǎng)絡(luò)的泛化能力,同時增強卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)肝包蟲病CT圖像特征的能力。該模型對肝包蟲病CT圖像的識別具有較好的分類效果。
3.2 不同實驗方法比較
本次實驗以樣本擴增后的數(shù)據(jù)對肝包蟲病CT圖像分類,并與傳統(tǒng)的分類方法進行比較。傳統(tǒng)的分類方法采用SIFT+LBP分析紋理特征,并利用SVM對肝包蟲病的CT圖像進行分類,其與CTLeNet卷積神經(jīng)網(wǎng)絡(luò)模型比較結(jié)果如表2所示。
從表2可以看出,傳統(tǒng)的分類方法準(zhǔn)確率為92.86%,本文方法準(zhǔn)確率達(dá)到了97.5%,傳統(tǒng)方法對肝包蟲病CT圖像的分類沒有卷積神經(jīng)網(wǎng)絡(luò)分類效果好。從圖4(b)中可以看出,隨著訓(xùn)練輪數(shù)的增加,模型的損失逐漸減少,達(dá)到30輪數(shù)(epoch)時模型趨于收斂。最后使用訓(xùn)練好的模型對肝包蟲CT圖像進行測試,從圖4中可以看出,本文方法對肝包蟲病CT圖像的分類效果較好。將改進后的卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于肝包蟲病CT圖像計算機輔助診斷系統(tǒng),有助于輔助醫(yī)生早期篩查肝包蟲病的發(fā)生,為臨床醫(yī)生提供理論指導(dǎo)。
4 可視化
本實驗中反卷積過程不具有學(xué)習(xí)能力,僅用于對每層特征圖進行可視化。CNN通過訓(xùn)練調(diào)節(jié)參數(shù),提取各層圖像的特征,反卷積網(wǎng)絡(luò)以各層的特征圖作為輸入進行反卷積操作。反卷積結(jié)果以可視化的方式顯示各層學(xué)習(xí)到的特征。圖5是4幅輸入圖像經(jīng)過4層卷積層后輸出的特征圖可視化結(jié)果。
第1層卷積層主要提取基本灰度信息;第2層提取的是紋理特征信息;第3層、第4層提取的特征具有一定的分辨性,每幅圖像輸出的特征圖均不相同。傳統(tǒng)的圖像分類方法需要人工設(shè)計特征和選擇分類器進行分類,無法實現(xiàn)對提取的特征可視化,對輔助醫(yī)生診斷疾病缺乏一定的可信性。經(jīng)過模型訓(xùn)練學(xué)習(xí)后的肝包蟲病CT圖像特征以可視化方式反饋給臨床醫(yī)生,對輔助醫(yī)生篩查肝包蟲病的發(fā)生有一定的可行性。
5 結(jié)論
本文基于基礎(chǔ)LeNet-5網(wǎng)絡(luò)設(shè)計并搭建一種新的卷積神經(jīng)網(wǎng)絡(luò),該模型具有高效的圖像識別和分類能力。其次本文搭建的卷積神經(jīng)網(wǎng)絡(luò)CTLeNet模型,其準(zhǔn)確率達(dá)到了97.5%,可以輔助醫(yī)生進行肝包蟲病診斷。最后本文通過使用反卷積實現(xiàn)對每一層卷積層特征圖的可視化,有助于了解肝包蟲病影像特征,對醫(yī)生的臨床診斷有一定的研究價值。
參考文獻(xiàn)
[1] 李汭芮,喻文杰,王謙,等.肝包蟲病患者超聲影像動態(tài)觀察[J].預(yù)防醫(yī)學(xué)情報雜志,2018,34(11):1374-1383.
[2] MEMMET M,OGUZ I U,CEMAL K,et al.Current status of diagnosis and treatment of hepatic echinococcosis[J].World Journal of Hepatology,2016,8(28):1169-1181.
[3] 曾靜,葉建蔚,張靜,等.肝囊型包蟲病非手術(shù)治療方法的研究進展[J].現(xiàn)代生物醫(yī)學(xué)進展,2018,18(19):3790-3794.
[4] 張建英,蔣瑾,胡凌云,等.128層螺旋CT對肝包蟲病的臨床診斷價值及病理分析[J].四川生理科學(xué)雜志,2016,38(4):222-224.
[5] 胡彥婷,陳建軍,杜守洪,等.基于SIFT-LBP稀疏編碼的肝包蟲CT圖像分類[J].科技通報,2016,32(9):58-64.
[6] ZEILER M D,F(xiàn)ERGUS R.Visualizing and understanding convolutional networks[C].arXiv:1311.2901v3[cs.cv],2013.
[7] PEREIRA S,PINTO A,ALVES V,et al.Brain tumor segmentation using convolutional neural networks in MRI images[J].IEEE Transactions on Medical Imaging,2016,35(5):1240-1251.
[8] 王翀,何興鑫,方樂緣,等.基于聯(lián)合決策卷積神經(jīng)網(wǎng)絡(luò)的光學(xué)相干斷層掃描圖像自動分類[J].中國生物醫(yī)學(xué)工程學(xué)報,2018,37(6):641-648.
[9] 蔣濤.深度學(xué)習(xí)在醫(yī)學(xué)圖像分析中的應(yīng)用[D].成都:電子科技大學(xué),2017.
[10] 楊志明,李亞偉,楊冰,等.融合宮頸細(xì)胞領(lǐng)域特征的多流卷積神經(jīng)網(wǎng)絡(luò)分類算法[J].計算機輔助設(shè)計與圖形學(xué)學(xué)報,2019,31(4):531-540.
[11] LECUN Y,BOTTOU L,BENGIO Y,et al.Gradient-based learning applied to document recognition[J].Proceedings of the IEEE,1998,86(11):2278-2324.
[12] 趙新秋,賀海龍,楊冬冬,等.基于改進的卷積神經(jīng)網(wǎng)絡(luò)在圖片分類中的應(yīng)用[J].高技術(shù)通訊,2018,28(Z2):930-936.
[13] 王洋,劉積仁,趙大哲,等.卷積神經(jīng)網(wǎng)絡(luò)在MRI圖像診斷中的應(yīng)用[J].東北大學(xué)學(xué)報(自然科學(xué)版), 2019,40(2):169-173.
[14] 寧靜艷,俞晨,程年,等.基于卷積神經(jīng)網(wǎng)絡(luò)的肺癌病理圖像分類[J].軟件導(dǎo)刊,2019(2):141-144.
[15] 黃睿,陸許明,鄔依林.基于TensorFlow深度學(xué)習(xí)手寫體數(shù)字識別及應(yīng)用[J].電子技術(shù)應(yīng)用,2018,44(10):6-10.
[16] Xue Ying.An overview of overfitting and its solutions[J].Journal of Physics:Conference Series,2019,1168(2):022022.
[17] 許少尉,陳思宇.基于深度學(xué)習(xí)的圖像分類方法[J].電子技術(shù)應(yīng)用,2018,44(6):116-119.
[18] JANOWCZYK A,MADABHUSHI A.Deep learning for digital pathology image analysis:a comprehensive tutorial with selected use cases[J].Journal of Pathology Informatics,2016,7(1):29.
[19] 王紅宇,游敏娟,李琪,等.一種中值濾波圖像去噪的改進算法[J].中國科技信息,2019(1):84-85.
[20] 卞長林,王超,厲丹.基于改進中值濾波的影像預(yù)處理方法研究[J].電子世界,2018(18):22-23,26.
[21] ECKLE K,SCHMIDT-HIEBER J.A comparison of deep networks with ReLU activation function and linear spline-type methods[J].arXiv:1804.02253v2[stat.ML],2018.
[22] LITJENS G , S?魧NCHEZ C I,TIMOFEEVA N,et al.Deep learning as a tool for increased accuracy and efficiency of histopathological diagnosis[J].Scientific Reports,2016,6(1):26286.
作者信息:
劉志華1,李豐軍2,嚴(yán)傳波2
(1.新疆醫(yī)科大學(xué) 公共衛(wèi)生學(xué)院,新疆 烏魯木齊830011;2.新疆醫(yī)科大學(xué) 醫(yī)學(xué)工程技術(shù)學(xué)院,新疆 烏魯木齊830011)