郭冰冰, 谷雪蓮, 胡秀枋, 孫運文, 徐秀林
(上海理工大學 健康科學與工程學院, 上海 200093)
胰腺癌是預后最差的惡性腫瘤之一,其具有侵襲性強、隱匿度高、病程短的特點。 據全球癌癥統計數據顯示,胰腺癌在癌癥的死亡原因里位居前列,且有研究預測未來10 年內胰腺癌相關死亡人數將上升至所有癌種的第2 位,僅次于肺癌[1-2]。 胰腺癌IV 期患者確診后生存期小于1 年,5 年平均生存率小于1%[3]。 同時,由于大部分胰腺癌患者在被確診時就已錯過最佳治療時期,因此尋找到一種有助于早期診斷的方法顯得尤為重要,可大幅提升患者的生存時間[4]。 目前,病理切片依然被視為確診的“金標準”,但總體上依賴的是醫生的經驗,不同的醫生可能生成不同的診斷結果。 隨著人工智能在醫學領域的深入應用,計算機輔助診斷(Computer-Aided Diagnosis,CAD)技術的優勢不斷顯現出來,其可以有效減少醫生的閱片工作量,也可為醫生提供診斷決策支持,有助于醫生減少臨床實踐中的誤診率和誤治率[5],甚至能預測病灶遷移位置,以便為臨床療效評估提供參考。
機器學習是人工智能的重要研究內容之一,機器學習算法是一類從數據中自動分析獲得規律,并利用規律對未知數據進行預測的算法。 針對不同的問題需要不同的學習方式,主要的學習方式為有監督學習和無監督學習。 有監督學習常用于分類和回歸的問題,其特點是所有數據都有標簽;無監督學習常用于聚類的問題,其特點為所有數據都沒有標簽。常用的機器學習算法有支持向量機、邏輯回歸、隨機森 林、 Lasso 回 歸、 Ada Boost (adaptive boosting,AdaBoost)等。 近年來,由于醫療數據不斷增長,因此機器學習的優勢得到充分的體現。
2006 年,Hinton 教授及其團隊提出了一種新的網絡結構——深度置信網絡(Deep Belief Net,DBN)[6],至此深度學習開始出現在研究者視野里。深度學習常被應用于圖像識別,但隨著技術的不斷推進,在醫療診斷、醫用機器人控制、搜索引擎等領域均有不俗的表現。 目前,最經典的深度學習網絡還是卷積神經網絡(Convolutional Neural Network,CNN),Lecun[7-8]等在神經網絡中創造性的代入了傳播算法,并以此為基礎構建了卷積神經網絡。 此外,其它常用的學習模型有Inception[9]、ResNet[10]、AlexNet、VGG 等。 早期診斷是改善胰腺癌患者預后的關鍵因素之一,若能提升早期診斷率,就能極大改善胰腺癌的預后并延長生存時間。 本文主要研究CT 分層圖像對胰腺癌的早期良惡性診斷的有效性,通過構建AdaBoost 等5 種機器學習模型和經典深度學習網絡模型VGG16,分別獲得胰腺癌良惡性分類的準確率,同時對不同模型進行對比分析,進一步驗證CT 圖像在VGG16 的應用性能。
本研究使用的數據來自醫院的胰腺癌病人CT圖像,將其分成APT、DPT、NPT、VPT 4 期的掃描圖像,并對圖像進行去噪處理,去除相應體數據的絕對位置、數據密度等信息,4 個數據集存在交集。 其中,APT(靜脈期)包含786 張圖像;DPT(延遲期)包含757 張圖像;VPT(動脈期)包含1 382 張圖像;NPT(平掃期)包含1 368 張圖像。
在對數據集進行訓練時,將數據集分成訓練集、驗證集、測試集3 部分。 訓練集用于訓練模型,驗證集用來驗證模型的效能,測試集用來對模型進行評估。 實踐中,測試集和驗證集采用同一批數據,在分配時將所有數據的80%分配給訓練集,20%分配給測試集。
VGGNet[11]是2014 年ImageNet Challenge 圖像識別比賽的亞軍,其不僅在圖像識別應用非常廣泛,在目標分割、人臉識別等方面的應用也會使用VGGNet 作為基礎模型,其證明了增加網絡的深度能夠在一定程度上影響網絡最終的性能。 VGG16有16 層網絡,能不斷提取學習從低級到高級的特征,卷積核大小為3×3,逐層增加卷積核的數量以增強非線性表達能力[12]。 本文深度學習模型選用VGG16 對已有數據集進行訓練學習。
AdaBoost[13]是機器學習工具箱中最強有力的工具之一,其基分類器一般是單層決策樹,決策樹在分裂的時候會選擇最優屬性進行分裂,最優屬性為誤差最小的屬性,AdaBoost 在每次迭代時會選擇誤差最小的那棵樹。 其優勢在于Adaboost 提供了一種能使用其他方法構建子分類器的框架,不僅能顯著提高學習精度,且可以根據子分類器的反饋,對假定的錯誤率進行自適應調整。
在對模型進行學習訓練時,本文采用的評價指標為模型的訓練集和測試集的準確率(Accuracy)及其損失函數(Loss Function)。
準確率的計算公式為
本文選擇的損失函數為交叉熵損失函數(categorical_crossentropy),可評估當前訓練得到的概率分布與真實分布的差異情況。 交叉熵的值越小,概率分布與真實分布就越接近。 其具體公式為:
其中,y為期望的輸出,a為神經元的實際輸出。
首先基于Keras 搭建VGG16 模型,其中最后一個全連接層的激活函數為softmax,其優點是計算簡單且計算量較小,能把數據的值映射到0 ~1 區間,保證概率為非負值;其次將輸入的數據集圖片調整尺寸大小為(224,224)的單通道灰度圖像,以加快模型訓練速度。 本實驗目標是識別胰腺癌腫瘤的良惡性,屬于二分類問題,設置訓練次數為160 次,優化函數為Adam[14],是一種對隨機梯度下降法的擴展,其優點在于效率高、內存小、且超參數具有直觀的解釋,通常只需要較少的調諧。
本文分別從APT、DPT、VPT、NPT 的數據集中隨機提取20%的圖像作為驗證集,將4 組圖像數據分別導入搭建好的VGG16 模型進行訓練,經過不斷對參數調優,最終訓練集和驗證集的訓練結果如圖1 所示,其對應訓練集和驗證集的損失函數圖像如圖2 所示:

