王 恒,李 霞,劉曉芳,徐文龍
(中國(guó)計(jì)量大學(xué) 信息工程學(xué)院,浙江 杭州 310018)
據(jù)美國(guó)癌癥協(xié)會(huì)(ACS)公布的數(shù)據(jù)顯示,女性癌癥患者中乳腺癌患者占最高比例,且具有年輕化的趨勢(shì)[1]。癌癥的早發(fā)現(xiàn)以及早期病變時(shí)的及時(shí)診斷和治療,對(duì)于患者的康復(fù)具有很大的幫助,所以病理圖像的準(zhǔn)確定性和分類(lèi)識(shí)別具有重要的研究意義。
病理圖像是指為了醫(yī)療或醫(yī)學(xué)研究,對(duì)人體進(jìn)行病理檢查而得到的病理圖像信息。根據(jù)醫(yī)學(xué)圖像性質(zhì)和應(yīng)用特點(diǎn),有針對(duì)性地研究高效的檢測(cè)和分類(lèi)方法一直是研究人員關(guān)注的課題[2-3]。在傳統(tǒng)機(jī)器學(xué)習(xí)乳腺癌病理圖像研究領(lǐng)域,基于人工提取的圖像形狀和紋理特征,Wang等人[4]使用支持向量機(jī)(SVM)對(duì)68幅圖像的分類(lèi)準(zhǔn)確率為96.19%。Zhang等人[5]基于人工設(shè)計(jì)特征的單類(lèi)核PCA方法,對(duì)361幅圖像分類(lèi),達(dá)到92%的精度。2015年,Spanhol等人[6]發(fā)布了BreaKHis數(shù)據(jù)集,使用無(wú)參數(shù)閾值鄰接統(tǒng)計(jì)(PFTAS)提取出6種特征描述子,然后分別使用SVM、隨機(jī)森林(RF)和二次判別分析(QDA)三種傳統(tǒng)機(jī)器學(xué)習(xí)算法進(jìn)行分類(lèi),識(shí)別率達(dá)80%~85%。但是上述研究方法存在數(shù)據(jù)集小或者數(shù)據(jù)集不同造成的實(shí)驗(yàn)結(jié)果不具有可比性、人工設(shè)計(jì)特征或提取特征的復(fù)雜性、跨專(zhuān)業(yè)領(lǐng)域的障礙性等問(wèn)題,嚴(yán)重影響了計(jì)算機(jī)輔助治療在實(shí)際中的應(yīng)用。
近年來(lái),深度學(xué)習(xí)技術(shù)作為一類(lèi)多層神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法,可通過(guò)深層非線性網(wǎng)絡(luò)結(jié)構(gòu)學(xué)習(xí)特征,并且通過(guò)組合低層特征形成更加抽象的深層表示(屬性類(lèi)別或特征)。它將傳統(tǒng)機(jī)器學(xué)習(xí)的人工設(shè)計(jì)或者提取特征環(huán)節(jié)進(jìn)行自動(dòng)化,實(shí)現(xiàn)了復(fù)雜函數(shù)逼近和表征輸入數(shù)據(jù)分布式表示,從而可以學(xué)習(xí)到數(shù)據(jù)集的本質(zhì)特征[7]。卷積神經(jīng)網(wǎng)絡(luò)及其變體網(wǎng)絡(luò)對(duì)于圖像的處理有著卓越的效果[8-10],奠定了深度學(xué)習(xí)在識(shí)別乳腺癌病理圖像的應(yīng)用基礎(chǔ)[11-12]。2015年BreaKHis數(shù)據(jù)集[6]公開(kāi)之后,眾多研究學(xué)者針對(duì)該數(shù)據(jù)集進(jìn)行了研究探討:Spanhol等人[13]使用AlexNet網(wǎng)絡(luò),識(shí)別率比傳統(tǒng)機(jī)器學(xué)習(xí)算法高出6%,但是識(shí)別率仍然較低,不能滿足臨床需要;Bayramoglu等人[14]取得約83%的準(zhǔn)確率,采用的是基于放大倍數(shù)獨(dú)立CNN方法,該方法同樣存在精度不足問(wèn)題;Wei等人[15]以GoogleNet為基礎(chǔ)框架,將類(lèi)和子類(lèi)的乳腺癌標(biāo)簽作為先驗(yàn)知識(shí),構(gòu)建BICNN模型,達(dá)到97%分類(lèi)正確率,但是該方法存在模型復(fù)雜、計(jì)算量大、訓(xùn)練時(shí)間消耗過(guò)長(zhǎng)等問(wèn)題。以上問(wèn)題的存在使得CAD無(wú)法更好的滿足臨床應(yīng)用。
為了提高癌癥分析的效率和準(zhǔn)確率,本研究通過(guò)深度學(xué)習(xí)技術(shù),構(gòu)建病理圖像癌癥識(shí)別模型。通過(guò)現(xiàn)有的常規(guī)圖片識(shí)別模型進(jìn)行遷移學(xué)習(xí),對(duì)模型進(jìn)行預(yù)訓(xùn)練和微調(diào),從而提升模型對(duì)于醫(yī)學(xué)圖像的特征提取能力,得到具有表征意義的特征圖。通過(guò)對(duì)特征圖的分類(lèi),獲得更好的精度,達(dá)到可應(yīng)用于臨床計(jì)算機(jī)輔助診斷的要求,給醫(yī)生精準(zhǔn)的判斷建議,有效防止醫(yī)生因疏忽而出現(xiàn)誤診、漏診等過(guò)失。
針對(duì)傳統(tǒng)機(jī)器學(xué)習(xí)在病理圖像診斷方面的性能不足、人工提取特征的復(fù)雜性高,以及常規(guī)深度學(xué)習(xí)在網(wǎng)絡(luò)深度較大時(shí)會(huì)出現(xiàn)網(wǎng)絡(luò)退化等缺點(diǎn),本文提出了一種基于ResNet50網(wǎng)絡(luò)的乳腺癌病理圖像自動(dòng)分類(lèi)模型。該模型主要分為源數(shù)據(jù)的預(yù)訓(xùn)練、遷移學(xué)習(xí)、目標(biāo)數(shù)據(jù)的微調(diào)訓(xùn)練、模型性能的檢驗(yàn)等內(nèi)容,模型流程圖如圖1。
圖1 模型流程圖Figure 1 Flow chart of model
首先在源數(shù)據(jù)上預(yù)訓(xùn)練得到模型的權(quán)重參數(shù),其次用得到的模型權(quán)重參數(shù)初始化新模型的殘差網(wǎng)絡(luò)層,然后在目標(biāo)數(shù)據(jù)集上進(jìn)行微調(diào)訓(xùn)練得到最終模型,最后在測(cè)試集上檢驗(yàn)?zāi)P偷男阅?。下文將?duì)上述內(nèi)容中的技術(shù)原理進(jìn)行詳細(xì)介紹。
深度學(xué)習(xí)中網(wǎng)絡(luò)深度遇到的主要問(wèn)題是梯度消失和梯度爆炸,傳統(tǒng)解決方案是數(shù)據(jù)的初始化(normalized initializatiton)和(batch normlization)正則化[16]。這樣解決了梯度的問(wèn)題,深度加深了,但是帶來(lái)了網(wǎng)絡(luò)性能退化的問(wèn)題[17]。ResNet50是在現(xiàn)有訓(xùn)練深度網(wǎng)絡(luò)的基礎(chǔ)上,提出的一種具有易優(yōu)化、計(jì)算負(fù)擔(dān)小等優(yōu)點(diǎn)的殘差學(xué)習(xí)框架。殘差用來(lái)設(shè)計(jì)解決退化和梯度問(wèn)題,使得網(wǎng)絡(luò)的性能在深度增加的同時(shí)也得以提升。ResNet50中包含了49個(gè)卷積層和1個(gè)全連階層,其中,第二至五階段中的ID BLOCK x2代表的是兩個(gè)不改變維度的殘差塊,CONV BLOCK代表的是添加維度的殘差塊,每個(gè)殘差塊包含三個(gè)卷積層,所以有1+3×(3+4+6+3)=49個(gè)卷積層,結(jié)構(gòu)如圖2。
圖2 ResNet50結(jié)構(gòu)圖Figure 2 Structure diagram of ResNet50
圖中的CONV是卷積操作,Batch Norm為批正則化處理,Relu為激活函數(shù),MAXPOOL和AvgPOOL是二種池化操作,第二至五階段代表殘差塊。由于ResNet50神經(jīng)網(wǎng)絡(luò)輸入數(shù)據(jù)的尺寸為224×224×3,所以需要在輸入數(shù)據(jù)前對(duì)圖像進(jìn)行預(yù)處理,將尺寸為700×460×3數(shù)據(jù)裁剪為指定尺寸batch_size×224×224×3。圖像經(jīng)過(guò)殘差塊的不斷卷積操作,圖像像素矩陣的通道數(shù)Channel越來(lái)越深,再經(jīng)過(guò)扁平層Flatten,將圖像像素矩陣尺寸變成batch_size×2048,最后輸入全連接層FC中,經(jīng)softmax層輸出對(duì)應(yīng)類(lèi)別概率。
ResNet50結(jié)構(gòu)中包含跨層連接,它通過(guò)快捷連接shortcut將輸入跨層傳遞,然后與經(jīng)過(guò)卷積后的輸出相加,達(dá)到充分訓(xùn)練底層網(wǎng)絡(luò)的效果,使正確率隨著深度的增加得到顯著提升。ResNet50殘差塊結(jié)構(gòu)如圖3。
圖3 ResNet50殘差塊結(jié)構(gòu)圖Figure 3 Structure of residual block for ResNet50
shortcut連接相當(dāng)于直接執(zhí)行了同等映射,不會(huì)增加額外的參數(shù)和計(jì)算復(fù)雜度,模型相當(dāng)于退化為一個(gè)淺層網(wǎng)絡(luò)。此時(shí)要解決的問(wèn)題是學(xué)習(xí)恒等映射函數(shù)H(x)=x,但是很難直接去擬合這樣一個(gè)潛在的函數(shù)。假設(shè)殘差網(wǎng)絡(luò)的輸出為H(x),經(jīng)過(guò)卷積操作后的輸出為F(x),則H(x)=F(x)+x。F(x)=(ω3δ(ω2δ(ω1x))),其中ω是卷積操作,δ代表激活函數(shù)。此時(shí)只要F(x)=0,就構(gòu)成了前述的恒等映射函數(shù)H(x)=x,所以問(wèn)題轉(zhuǎn)換為學(xué)習(xí)一個(gè)容易擬合的殘差函數(shù)F(x)=H(x)-x。實(shí)驗(yàn)表明只有不低于兩層的殘差塊才能起到提升作用,本文中ResNet50中選用的是三層殘差塊。
(1)
(2)
其中1(yi=j)為指示性函數(shù),其取值與括號(hào)內(nèi)的真值保持一致,即yi=j成立時(shí)函數(shù)值為1,否則為0。最后通過(guò)adamoptimizer優(yōu)化器最小化誤差函數(shù)。
遷移學(xué)習(xí)的基本思想是通過(guò)在一個(gè)現(xiàn)有的大型數(shù)據(jù)集上預(yù)訓(xùn)練一個(gè)CNN,然后使用該預(yù)訓(xùn)練好的CNN的權(quán)重作為初始化權(quán)值,遷移到目標(biāo)數(shù)據(jù)集上進(jìn)行訓(xùn)練和微調(diào)(fine-tuning)[18]。遷移學(xué)習(xí)可行是因?yàn)镃NN的前面幾層學(xué)習(xí)是低級(jí)語(yǔ)義特征(比如邊緣信息,顏色信息等),這樣的特征在不同的分類(lèi)任務(wù)中都是不變的。后幾層學(xué)習(xí)的是數(shù)據(jù)集的特定特征,也稱(chēng)為高層語(yǔ)義特征。
遷移學(xué)習(xí)和微調(diào)過(guò)程如下。在實(shí)驗(yàn)過(guò)程中,我們?cè)跀?shù)量級(jí)達(dá)到TB級(jí)別的ImageNet上對(duì)模型進(jìn)行預(yù)訓(xùn)練,得到一個(gè)模型。并用該模型參數(shù)代替?zhèn)鹘y(tǒng)隨機(jī)初始化模型參數(shù),對(duì)softmax層之外的所有層進(jìn)行初始化,然后添加針對(duì)處理本課題的softmax層。由于預(yù)訓(xùn)練的源數(shù)據(jù)ImageNet與目的數(shù)據(jù)BreaKHis差異性較大,所以用目的數(shù)據(jù)對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行微調(diào)。同時(shí)為確保在微調(diào)過(guò)程中網(wǎng)路權(quán)重不會(huì)因目的數(shù)據(jù)集的差異較大而扭曲過(guò)快,將學(xué)習(xí)率設(shè)置較小。這樣不僅能有效防止過(guò)擬合,還能加快收斂速度,提高模型精度,有效地解決了深度學(xué)習(xí)應(yīng)用于醫(yī)學(xué)圖像分類(lèi)缺乏大規(guī)模標(biāo)記數(shù)據(jù)集的問(wèn)題。
目前對(duì)于腫瘤良性惡性的診斷手段中,活檢是唯一可以確切診斷的方法。在活檢技術(shù)中,最常見(jiàn)的是細(xì)針穿刺、核心穿刺活檢、真空輔助和外科(開(kāi)放)活組織檢查(SOB)。該過(guò)程包括收集細(xì)胞或組織樣品,將其固定在玻璃顯微鏡載玻片上,用于隨后的染色和顯微鏡檢查。
本文中使用的BreaKHis數(shù)據(jù)集是2015年由Spanhol等人和巴西巴拉那的P&D實(shí)驗(yàn)室(Pathological Anatomy and Cytopathology)合作建立的,樣品由SOB方式收集,從乳房組織活檢切片產(chǎn)生樣品,用蘇木精和曙紅(HE)染色。同時(shí)為保持原始組織結(jié)構(gòu)和分子組成在光學(xué)顯微鏡下可觀察,采取標(biāo)準(zhǔn)石蠟法的制備方法,然后使用顯微鏡與三星數(shù)碼彩色相機(jī)耦合從乳房組織載玻片獲得數(shù)字化圖像,并由P&D實(shí)驗(yàn)室的病理學(xué)家標(biāo)記。病理圖像樣例如圖4。
圖4 腫瘤病理圖像Figure 4 Tumor pathological image
BreaKHis乳腺癌病理圖像數(shù)據(jù)集共有7 909個(gè)圖像樣本,分別為5 429幅惡性腫瘤圖像,2 480幅良性腫瘤圖像,固定大小為700×460像素,模式為RGB三通道圖像,來(lái)源于82位病人.數(shù)據(jù)集的具體分布如表1。
表1 數(shù)據(jù)集的具體分布情況
本實(shí)驗(yàn)中將數(shù)據(jù)集整體混洗打亂后,劃分為訓(xùn)練集(60%)、驗(yàn)證集(20%)和測(cè)試集(20%)三個(gè)部分,并且采取相同的預(yù)處理操作,以保證驗(yàn)證和測(cè)試結(jié)果的準(zhǔn)確性。首先為確保數(shù)據(jù)適合模型的輸入尺寸,用tf.image.resize_image_with_crop_or_pad函數(shù)將圖像裁剪為224×224,然后使用tf.image模塊的per_image_standardization函數(shù)對(duì)圖像像素值進(jìn)行標(biāo)準(zhǔn)化操作,最后將數(shù)據(jù)分成大小為batch_size的批次,方便后續(xù)模型的訓(xùn)練。
實(shí)驗(yàn)中所用的計(jì)算機(jī)硬件配置為:64位Windows10操作系統(tǒng),2.80 GHz Intel i7 CPU,基于Pascal架構(gòu)NVIDIA GeForce GTX1050顯卡。軟件方面:使用pycharm Community 2017.2.1作為開(kāi)發(fā)平臺(tái),選擇Google的深度學(xué)習(xí)開(kāi)源框架TensorFlow作為程序框架,版本為1.30,前端為Keras2.0.8,程序使用Python3.6編寫(xiě)設(shè)計(jì)。
本實(shí)驗(yàn)中使用正確率ACC和靈敏度Sensitive作為模型的評(píng)價(jià)指標(biāo),假定Nall代表所有的驗(yàn)證圖像數(shù)目,Nr代表正確分類(lèi)的圖像數(shù)目,則ACC的表達(dá)式為
(3)
ACC的值越大,代表模型的預(yù)測(cè)和真實(shí)情況越接近,模型的性能越好。
考慮到對(duì)患者惡性腫瘤漏查后果的嚴(yán)重性,本文將選擇靈敏度Sensitive來(lái)評(píng)價(jià)模型的這一能力.假設(shè)Nmag代表測(cè)試樣本中惡性腫瘤的數(shù)目,Nrp代表被正確預(yù)測(cè)的惡性腫瘤數(shù)目,則Sensitive的表達(dá)式為
(4)
Sensitive的值越大,就代表模型的漏查率越低,模型的性能就越好。
神經(jīng)網(wǎng)絡(luò)中超參數(shù)的取值對(duì)模型的性能有很大的影響.實(shí)驗(yàn)中設(shè)定學(xué)習(xí)率固定為0.000 1,批大小為32,優(yōu)化器選擇adamoptimizer,迭代次數(shù)8 000次,得到模型在驗(yàn)證集上正確率如圖5。
圖5 模型在驗(yàn)證集上的正確率變化曲線Figure 5 Accuracy rate curve of the model on the verification set
由圖5可知模型迭代5 000次時(shí)開(kāi)始收斂,迭代到7 000次時(shí)最終穩(wěn)定在98%左右。相對(duì)于應(yīng)用于同一數(shù)據(jù)集的其他深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò),本文提出的方法具有更快的收斂速度。將模型在包含1 580個(gè)樣本的測(cè)試集上進(jìn)行測(cè)試后,得到的正確率ACC達(dá)到97.4%。同時(shí)在測(cè)試集中的1 083個(gè)惡性腫瘤樣本中平均有1 061個(gè)樣本被正確識(shí)別出,達(dá)到98%的靈敏度。該實(shí)驗(yàn)結(jié)果達(dá)到了應(yīng)用于實(shí)際的高正確率和對(duì)惡性腫瘤的高靈敏度要求,為計(jì)算機(jī)輔助治療應(yīng)用于實(shí)際醫(yī)療中奠定了基礎(chǔ)。
為增加實(shí)驗(yàn)對(duì)比性,選擇其他方法處理相同數(shù)據(jù)集與本文的方法進(jìn)行比較,來(lái)檢驗(yàn)?zāi)P托阅堋1?為實(shí)驗(yàn)對(duì)比結(jié)果,其中,PFTAS+QDA/SVM/RF是文獻(xiàn)[6]中采用的方法,Single-Task CNN是文獻(xiàn)[14]中基于放大倍數(shù)獨(dú)立的卷積神經(jīng)網(wǎng)絡(luò)算法;AlexNet是Spanhol等人在文獻(xiàn)[13]中采用的網(wǎng)絡(luò)模型;BiCNN是文獻(xiàn)[15]以GoogleNet作為基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu)的分類(lèi)方法。
表2 不同算法在BreaKHis數(shù)據(jù)集的表現(xiàn)
Table 2 Performance of different algorithms in the BreaKHis dataset
方法模型精度/%PFTAS+QDA/SVM/RF80~85Single_task CNN83AlexNet88BiCNN97本文方法97.4
由表2對(duì)比結(jié)果可知,相對(duì)于傳統(tǒng)機(jī)器學(xué)習(xí)本文模型具提取特征簡(jiǎn)單、精度高等優(yōu)點(diǎn)。相對(duì)于其他深度學(xué)習(xí)算法,本文中的模型具有收斂速度快、精度高的優(yōu)點(diǎn)。與精確度同樣達(dá)到97%的BiCNN方法對(duì)比,本文方法迭代8 000次,遠(yuǎn)遠(yuǎn)小于BiCNN迭代55 000次的計(jì)算消耗和時(shí)間消耗。在實(shí)驗(yàn)過(guò)程中,模型的數(shù)據(jù)沒(méi)進(jìn)行數(shù)據(jù)增強(qiáng)擴(kuò)充,在較少數(shù)據(jù)集同樣達(dá)到很高的性能,表明本文方法在乳腺癌病理圖像的分類(lèi)識(shí)別過(guò)程中提取到的特征,更具有區(qū)分性,因而識(shí)別率更高,且具有較好的泛化性。
本文結(jié)合病理圖像診斷目前發(fā)展的最新技術(shù),提出基于ResNet50的深度學(xué)習(xí)網(wǎng)絡(luò)模型,實(shí)現(xiàn)對(duì)病理圖像的高精度識(shí)別分類(lèi)。模型中的殘差塊有效克服了網(wǎng)絡(luò)退化等問(wèn)題,在網(wǎng)絡(luò)深度加深的同時(shí),保證了性能不會(huì)下降。針對(duì)公開(kāi)標(biāo)記的醫(yī)學(xué)圖像數(shù)據(jù)集較少的難題,本文使用遷移學(xué)習(xí)的手段,避免了過(guò)擬合問(wèn)題的出現(xiàn)。本模型具有深度更大、收斂更快、精度更高、易泛化等優(yōu)點(diǎn),為計(jì)算機(jī)輔助診斷應(yīng)用于實(shí)際臨床診斷中做了可行性論證,為早期發(fā)現(xiàn)與早期治療乳腺癌提供了有效指導(dǎo)。