高雷鳴,肖滿生,向華政
(湖南工業大學 計算機學院,湖南 株洲 412000)
肺癌是現如今人類生命的危害之一,如果能在早期發現并醫治能大大提升肺癌病人的生存率。電子斷面檢測(CT)被用作肺癌診斷的篩查工具,有助于肺癌早期的診斷,但是分析海量肺部CT圖像信息需要醫生付出大量努力,而且早期肺部腫瘤特征不明顯,醫生在分析影像局部微小特征時會產生遲疑,無法對病人病情做出精確判斷。同時醫生的個人閱歷作用于整個的診斷流程,缺少系統化的規范,不同的醫生對于同一幅肺部CT圖像可能會產生分歧,所以這種診斷模式必定存在主觀成分的干擾,快速準確地判斷肺部是否有腫瘤和腫瘤良性還是惡性,能夠減少前期繁瑣的檢查,防止不需要的手術,減輕患者心理和身體的痛苦,還能夠提升病人的存活率。因此,實現肺部腫瘤圖像的自動檢測是一項非常具有研究價值和難度的工作。
當前,主要在兩方面實現對肺部腫瘤圖像分類。第一是基于基礎學習策略的方法,采用小波分析(WT)、非參數局部紋理特征描述子等特征提取方法和核方法、多決策樹、加權稀疏編碼算法等分類方法。如F.Han[1]等人對伽柏紋理、邊緣特征和非參數局部紋理特征描述子進行提取來訓練稀疏穩健分類器進行肺部腫瘤圖像的分類。采用基于基礎學習策略的學習方法,無法自動進行特征提取且過程復雜,對專業領域的條件需求過高,而且由于算法局限性,對細微特征的提取方面也存在一定的難度,嚴重限制了對肺部腫瘤圖像分類。第二是利用卷積神經網絡CNN進行識別。深度學習是基礎學習更深領域的研究,其中,CNN模型在人工智能如生物身份識別[2]、人機交互識別[3-4]、醫學影像分析[5]等領域都獲得了突出的成就,該網絡可以直接對原始圖像進行處理,自動學習相應的有效特征,避免了傳統分類方法的繁瑣性和限制性。
現如今,卷積神經網絡已普遍運用在醫學圖像分類。文獻[6]利用噪聲數據訓練編碼器獲取肺部腫瘤圖像的特征,訓練泛化性能強的編碼器,對腫瘤圖像做出良性和惡性判斷,比淺層特征提取方法取得了更高的魯棒特征;文獻[7]采用多標準特征提取方法訓練網絡,解決了單標準特征提取的單一性和局限性,獲得了更高的分類性能;文獻[8]提出一種處理海量數據的模型,對網絡內部進行升級,在網絡中加入隱層,使模型能夠提取更具張力的特性,在面對海量圖像數據時比現有方法具備更高的性能。然而,由于醫學CT圖像的樣本注釋受限于匱乏的醫學專家,獲取海量注釋樣本難以實現,從而導致缺少肺部訓練數據集,卷積神經網絡依然存在無法提取更有目的性的深層特征和擬合難題。
面對上述難題,本文將樣本擴充、遷移學習應用于卷積神經網絡模型,并在網絡中引入批量歸一化層,輸出層通過三層全連接層和softmax回歸進行分類,解決特征提取的繁瑣性和網絡微數據過擬合性,從而提高肺部腫瘤圖像的分類精度。
卷積神經網絡是由神經認知機模型[9]進化而來的。現如今,卷積神經網絡已發展成為一個龐大的多層神經網絡,對圖像全局特征地提取學習與分類是經過逐層來完成的。
卷積層是局部性的低層特征提取層,如圖1所示通過卷積核從左到右、從上到下的順序依次作用于原始矩陣,并將矩陣對應位置的元素相乘后想加,經過多次卷積操作得到輸入矩陣的特征圖(feature map)。卷積核矩陣的數值通過不斷訓練達到擬合。卷積計算[10]如下式:
(1)


圖1 卷積操作
池化層是對卷積層特征進行整合分析。池化層作用于相鄰的卷積層之間,用來減少樣本和數值的量,以達到簡化特征的維度、加速網絡訓練效率和避免過擬合現象的目的。池化計算公式
(2)
式中,p()表示降維函數,β表示權重參數。
全連接層是特征加權層,對特征矩陣進行向量相乘,綜合池化后的所有特征,整合出具有區分性和目的性的特征信息,結合softmax回歸達到對圖像分類的目的。
本文使用softmax回歸模型對肺部腫瘤圖像進行分類。回歸模型用假設函數lθ計算測試樣本n屬于不同種類的幾率值p(m=j|n),假設函數為:
(3)

