武明虎,馬旭茹,劉 敏
(湖北工業大學電子與電氣工程學院,湖北 武漢 430068)
2015年中國抗癌雜志指出:乳腺癌是威脅女性健康的頭號殺手[1]。病理診斷是判斷乳腺病變程度的可靠手段,但僅僅依賴病理醫生的人工閱片,無法實現快速、高效的診斷[2]。利用數字圖像處理技術可將蘇木精和伊紅染色的病理組織切片制作成數字圖像,這使得利用計算機進行輔助診斷成為可能。
計算機輔助診斷的宗旨是利用計算機的定量分析、客觀判斷為病理專家提供可靠的參考。目前,計算機輔助診斷可分為兩個階段:基于特征工程和傳統機器學習算法的乳腺病理圖像分類階段和基于卷積網絡的全自動分類階段。
基于特征工程和傳統機器學習算法的乳腺病理圖像分類階段,采用人工提取特征的方法,基于這些特征訓練支持向量機、隨機森林等分類器。該方法中,分類器的性能依賴于前期的特征提取,然而人工提取特征對專業知識要求較高、過程繁瑣,且深層特征提取困難。Kowal等人[3]利用四種聚類算法提取特征來訓練分類器,結果表明特征提取算法的選擇、特征的選取等因素都會對后期的分類造成影響。George等人[4]運用全自動細胞核分割的方法提取特征并訓練分類器,結果表明前期對細胞核的分割效果嚴重影響后期診斷的準確性。Spanhol等人[5]采用局部二值模式等方法提取特征并訓練多種分類器,最終實驗精確度為80%~85%,仍然沒有擺脫繁瑣的人工提取特征操作,且分類準確率不高。
相比于傳統的分類方法,基于卷積網絡的全自動分類方法擺脫了人工設計特征的繁瑣過程,利用反向傳播算法不斷優化網絡模型,克服了傳統分類方法的缺點。Aresta等人[6]在2018年的乳腺癌病理圖片識別挑戰賽中使用卷積神經網絡以優秀的成績完成分類任務,但在對高分辨率圖片的處理上仍存在局限性。Baris等人[7]采用級聯全連接神經網絡,網絡分類準確率有所提高,但同時增加了網絡的復雜度和計算成本。對于高分辨率的醫學圖像,一般的卷積神經網絡在提取深層特征方面仍具有局限性。相比于一般神經網絡模型,AlexNet模型對高分辨率圖像的細化特征具有較高的敏感性。2016年Spanhol等人[8]提取多種尺度的圖像塊來擴充原始數據集并訓練縮減結構后的AlexNet網絡,達到了88.6%的識別準確率。2017年Spanhol等人[9]另辟蹊徑,分別對來自AlexNet的三個全連接層的特征進行融合,并使用SoftMax函數根據融合特征進行分類,網絡性能相對于其2016年的研究而言并沒有明顯的改善。2018年鄭群花等人[10]使用AlexNet網絡對乳腺病理圖像進行細分類,采用遷移學習與數據增強的方法解決過擬合問題,付出了較大的時間代價。Deniz等人[11]使用遷移學習的方法初始化AlexNet網絡,并融合VGG16與AlexNet提取的深度特征對AlexNet進一步微調,識別準確率相比于傳統方法具有顯著的提升。然而,以上基于AlexNet網絡的分類方法都忽略了網絡中間層會使數據產生一定的偏移進而導致原始數據分布發生改變的問題。
由于醫學圖像標注成本高、獲取困難,采用數據增強方法擴充數據集以保證網絡能夠進行充分學習。采用以AlexNet架構為基礎框架的卷積網絡模型對良性和惡性乳腺病理圖像進行分類。針對AlexNet網絡的中間層會使數據產生一定的偏移而導致原始數據分布發生改變的問題,引入批量歸一化算法,減小模型中間層的偏移量,加速網絡收斂,提高分類準確率。考慮到全連接層引入的大量參數會大大增加網絡過擬合的可能性,采用Dropout方法在訓練過程中隨機丟失一些神經元,提高模型對真實數據的擬合能力,使診斷結果具有更高的參考價值。
采用卷積神經網絡完成乳腺病理圖像的自動分類任務。模型總體框架如圖1所示,可分為訓練階段和測試階段,神經網絡在經過擴充的訓練集上進行訓練,最終在測試集上對網絡的識別性能進行評估。

