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