張騫予,管 姝,謝紅薇,強(qiáng) 彥,劉愛(ài)媛
(1.太原理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,太原 030024;2.山西大醫(yī)院,太原 030000)
近年來(lái),圖像識(shí)別技術(shù)引起學(xué)術(shù)界的關(guān)注,廣泛應(yīng)用在交通安全、電力監(jiān)測(cè)、醫(yī)學(xué)輔助診斷等領(lǐng)域。在醫(yī)學(xué)輔助診斷方面,以乳腺腫瘤識(shí)別為例,傳統(tǒng)圖像識(shí)別技術(shù)首先通過(guò)濾波去噪對(duì)圖像進(jìn)行預(yù)處理,再通過(guò)圖像分割得到感興趣區(qū)域,提取圖像的細(xì)節(jié)特征,如紋理特征、灰度特征、形狀特征等,結(jié)合分類(lèi)器,如BP神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)、決策樹(shù)等,以實(shí)現(xiàn)腫瘤良惡性分類(lèi)。
CHANG et al[1]結(jié)合BP神經(jīng)網(wǎng)絡(luò)和遺傳算法對(duì)乳腺腫瘤進(jìn)行分類(lèi);相比只用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行分類(lèi),訓(xùn)練集ROC曲線(xiàn)下面積從0.91提高到0.93,測(cè)試集ROC曲線(xiàn)下面積大約為0.83.雖然優(yōu)化效果并不明顯,但是仍然比只用BP神經(jīng)網(wǎng)絡(luò)達(dá)到的效果好。MAGLOGIANNIS et al[2]將支持向量機(jī)用于乳腺癌診斷,并與貝葉斯分類(lèi)器及人工神經(jīng)網(wǎng)絡(luò)在靈敏度、特異性和準(zhǔn)確性方面進(jìn)行對(duì)比研究;研究證明,SVM相對(duì)于其他兩種具有更高的優(yōu)越性。ELOUEDI et al[3]提出了基于決策樹(shù)和聚類(lèi)的乳腺癌混合診斷方法,并采用威斯康星州乳腺癌數(shù)據(jù)庫(kù)進(jìn)行實(shí)驗(yàn)。結(jié)果表明,聚類(lèi)方法能有效提高乳腺癌良惡性的分類(lèi)效果。然而,在實(shí)際應(yīng)用中,圖像分割難以將乳腺腫瘤與乳腺組織完全區(qū)分,特征選取主要依賴(lài)于人工手動(dòng)設(shè)計(jì)特征[4-5],感興趣區(qū)域分割、特征選取等都直接影響到分類(lèi)結(jié)果的好壞。
因此,本文提出一種基于深度特征學(xué)習(xí)的圖像自適應(yīng)識(shí)別算法,如圖1所示。在卷積操作后,結(jié)合批量歸一化(batch normalization,BN)[6]與參數(shù)化線(xiàn)性修正單元(parametric rectified linear unit,PReLU)[7]方法,構(gòu)建自適應(yīng)卷積神經(jīng)網(wǎng)絡(luò)模型CNN-BN-PReLU,避免了傳統(tǒng)算法中人工手動(dòng)設(shè)計(jì)復(fù)雜的特征提取過(guò)程,對(duì)圖像的平移、扭曲、縮放、旋轉(zhuǎn)具有高度不變性[8]。
圖1 基于深度特征學(xué)習(xí)的圖像自適應(yīng)目標(biāo)識(shí)別算法Fig.1 Image adaptive target recognition algorithm based on deep learning features
深度卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)是一個(gè)多層的神經(jīng)網(wǎng)絡(luò),其最大的特點(diǎn)是通過(guò)局部連接和權(quán)值共享來(lái)減少訓(xùn)練參數(shù)。在CNN中,乳腺圖像可以作為網(wǎng)絡(luò)最底層的原始輸入,再依次傳輸?shù)较乱粚樱繉油ㄟ^(guò)一個(gè)濾波器來(lái)提取到圖像數(shù)據(jù)的最顯著特征,輸出結(jié)果是圖像的分類(lèi)識(shí)別結(jié)果。這種多層的學(xué)習(xí)模式可以幫助發(fā)現(xiàn)數(shù)據(jù)的復(fù)雜結(jié)構(gòu),提高圖像的識(shí)別準(zhǔn)確率。
圖2為本文所采用卷積神經(jīng)網(wǎng)絡(luò)模型的結(jié)構(gòu)示意圖。它主要由3個(gè)卷積層(C1,C3,C5)、3個(gè)池化層(S2,S4,S6)和1個(gè)全連接層(F7)組成。網(wǎng)絡(luò)的輸入為227×227像素大小的乳腺鉬靶圖像,包含每個(gè)圖像塊的R通道信息、G通道信息及B通道信息。
圖2 本文所用卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.2 Structure of the convolution neural network used in this paper
C1層擁有16個(gè)尺寸為3×3的卷積核,步長(zhǎng)為2,該層由16個(gè)特征圖組成,每個(gè)特征圖的大小為113×113;S2層是池化層,池化區(qū)域大小為3×3,步長(zhǎng)為2,該層由16個(gè)大小為56×56的特征圖組成;C3層擁有16個(gè)4×4的卷積核,步長(zhǎng)為1,卷積后將得到16個(gè)大小為53×53的特征圖;S4層中池化區(qū)域大小為3×3,步長(zhǎng)為2,由16個(gè)大小為27×27的特征圖組成;C5層擁有16個(gè)5×5的卷積核,步長(zhǎng)為1,由16個(gè)大小為23×23的特征圖組成;最后輸出層為全連接層,包含2個(gè)神經(jīng)元,每個(gè)神經(jīng)元對(duì)應(yīng)一種乳腺腫瘤類(lèi)別。
卷積層是CNN的核心部分,主要是通過(guò)卷積核來(lái)作特征提取。該層通過(guò)卷積核對(duì)上一層的特征映射圖作卷積運(yùn)算,然后通過(guò)激活函數(shù)f進(jìn)行輸出,以此得到圖3中各個(gè)卷積層的輸出特征映射圖。卷積層操作可以定義為
(1)
式中:hi和yj分別表示輸入特征映射圖和輸出特征映射圖;cij是卷積核;*表示2維卷積運(yùn)算;bj表示偏置。cij和bj是隨著網(wǎng)絡(luò)訓(xùn)練來(lái)逐步學(xué)習(xí)到的參數(shù)。
圖3 卷積操作后的特征映射圖Fig.3 Feature map after convolution operation
池化層是在上一層卷積特征映射后進(jìn)行一個(gè)下采樣操作的過(guò)程,它是將輸入圖像分割成不重疊的矩形,對(duì)于每個(gè)矩形取最大值或平均值作為下一層的特征值。池化操作不僅能夠極大地降低特征向量的維度,還能夠有效地防止過(guò)擬合[9]。圖4所示為經(jīng)過(guò)S2,S4,S6層池化后得到的特征映射圖。池化操作采用最大池化(Max pooling),其定義如下:
圖4 池化操作后的特征映射圖Fig.4 Feature map after pooling operation
(2)
批量歸一化(BN)算法本質(zhì)上是一種可學(xué)習(xí)的歸一化方法,它使每一層擁有服從相同分布的輸入數(shù)據(jù),從而可以使用較大學(xué)習(xí)率進(jìn)行訓(xùn)練,加快訓(xùn)練速度,克服協(xié)方差偏移的影響。BN算法對(duì)每個(gè)神經(jīng)元引入兩個(gè)可學(xué)習(xí)參數(shù),進(jìn)行變換重構(gòu)。具體公式如下。
1) 歸一化處理(近似白化處理)
(3)
2) 變換重構(gòu)
(4)
每一個(gè)神經(jīng)元都有一對(duì)這樣的參數(shù)γ和β.γ和β需要利用反向傳播算法進(jìn)行訓(xùn)練求出。這樣當(dāng)γ和β滿(mǎn)足式(7)時(shí),也就能夠恢復(fù)出原始層所學(xué)習(xí)的特征。
(5)
3) BN網(wǎng)絡(luò)層的前向傳播過(guò)程為:
(6)
(7)
針對(duì)ReLU[10]神經(jīng)單元在訓(xùn)練時(shí)可能會(huì)死亡和輸出具有偏移現(xiàn)象的情況,采用參數(shù)化線(xiàn)性修正單元PReLU來(lái)取代ReLU作為神經(jīng)元的非線(xiàn)性激活函數(shù)。PReLU可以自適應(yīng)地從數(shù)據(jù)中學(xué)習(xí)參數(shù),具有錯(cuò)誤率低、收斂速度快的特點(diǎn),能夠在額外計(jì)算成本忽略不計(jì)的情況下提高識(shí)別的準(zhǔn)確率。PReLU函數(shù)的數(shù)學(xué)表達(dá)式為
(8)
式中,aj表示第j個(gè)通道上用來(lái)控制負(fù)激活部分的一個(gè)變量,可以改變?cè)诓煌诺郎系男甭?,從而進(jìn)行非線(xiàn)性激活。
實(shí)驗(yàn)所用數(shù)據(jù)來(lái)源于南佛羅里達(dá)大學(xué)的公共乳腺癌數(shù)據(jù)庫(kù)DDSM[11],包括1 431個(gè)病例,每個(gè)病例均有左右乳房各兩張圖片及相關(guān)的病灶信息。乳腺鉬靶X線(xiàn)攝影圖像原有大小大約為3 000×5 000,病灶區(qū)都有2位放射學(xué)專(zhuān)家進(jìn)行標(biāo)記。因原始數(shù)據(jù)庫(kù)中圖像包含過(guò)多的多余信息,為了簡(jiǎn)化訓(xùn)練過(guò)程,先對(duì)感興趣區(qū)域(ROI)進(jìn)行提取且剪裁為227×227,將該區(qū)域作為卷積神經(jīng)網(wǎng)絡(luò)模型的輸入,其中選擇良性圖片634張、惡性圖片599張,將數(shù)據(jù)集分為訓(xùn)練集和測(cè)試集,并且通過(guò)五折交叉驗(yàn)證來(lái)評(píng)估CNN模型分類(lèi)效果。
因乳腺腫瘤與普通乳腺組織很難分辨,現(xiàn)有的訓(xùn)練圖像很少且圖像質(zhì)量較差。在這樣的圖像中訓(xùn)練CNN模型,網(wǎng)絡(luò)收斂較慢,識(shí)別效果也相對(duì)較差。如圖5所示,通過(guò)對(duì)訓(xùn)練集中乳腺圖像分別旋轉(zhuǎn)90°,180°,270°,使訓(xùn)練數(shù)據(jù)擴(kuò)展為3 099張。這樣一種數(shù)據(jù)的增強(qiáng)不僅可以使CNN更容易提取腫瘤特征,而且旋轉(zhuǎn)后的腫瘤特征也會(huì)維持不變。
圖5 數(shù)據(jù)增強(qiáng)Fig.5 Data augmentation
實(shí)驗(yàn)通過(guò)訓(xùn)練時(shí)間和識(shí)別率來(lái)評(píng)價(jià)不同網(wǎng)絡(luò)的優(yōu)化性能,并針對(duì)不同參數(shù)(網(wǎng)絡(luò)層數(shù)、卷積核數(shù)目等)配置,作出系統(tǒng)評(píng)估。研究采用開(kāi)源深度學(xué)習(xí)框架CAFFE[12],該框架是基于Ubuntu14.04操作系統(tǒng)和Inter(R)Core(TM) i7-4790 CPU@3.60 GHz對(duì)CNN進(jìn)行訓(xùn)練。
卷積神經(jīng)網(wǎng)絡(luò)作為一個(gè)多層感知器,網(wǎng)絡(luò)層數(shù)是決定網(wǎng)絡(luò)分類(lèi)效率的重要因素。網(wǎng)絡(luò)層數(shù)太多,會(huì)造成訓(xùn)練參數(shù)增加、訓(xùn)練速度緩慢、訓(xùn)練時(shí)間過(guò)長(zhǎng)等問(wèn)題,還容易出現(xiàn)過(guò)擬合現(xiàn)象。但如果網(wǎng)絡(luò)層數(shù)太少,網(wǎng)絡(luò)無(wú)法發(fā)現(xiàn)數(shù)據(jù)的復(fù)雜結(jié)構(gòu)、提取準(zhǔn)確數(shù)據(jù)特征,會(huì)使得網(wǎng)絡(luò)分類(lèi)準(zhǔn)確率不高。因此,不同網(wǎng)絡(luò)層數(shù)對(duì)于網(wǎng)絡(luò)識(shí)別效率有著重要影響。為了選擇合適的網(wǎng)絡(luò)層數(shù),使用逐層增加卷積流的形式,一個(gè)卷積流包括一個(gè)卷積層和一個(gè)池化層,在隨機(jī)梯度下降法基礎(chǔ)上,從1個(gè)卷積流開(kāi)始實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖6所示。從圖6中可以看出,對(duì)于DDSM數(shù)據(jù)集,隨著卷積流數(shù)目的增加,分類(lèi)準(zhǔn)確率會(huì)逐漸上升而后呈下降趨勢(shì)。卷積流個(gè)數(shù)為3時(shí),識(shí)別準(zhǔn)確率最高。在選擇好卷積流數(shù)目后,選用1個(gè)全連接層進(jìn)行分類(lèi),全連接層神經(jīng)元個(gè)數(shù)為2.
圖6 識(shí)別準(zhǔn)確率隨卷積流數(shù)目變化曲線(xiàn)Fig.6 Recognition accuracy rate with the number of convolution flow curve
為了驗(yàn)證卷積核個(gè)數(shù)對(duì)網(wǎng)絡(luò)性能的影響,假設(shè)每個(gè)卷積層有n個(gè)卷積核,卷積層位置為i,第一層卷積核數(shù)目固定為16,其中n={16,32,64}、i={2,3}.則共有9種不同的配置,分別為{16,16,16}、{16,16,32}、{16,16,64}、{16,32,16}、{16,32,32}、{16,32,64}、{16,64,16}、{16,64,32}、{16,64,64},具體網(wǎng)絡(luò)參數(shù)見(jiàn)1.1節(jié)圖2.本網(wǎng)絡(luò)模型訓(xùn)練迭代5 000次,每1 000次迭代保存一次被訓(xùn)練的模型。初始學(xué)習(xí)率設(shè)為1.0×10-3,學(xué)習(xí)率衰減方式為Poly,p=0.5.如圖7所示,當(dāng)3個(gè)卷積層中卷積核數(shù)目分別為{16,16,16}時(shí)識(shí)別效果最好。
圖7 9種不同配置的識(shí)別精度Fig.7 Recognition accuracy of 9 different configurations
本文分別采用批量歸一化算法和參數(shù)化線(xiàn)性修正單元PReLU對(duì)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,并命名4個(gè)模型:
1) CNN-ReLU,卷積層激活函數(shù)采用ReLU(即未優(yōu)化前模型);
2) CNN-PReLU,卷積層激活函數(shù)采用PReLU(即僅采用PReLU優(yōu)化的模型);
3) CNN-BN-ReLU,卷積層中卷積操作后先通過(guò)BN算法進(jìn)行批量歸一化處理,再通過(guò)ReLU進(jìn)行非線(xiàn)性輸出(即僅采用BN算法優(yōu)化的模型);
4) CNN-BN-PReLU,卷積層中卷積操作后先通過(guò)BN算法進(jìn)行批量歸一化處理,再通過(guò)PReLU進(jìn)行非線(xiàn)性輸出(即同時(shí)采用兩種方法優(yōu)化的模型)。
如表1所示,分別對(duì)以上4種模型在DDSM數(shù)據(jù)集實(shí)驗(yàn)的訓(xùn)練時(shí)間、識(shí)別準(zhǔn)確率、敏感度、特異度及AUC 5方面進(jìn)行評(píng)估分析,其中敏感度和特異度分別反映CNN網(wǎng)絡(luò)的誤診率和漏診率。ROC曲線(xiàn)直觀(guān)地反映了不同CNN網(wǎng)絡(luò)的分類(lèi)性能。AUC是ROC的曲線(xiàn)下面積,AUC值越接近于1,說(shuō)明分類(lèi)效果越好。圖8為4種模型的ROC曲線(xiàn)圖,橫坐標(biāo)為特異度(Specificity),縱坐標(biāo)為敏感度(Sensitivity)。
表1 不同CNN模型實(shí)驗(yàn)結(jié)果對(duì)比Table 1 Comparison of experimental results of different CNN models
圖8 不同CNN模型的ROC曲線(xiàn)對(duì)比圖Fig.8 Comparison of ROC curves for different CNN models
由圖8可以看出,CNN-BN-PReLU模型最接近點(diǎn)(0,1),即識(shí)別效果最好。
表1結(jié)果顯示:在同等訓(xùn)練條件下,CNN-BN-PReLU模型在識(shí)別準(zhǔn)確率、敏感度、特異度及AUC分?jǐn)?shù)上均明顯優(yōu)于其余3種模型CNN-ReLU,CNN-PReLU和CNN-BN-ReLU,該模型相比于優(yōu)化之前的CNN-ReLU模型準(zhǔn)確率提高了8.5%,達(dá)到了較好的識(shí)別效果。在訓(xùn)練時(shí)間上,由于CNN-BN-PReLU模型加入PReLU,時(shí)間耗費(fèi)略高于CNN-BN-ReLU,但是仍然比CNN-ReLU減少了約71.83%,比CNN-PReLU少了約68.25%.同樣可以看出,雖然分別用一種方法優(yōu)化后的網(wǎng)絡(luò)模型CNN-PReLU和CNN-BN-ReLU在各個(gè)指標(biāo)上均有顯著提升,依舊沒(méi)有同時(shí)采用兩種方法改進(jìn)后的CNN-BN-PReLU模型識(shí)別性能高。
BN算法作為一個(gè)網(wǎng)絡(luò)層應(yīng)用在CNN中,BN層作用在激活函數(shù)前后的識(shí)別性能不同。為了選擇最優(yōu)自適應(yīng)網(wǎng)絡(luò)結(jié)構(gòu),針對(duì)該問(wèn)題進(jìn)行實(shí)驗(yàn)比對(duì),將在卷積操作后先通過(guò)激活函數(shù)PReLU進(jìn)行非線(xiàn)性輸出,再通過(guò)BN算法進(jìn)行批量歸一化處理的卷積神經(jīng)網(wǎng)絡(luò)模型稱(chēng)為CNN-PReLU-BN模型。結(jié)果如表2所示。表2的實(shí)驗(yàn)結(jié)果表明,兩種模型的訓(xùn)練時(shí)間基本相同,但CNN-BN-PReLU的準(zhǔn)確率、敏感度、特異度及AUC值分別高于前者3.5%,5%,5%及0.03,即在網(wǎng)絡(luò)參數(shù)和訓(xùn)練參數(shù)均保持一致的情況下,BN作用在PReLU之前的表現(xiàn)性能更優(yōu)。因此本文選擇CNN-BN-PReLU模型作為自適應(yīng)卷積神經(jīng)網(wǎng)絡(luò)模型。
表2 BN算法作用在PReLU前后的識(shí)別性能對(duì)比Table 2 Comparison of recognition effect of BN algorithm before and after PReLU
在同一數(shù)據(jù)集上,比較本文方法CNN-BN-PReLU與兩種經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)模型LeNet-5[13]和AlexNet[14]的性能。LeNet-5是LECUN et al首次提出應(yīng)用于手寫(xiě)數(shù)字識(shí)別的卷積神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)包含2個(gè)卷積層、2個(gè)池化層和2個(gè)全連接層。AlexNet包括5個(gè)卷積層、3個(gè)池化層和3個(gè)全連接層。在此對(duì)比試驗(yàn)中,保留網(wǎng)絡(luò)基本結(jié)構(gòu)不變,將全連接層輸出改為Softmax[15]函數(shù),且輸出類(lèi)別為2類(lèi)。
從表3和圖9可以看出,與兩種經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)模型相比,本文方法在準(zhǔn)確率、敏感度、特異度以及AUC值方面具有更高的優(yōu)越性,分別達(dá)到了90.50%,96.00%,87.00%和0.91.此處所用LeNet-5和AlexNet網(wǎng)絡(luò)參數(shù)較少,結(jié)構(gòu)并不適合該乳腺圖像腫瘤目標(biāo)識(shí)別問(wèn)題,因而效果欠佳。實(shí)驗(yàn)表明,相比于應(yīng)用比較廣泛的LeNet-5和AlexNet模型,本文方法能有效地提高識(shí)別準(zhǔn)確率,降低乳腺腫瘤的誤診率和漏診率。
表3 與經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)模型的識(shí)別效果對(duì)比Table 3 Comparison with the recognition effect of classical CNNs
圖9 與經(jīng)典CNN模型的ROC曲線(xiàn)對(duì)比圖Fig.9 Comparison of ROC Curve with Classical CNNs
卷積神經(jīng)網(wǎng)絡(luò)具有自主學(xué)習(xí)深度特征的能力,它降低了傳統(tǒng)方法中圖像分割和人工設(shè)計(jì)特征進(jìn)行特征提取的復(fù)雜性。利用這一特性,提出基于深度特征學(xué)習(xí)的圖像自適應(yīng)識(shí)別算法。該方法采用批量歸一化算法和參數(shù)化線(xiàn)性修正單元對(duì)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn)。首先通過(guò)大量對(duì)比實(shí)驗(yàn),詳細(xì)地介紹了網(wǎng)絡(luò)層數(shù)與卷積核個(gè)數(shù)的設(shè)計(jì)與選擇,為卷積神經(jīng)網(wǎng)絡(luò)的構(gòu)建提供了參考。其次通過(guò)實(shí)驗(yàn)驗(yàn)證同時(shí)采用批量歸一化算法和PReLU改進(jìn)后的CNN-BN-PReLU模型在訓(xùn)練時(shí)間、識(shí)別準(zhǔn)確率敏感度、特異度及AUC值上得到了顯著的改善,有效地提高了網(wǎng)絡(luò)的識(shí)別精度、降低了漏診率及誤診率。最后對(duì)批量歸一化算法作用在PReLU前后的網(wǎng)絡(luò)性能進(jìn)行比較,結(jié)果證明批量歸一化算法作用在PReLU之前時(shí),識(shí)別效果達(dá)到最優(yōu),因此確定CNN-BN-PReLU模型為自適應(yīng)卷積神經(jīng)網(wǎng)絡(luò)模型。將本文模型與兩種經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行比較,表明CNN-BN-PReLU得到了更高的識(shí)別準(zhǔn)確率,并能顯著縮短訓(xùn)練時(shí)間。
在今后的工作中,一方面繼續(xù)探索比較不同的深度卷積神經(jīng)網(wǎng)絡(luò)模型如VGG,GoogleNet與ResNet等用于醫(yī)學(xué)圖像識(shí)別的能力;另一方面對(duì)CNN結(jié)構(gòu)和訓(xùn)練參數(shù)的選擇進(jìn)行優(yōu)化和完善,同時(shí)利用并行化方式對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,進(jìn)一步提高腫瘤識(shí)別的準(zhǔn)確率,使之更好地應(yīng)用于實(shí)際。