馬國祥,楊凌菲,嚴傳波,張志豪,孫 彬,王曉榮
(1.新疆醫(yī)科大學(xué)醫(yī)學(xué)工程技術(shù)學(xué)院,新疆 烏魯木齊 830054;2.新疆醫(yī)科大學(xué)第一附屬醫(yī)院腹部超聲科省部共建中亞高發(fā)病成因與防治國家重點實驗室,新疆 烏魯木齊 830054)
肝包蟲病由棘球絳幼蟲侵染肝臟所致,從病理上可分為肝細粒棘球蚴病和肝泡狀棘球蚴病,其中肝細粒型囊腫較多見[1-2]。肝包蟲病的發(fā)病具有地域性特點,在我國畜牧業(yè)發(fā)達地區(qū)較常見,其中新疆維吾爾自治區(qū)是我國肝包蟲病流行的重點區(qū)域[3-6]。由于包蟲病發(fā)病隱匿、潛伏期較長、初期臨床癥狀不明顯等問題,容易對肝包蟲病的診斷產(chǎn)生誤診[7]。目前對肝包蟲病的診斷和預(yù)防仍然面臨諸多困難[8],仍然影響著社會經(jīng)濟發(fā)展和人民身體健康[9]。
近年來,隨著計算機技術(shù)和醫(yī)學(xué)影像技術(shù)的發(fā)展,基于醫(yī)學(xué)圖像的計算機輔助技術(shù)取得了較快的發(fā)展。超聲醫(yī)學(xué)影像檢查作為一種非創(chuàng)傷性檢查手段[10],運用超聲波的物理特性,實現(xiàn)對人體軟組織的物理特性形態(tài)結(jié)構(gòu)和功能狀態(tài)的判斷,是目前肝包蟲疾病診斷的重要手段之一[11]。但是一般的超聲影像都需要進行定量分析,需要放射科醫(yī)師和腫瘤專家耗費大量的時間和精力才能初步完成疾病的診斷,而且需要豐富的解剖學(xué)知識和臨床經(jīng)驗,存在人為主觀性強、測量結(jié)果準確性差、可再現(xiàn)性差等問題,常常導(dǎo)致疾病的漏診或誤診。
為了能夠提高影像診斷效率和診斷精度,引入基于深度學(xué)習(xí)的智能圖像處理技術(shù),輔助醫(yī)師進行疾病診斷已經(jīng)成為現(xiàn)代醫(yī)學(xué)影像學(xué)發(fā)展的必然趨勢[12]。深度學(xué)習(xí)能夠自動從大樣本的數(shù)據(jù)中學(xué)習(xí),從而獲得數(shù)據(jù)中深層次的特征表達,并且具有良好的特征鑒別能力[13-14]。可以有效提升各種機器學(xué)習(xí)任務(wù)的性能,已廣泛應(yīng)用于信號處理[15]、計算機視覺[16-17]和自然語言處理[18-19]等諸多領(lǐng)域。此外,在醫(yī)學(xué)領(lǐng)域也有較多的應(yīng)用,如在腦腫瘤影像診斷[20]、新型冠狀病毒影像學(xué)診斷[21-23]、胰腺疾病診斷[24]、乳腺疾病診斷[25]等領(lǐng)域都取得了較好進展,為醫(yī)院提供了新的標準化診療手段。
目前在肝包蟲病超聲影像輔助診斷領(lǐng)域已經(jīng)進行了一些研究,但是肝包蟲超聲影像特征單一、復(fù)雜性高,較常見其他醫(yī)學(xué)影像具有較大的辨識難度。因此,肝包蟲病超聲影像模型的構(gòu)建仍然具有較大的挑戰(zhàn)性,尤其在不同尺寸病灶特征提取方面。本文將深度DenseNet[26]網(wǎng)絡(luò)模型應(yīng)用于肝包蟲病影像分類問題中,利用深度卷積神經(jīng)網(wǎng)絡(luò)強大的特征提取能力構(gòu)建肝包蟲分類模型。此外,針對超聲影像病灶區(qū)域提取困難的問題,提出基于感興趣區(qū)域(Region of Interest,ROI)的預(yù)處理方法。最后,在真實數(shù)據(jù)集上進行模型驗證,取得了較好的分類效果,可以為肝包蟲病的臨床診斷提供有價值的輔助信息。
本文擬采用DenseNet 模型作為深度特征提取方法,DenseNet 模型是殘差網(wǎng)絡(luò)[27-28]的一種變體,殘差網(wǎng)絡(luò)的連接機制是每層與其前面1至2層通過逐元素相加的方式進行短路連接,如公式(1)所示。
與殘差網(wǎng)絡(luò)不同的是DenseNet 的連接機制使用了所有的殘差連接,每個層都會接受前面所有層的輸入,并將每層特征圖在通道維度上進行連接,如公式(2)所示。
其中,χl為第l層輸出;[χ0,χ1,…,χl-1]為輸入層到l-1層的特征圖拼接;H(.)為非線性轉(zhuǎn)化函數(shù),該函數(shù)是一個包含批量歸一化層、ReLU 層以及卷積層的組合操作。在DenseNet 中,每層從前面所有層中獲得額外的輸入,并將其特征映射繼續(xù)傳遞到后續(xù)所有的層中。并且在前向傳播過程中,每一層都能接受到前面網(wǎng)絡(luò)層所有的特征信息,能夠有效地保留特征信息、抑制梯度消失,使得深度卷積網(wǎng)絡(luò)向更高層擴展成為可能。標準DenseNet網(wǎng)絡(luò)連接方式如圖1所示。
圖1 標準DenseNet網(wǎng)絡(luò)結(jié)構(gòu)
標準DenseNet 網(wǎng)絡(luò)主要由密集連接塊和過渡層組成。密集連接模塊是DenseNet 網(wǎng)絡(luò)的基本組成單元,為了能夠?qū)崿F(xiàn)模塊內(nèi)部維度拼接,密集連接內(nèi)的特征圖大小保持一致。根據(jù)DenseNet 網(wǎng)絡(luò)結(jié)構(gòu),第l層的輸入維度如公式(3)所示。
其中,k0為輸入層的通道數(shù),k表示每層產(chǎn)生的特征圖個數(shù)。在DenseNet 中為了避免特征圖數(shù)量過多導(dǎo)致計算量增加的問題,在密集連接中加入1x1 的卷積操作構(gòu)成瓶頸層,可以有效降低特征圖數(shù)量,壓縮模型參數(shù),提升模型的整體運行效率。
DenseNet 網(wǎng)絡(luò)中的過渡層主要用來實現(xiàn)密集連接之間的連接操作。由于密集連接內(nèi)部沒有改變輸入特征圖的大小,所以在過渡層中使用了1x1 的卷積操作和2x2 的全局池化操作實現(xiàn)對特征圖大小的調(diào)整。此外,過渡層引入了壓縮因子的概念,可以動態(tài)調(diào)整模型的復(fù)雜程度,實現(xiàn)模型的合理壓縮。
由于超聲影像中存在一定的干擾因素,如:醫(yī)院名稱、檢查時間、機器參數(shù)、超聲儀器標識、灰度標尺、體表標記、圖片刻度尺等屬性信息,這些影像屬性信息在基于計算機的超聲影像輔助診斷中往往造成一定干擾。所以本文利用圖像形態(tài)學(xué)、自適應(yīng)閾值二值化、最大連通圖、大律法等圖像預(yù)處理方法,分割原始超聲影像中病灶的ROI區(qū)域。具體預(yù)處理流程如圖2所示。
圖2 超聲圖像預(yù)處理步驟
首先,根據(jù)整理的原始肝包蟲超聲影像數(shù)據(jù),選用合適的參數(shù)進行圖像形態(tài)化和自適應(yīng)閾值二值化處理,初步提取超聲圖像中的關(guān)鍵區(qū)域。但是,經(jīng)過初步處理的超聲圖像依然存在較多的干擾區(qū)域,如灰度標尺、體表標記和機器參數(shù)信息。在此基礎(chǔ)上,本文利用最大連通區(qū)域分割方法,分割出超聲圖像中病灶ROI 區(qū)域。此外,在數(shù)據(jù)收集過程中,存在多種超聲設(shè)備的影像數(shù)據(jù),造成處理結(jié)果的差異性。為了解決部分圖像數(shù)據(jù)處理異常的問題,本文采用人工校驗的方式,標注超聲圖像的ROI 區(qū)域,處理后的對比效果如圖3 所示,原圖中部分關(guān)鍵信息已進行消隱處理。
圖3 超聲圖像預(yù)處理步驟
根據(jù)圖像預(yù)處理后的超聲圖像數(shù)據(jù),構(gòu)建本文基于DenseNet 網(wǎng)絡(luò)的超聲圖像分類模型。具體流程包括:整理原始超聲影像、預(yù)處理、構(gòu)建模型、模型評估4個模塊。超聲圖像分類模型如圖4所示。
圖4 超聲圖像分類模型
由圖4 可知,根據(jù)預(yù)處理后的超聲圖像數(shù)據(jù),構(gòu)建DenseNet 分類模型。本文使用DenseNet201 網(wǎng)絡(luò)結(jié)構(gòu)評估肝包蟲病超聲影像的分類性能,充分利用了DenseNet網(wǎng)絡(luò)的特征重用機制,避免了深度卷積神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過程中的網(wǎng)絡(luò)退化、飽和性、梯度消失等問題。此外,在模型參數(shù)方面較其他深度卷積網(wǎng)絡(luò)大幅度減少了參數(shù)數(shù)量,降低了模型存儲帶來的額外應(yīng)用條件。最后,在模型評估模塊,采用交叉驗證的方式確定模型超參數(shù),了解模型訓(xùn)練過程中損失函數(shù)的變化,評估分類模型最終的泛化性能。
為了驗證本文方法的可行性設(shè)計了如下實驗。本文實驗的硬件平臺采用Intel i5@2.3 GHz,12 GB內(nèi)存,GPU GeForce GTX 950M 顯存4 GB,軟件平臺為Windows 環(huán)境下Python 語言編寫實驗代碼,深度學(xué)習(xí)框架采用Keras。
為了評估本文模型的分類效果,常用一些特有的評估指標來定量評價模型的分類效果。本文采用準確率(Accuracy)、精確度(Precision)、F1 度量(F1-score)、召回率(Recall)和ROC 曲線及AUC 對網(wǎng)絡(luò)進行評估,從而進行網(wǎng)絡(luò)模型的優(yōu)化、改進。為了能夠更好地表達評價指標,本文采用表1 和式(4)~式(7)來描述。
表1 混淆矩陣
準確率、精確率、召回率、F1值公式如下:
此外,ROC 曲線和AUC 值也常用來衡量模型泛化性能。受試者工作特征(Receiver Operating Characteristic,ROC)曲線通過真正例率(True Positive Rate,TPR)和假正例率(False Positive Rate,F(xiàn)PR)衡量模型的分類效果。ROC 曲線下面積(Area Under ROC Curve,AUC)是一種可以量化分類效果的重要指標,根據(jù)AUC值可以量化ROC曲線的泛化性能。
為了驗證本文設(shè)計實驗在肝包蟲病影像分類問題中的有效性,本文采用交叉驗證的方式對DenseNet模型進行訓(xùn)練,肝包蟲影像數(shù)據(jù)收集自新疆醫(yī)科大學(xué)第一附屬醫(yī)院超聲影像中心,其中包含4 種肝包蟲?。簡文倚汀⒍嘧幽倚?、鈣化型、壞死實變型。單囊型超聲表現(xiàn)為圓形、回聲均勻囊性病灶,內(nèi)、外囊壁間有潛在的間隙。多子囊型表現(xiàn)為母囊暗區(qū)內(nèi)呈現(xiàn)多個小的球形暗影及光環(huán)。鈣化型表現(xiàn)為囊壁肥厚鈣化,呈現(xiàn)寬大聲影及側(cè)壁聲影。壞死實變型表現(xiàn)為高回聲腫塊,包蟲囊液吸收,囊壁折疊收縮,超聲檢查回聲強弱相間。如圖5 所示,超聲影像數(shù)據(jù)共計8161 幅,影像劃分如表2所示。
表2 數(shù)據(jù)集劃分
圖5 包蟲病超聲圖像
根據(jù)數(shù)據(jù)規(guī)模以及模型復(fù)雜程度,確定使用隨機梯度下降算法作為優(yōu)化器,其中超參數(shù)學(xué)習(xí)率設(shè)定0.001,動量參數(shù)0.9,每次更新后的學(xué)習(xí)率衰減值為0.0001,損失函數(shù)設(shè)定交叉熵函數(shù)。此外,為了解決小樣本數(shù)據(jù)訓(xùn)練導(dǎo)致模型過擬合的問題,引入了旋轉(zhuǎn)、平移變換、翻轉(zhuǎn)變換、縮放變換、錯切變換等圖像增廣方法擴充本文數(shù)據(jù)集。設(shè)定模型的batch size為32,并使用交叉驗證的方式確定模型最終的epoch參數(shù)。
為了進一步驗證DenseNet 深度學(xué)習(xí)方法在肝包蟲超聲影像中的分類性能,本文對比了常見的深度學(xué)習(xí)基準框架VGG16 和ResNet50 網(wǎng)絡(luò)。實驗結(jié)果顯示,基于DenseNet 的網(wǎng)絡(luò)結(jié)構(gòu)能夠取得較好的分類效果,并且分類效果要高于同類基準模型,對比實驗結(jié)果如表3所示。
表3 模型分類結(jié)果對比
根據(jù)表3,DenseNet 系列模型的準確率要高于VGG 和ResNet 模型,準確率可以達到0.93。其中,基于殘差跳躍結(jié)構(gòu)的ResNet 網(wǎng)絡(luò)的準確率要略高于VGG 模型,說明深度神經(jīng)網(wǎng)絡(luò)中的特征重用機制能夠在包蟲病超聲影像分類中起到積極作用。相較于ResNet模型,DenseNet模型的特征重用機制采用密集連接的方式,因此,在肝包蟲超聲影像的分類任務(wù)中表現(xiàn)出更優(yōu)的性能。
本文以DenseNet201 模型為例,量化分析模型的訓(xùn)練過程及分類性能,模型訓(xùn)練過程中訓(xùn)練集以及驗證集的損失函數(shù)變化如圖6 所示,模型預(yù)測準確率如圖7所示。
圖6 模型訓(xùn)練損失函數(shù)變化
圖7 模型訓(xùn)練準確率
根據(jù)圖6和圖7模型損失函數(shù)和準確率變化可以看出,訓(xùn)練集損失值隨著訓(xùn)練輪數(shù)的增加逐漸降低,下降率大約在第3 輪轉(zhuǎn)為平緩,驗證集損失值在模型訓(xùn)練3 輪以后起伏變化,不再明顯降低。而模型準確率隨著訓(xùn)練次數(shù)的增加,在驗證集上發(fā)生了明顯提高。在第7 次模型訓(xùn)練結(jié)束后達到了較高的準確率。所以,根據(jù)模型損失和準確率的變化,可以確定模型超參數(shù)epoch 最佳取值為7,此時模型在測試集上的正確率達到最佳效果0.93,能夠取得較好的分類效果。為了進一步評估模型的魯棒性,本文使用分類精確度、召回率、F1 值定量分析測試數(shù)據(jù)集上的模型分類效果,如表4所示。
表4 模型分類效果評估
由表4 可知,模型的整體分類效果達到較好的水平。從分類精度看,單囊型和壞死實變型肝包蟲的分類精度分別為0.98和0.96,多子囊型和鈣化型包蟲病的分類精度為0.88 和0.84。其中鈣化型分類精度為0.84,F(xiàn)1值為0.87,相較于其他類型的指標有所下降。分析原因,鈣化型包蟲數(shù)據(jù)在整體訓(xùn)練樣本數(shù)據(jù)中占比較少,約占整體數(shù)據(jù)的12%左右,可能會導(dǎo)致模型在該類別的樣本數(shù)據(jù)下訓(xùn)練不充分,所以造成整體精度相比較其他3 種類型的分類精度稍低一些。但是從鈣化類型的召回率值0.91 和ROC 曲線下面積看,本文模型在該類型下的分類效果具有較好的魯棒性。
此外,為了評估模型具體分類效果的好壞,本文結(jié)合混淆矩陣和受試者回歸曲線分別從定量和定性2 個方面,分析模型在4 種包蟲類別下的分類效果。混淆矩陣如圖8所示,受試者回歸曲線如圖9所示。
圖8 混淆矩陣
圖9 受試者回歸曲線
從圖9 可以看出,模型的整體分類效果較好,可以較好針對4 種肝包蟲病進行區(qū)分。但是多子囊型包蟲病的AUC 值較低,結(jié)合表3 以及圖8 分析可知,多子囊型包蟲病有一部分病例預(yù)測成單囊型包蟲病,另一部分預(yù)測為壞死實變型包蟲病,說明多子囊型病例相較于其他包蟲病種存在特征不明顯。但是該病例整體精度可以達到0.88,召回率、F1 值均能達到較好的量化效果。
此外,為了進一步說明深度學(xué)習(xí)方法在肝包蟲超聲影像中的分類性能,使用梯度加權(quán)類激活映射圖(Gradient-weighted Class Activation Map,Grad-CAM)[29]對模型實際學(xué)習(xí)內(nèi)容進行可視化,突出顯示圖像的重要區(qū)域,描述不同類別圖像內(nèi)容的重要性,有助于理解和分析神經(jīng)網(wǎng)絡(luò)的工作原理和決策過程。Grad-CAM可視化結(jié)果如圖10所示。
圖10 Grad-CAM可視化效果圖
根據(jù)Grad-CAM可視化效果,圖中顏色深淺程度表示模型感受野對該區(qū)域的重視程度,模型可以學(xué)習(xí)到肝包蟲超聲圖像不同區(qū)域的病灶信息,并且可以準確地定位出病灶區(qū)域的類圓形囊塊,進一步說明深度學(xué)習(xí)模型在肝包蟲超聲影像分類任務(wù)中的魯棒性,為深度學(xué)習(xí)技術(shù)在醫(yī)學(xué)領(lǐng)域的臨床輔助應(yīng)用提供理論支撐。
為了提高肝包蟲病的診斷效率和精度,本文將深度DenseNet 網(wǎng)絡(luò)應(yīng)用于肝包蟲病影像分類問題中,利用深度卷積神經(jīng)網(wǎng)絡(luò)強大的特征提取能力構(gòu)建肝包蟲分類模型。此外,本文提出了基于ROI的預(yù)處理方法處理超聲圖像中的干擾元素,提取原始圖像的病灶ROI區(qū)域,為后續(xù)的深度分類網(wǎng)絡(luò)提供可靠的特征輸入信息。最后,本文在構(gòu)建的數(shù)據(jù)集上進行模型評估和驗證,取得了較好的分類效果。在模型可解釋性方面,本文使用Grad-CAM進行可視化分析,進一步說明深度學(xué)習(xí)模型在肝包蟲超聲影像分類任務(wù)中的魯棒性,為肝包蟲病的臨床診斷提供有價值的輔助信息。