圖1 利用優化的AlexNet的乳腺病理圖像分類流程圖
提高模型泛化性的最好辦法是使用大規模數據進行訓練。然而,醫學病理圖像制作過程繁瑣,標注成本高,獲取困難。在深度學習中通常采用數據增強[12]的方法來解決數據不足的問題。
采用幾何變換的方法進行數據增強,利用Kears自帶的數據增強函數對BreaKHis數據庫中的圖片進行平移、縮放、旋轉、水平翻轉、垂直翻轉等操作,擴充每個批次的數據量以減輕數據量不足帶來的影響。圖2展示了數據增強的結果。

圖2 幾何變換結果
AlexNet是一個被廣泛應用于圖像分類的卷積神經網絡模型,AlexNet網絡結構如圖3所示。網絡總共包含8層結構,其中5個卷積層(標記為Conv)、3個全連接層(標記為FC)。使用線性整流函數(ReLU)作為激活函數增加網絡的非線性性。整個網絡包含三個池化層(標記為MaxPool),分別位于第一個、第二個和第五個卷積層之后,池化層的輸出數據尺寸為其輸入的一半。第三個卷積層和第四個卷積層保持輸入輸出尺寸相同。最后一個卷積層輸出的特征值經過扁平化處理后進入全連接層,其中前兩個全連接層各有4096個神經元。利用SoftMax函數處理最后一個全連接層生成特征向量,并用概率向量表示類別的最終預測結果。

圖3 AlexNet模型結構
深度網絡的訓練是一個復雜的過程,只要網絡的前幾層發生微小的改變,那么這種微小的偏移就會被后幾層累積放大下去。神經網絡學習的本質也就是學習數據分布[13],一旦網絡某一層的輸入數據的分布發生改變,那么這一層網絡就需要去適應學習這個新的數據分布。如果訓練過程中,訓練數據的分布一直在發生變化,將會影響網絡的訓練速度。文獻[13]中提出的批量歸一化算法(Batch Normalize簡稱BN)能夠減小ReLU函數導致的數據偏移,解決訓練過程中原始數據分布發生改變的問題,從而加速網絡收斂,改善網絡性能。BN算法通過計算一個小批量中的均值與方差來實現特征歸一化。BN算法的詳細過程見表1。
βi=E[x(i)]
由于卷積層提取的特征值有正有負,負值特征會被ReLU函數丟棄,導致經過ReLU激活函數的特征值產生一定的偏移量,這種偏移會隨著網絡層的加深而被不斷放大,最終會影響網絡做出正確的判斷。因此,選擇將BN層設置在卷積層和激活函數之間,利用BN算法對輸入激活函數的特征進行歸一化處理,減小引起偏移的量,從而加速網絡收斂,提高網絡的泛化能力。
本實驗在圖3所示AlexNet網絡基礎架構中做了一些改善。圖4所示為引入BN后的卷積層結構單元,通過第一個和第二個卷積濾波器后得到的特征向量,經過BN算法進行歸一化處理后再進入激活單元。用圖4中的結構單元替換AlexNet網絡的原始卷積層結構單元。根據具體的數據集特點設置合適的批次大小(batch_size),將會有助于提高識別準確度,在本實驗中設置batch_size為32。

圖4 引入BN后的卷積層結構單元
對于AlexNet網絡,輸入圖片尺寸不宜過大,在實驗中將460×700像素的乳腺病理圖像重新縮放到224×224。在訓練過程中卷積層使用正態分布進行初始化,對后三個卷積層進行L2正則約束,并對輸入特征產生0.0001的懲罰。選擇隨機梯度下降作為網絡的優化器,學習率(learning rate)設置為0.01。考慮到AlexNet網絡的全連接層會引入大量的參數,大大增加了過擬合的風險。因此,在網絡的前兩個全連接層后使用Dropout。在網絡的訓練過程中,Dropout可使網絡以一定的概率隨機“刪除”一些神經元。由于每次進行權值更新時,節點都是以一定概率隨機出現,因此不能保證每2個隱含節點每次都同時出現,這樣權值的更新不再依賴于有固定關系隱含節點的共同作用,阻止了某些特征僅在其它特定特征下才有效果的情況。在該實驗中設置60%的丟失率,可以使網絡達到很好的結果。
BreaKHis數據集[5]收集了來自82名患者的乳腺病理圖像。首先獲取組織樣本,利用蘇木精和伊紅染色法制作組織切片,最后在電子顯微鏡的幫助下生成數字圖像。每個病例的最終診斷結果都是由經驗豐富的病理學家提供,并通過免疫組織化學分析等補充檢查確認。使用不同的放大因子(40×、100×、200×、400×)制作7909個臨床代表性顯微圖像,其中良性樣本2480個,惡性樣本5429個。圖像采用三通道RGB無壓縮的便攜式圖形格式進行保存,尺寸為460×700像素,沒有經過歸一化和顏色標準化處理。數據集的圖像分布見表2。

