尹梓名,慕長齡,束翌俊
(1.上海理工大學(xué)健康科學(xué)與工程學(xué)院,上海 200093;2.上海交通大學(xué)醫(yī)學(xué)院附屬新華醫(yī)院普外科,上海 200092)
膽囊癌是一類起源于膽囊黏膜的惡性上皮細胞疾病,是消化系統(tǒng)常見惡性腫瘤,中老年多見,近年來其發(fā)病率呈現(xiàn)上升趨勢。膽囊癌可直接侵犯周圍組織,同時也可以通過淋巴、血液循環(huán)或腹腔移植等途徑轉(zhuǎn)移,由于缺乏早期臨床表現(xiàn),大部分病例確診時已為中晚期,嚴(yán)重影響患者預(yù)后。影像學(xué)檢查廣泛應(yīng)用于多種疾病的檢測,其中增強CT可以很好地判斷病灶的強度以及增強方式,還可以對病灶種類作出判斷,對臨床診斷與治療有很大幫助。影像學(xué)檢查往往需要具有專業(yè)知識的醫(yī)師進行識別與判斷,耗費大量時間與精力,并且不同醫(yī)師間存在主觀偏倚。
隨著人工智能的不斷發(fā)展,基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)技術(shù)被廣泛應(yīng)用于醫(yī)學(xué)影像領(lǐng)域。例如,吳世洋等首先對肺部圖像數(shù)據(jù)庫聯(lián)盟中的肺癌CT圖像進行分割獲得肺結(jié)節(jié)圖像,然后利用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)進行特征提取,最后利用Logistic分類器進行模型構(gòu)建與測試,該方法取得了84.4%的分類準(zhǔn)確率;吳云峰基于改進的Inception-ResNet提出肺部CT圖像分類以及系統(tǒng)構(gòu)建方法,該方法對于新冠肺炎的診斷準(zhǔn)確率超過95%;葉佳超等基于CNN中的Dense Net網(wǎng)絡(luò)模型對新冠肺炎CT圖像取得了良好的識別效果,精確率為91%,召回率為79%,F(xiàn)1值為85%,準(zhǔn)確率為85%,AUC值為94%。
本文對Dense Net模型進行優(yōu)化與改進,將傳統(tǒng)的二維影像輸入增加至三維,并且改進了Dropout機制與Softmax損失函數(shù),應(yīng)用改進后的3D-Dense Net模型對膽囊癌進行輔助診斷。
人工神經(jīng)網(wǎng)絡(luò)是模仿人類大腦神經(jīng)網(wǎng)絡(luò)和功能創(chuàng)建的一種網(wǎng)絡(luò),其各個節(jié)點可以看作是人工神經(jīng)元。自然神經(jīng)元通過位于細胞膜或樹突上的突觸接受信號,當(dāng)信號足夠強或者突破某個閾值時,神經(jīng)元被激活,然后通過軸突發(fā)射信號,信號會被另一個突觸接收,并激活新的神經(jīng)元。人工神經(jīng)元模型對自然神經(jīng)元的復(fù)雜性進行了高度抽象的符號性概括。該模型包含多個輸入,這些輸入分別被不同的權(quán)值相乘,然后經(jīng)過數(shù)學(xué)函數(shù)計算用于決定是否激發(fā)神經(jīng)元,另有一個函數(shù)計算人工神經(jīng)元的輸出。有許多人工神經(jīng)網(wǎng)絡(luò)就是對真實神經(jīng)元網(wǎng)絡(luò)進行建模,用于研究動物和機器的行為與控制,但也有許多用于模式識別、預(yù)測、數(shù)據(jù)壓縮等。全連接神經(jīng)網(wǎng)絡(luò)是所有神經(jīng)網(wǎng)絡(luò)中最簡單的一種,其結(jié)構(gòu)如圖1所示。
Fig.1 Fully connected neural network structure圖1 全連接神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
假設(shè)隱藏層第一個神經(jīng)元結(jié)點為Z
,那么其值的計算方法為:w
為每條邊的權(quán)重。CNN是一種深度前饋神經(jīng)網(wǎng)絡(luò),目前在圖片分類、圖片檢索、目標(biāo)檢測、目標(biāo)分割、目標(biāo)跟蹤、視頻分類、姿態(tài)估計等圖像視頻相關(guān)領(lǐng)域有很多成功的應(yīng)用。CNN一般由卷積層、池化層、全連接層、批規(guī)劃范層組成。
在深度神經(jīng)網(wǎng)絡(luò)中,隨著網(wǎng)絡(luò)深度的加深,梯度消失問題會愈加明顯,目前針對該問題出現(xiàn)了解決方案,如ResNet、Highway Networks、Stochastic depth等,盡管這些網(wǎng)絡(luò)結(jié)構(gòu)有所差異,但核心都在于將前層和后層通過較短的路徑連接起來。Dense Net是Huang等于2017年提出的最優(yōu)深度模型,其借鑒了ResNet與Goog Le Net的優(yōu)點,將跨連接充分應(yīng)用至模塊內(nèi)的每一個特征層,即任一卷積層的輸入直接包含了前面所有卷積層的輸出,特征得到充分復(fù)用。高低層次的特征融合使得網(wǎng)絡(luò)具有較強的抗過擬合性能,且參數(shù)量更小,跨連接的應(yīng)用也緩解了層數(shù)加深而導(dǎo)致的梯度消失問題。Dense Net由多個Dense block和Transition layer構(gòu)成,每個Dense block都包含多個子結(jié)構(gòu),一個4層Dense block的結(jié)構(gòu)如圖2所示。
在傳統(tǒng)CNN中,如果網(wǎng)絡(luò)有L層,那么就會有L個連接。但在Dense Net中,會有L*(L+1)/2個連接,因為每一層的輸入來自于前面所有層的輸出。因此,Dense Net的優(yōu)點為網(wǎng)絡(luò)更窄,模型參數(shù)更少。
本文提出的模型是將患者的增強CT影像轉(zhuǎn)換為三維影像數(shù)據(jù),然后將三維影像數(shù)據(jù)輸入到3D-Dense Net網(wǎng)絡(luò)中提取1 024個深層特征,通過全連接層后到達分類器得到最終分類結(jié)果,整個模型結(jié)構(gòu)與數(shù)據(jù)處理過程如圖3所示。
Fig.2 4-layer Dense block structure圖2 4層Dense block結(jié)構(gòu)
本文針對患者CT影像進行膽囊癌識別,因此需要提取患者CT影像的深層特征。較深的網(wǎng)絡(luò)往往能提取到完整的特征,但計算量大,結(jié)果容易過擬合,而且識別速度緩慢。因此,本文對傳統(tǒng)的Dense Net-121結(jié)構(gòu)進行了改進,除了將卷積核替換為三維卷積核外,還改進了Dropout機制和Softmax損失函數(shù)。
傳統(tǒng)的Dense Net結(jié)構(gòu)中包含Dropout層,該層通過隨機丟棄多個神經(jīng)元來抑制模型過擬合。CNN通過卷積核對影像特征進行提取,卷積操作的特定實現(xiàn)方式使得特征圖之間會產(chǎn)生信息冗余,因此Dropout對于CNN的效果有限。Drop Block模塊是谷歌團隊于2018年提出的一個針對CNN的正則化模塊。Dropout與Drop Block的效果比較如圖4所示。
Drop Block會將特征圖的某一塊連通區(qū)域置為零,從而強制模型學(xué)習(xí)其余區(qū)域的特征,以此提高模型的抗擬合能力。
在Dense Net網(wǎng)絡(luò)模型的內(nèi)部單元結(jié)構(gòu)DenseLayer中,1×1卷積沒有考慮到像素與其周圍像素點之間的空間關(guān)系,而是依賴坐標(biāo)位置添加了線性變換。因此,在傳統(tǒng)的Dense Net網(wǎng)絡(luò)結(jié)構(gòu)中都會添加非線性的激活函數(shù)。Softmax損失函數(shù)是常見的深度學(xué)習(xí)網(wǎng)絡(luò)損失函數(shù),傳統(tǒng)的Dense Net網(wǎng)絡(luò)結(jié)構(gòu)在輸出部分使用的都是Softmax函數(shù)與交叉熵損失相結(jié)合的方式。本文在最后的全連接層加入中心損失(Center loss)訓(xùn)練網(wǎng)絡(luò),在最后輸出部分將交叉熵函數(shù)替換為Focal-loss進行不平衡校正。
Fig.4 Effect comparison between dropout and dropblock圖4 Dropout與Drop Block效果比較
本文實驗均在Linux Ubuntu16.04系統(tǒng)環(huán)境下進行,深度學(xué)習(xí)框架采用PyTorch,編程語言為Python 3.7版;模型訓(xùn)練GPU使用NVIDIA TITAN RTX,顯存為64G,內(nèi)存為32G;CUDA版本為10.1,cuDNN版本為7.64。
選取2010-2020年上海交通大學(xué)附屬新華醫(yī)院收治的287例膽囊癌患者與100例膽囊良性疾病患者的增強CT影像數(shù)據(jù)作為原始數(shù)據(jù)。篩選患者增強CT中的動脈期影像作為數(shù)據(jù)集,由5名經(jīng)驗豐富的放射科醫(yī)生對膽囊區(qū)域進行勾畫并作為感興趣區(qū)域。標(biāo)注完成后,對原始圖像進行三維轉(zhuǎn)換并裁剪標(biāo)注區(qū)域。由于部分患者的影像數(shù)據(jù)在醫(yī)生標(biāo)注過程中被發(fā)現(xiàn)存在問題,如沒有增強CT、CT影像不正常、標(biāo)注影像與原始影像大小不匹配等,因此最終入組的數(shù)據(jù)集由150例膽囊癌與86例良性膽囊疾?。懩蚁⑷?9例,黃色肉芽腫6例,腺肌癥31例)患者構(gòu)成。其中男100例,女136例,男女比例1∶1.36,平均年齡為62.3歲,將數(shù)據(jù)集按照6∶2∶2的比例隨機劃分為訓(xùn)練集142例,驗證集47例,測試集47例。
Fig.3 Model structure and data processing flow圖3 模型結(jié)構(gòu)與數(shù)據(jù)處理流程
原始影像數(shù)據(jù)格式為DICOM(Digital Imaging and Communications in Medicine),是醫(yī)學(xué)圖像及其相關(guān)信息的國際標(biāo)準(zhǔn)格式(ISO12052),定義了質(zhì)量能滿足臨床需要的可用于數(shù)據(jù)交換的醫(yī)學(xué)圖像格式。將多張DICOM格式的影像轉(zhuǎn)換為1個NIFTI(Neuroimaging Informatics Technology Initiative)文件,影像原始大小為512×512。為了提高特征提取的精度并消除多余干擾因素,對原始影像的感興趣區(qū)域進行切割,確保每張影像均包含患者膽囊區(qū)域并盡可能減少其他干擾區(qū)域大小。感興趣區(qū)域的切割方法如下:找到醫(yī)生標(biāo)注區(qū)域的中心點,分別向x、y、z 3個方向進行延伸,確保切割后的感興趣區(qū)域包含患者整個膽囊且擴展區(qū)域不延伸至原圖區(qū)域以外,切割后單張影像大小為224×224,每個患者的三維影像文件包含32張CT影像,儲存為NIFTI文件格式,切割前與切割后效果比較如圖5(彩圖掃OSID碼可見,下同)所示。
Fig.5 Comparison of image effect before cutting and after cutting圖5 切割前后圖像效果比較
為了驗證本文模型的性能,對多種結(jié)構(gòu)、不同參數(shù)的3D-ResNet、3D-Dense Net模型進行分析比較,篩選出最適合于膽囊癌分類的三維CNN。實驗過程采用五折交叉驗證。
模型評價指標(biāo)包括準(zhǔn)確率(Accuracy)、特異度(Specificity)、靈敏度(Sensitivity)、精確率(Precision)以及ROC曲線。各個指標(biāo)的計算公式分別表示為:
式中,真陽性TP(True Positives)表示膽囊癌患者樣本被目標(biāo)檢測器判別為膽囊癌患者的數(shù)量;假陽性FP(False Positives)表示良性膽囊疾病患者樣本被目標(biāo)檢測器判別為膽囊癌患者的數(shù)量;假陰性FN(False Negatives)表示膽囊癌患者被目標(biāo)檢測器判別為良性膽囊疾病患者的數(shù)量;真陰性TN(True Negatives)表示良性膽囊疾病患者被目標(biāo)檢測器判別為非膽囊癌患者的數(shù)量;Z表示膽囊癌患者數(shù);C表示良性膽囊疾病患者數(shù)。
ROC曲線(Receiver Operating Characteristic Curve)全稱為受試者工作特征曲線,其是根據(jù)一系列不同的二分類方式(分界值或決定閾),以真陽性率(敏感度)為縱坐標(biāo),假陽性率(特異度)為橫坐標(biāo)繪制的曲線。AUC(Area Under Curve)為ROC曲線下面積。學(xué)者們往往使用AUC值作為模型評價標(biāo)準(zhǔn),ROC曲線并不能清晰地說明哪個分類器的效果更好,而AUC值越大的分類器效果越好。
不同深度的Res Net和Dense Net模型各項指標(biāo)比較如表1所示。
Table 1 Performance index comparison of different model structures表1 不同模型結(jié)構(gòu)指標(biāo)比較
由表1結(jié)果可知,在使用ResNet-64網(wǎng)絡(luò)進行膽囊癌分類時,分類準(zhǔn)確率最高為0.65,特異度為0.55,靈敏度為0.74,精確率為0.69。隨著網(wǎng)絡(luò)深度的增加,ResNet-128的分類效果得到提升,準(zhǔn)確率可達0.74,靈敏度可達0.88。繼續(xù)增加網(wǎng)絡(luò)深度,ResNet-256的分類效果變?nèi)酰瑴?zhǔn)確率為0.70,靈敏度為0.80,特異度為0.59。實驗結(jié)果表明,在ResNet網(wǎng)絡(luò)體系中,隨著網(wǎng)絡(luò)深度的增加,模型分類性能得到提升,然而增加到一定深度后,模型測試集的分類效果降低,而訓(xùn)練集表現(xiàn)良好,說明模型出現(xiàn)過擬合現(xiàn)象。Dense Net網(wǎng)絡(luò)也存在該問題,當(dāng)模型深度達到169后,在測試集的分類效果反而下降。最終實驗結(jié)果表明,Dense Net模型經(jīng)過改進后效果均優(yōu)其他模型,其中Dense Net-121模型結(jié)構(gòu)經(jīng)過改進后準(zhǔn)確率可達0.91,其模型超參數(shù)如表2所示,模型訓(xùn)練集與驗證集的準(zhǔn)確率與損失如圖6、圖7所示。
可以看出,隨著訓(xùn)練epoch數(shù)量的增加,訓(xùn)練集與驗證集的準(zhǔn)確率均穩(wěn)步增加,而模型損失也逐漸減少,說明改進模型沒有明顯的過擬合或欠擬合現(xiàn)象,在訓(xùn)練集和驗證集中表現(xiàn)良好。改進模型的受試者ROC曲線如圖8所示。
Table2 Model super parameter setting表2 模型超參數(shù)設(shè)置
Fig.6 Changeof accuracy of training set and verification set with the number of epoch圖6 訓(xùn)練集與驗證集準(zhǔn)確率隨訓(xùn)練輪數(shù)的變化
Fig.7 Change of loss of training set and verification set with the number of epoch圖7 訓(xùn)練集與驗證集損失隨訓(xùn)練輪數(shù)的變化
Fig.8 Model prediction ROC curve圖8 模型預(yù)測受試者ROC曲線
膽囊癌起病隱匿,早期大多無癥狀,因此當(dāng)患者發(fā)現(xiàn)病變時已經(jīng)發(fā)展至進展期,患者往往因腫瘤分期較晚而失去救治機會。臨床對于膽囊癌的診斷主要依賴于傳統(tǒng)的影像學(xué)檢查,如雙源CT。然而,腹部雙源CT影像識別需要醫(yī)生有豐富的專業(yè)知識與閱片經(jīng)驗,人工閱片不僅耗費大量時間與精力,還可能因為疏忽或主觀因素產(chǎn)生誤判的情況。
深度學(xué)習(xí)算法具有學(xué)習(xí)能力強、覆蓋范圍廣、適應(yīng)性好、上限高等特點。因此,本文基于深度學(xué)習(xí)模型,通過提取影像特征實現(xiàn)膽囊癌的診斷,經(jīng)過實驗驗證,本文模型在膽囊癌診斷方面具有一定可行性。然而,目前該模型仍存在以下問題:①膽囊癌數(shù)據(jù)量較少。對于醫(yī)學(xué)影像的研究,數(shù)據(jù)集的構(gòu)建是極為關(guān)鍵的一環(huán),但醫(yī)學(xué)數(shù)據(jù)往往存在收集困難、信息敏感、分布不集中等問題;②深度學(xué)習(xí)模型的可解釋性一直以來為人詬病,目前膽囊癌的診斷金標(biāo)準(zhǔn)為病理學(xué)檢查,而本文提出的模型是根據(jù)患者術(shù)前影像數(shù)據(jù)構(gòu)建出來的,僅憑影像數(shù)據(jù)無法完全準(zhǔn)確地判斷患者是否為膽囊癌患者。此外,深度學(xué)習(xí)提取的深層特征的具體含義也無法解釋,后續(xù)工作將考慮加入一些可解釋性特征。綜上所述,本文提出的基于改進3D-Dense Net的膽囊癌診斷模型具有良好的準(zhǔn)確率與可靠性,后續(xù)還將進行多中心的大規(guī)模實驗以推動該模型應(yīng)用于臨床輔助診斷。