(4)
Softmax的代價函數為:
(5)
式中,λ(λ>0)為正則化系數。I{m(i)=j}為特征函數。使用梯度法來得到式(5)最小值。
本文是對肺部腫瘤圖像微樣本進行實驗,在缺少海量實驗數據的情況下,如果使用卷積網絡訓練可能導致過擬合局面或者訓練出來的網絡缺乏泛化能力。因此本文把遷移學習[11-12]的思想應用于卷積神經網絡,使用海量ImageNet樣本對CNN網絡進行預運算,獲得有效的參數值,然后運用在肺部腫瘤數據集上進行調整學習。如式(6)和(7)所示,其中Sp是預訓練樣本區間,St是目標樣本區間。
Sp={(a1,b1),…,(am,bm)}
(6)
(7)
遷移學習可行性是因為CNN 通過多層結構完成提取特征的任務,從預訓練樣本區間提取到對目標樣本訓練有幫助的參數值,避免參數的頻繁變化,這樣網絡在訓練時就更加迅速,有效解決過度擬合局面,提高圖像分類性能。
卷積神經網絡的運算是一個極其繁瑣的過程,數據在訓練過程會發生轉換,下層輸入參數會隨著上層網絡參數的改變進行變化,這種頻繁的改變會導致神經網絡出現收斂速率過慢,或者梯度消失等無法訓練的情況。因此本文在網絡中引入批量歸一化層來解決上述問題。具體算法如下:
算法1:批處理
輸入:a:β=(a1,…,am)
輸出:規范后的網絡響應{bi=BNγ,β(ai)}




5.Return學習的參數γ和β。
本文模型如圖2所示,在每個卷積層和神經元激活函數之間引入批量歸一化層,對輸入數據首先進行預歸一化處理,代替原網絡中的局部歸一化操作,并采用ReLU作為激活函數,通過三層全連接層和Softmax分類器實現肺部腫瘤圖像的分類。

圖2 網絡結構圖
在整個網絡訓練之前,首先利用ImageNet數據集進行預訓練,代替了零基礎訓練網絡的傳統方法,本文網絡訓練的權重、偏置的默認值使用預運算好的參數,損失函數變化速率設置為0.01,將經過5000次迭代后預運算好的網絡遷移到肺部圖像上進行某種程度的調整學習。
2.1.1 改進后的網絡模型
卷積層1+池化層1。使用大小為11×11×96,間距為4的過濾器濾波操作,輸出55×55×96的特征map,然后采用下采樣尺度為3×3,間距為2的下采樣算法進行降維操作,輸出27×27×96的特征map。
卷積層2+池化層2。使用大小為5×5×256,間距為1的過濾器濾波操作,輸出27×27×256的特征map,然后采用下采樣尺度為3×3,間距為2的下采樣算法進行降維操作,輸出13×13×256的特征map。
卷積層3+卷積層4。使用大小為3×3×384,間距為1的過濾器濾波操作,輸出13×13×384的特征map,這兩層卷積層后不接池化層。
卷積層5+池化層3。使用大小為3×3×256,間距為1的過濾器濾波操作,輸出13×13×256的特征map,然后采用下采樣尺度為3×3,間距為2的下采樣算法進行降維操作,輸出6×6×256的特征map。
2.1.2 最大池化操作
池化操作不僅具有減少特征維度、參數量的作用,還能夠保持特征不變性。有兩種池化操作:均值池化(mean-pooling)、最大值池化(max-pooling),本文采用的是max-pooling,對領域特征點取最大值,來減弱卷積層權重值的差錯對均值的影響,對在保持低參數計算量的情況下,到達保留更多紋理信息的目的。
對肺部圖像的分類任務是通過全連接層和分類器完成的,如圖3所示,全連接層的開始為第五層卷積層的聚合特征,通過3層的全連接作用獲得到1000維的Softmax輸出,本文在全連接層中加入Dropout使某些神經元停止工作,使網絡學習更具表達性的特征,以減少過擬合局面,達到正則化效果。同時使用ReLU避免梯度消失局面。

