許學(xué)斌,張佳達(dá)*,劉 偉,路龍賓,趙雨晴
(1.西安郵電大學(xué)計算機學(xué)院,西安 710121;2.陜西省網(wǎng)絡(luò)數(shù)據(jù)分析與智能處理重點實驗室(西安郵電大學(xué)),西安 710121)
癌癥是目前世界范圍內(nèi)人類疾病和死亡的主要原因之一。根據(jù)世界衛(wèi)生組織國際癌癥研究機構(gòu)2020年2月發(fā)布的《2020 年癌癥報告》,在2018 年有960 萬人死于癌癥,并預(yù)計2040年將有2 700萬新發(fā)病例[1]。對于女性而言,乳腺癌是全球發(fā)病率和死亡率最高的癌癥,2018 年全球女性乳腺癌發(fā)病率為24.2%,死亡率為15%。早期發(fā)現(xiàn)在癌癥診斷中起著關(guān)鍵作用,可以提高長期生存率[2]。乳腺癌的診斷通常采用放射學(xué)圖像分析進行初步檢查,如乳腺X 線診斷(X-rays)[3]、超聲檢查(B 超)[4]、熱成像[5]等,以確定異常部位。然后,如果檢查顯示有惡性組織生長的可能,再進行乳腺組織活檢?;顧z即取組織在顯微鏡下研究是否存在癌癥,是鑒別某個部位是否癌變的唯一可靠方法[6]。但是,傳統(tǒng)的人工診斷需要具有專業(yè)知識的專家進行高強度的工作,主觀想法對乳腺腫瘤的診斷結(jié)果影響較大,并且缺乏診斷經(jīng)驗的病理學(xué)家容易出現(xiàn)診斷錯誤。研究表明,利用計算機輔助診斷(Computer-Aided Diagnosis,CAD)對乳腺組織病理圖像進行自動、精確的分類,不僅可以為醫(yī)生提供了更加客觀、準(zhǔn)確的診斷參考,也可以提高醫(yī)生的診斷效率和診斷的準(zhǔn)確率[7]。
雖然乳腺癌診斷的影像自動處理作為一個研究課題已經(jīng)探索了很多年,但由于需要分析的圖像比較復(fù)雜,因此仍然具有一定的挑戰(zhàn)性。有研究人員利用特征描述符和機器學(xué)習(xí)算法,對乳腺組織病理圖像進行分類。常采用的特征描述符有:局部二值化、尺度不變特征變換、方向梯度直方圖等,機器學(xué)習(xí)分類算法有:主成分分析(Principal Component Analysis,PCA)、支持向量機(Support Vector Machine,SVM)、隨機森林等。通過利用特征描述符提取圖像的形態(tài)和紋理等相關(guān)特征信息,然后使用機器學(xué)習(xí)分類器對其進行分類,從而實現(xiàn)對乳腺組織病理圖像的分類[7-8]。Zhang 等[9]提出了一種基于單類核主成分分析(Kernel Principal Component Analysis,KPCA)模型的分類方案,將乳腺癌組織病理學(xué)圖像分為良、惡性(二分類),準(zhǔn)確率達(dá)92%。該方法使用了一種簡單的數(shù)據(jù)集,只覆蓋了病理圖像的重要區(qū)域,因此具有較高的準(zhǔn)確率;然而,在活檢掃描中通常很難找到只包含最重要組織的感興趣區(qū)域(Region Of Interest,ROI)。Spanhol等[10]介紹了一個乳腺癌組織病理學(xué)圖像數(shù)據(jù)集(BreaKHis),并在該數(shù)據(jù)集上使用不同的特征描述符和不同的傳統(tǒng)機器學(xué)習(xí)分類算法將病例分為良性或惡性,準(zhǔn)確率范圍為80%~85%。Chan 等[11]使用SVM 對40 倍放大的乳腺癌組織病理圖像進行分類實驗,將乳腺腫瘤分為8 種亞型(多分類),準(zhǔn)確率僅為55.6%。可見特征描述符和機器學(xué)習(xí)算法并不能實現(xiàn)高精度的乳腺癌病理圖像分類,特別是乳腺亞型多分類。近年來,隨著深度學(xué)習(xí)的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)在大規(guī)模圖像識別中取得了巨大的成功。與基于傳統(tǒng)機器學(xué)習(xí)算法不同,CNN是由卷積層、池化層和全連接層等不同操作組成的多層網(wǎng)絡(luò),通過不斷地自動優(yōu)化分類損失函數(shù),可以直接從輸入的原始圖像中學(xué)習(xí)有用的特征,從而實現(xiàn)對乳腺組織病理圖像的分類,避免了人工尋找病理圖像的ROI,也提高了分類準(zhǔn)確率。在2016 年,Spanhol 等[12]又利用深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Network,DCNN)模型AlexNet對乳腺癌病理圖像進行良性和惡性二分類,準(zhǔn)確率為85%~90%,明顯高于文獻(xiàn)[10]中使用的機器學(xué)習(xí)方法。詹翔等[13]基于Inception-V3,并對其進行改進,提出一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的乳腺病理圖像分類方法,二分類實驗的平均精度為97%,但是在多分類實驗上只有89%。Wei等[14]提出了一種數(shù)據(jù)增強方法和一種基于CNN 的新型乳腺組織病理圖像分類方法BiCNN(breast cancer histopathological image classification method based on deep convolutional neural networks),二分類的準(zhǔn)確率達(dá)到97%。Jiang 等[15]提出了一種小型的SE-ResNet 模塊和一種新的學(xué)習(xí)率調(diào)度器,設(shè)計了一種乳腺癌組織病理學(xué)圖像分類網(wǎng)絡(luò)(Breast cancer Histopathology image Classification Network,BHCNet),實驗結(jié)果表明該方法分類性能很好,二分類的準(zhǔn)確率為98.87%~99.34%,對多分類的準(zhǔn)確率為90.66%~93.81%。
盡管深度學(xué)習(xí)模型,相比機器學(xué)習(xí)算法,在乳腺癌組織病理圖像分類中表現(xiàn)得更好,提高了對乳腺癌病理圖像分類的效率和準(zhǔn)確性,并且對乳腺腫瘤良性和惡性二分類的準(zhǔn)確率最高也達(dá)到了99.34%,但是由于病理圖像自身固有的復(fù)雜性和多樣性的特點,對乳腺腫瘤8 種亞型的分類準(zhǔn)確率并不是很高,所以為了滿足臨床應(yīng)用的需求,乳腺病理圖像多分類問題的準(zhǔn)確率仍有待提升。本文利用DenseNet和SENet的設(shè)計思想,融合空間特征信息和通道特征信息,提出了一種融合圖像空間特征信息和通道特征信息的高精度乳腺癌組織病理圖像分類模型,將該網(wǎng)絡(luò)模型命名為BCSCNet(Breast Classification fusing Spatial and Channel features Network),并且,通過使用數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強來處理數(shù)據(jù)集,在乳腺癌組織病理圖像數(shù)據(jù)集(BreaKHis)上進行模型訓(xùn)練和測試,驗證了本文算法可以對乳腺癌組織病理圖像進行高精度的分類。
本文提出的分類算法流程如圖1 所示,基本流程為:乳腺癌病理圖像數(shù)據(jù)集經(jīng)過數(shù)據(jù)預(yù)處理之后分為訓(xùn)練數(shù)據(jù)和測試數(shù)據(jù);然后訓(xùn)練數(shù)據(jù)再經(jīng)過數(shù)據(jù)增強得到新的訓(xùn)練數(shù)據(jù);接著將得到的數(shù)據(jù)在乳腺癌病理圖像分類網(wǎng)絡(luò)BCSCNet中進行訓(xùn)練;最后將測試數(shù)據(jù)輸入到訓(xùn)練好的BCSCNet中進行測試,從而完成對乳腺癌病理圖像的分類。
圖1 乳腺癌病理圖像的分類過程Fig.1 Classification process of pathological images of breast cancer
本文使用的數(shù)據(jù)集為乳腺癌組織病理學(xué)數(shù)據(jù)庫(BreakHis)[10],BreakHis 包含良性和惡性乳腺腫瘤的顯微活檢圖像。BreakHis 是目前所公開的乳腺癌組織病理圖像數(shù)據(jù)集中數(shù)據(jù)量最大、類型較最全面的數(shù)據(jù)集,并且具有多種不同的放大倍數(shù),識別難度也相對較高,在此數(shù)據(jù)集上進行實驗的說服力要強于其他數(shù)據(jù)集。數(shù)據(jù)集共有7 909 張乳腺腫瘤組織顯微圖像,包括良性樣本2 480 張,惡性樣本5 429 張,放大倍數(shù)有4 種:40、100、200 和400。圖像采用PNG 格式,RGB 三通道,700×460像素。該數(shù)據(jù)集目前包含4種不同亞型的良性乳腺腫瘤:腺瘤、纖維腺瘤、管狀腺瘤和葉狀腫瘤;以及4 種惡性腫瘤(乳腺癌);導(dǎo)管癌、小葉癌、粘液癌和乳頭狀癌。表1展示了不同子類型的數(shù)據(jù)集在不同的放大倍數(shù)下數(shù)量。8 種不同類型的乳腺病理圖像如圖2所示,放大倍數(shù)為400倍。
表1 不同型的數(shù)據(jù)集在不同的放大倍數(shù)下數(shù)量Tab.1 Number of datasets of different subtypes at different magnification
圖2 放大倍數(shù)為400倍的部分圖像數(shù)據(jù)Fig.2 Partial image data with a magnification of 400
在組織圖像中,預(yù)處理是去除不同類型噪聲的關(guān)鍵步驟,同時對數(shù)據(jù)進行預(yù)處理可以簡化數(shù)據(jù),提高網(wǎng)絡(luò)模型的訓(xùn)練速度,從而提升特征提取和識別的可靠性。又因為BreakHis數(shù)據(jù)集中的病理圖像數(shù)據(jù)采取了不同的染色方式,會給組織病理圖像帶來顏色上的差異,這雖然對受過專業(yè)訓(xùn)練的病理學(xué)專家來說不是一個大障礙,但是這對于自動圖像處理來說是一個很大的問題,可能會給最終的結(jié)果帶來很大的影響。因此,需要對原始數(shù)據(jù)集進行數(shù)據(jù)預(yù)處理,但是直接對原始圖像進行灰度處理,會對病理圖像造成信息丟失,所以本文使用文獻(xiàn)[16]中提出的方法對數(shù)據(jù)集進行歸一化(Normalization),該方法是一種新的結(jié)構(gòu)保留顏色歸一化方案,該方案將一幅圖像的顏色變換為另一幅圖像的顏色,同時可靠地保持了源圖像結(jié)構(gòu)信息的不變性。該歸一化方案的一個關(guān)鍵步驟是通過稀疏正則非負(fù)矩陣分解實現(xiàn)源圖像和目標(biāo)圖像的精確著色分離。文獻(xiàn)[16]也通過實驗證明了所提出的染色分離和顏色歸一化技術(shù)的優(yōu)越性能。圖3為歸一化前后的病理圖像。
圖3 歸一化前后的病理圖像Fig.3 Histopathology image before and after normalization
因為數(shù)據(jù)量過小會使CNN 在訓(xùn)練過程中出現(xiàn)過擬合[17],這意味著網(wǎng)絡(luò)在訓(xùn)練數(shù)據(jù)上表現(xiàn)很好,但在測試數(shù)據(jù)上表現(xiàn)較差,導(dǎo)致CNN 的性能下降。因此為了獲得更高的準(zhǔn)確率,本文使用數(shù)據(jù)增強對原始數(shù)據(jù)集進行數(shù)據(jù)擴充,即利用已有的數(shù)據(jù)擴充數(shù)據(jù)集的過程,比如縮放、翻轉(zhuǎn)和旋轉(zhuǎn)等變換,從而增加訓(xùn)練樣本的數(shù)量,避免CNN 的過擬合問題。由于乳腺癌的病理圖像是具有旋轉(zhuǎn)不變性的,病理學(xué)家可以很容易地從不同角度分析乳腺癌的病理圖像,而診斷沒有任何變化[18]。但是對于CNN 而言卻是一張與之前不一樣的圖像,但是其標(biāo)簽一致,所以經(jīng)過增強數(shù)據(jù)訓(xùn)練得到的模型泛化能力也更強了。本文實驗主要使用旋轉(zhuǎn)和翻轉(zhuǎn)來增強數(shù)據(jù)。
近年來,深度學(xué)習(xí)迅速發(fā)展,隨即出現(xiàn)了大量的CNN 模型,包括在1998 年提出的LeNet5,以及后來的AlexNet、DenseNet、SENet等。研究證明,CNN已經(jīng)取得了很大的成功,被計算機視覺界廣泛采用,適合處理圖像分類、圖像識別之類的任務(wù)。
一個CNN 的結(jié)構(gòu)主要有若干個卷積層和池化層,并在其后選擇至少一個完全連接層,其中卷積層有多個具有可訓(xùn)練權(quán)重的卷積核,通過將圖像與每個卷積核卷積,并在卷積層中加入偏置,最后產(chǎn)生多個特征圖。池化層是一種非線性下采樣的過程,可以保存任務(wù)的相關(guān)信息,增大特征圖的感受野,同時去除不相關(guān)的細(xì)節(jié)。前面的卷積層和池化層是對圖像進行特征提取,全連接層就是將提取的特征進行分類,通過把特征映射到神經(jīng)元中從而實現(xiàn)分類。
圖4展示的是一個簡單的CNN模型,它包含了輸入層、卷積層、池化層和輸出層(全連接層),其中卷積層和池化層都是兩個。第1 層是輸入層,輸入圖像的大小是28×28;第2 層是卷積層1,通過與輸入圖像進行卷積獲得多個不同的特征圖,經(jīng)過卷積層1 的輸出特征圖大小變?yōu)?4×24;第3 層是池化層1,通過計算從卷積層1 輸出的特征圖的局部平均值或最大值增大感受野,池化層1會將特征圖大小變?yōu)?2×12。后面的卷積層2和池化層2除了卷積核的數(shù)量和大小不同,其計算方式都與之前類似。最后一層是全連接層,與前面計算出來的特征圖進行全連接計算可以輸出該模型的最終結(jié)果。
圖4 簡單的CNN模型結(jié)構(gòu)Fig.4 Structure of simple CNN model
稠密神經(jīng)網(wǎng)絡(luò)(DenseNet)是由Huang 等[19]提出,該網(wǎng)絡(luò)以前饋方式將每一層連接到其他層。一般而言,具有L層的傳統(tǒng)卷積網(wǎng)絡(luò)具有L個連接,每一層與其后一層之間只有一個直接連接,而DenseNet 是采用一種密集連接的方式,在具有L層的DenseNet中共有L(L+1)/2個連接。對于密集連接的每一層,在其前面所有層產(chǎn)生的特征圖都用作該層的輸入,然后由該層產(chǎn)生的特征圖則用作后續(xù)所有層的輸入。DenseNet通過這種密集連接,重復(fù)利用來自前面多層特征圖的特征信息,在減少參數(shù)的同時提升網(wǎng)絡(luò)的效率。
DenseNet主要由稠密塊(DenseBlock)和過渡層(Transition Layer)組合而成。其中稠密塊中具有多個子模塊,子模塊之間通過密集連接將不同子模塊之間的特征圖通道進行合并。如第L層出的特征圖通道數(shù)是n,且第L+1 層經(jīng)過特征提取之后的特征圖通道數(shù)為m,則第L+1層輸出的特征圖通道數(shù)為n+m。而過渡層是連接兩個相鄰的稠密塊,并且通過池化層使特征圖大小降低,增大感受野的同時減少網(wǎng)絡(luò)參數(shù)。
傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)中,在l層的輸出為:
而對于稠密塊中的某個子模塊,會將前面所有層作為該子模塊的輸入,即子模塊的輸出為:
其中:H(?)代表非線性組合函數(shù),x代表l層前面的其他層輸出的每一個特征圖。
DenseNet 通過建立不同層之間的密集連接,進一步減輕了梯度消失問題,同時利用了網(wǎng)絡(luò)模型的淺層特征,使網(wǎng)絡(luò)學(xué)習(xí)到更多的特征信息,達(dá)到了特征重用的目的。與ResNet 等其他深度卷積神經(jīng)網(wǎng)絡(luò)模型相比,減少大量的訓(xùn)練參數(shù),有效抑制了模型訓(xùn)練過程中出現(xiàn)的過擬合現(xiàn)象,使得DenseNet 的泛化能力更強、性能更優(yōu)。
傳統(tǒng)的卷積變換,即將輸入變?yōu)檩敵?,是將各個通道的卷積結(jié)果進行求和,其公式可表示為:
其中:U表示該層最終的輸出矩陣,U∈RH×W×C;X表示對應(yīng)層輸入特征矩陣,表示由X轉(zhuǎn)為U的卷積操作,代表一個卷積核,輸入一個通道上的空間特征,它學(xué)習(xí)特征空間關(guān)系,但由于對各個通道的卷積結(jié)果是直接進行相加操作,所以通道特征關(guān)系與卷積核學(xué)習(xí)到的空間關(guān)系混合在一起。這種傳統(tǒng)的卷積操作只是實現(xiàn)對一個局部區(qū)域空間上的特征融合,并沒有實現(xiàn)通道間的特征融合,但每個通道的重要程度不同,有的通道更有用,有的通道則不太有用。
為了解決上述傳統(tǒng)卷積沒有利用特征圖通道信息的問題,Momenta 公司的Hu 等[20]提出了一種深度卷積神經(jīng)網(wǎng)絡(luò)壓縮和激勵網(wǎng)絡(luò)(Squeeze-and-Excitation Network,SENet),其主要創(chuàng)新為壓縮-激勵(Squeeze-and-Excitation,SE)模塊,總體結(jié)構(gòu)如圖5 所示,主要包括壓縮和激勵兩個操作。SE 模塊利用反向傳播來學(xué)習(xí)每個特征通道的權(quán)重系數(shù),這個權(quán)重系數(shù)代表著該通道的重要程度,然后依照這個權(quán)重系數(shù)提取通道的特征信息,實現(xiàn)通道間的特征融合,從而提升網(wǎng)絡(luò)的性能。
圖5 SE模塊的總體結(jié)構(gòu)Fig.5 Overall structure of SE module
首先是壓縮操作,為了使網(wǎng)絡(luò)模型學(xué)習(xí)特征通道的信息,通過壓縮每一個特征通道將其轉(zhuǎn)化為實數(shù),利用這個實數(shù)來代表該實數(shù)所對應(yīng)的的特征通道的全局分布。壓縮操作輸出的實數(shù)數(shù)量與輸入的特征通道數(shù)量相同。這個操作即為圖5中的Fsq(?),采用全局平均池化(Global AvgPooling,GAP)來實現(xiàn),計算公式為:
其中:Z為壓縮操作得到的結(jié)果,W、H為輸入特征的尺寸,C為輸入特征的通道數(shù),uc(i,j)為輸入特征第c通道中第i行第j列的值。
壓縮操作得到了全局描述特征,接下來為了學(xué)習(xí)到多個通道之間的非線性關(guān)系,降低模型復(fù)雜度以及提升泛化能力,SENet 提出激勵操作,采用包含兩個全連接(Fully Connected,F(xiàn)C)層的結(jié)構(gòu),其中第1個FC層起降維作用,第2個FC層恢復(fù)原始的維度。這個操作即為圖4中的Fex(?,W),計算公式為:
其中δ和σ分別代表激活函數(shù)ReLU和sigmoid;W1∈分別為兩個FC 層的權(quán)值矩陣;r為FC 層層數(shù),文中該值為16。
最后將壓縮和激勵兩個操作學(xué)習(xí)到的各個通道的激活值S乘以U的原始特征,即圖5中的Fscale(?,?)操作,計算公式為:
SE 模塊讓模型可以更加關(guān)注信息量最大的通道特征,而抑制那些不重要的通道特征,實現(xiàn)對一個局部區(qū)域通道上的特征融合。
DenseNet 通過密集連接,充分利用每一層的圖像特征信息,進一步減輕梯度消失的問題,有效抑制了訓(xùn)練過程中過擬合現(xiàn)象。與ResNet 相比,DenseNet 可以以更少的訓(xùn)練參數(shù)達(dá)到更優(yōu)的結(jié)果[19,21],所以本文使用的基礎(chǔ)網(wǎng)絡(luò)模型為訓(xùn)練參數(shù)數(shù)量較少的DenseNet121,訓(xùn)參數(shù)總量遠(yuǎn)遠(yuǎn)少于ResNet18、DenseNet169、DenseNet201等,具體參數(shù)量的對比如表2所示。但是DenseNet 只是實現(xiàn)了空間上的特征融合,而SENet 的創(chuàng)新在于加入SE模塊,進而使網(wǎng)絡(luò)可以學(xué)習(xí)通道之間的關(guān)系和不同通道特征的重要程度。
表2 不同網(wǎng)絡(luò)模型的訓(xùn)練參數(shù)數(shù)量Tab.2 The number of training parameters of different network models
本文借鑒SENet 的思想,在DenseNet121 中引入壓縮和激勵操作,提出了一種融合了空間特征和通道特征的乳腺癌病理圖像分類網(wǎng)絡(luò)(BCSCNet),使得網(wǎng)絡(luò)既可以實現(xiàn)空間上的特征融合也可以學(xué)習(xí)到特征通道之間的關(guān)系,進一步提高網(wǎng)絡(luò)的性能。根據(jù)SE 模塊的插入位置和插入數(shù)量,設(shè)計了3 種不同的BCSCNet 網(wǎng)絡(luò)模型,分別為BCSCNetⅠ、BCSCNetⅡ和BCSCNetⅢ,并通過實驗分析找出對乳腺癌組織病理學(xué)圖像分類精度最高的一種。SE模塊插入的位置如圖6所示。
圖6 不同網(wǎng)絡(luò)模型SE模塊的插入位置Fig.6 SE module insertion locations for different network models
3 種網(wǎng)絡(luò)模型的詳細(xì)架構(gòu)如表3 所示,這3 種不同網(wǎng)絡(luò)模型的區(qū)別在于SE 模塊處于網(wǎng)絡(luò)中的位置和網(wǎng)絡(luò)中嵌入的SE模塊的數(shù)量。
表3 三種BCSCNet模型的詳細(xì)網(wǎng)絡(luò)架構(gòu)Tab.3 Detailed network architecture for three kinds of BCSCNet model
從表3 可以看出,幾種BCSCNet 具體架構(gòu)的詳細(xì)差異。BCSCNetⅠ主要由4 個稠密塊、3 個過渡層和3 個SE 模塊組成,SE模塊嵌入在過渡層之后,其中稠密塊1、稠密塊、稠密塊3、稠密塊4 分別由6、12、24、16 個子模塊構(gòu)成。BCSCNetⅡ的SE 模塊位于稠密塊的子模塊之后,主要由4 個稠密塊、3 個過渡層和58個SE模塊組成,其中稠密塊、過渡層和SE模塊的結(jié)構(gòu)和BCSCNetⅠ一樣,不同的只有SE 模塊的位置和數(shù)量。BCSCNetⅢ是上述兩個類型的結(jié)合,將SE 模塊嵌入到稠密塊的子模塊和過渡層的后面,總共有61個SE模塊,除了SE模塊的位置和數(shù)量之外,其他結(jié)構(gòu)和另外兩個類型一樣。
以BCSCNetⅠ為例,數(shù)據(jù)從輸入網(wǎng)絡(luò)到輸出的步驟為:
1)首先經(jīng)過卷積核為7×7,步長為2的卷積層;
2)下一層是3×3,步長為2的平均池化層;
3)下一層是稠密塊1,其子模塊為1×1 卷積和3×3 卷積組成,子模塊總共有6個;
4)下一層是過渡層,由一個1×1卷積層、池化窗口為2×2,步長為2 的平局池化層和一個SE 模塊組成,所有過渡層結(jié)構(gòu)一樣;
5)下一層是稠密塊2,子模塊結(jié)構(gòu)不變,數(shù)量為12個;
6)下一層是過渡層;
7)下一層是稠密塊3,子模塊結(jié)構(gòu)不變,數(shù)量為24個;
8)下一層是過渡層;
9)下一層是稠密塊4,子模塊結(jié)構(gòu)仍不變,數(shù)量為16個;
10)最后一層是由GAP 和FC 構(gòu)成的分類層,F(xiàn)C 的激活函數(shù)為softmax,輸出個數(shù)根據(jù)二分類還是多分類設(shè)置2或者8。
實驗使用的計算機配置為:64 位的Windows 10 操作系統(tǒng),CPU 為Intel Core i5-9400F,內(nèi)存64 GB,GPU 加速顯卡是NVIDIA GeForce RTX 2080 Ti,深度學(xué)習(xí)框架使用的是TensorFlow2.3。由于本實驗是為了對乳腺癌組織病理學(xué)圖像進行分類,使用的評價指標(biāo)有準(zhǔn)確率(Accuracy)、精準(zhǔn)率(Precision)、查全率(Recall)和F1值(F1 Score)。
準(zhǔn)確率為:
精準(zhǔn)率為:
召回率為:
其中:TP(True Positive)代表真正例,即被正確預(yù)測為正例的個數(shù);FN(False Negative)代表假負(fù)例,即被錯誤預(yù)測為負(fù)例的個數(shù);FP(False Positive)代表假正例,即被錯預(yù)測為正例的個數(shù);TN(True Negative)代表真負(fù)例,即被正確預(yù)測為負(fù)例的個數(shù)。
F1值為:
為了驗證數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強對分類結(jié)果的影響,本文利用BCSCNetⅠ來進行實驗對比。首先將沒有經(jīng)過處理的原始數(shù)據(jù)集BreaKHis 輸入到BCSCNetⅠ進行訓(xùn)練和測試,得到未經(jīng)數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強的實驗結(jié)果。然后再對原始數(shù)據(jù)進行預(yù)處理,為了消除數(shù)據(jù)集中數(shù)據(jù)不均衡的影響,選取BreaKHis 數(shù)據(jù)集中2 000張良性腫瘤病理圖像和2 000張惡性腫瘤病理圖像作為原始數(shù)據(jù)集,然后按照訓(xùn)練集、驗證集、測試集7∶1∶2 的比例隨機進行劃分,并進行顏色歸一化,接著對劃分好的訓(xùn)練集使用數(shù)據(jù)增強得到訓(xùn)練數(shù)據(jù)。在此部分的實驗都只做了乳腺的良惡性二分類,使用Adam 優(yōu)化算法更新網(wǎng)絡(luò)權(quán)重參數(shù),學(xué)習(xí)率為0.001,批大小為16,輸入尺寸為224×224,迭代次數(shù)為500。
由圖7 可知,如果在模型訓(xùn)練過程中沒有對原始數(shù)據(jù)進行數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強,最終展示的實驗結(jié)果是:在訓(xùn)練集上的準(zhǔn)確率很高,但是驗證集上的準(zhǔn)確率卻比較低,并且會一直波動,不太穩(wěn)定,即導(dǎo)致過擬合,最終在測試集上的平均準(zhǔn)確率只有95.79%。然而,當(dāng)原始數(shù)據(jù)經(jīng)過數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強之后,不僅在訓(xùn)練集上達(dá)到了很高的準(zhǔn)確率,在驗證集上亦是如此,并且測試集的準(zhǔn)確率為98.92%。所以,由上述實驗可知,在模型訓(xùn)練過程中對乳腺癌組織病理學(xué)圖像進行數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強可以避免過擬合,提高了識別準(zhǔn)確率。
圖7 訓(xùn)練和驗證過程中的準(zhǔn)確率變化曲線Fig.7 Accuracy variation curves during training and validation
在上述驗證數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強的有效性實驗中,所采用的優(yōu)化方法、學(xué)習(xí)率和迭代次數(shù)等參數(shù)只是一個初始選擇的設(shè)置,可能并不是最適合模型的參數(shù)。因此,為了找到最優(yōu)的參數(shù)設(shè)置,本文在BCSCNetⅠ模型上根據(jù)所設(shè)置的參數(shù)進行不同的實驗對比,得到的結(jié)果如表4 所示。在其他參數(shù)設(shè)置都一樣的情況下,分別使用不同的優(yōu)化方法進行實驗,實驗結(jié)果表明,相較于隨機梯度下降(Stochastic Gradient Descent,SGD),使用Adam 優(yōu)化方法得到的平均準(zhǔn)確率更高,并且在訓(xùn)練過程中收斂速度也是Adam 比較快。接著將其他參數(shù)固定不變,調(diào)整圖像大小,得到當(dāng)輸入圖像大小為224×224 時,模型準(zhǔn)確率最高;然后再通過實驗對比,分別得到最優(yōu)的批大小為32,最優(yōu)的學(xué)習(xí)率為0.000 1,最優(yōu)迭代次數(shù)為500。當(dāng)模型BCSCNetⅠ使用最優(yōu)的參數(shù)設(shè)置時,二分類的平均準(zhǔn)確率可以達(dá)到99.48%。
表4 調(diào)整不同參數(shù)得到的平均準(zhǔn)確率Tab.4 Average accuracy obtained by adjusting different parameters
然后,將本文提出的三種模型BCSCNetⅠ、BCSCNetⅡ和BCSCNetⅢ的參數(shù)設(shè)置為上述實驗得到的最優(yōu)參數(shù),進行二分類和多分類實驗。在二分類實驗中,隨機選取了BreaKHis數(shù)據(jù)集中2 000 張良性病理圖像和2 000 張惡性病理圖像,并對選取的圖像進行隨機劃分,然后進行數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強。在多分類實驗中,從BreaKHis 數(shù)據(jù)集的每一種亞型中隨機抽取400 張圖像作為多分類實驗數(shù)據(jù),同樣對選取的圖像進行隨機劃分,然后進行數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強。以上數(shù)據(jù)都按照訓(xùn)練集、驗證集、測試集7∶1∶2 的比例隨機進行劃分。實驗結(jié)果如表5 所示。二分類:模型BCSCNetⅠ的準(zhǔn)確率為98.81%~99.36%,BCSCNetⅡ的準(zhǔn)確率為98.06%~99.32%,BCSCNet Ⅲ的準(zhǔn)確率為99.05%~99.89%;多分類:模型BCSCNetⅠ的準(zhǔn)確率為90.81%~92.33%,BCSCNetⅡ的準(zhǔn)確率為91.29%~93.58%,BCSCNet Ⅲ的準(zhǔn)確率為93.06%~95.72%。同時,還與DenseNet121進行實驗對比,實驗結(jié)果表明原始的DenseNet121 對乳腺癌組織病理學(xué)圖像的分類準(zhǔn)確率并不高,二分類準(zhǔn)確率為90.01%~91.91%,多分類準(zhǔn)確率僅為79.19%~83.30%,明顯低于本文方法。
表5 不同模型對于不同放大倍數(shù)圖像的分類準(zhǔn)確率Tab.5 Classification accuracies of different models for images with different magnifications
由實驗結(jié)果可知,本文提出的乳腺病理圖像分類模型BCSCNet,由于融合了空間和通道的特征信息,所以表現(xiàn)出來的分類準(zhǔn)確率高于沒有插入SE 模塊的原始DenseNet121;并且,因為BCSCNetⅢ不止將SE 模塊插入到DenseNet 的過渡層中,還插入到稠密塊中,因此BCSCNetⅢ可以把稠密塊和過渡層的通道特征信息與空間特征信息融合,學(xué)習(xí)到了更多的圖像特征,這使得該網(wǎng)絡(luò)模型的性能比其他兩個網(wǎng)絡(luò)模型的性能更好。由表2 可知,加入SE 模塊只增加較少的計算量,不會對網(wǎng)絡(luò)的訓(xùn)練時間造成太大的影響。
以上實驗表明,本文提出的乳腺癌分類模型BCSCNetⅢ通過調(diào)整參數(shù),得到適合模型的最優(yōu)參數(shù)設(shè)置,可以對乳腺組織病理圖像進行高精度分類,在良惡性二分類和8 種亞型多分類都達(dá)到了很高的準(zhǔn)確率,所以本文在乳腺癌分類算法中采用的BCSCNet網(wǎng)絡(luò)模型為BCSCNetⅢ。
為了證明本文方法的優(yōu)越性,將BCSCNet 與其他乳腺癌組織病理學(xué)圖像分類方法進行二分類和多分類實驗的對比。在以下的實驗分析中,BCSCNet 與其他分類方法所使用的數(shù)據(jù)集都為乳腺癌組織病理學(xué)圖像數(shù)據(jù)集BreaKHis。
3.3.1 二分類
二分類實驗的對比結(jié)果如表6 所示。明濤等[22]提出多尺度通道重校準(zhǔn)模型,利用ResNet 設(shè)計了一種卷積神經(jīng)網(wǎng)絡(luò)msSE-ResNet,該實驗在公開數(shù)據(jù)集BreaKHis 上開展,對乳腺良惡性二分類達(dá)到88.87%的準(zhǔn)確率,并且可以對不同放大倍數(shù)下獲取的病理圖像具有較好的魯棒性;Spanhol等[12]利用AlexNet提出了一種用于乳腺病理圖像二分類方法,識別準(zhǔn)確率最高可以達(dá)到90%;Wei 等[14]提出了一種先進的數(shù)據(jù)增強方法和一種基于深度卷積神經(jīng)網(wǎng)絡(luò)GoogleNet 的新型乳腺癌組織病理學(xué)圖像分類方法(BiCNN),該方法具有較高的分類準(zhǔn)確率(97%左右);Han 等[23]提出一種新的基于類結(jié)構(gòu)的深度卷積神經(jīng)網(wǎng)絡(luò)(Class Structure-based Deep Convolutional Neural Network,CSDCNN)的乳腺病理圖像識別方法,在二分類中實驗中具有95.7%~97.1%的準(zhǔn)確率;Bardou等[24]設(shè)計了一種CNN 拓?fù)浣Y(jié)構(gòu)并利用數(shù)據(jù)增強進行二分類實驗,最終獲得的分類準(zhǔn)確率為96.15%~98.33%;Jiang等[15]提出了一種新的學(xué)習(xí)速率調(diào)度器,并且利用小型SE-ResNet 模塊設(shè)計了一種新的用于乳腺癌組織病理學(xué)圖像分類的CNN 架構(gòu),命名為乳腺癌組織病理學(xué)圖像分類網(wǎng)絡(luò)(BHCNet),該方法對乳腺良性惡性的分類準(zhǔn)確率高達(dá)98.87%~99.34%。
表6 BCSCNetⅢ和其他方法的二分類準(zhǔn)確率對比 單位:%Tab.6 Binary classification accuracy comparison of BCSCNetⅢand other methods unit:%
同時,為了更加全面地對網(wǎng)絡(luò)模型進行評估,將本文方法與上述性能較好的網(wǎng)絡(luò)模型進行多種評價指標(biāo)的對比,具體對比結(jié)果如表7 所示。二分類的實驗結(jié)果表明,本文提出的模型BCSCNetⅢ相較于其他乳腺癌組織病理圖像分類方法的分類準(zhǔn)確率更高,并且通過對比F1 分?jǐn)?shù)等其他指標(biāo),證明BCSCNetⅢ的整體性能優(yōu)于其他方法。
表7 多種分類方法在不同分類任務(wù)中的評估結(jié)果對比 單位:%Tab.7 Comparison of evaluation results of multiple classification methods in different classification tasks unit:%
3.3.2 多分類
目前對乳腺病理圖像進行多分類的研究較少,且識別準(zhǔn)確率不高:Chan 等[11]利用支持向量機將乳腺癌腫瘤劃分為良性和惡性的8個亞型,40倍放大因子的準(zhǔn)確率僅為55.6%;詹翔等[13]基于改進Inception-V3 提出的病理圖像分類方法在二分類的識別準(zhǔn)確率達(dá)到了97%,但在多分類上只有89%;Han等[23]提出的CSDCNN 不止在二分類上表現(xiàn)出色,在多分類實驗上也取得了顯著的性能,達(dá)到平均93.2%的準(zhǔn)確率;Bardou等[24]設(shè)計的CNN 拓?fù)浣Y(jié)構(gòu)在多分類實驗中同樣表現(xiàn)出較好的性能,準(zhǔn)確率為92.8%~93.9%;Jiang 等[15]利用小型SEResNet 模塊設(shè)計的乳腺癌組織病理學(xué)圖像分類網(wǎng)絡(luò)BHCNet進行多分類實驗,在放大倍數(shù)為40、100、200、400 的圖像數(shù)據(jù)上,獲得的正確率分別為93.74%、93.81%、92.22%、90.66%。同樣,在多分類實驗中,除了將以上分類方法得到的分類準(zhǔn)確率與本文方法進行對比,也將F1分?jǐn)?shù)等其他指標(biāo)加入到模型的評價指標(biāo)中,詳細(xì)對比結(jié)果可由表8得知。
表8 BCSCNetⅢ和其他方法的多分類準(zhǔn)確率對比 單位:%Tab.8 Multi-class classification accuracy comparison of BCSCNetⅢand other methods unit:%
以上實驗結(jié)果與分析證明,無論是對于乳腺癌組織病理圖像的二分類任務(wù)還是多分類任務(wù),本文提出的乳腺病理圖像分類模型BCSCNetⅢ的整體性能都要優(yōu)于BHCNet 等其他方法。由表2 可知,由于本文所采用的基礎(chǔ)網(wǎng)絡(luò)是DenseNet,相較于ResNet 和GoogleNet 等,網(wǎng)絡(luò)參數(shù)降低了不少,并且SE模塊的加入也沒有給模型帶來太多的參數(shù)負(fù)擔(dān),因此,BCSCNetⅢ只需增加少量的訓(xùn)練參數(shù)就可以給最終結(jié)果帶來較大的增益。
本文設(shè)計了一種融合圖像的空間特征信息和通道特征信息的分類模型BCSCNet,并提出了一種乳腺癌組織病理學(xué)圖像分類方法,該方法可以實現(xiàn)對乳腺癌組織病理學(xué)圖像的高精度分類,包括乳腺良惡性二分類和乳腺亞型多分類。BCSCNet 基于CNN 模型DenseNet 和SENet,利用SE 模塊學(xué)習(xí)DenseNet 模型中稠密塊和過渡層的通道信息,并將學(xué)習(xí)到的通道特征信息與稠密塊和過渡層所學(xué)習(xí)的空間特征信息融合,實現(xiàn)圖像空間特征和通道特征的融合。根據(jù)SE模塊插入的數(shù)量和位置不同,模型所學(xué)習(xí)的通道信息不同,可以將BCSCNet 分為BCSCNetⅠ、BCSCNetⅡ和BCSCNetⅢ三種。在此方法中,還使用了一種顏色歸一化方法和不同的數(shù)據(jù)增強操作處理乳腺癌組織病理圖像數(shù)據(jù)庫BreaKHis,并通過實驗驗證了通過數(shù)據(jù)預(yù)處理和數(shù)據(jù)增強處理數(shù)據(jù)可以進一步避免模型訓(xùn)練過程中的過擬合以及提升分類性能。最終的實驗結(jié)果表明,在本文提出的三種BCSCNet 網(wǎng)絡(luò)模型中,BCSCNetⅢ表現(xiàn)的分類性能最好,二分類任務(wù)的識別準(zhǔn)確率在99.05%~99.89%,多分類任務(wù)的識別準(zhǔn)確率在93.06%~95.72%,并且通過與其他乳腺癌組織病理學(xué)圖像分類模型進行對比分析,證明了本文所提出的乳腺癌組織病理學(xué)圖像分類模型BCSCNet 的分類性能優(yōu)于其他方法。在未來的工作中,可以研究不同設(shè)備觀察到的病理圖像,以及病理圖像中存在細(xì)胞重疊的情況,還可以通過目標(biāo)定位將病變的主要位置標(biāo)記出來,使計算機輔助診斷可以滿足臨床應(yīng)用的需求,更加有助于乳腺癌的治療。