圖1 4 組數據集的準確率學習曲線Fig.1 Learning curve of accuracy of four datasets

圖2 4 組數據集的損失函數曲線Fig.2 Loss curves of four datasets
根據以上訓練和驗證結果,得到如表1 所示的混淆矩陣。

表1 4 組數據集訓練后的混淆矩陣Tab.1 Confusion matrix after training on four datasets
由表1 不難看出,VGG16 模型對于APT、DPT數據集的靈敏度最好,APT、VPT 數據集的AUC和精確度較高。
為了進一步驗證模型的準確率,本研究分別將上述4 期的測試集導入已訓練好的VGG16 模型,對患者進行腫瘤良惡性分類診斷。 其中包含202 張APT 的胰腺癌圖像,190 張DPT 的胰腺癌圖像,345張NPT 的胰腺癌圖像,342 張VPT 的胰腺癌圖像,預測與真實值的對比結果見表2:

表2 4 組數據集預測值與真實值結果對比Tab.2 Comparison of prediction results and ground truth on four datasets
由表2 可知,APT、DPT 對胰腺癌惡性腫瘤的識別率高達0.92 以上,而NPT、VPT 對良性腫瘤識別率也超過了0.90。
為了建立識別胰腺癌CT 圖像良惡性分類最佳的機器學習模型,本文將4 組數據集分別導入支持向量機、邏輯回歸、隨機森林、K 近鄰、AdaBoost 5 個模型進行訓練學習,同時從原數據集提取20%作為測試集以驗證模型訓練效果。 各模型對比結果見表3。

表3 5 種機器學習模型對于4 組數據集的訓練結果對比Tab.3 Comparison of prediction results of five machine learning models on four datasets
由表3 可知,隨機森林和AdaBoost 訓練集和測試集準確率較好,對于APT、DPT、NPT、VPT 4 個數據集的訓練效果均達到90%以上,測試集準確率達到70%以上。 隨機森林的學習曲線如圖3 所示,AdaBoost 的學習曲線如圖4 所示。

圖3 4 組數據集在隨機森林模型下的學習曲線Fig.3 Learning curves of random forest model on four datasets
隨著人工智能技術的蓬勃發展,機器學習和深度學習在醫療輔助診斷領域的應用也在不斷深入,基于CT 圖像的胰腺癌良惡性分類的問題已經證明了其具有良好的可行性,獲得了很好的分類效果[15]。
使用機器學習進行訓練學習的優勢在于網絡較簡單,速度快,但對于診斷CT 圖像良惡性準確率不高;訓練集與測試集的差距超過20%,因此可能存在過擬合現象。
深度學習對于圖像的識別率很高,CNN 對于4期的CT 圖像的AUC均可以達到90%以上,但其不足在于網絡模型較為復雜,訓練時間長,對電腦配置要求較高。
本文分別將胰腺癌患者的APT、DPT、NPT、VPT 4 期CT 圖像導入深度學習和機器學習的網絡模型訓練,雖然不同網絡在準確率上有較為明顯的差距,但基于深度學習模型的良惡性分類診斷中,綜合得分和識別率較高的是APT 和VPT 時期;基于深度學習模型的良惡性分類診斷中,綜合得分和識別率較高的是VPT 和NPT 時期。
綜上,不論使用深度學習還是機器學習的方法,良惡性特征較為明顯的時期是VPT,即動脈期。
雖然本文的研究取得了一定成果,但依然存在一些不足。 如:4 期的CT 圖像數據雖然存在交集,但并不是完全重合的數據;由于深度學習網絡模型耗時較長,只選取了經典的VGG16 導入數據訓練等。 后續可嘗試ResNet、Inception 等其他網絡模型進行進一步研究。