圖3 分類器模型圖
本文采用Caffe平臺。模型是在Intel i7-9000K CPU,NVIDIA GeForce RTX 2070上進行學習完成的。前期數據的處理用Matlab完成。
3.2.1 數據來源
本文實驗使用肺結節數據集LIDC,LIDC整合了醫學界專家的對肺結節病例的診斷信息。每個病例都包含50~250張肺部CT圖像和一個注釋文件,專家標注的診斷信息權威且詳細。嚴格按照專業醫師注明選取肺部CT樣本4000例,健康CT樣本占20%,良惡性腫瘤樣本占80%。
3.2.2 數據處理
在卷積神經網路中需要保證特征輸出圖大小是一致的,需要將肺部圖像進行歸一化預處理操作,壓縮為227×227,將樣本進行排序并按照一定的數量將肺部CT圖像劃分為訓練樣本和測試樣本。其中訓練樣本占70%例,測試樣本占30%例。
3.2.3 樣本擴充
為了解決數據量不足對網絡運算導致的過擬合局面,本文對LIDC樣本集作出以下處理:將肺部腫瘤圖像水平、垂直翻轉、轉動135°/270°、縮放比例、加入高斯噪聲、裁剪、移位等操作,將已有的訓練樣本集轉化為新的樣本集,以達到快速擴充樣本集的目的,減少高頻特征對網絡的影響,提升網絡模型的學習能力。
本文使用準確率ACC、敏感性SNR、特異度SPR、AUC面積和訓練時間來判定該分類系統的性能。
真陽性率TPR為準確篩選良惡性數據的百分比,真陰性率TNR為準確篩選健康數據的百分比,假陽性率FPR為錯誤篩選良惡性數據的百分比,假陰性率FNR為錯誤篩選健康數據的百分比。則SPR、SNR、ACC的公式如下:
(8)
(9)
(10)
首先實驗選擇在同一數據集不同訓練模型上進行比較,將本文所提方法與LeNet-5[13],ResNet[14],AlexNet[15],VGGNet[16],GooLeNet[17]5種模型進行對照,表1展現了卷積神經網絡在6種方法上的訓練時間和測試準確率,通過實驗可以看出,本文所設計網絡和方法獲取了更有效和表達性的肺部圖像特征,比其他5種模型實現了更好的分類準確度。在訓練時間方面,本文所提方法的訓練時間明顯低于其他5種方法,網絡具有更好的分類性能。

表1 模型訓練時間與準確率
本文用相同的肺部圖像數據集對AlexNet模型和改進的網絡模型進行訓練,驗證批量歸一化層的使用對模型穩定性和模型訓練速率的作用。通過圖3可以得出改進模型的準確率的上升速率和訓練損失值下降速率都比AlexNet模型的快很多,而且網絡訓練過程快速平穩。說明批量歸一化層不僅可以避免梯度消失,維持網絡平穩性,加速網絡訓練速率和學習能力。
本文采用以下方法進行網絡運算來觀察遷移學習對模型性能的作用:
1)利用肺部樣本對改進的模型使用零基礎的運算方法;
2)利用ImageNet樣本對改進的模型實行初始運算,用已經訓練好的參數作為模型訓練的輸入值。
如表2所示,利用遷移學習的方法模型各方面的性能都更優,在面對小規模數據集訓練時用較短時間提取到了更有效的信息,有益于網絡在肺部圖像小樣本判斷中達到準確的識別分類。

表2 網絡不同運算方法性能比較
本文對AlexNet模型和改進的模型分別采用原始樣本和樣本擴充的方法進行運算來觀察樣本擴充方式對網絡性能的作用。如表3所示,采用樣本擴充的運算方法,網絡獲得了更好的學習能力,說明了樣本擴充很好地減少了數據不平衡過少難題,驗證了樣本擴充的功能性。
本文基于肺部腫瘤圖像分類對深度卷積神經網絡模型

表3 網絡不同運算方法性能比較

圖3 本文方法和AlexNet的測試準確率和損失值
優化改進,在利用遷移學習和樣本擴充基礎上,并在網絡每層數據輸入前預先歸一化處理,防止傳統特征提取和分類的限制性,減少了高頻特征對網絡模型的影響,而且有效減少了網絡在數據缺乏時導致的過擬合局面,使卷積神經網絡運用非常有限的醫學樣本,提升了肺部腫瘤模型的分類準確率和效率,且網絡健壯性得到了提升,為醫生判斷提供良好的協助作用。在今后的研究中,對網絡內部構造和網絡學習能力往深層次擴展,進一步提升模型的分類精準度,并運用于大規模醫學圖像的分類。