表2 BreaKHis數據集中不同放大系數的圖像分布
在實驗過程中,將BreaKHis數據集分成兩個部分:70%作為訓練集對網絡進行訓練,30%作為測試集來驗證網絡性能的優異。
采用識別準確率對網絡的性能進行評估。用Nr表示正確分類的圖片數量,Na表示數據集中病理圖片的總數,那么基于圖像水平的識別率(Image_level_Rate)可以由下式表示:
實驗的硬件配置為Lenovo ThinkStation,Intel i7 CPU。在python語言的編譯環境下,使用Keras框架完成實驗仿真。
為了驗證基于幾何變換的數據增強方法擴充高分辨率醫學圖像的有效性,分別采用放大倍數為40×的原始數據集和擴充后的數據集訓練改進后的AlexNet網絡,并采用分類準確率對網絡性能進行評估。
圖5展示了訓練過程中AlexNet網絡在未使用和使用數據增強技術兩種情況下的識別準確率變化曲線。網絡在測試集上的評估結果如表3所示。未使用數據增強技術的原始數據集樣本少,網絡在40個epoch之前一直處于不斷學習的狀態,擬合效果較差,測試集上的準確率只有75.7%。而圖5(b)中展示的訓練過程,由于使用了數據增強擴充數據集使得網絡能夠在大規模數據集進行上訓練,在10個epoch之后就開始收斂,對原始數據的擬合效果較好,測試集上的準確率達到88.8%。實驗結果表明了數據增強后的數據集可保證網絡進行快速、充分的學習,從而提高模型對高分辨率醫學病理圖像的分類準確性,使最終的輔助診斷結果更可靠。

(a)未使用數據增強

(b)使用數據增強圖5 準確率曲線

表3 使用數據增強前后模型的識別準確率 %
為了評估改進后的AlexNet網絡對良性乳腺腫瘤和惡性乳腺腫瘤識別性能,選擇文獻[5]、文獻[9]的實驗結果作為對照組,它們都使用了BreakHis數據集。文獻[5]中使用了多種特征提取器搭配不同的分類器,其中使用無參數閾值鄰接統計(Parameter-Free Threshold Adjacency Statistic,PFTAS)算法提取特征,采用二次線性分析(Quadratic Linear Analysis,QDA)作為分類器的方案得到的分類效果最佳。文獻[9]中選用AlexNet網絡作為基本網絡框架,為了保證實驗的嚴謹性,選取文獻[9]中來自第二個全連接層的深度特征(原文中為f7)為輸入特征的實驗組作為參照(此結構與本方案的AlexNet網絡的基本結構相同,具有一定的對比性)。
實驗結果見表4,引入批量歸一化的AlexNet網絡識別準確率與文獻[5]的傳統方法、文獻[9]的AlexNet網絡相比分別提高了5.96%、6.09%,驗證了筆者提出的改進方法的有效性。實驗結果表明,批量歸一化能夠有效減小ReLU函數產生的偏移量,解決了AlexNet網絡中間層數據分布發生改變的問題,增強了模型的泛化能力。
對于樣本較少的高分辨率醫學數據集,采用數據增強方法擴充數據集,從根本上解決了病理圖像標記樣本少而帶來的過擬合問題。采用了以AlexNet為架構的卷積網絡模型對良性、惡性腫瘤進行全自動的分類。為了解決AlexNet網絡中間層改變數據分布的問題,引入了批量歸一化算法,減小模型中間層的偏移量,使模型能夠快速、高效地處理高分辨率乳腺病理圖像。實驗結果表明,改進后的AlexNet的分類準確率較原有方法提高了6%,具有較好的魯棒性和泛化性。本實驗在最終的分類類別方面有待進一步細化,在將來的工作中可考慮結合更優秀的數據增強方法對乳腺病理圖像進行細分類。