張福玲,張少敏
北方民族大學 計算機科學與工程學院,銀川 750021
肺癌被認為是世界上最致命的癌癥,許多國家為此制定了早期診斷肺癌的策略。NLST 試驗[1]表明,使用低劑量的胸部計算機斷層成像(Computed Tomography,CT)進行肺癌篩查可以顯著降低肺癌導致的死亡率[2]。這些措施意味著大量的CT 掃描圖像必須由放射科醫(yī)生檢查。隨著CT 掃描層數(shù)的增加,即使對于有經(jīng)驗的醫(yī)生來說,有些結(jié)節(jié)也很難被發(fā)現(xiàn),放射科醫(yī)生的負擔也隨之加重。深度學習方法在圖像處理領(lǐng)域取得了巨大的成功,以深度學習為基礎(chǔ)的CAD(Computer-Aided Detection)系統(tǒng)在醫(yī)學影像的識別與目標檢測方面達到了極高的準確率。肺結(jié)節(jié)檢測系統(tǒng)一般由候選結(jié)節(jié)檢測和去除假陽性兩個步驟組成。候選結(jié)節(jié)檢測的目的是從胸部CT 圖像中篩選出若干結(jié)節(jié)候選點,去假陽性的目的是去除結(jié)節(jié)初始檢測中的假陽性結(jié)果。近年來,隨著大數(shù)據(jù)集的出現(xiàn)以及深度學習的發(fā)展,給人們帶來了很多優(yōu)秀的物體檢測框架,尤其使用卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)進行肺結(jié)節(jié)檢測取得了較好的結(jié)果。胸部CT圖像是肺部疾病的常見的檢測方式,肺結(jié)節(jié)在CT上表現(xiàn)為高亮與陰影,一般指的是一塊直徑小于3 cm 的“斑點”[3-4],也稱肺內(nèi)類球型病灶。根據(jù)肺結(jié)節(jié)的空間位置,可以把肺結(jié)節(jié)分為孤立型肺結(jié)節(jié)(Solitary Pulmonary Nodules,SPNs)、靠近胸腔內(nèi)壁的肺結(jié)節(jié)(Juxta-Pleural Nodules,JPNs)以及靠近血管的肺結(jié)節(jié)(Juxta-Vascular Nodules,JVNs)[5-6]。根據(jù)密度分類[7],孤立型肺結(jié)節(jié)分為實性肺結(jié)節(jié)和亞實性肺結(jié)節(jié),后者又分為純磨玻璃結(jié)節(jié)(非實性)和混雜性肺結(jié)節(jié)(部分實性結(jié)節(jié)),如圖1所示。
與一般的計算機視覺問題相比較,肺結(jié)節(jié)的檢測問題是具有一定困難的,不僅肺內(nèi)環(huán)境復雜、肺結(jié)節(jié)體積變化大、形狀各異,而且絕大部分的肺結(jié)節(jié)直徑很小,在圖像中所占的區(qū)域小,模型在訓練過程中容易損失小結(jié)節(jié)的信息而產(chǎn)生很多漏檢,屬于經(jīng)典的小目標檢測問題。本文主要從數(shù)據(jù)集介紹、2D 深度學習方法、3D 深度學習方法、數(shù)據(jù)不平衡問題的處理、模型訓練方法、模型可解釋性,這六個方面介紹可用于肺結(jié)節(jié)檢測的前沿的深度學習方法,最后對肺結(jié)節(jié)檢測的深度學習方法的發(fā)展以及最新的研究進展進行討論總結(jié)。
數(shù)據(jù)集是機器學習或深度學習方法的重要組成部分??捎脭?shù)據(jù)的質(zhì)量有助于開發(fā)、訓練和改進算法。在醫(yī)學成像應(yīng)用中,可用的數(shù)據(jù)必須經(jīng)過專家的驗證和標記,才能在任何開發(fā)中使用。本章介紹了近年來肺結(jié)節(jié)檢測深度學習相關(guān)工作中使用的數(shù)據(jù)集。
LIDC-IDRI[8],數(shù)據(jù)集包括 1 010 名患者的 1 018 次CT 掃描,共244 527 張圖像,掃描層厚1.25~3 mm,512×512像素。這些病例由7個學術(shù)機構(gòu)和8家醫(yī)學影像公司共同提供,所采用的掃描器及其相關(guān)參數(shù)都不盡相同。每個病例組成一個文件夾,包括100~200 張DICOM 格式的全肺CT 掃描圖像和一個作為“金標準”的專家診斷結(jié)果的.xml 格式標注文件。這些標注由4 位經(jīng)驗豐富的胸部放射科醫(yī)生進行,在標注文件中按照一定的結(jié)構(gòu)給出了放射科專家對每張CT中出現(xiàn)的肺結(jié)節(jié)的定義,包括肺結(jié)節(jié)的主要CT特征、結(jié)節(jié)的位置等。專家將結(jié)節(jié)分為直徑大于3 mm的結(jié)節(jié)、直徑小于3 mm的結(jié)節(jié)以及非結(jié)節(jié)3類,每個結(jié)節(jié)和非結(jié)節(jié)有一個唯一的編號,然后定義了結(jié)節(jié)所在的CT 圖像文件以及在圖像上的具體坐標。其中,直徑大于3 mm 的結(jié)節(jié)詳細記錄了結(jié)節(jié)的病變特征、結(jié)節(jié)所在CT圖像的z軸坐標,對應(yīng)的圖像文件的名字以及結(jié)節(jié)在每張CT圖像上的具體坐標位置。結(jié)節(jié)病變特征以characteristics標記開始,分別從精細度、內(nèi)部結(jié)構(gòu)、鈣化程度、球形度、邊緣、分葉、毛刺征、紋理、惡性程度9個方面描述結(jié)節(jié)的病變特征,每個直徑大于3 mm 的結(jié)節(jié)由一對characteristics 標記組成。結(jié)節(jié)分為4 個級別:(1)未知(無可用數(shù)據(jù));(2)良性或非惡性疾??;(3)原發(fā)性肺癌;(4)轉(zhuǎn)移性病變。根據(jù)這個數(shù)據(jù)集可以在患者和結(jié)節(jié)兩個層面進行診斷。在該數(shù)據(jù)集的基礎(chǔ)上,研究者可以對比計算機輔助檢測和診斷肺癌性能及其臨床診斷價值,目前它的使用越來越廣泛。
LUNA16[9]數(shù)據(jù)集是最大公用肺結(jié)節(jié)數(shù)據(jù)集LIDCIDRI 的子集,包括888 例低劑量胸部CT 薄層平掃圖像,分為10 個子集,結(jié)節(jié)的平均直徑大小為8.31 mm。LUNA16 挑戰(zhàn)[10]將LIDC-IDRI 數(shù)據(jù)集中切片厚度大于2.5 mm 和肺結(jié)節(jié)小于3 mm 的CT 影像刪除,同時將切片space不一致以及缺失部分切片的CT也去除,剩下的就是LUNA16數(shù)據(jù)集。每個CT影像包含胸腔的多個軸向切片,由 .mhd 和 .raw 文件共同組成。在 888 套 CT 影像中,共有36 378 個結(jié)節(jié)被標出(LIDC-IDRI 標注的),有些結(jié)節(jié)只有1位專家標注,有些有2位,最好的情況是4 位專家都進行了標注,根據(jù)這個規(guī)則,分別有2 290、1 602、1 186、777 個結(jié)節(jié)由至少1、2、3、4 位專家標注,LUNA16 選取至少由3 位專家標注的1 186 個結(jié)節(jié)作為最后要檢測的區(qū)域,也就是做實驗時下載的數(shù)據(jù),目前它的使用也越來越廣泛。
圖1 五種不同類型的肺結(jié)節(jié)
2017年,數(shù)據(jù)科學碗(DSB)是由Kaggle組織的一項挑戰(zhàn)[11],它發(fā)布的數(shù)據(jù)集是由美國國家癌癥研究中心提供的高風險患者的高分辨率DICOM格式的低劑量胸部CT 掃描圖像。CT 掃描分為兩個階段:DSB1 和 DSB2。stage2 中的掃描件質(zhì)量會比stage1 中的高,通常體現(xiàn)在有更薄的切片。此數(shù)據(jù)集提供患者級別的標注,指示病人是否在掃描后一年內(nèi)被診斷為癌癥,以爭取早發(fā)現(xiàn)早治療的最佳治療時間。該數(shù)據(jù)集的訓練集、驗證集、測試集各有1 397、198、506 個病例,結(jié)節(jié)的平均直徑大小為13.68 mm。由于該數(shù)據(jù)集中掃描圖像的分辨率、掃描參數(shù)來源和質(zhì)量各不相同,CT 掃描的來源也沒有公布,如果模型是在其他數(shù)據(jù)集上評估的,無法知道這些數(shù)據(jù)中的樣本是否已包含在DSB數(shù)據(jù)集中。該數(shù)據(jù)集由于使用限制目前沒有公開使用。
天池醫(yī)療AI 大賽是2017 年由阿里云、英特爾和零氪科技聯(lián)合主辦的一項挑戰(zhàn)[12],它發(fā)布了Ali Tianchi數(shù)據(jù)集,大賽數(shù)據(jù)集提供數(shù)千份高危患者的低劑量胸部CT 影像(mhd 格式)數(shù)據(jù),每個影像包含胸腔的多個軸向切片。每個影像包含的切片數(shù)量會隨著掃描機器、掃描層厚和患者的不同而有差異。Mhd 文件具有包含關(guān)于患者ID 的必要信息的頭部,以及切片厚度的掃描參數(shù)。所有CT影像的層厚小于2 mm。在初賽階段,訓練數(shù)據(jù)800例,測試數(shù)據(jù)200例,其中5~10 mm結(jié)節(jié)和10~30 mm結(jié)節(jié)各占50%。復賽階段,訓練數(shù)據(jù)1 600例,測試數(shù)據(jù)200 例,其中5~10 mm 結(jié)節(jié)占70%,10~30 mm 結(jié)節(jié)占30%。訓練集給出了結(jié)節(jié)位置和直徑大小的標注信息,是以一個三維的正方形框標注出來的。該數(shù)據(jù)集由于使用限制目前沒有公開使用。
該數(shù)據(jù)集[13]是由SPIE、AAPM、NCI 和來自芝加哥大學、密歇根大學和橡樹嶺國家實驗室,在2015年發(fā)起的一項挑戰(zhàn)LUNGx 提供的。這一挑戰(zhàn)的目標是在CT掃描中將肺結(jié)節(jié)分類為良性或者惡性。DICOM圖像分為校準和測試兩個階段。校準裝置包括胸部CT掃描10次,其中5次僅顯示一個良性結(jié)節(jié),5次僅顯示一個惡性結(jié)節(jié)。標注包括結(jié)節(jié)的位置和診斷為良性或惡性的類別。測試數(shù)據(jù)集包含60 個胸部CT 掃描,共73 個結(jié)節(jié)(其中有13個病例包含兩個結(jié)節(jié))。
美國國家肺篩查試驗(NLST)[1]是一項隨機對照試驗,目的是確定與胸片篩查相比,用低劑量螺旋CT篩查肺癌是否能降低高危人群肺癌的死亡率。數(shù)據(jù)收集2009年12月31日之前的癌癥診斷和死亡數(shù)據(jù),包含15個子數(shù)據(jù)庫,優(yōu)點:數(shù)據(jù)集全面。這些數(shù)據(jù)包含參與者特征、篩查考試結(jié)果、診斷程序、肺癌和死亡率。擁有超過75 000 的CT 圖像,對于基于深度學習的檢測模型是非常有利的。另外,有超過1 200 張來自NLST 肺癌患者的病理圖像,但只供查看。
這個數(shù)據(jù)集[14]是由Nelson研究所提供的,它是歐洲最大的CT肺癌篩查試驗中心。每個掃描都包含對病灶的標注,包括結(jié)節(jié)的空間位置和類型。真結(jié)節(jié)的標簽為1,無關(guān)發(fā)現(xiàn)的標簽為2(與癌癥無關(guān))。數(shù)據(jù)集包含55個CT掃描病例,其中5個病例有標注。對于剩下的CT掃描病例,用于測試CAD 系統(tǒng)的性能,標注并沒有公開。在Nelson 的研究中,研究結(jié)果分為四組:一類是含脂肪結(jié)節(jié),屬于良性鈣化或含有其他良性特征;第二類是體積小于50 mm3的結(jié)節(jié);第三類包含實性結(jié)節(jié)、亞實性結(jié)節(jié)以及體積在50~500 mm3之間的非實性結(jié)節(jié);較大的結(jié)節(jié)歸入第四類,如果病人含有這一類結(jié)節(jié)將被交給肺科醫(yī)生診斷。
在丹麥肺癌篩查試驗[15]中,兩位經(jīng)驗豐富的胸部放射科醫(yī)生對肺癌高風險患者的圖像進行了評估。共有823 例患者,1 385 個結(jié)節(jié)被診斷,其中233 個結(jié)節(jié)因被分類為良性鈣化而排除,共留下718 個病例和1 152 個結(jié)節(jié)。采用手動測量方法將小于3 mm的結(jié)節(jié)作為是初步評估陽性結(jié)果的下限。放射科醫(yī)生在不知道肺癌的診斷記錄的情況下根據(jù)裂周結(jié)節(jié)、實性結(jié)節(jié)、亞實性結(jié)節(jié)或非實性結(jié)節(jié)(磨玻璃結(jié)節(jié))記錄了尖銳腫瘤和惡性腫瘤的觀察結(jié)果。表1 總結(jié)了用于開發(fā)深度學習肺結(jié)節(jié)檢測算法的數(shù)據(jù)集。
表1 用于肺結(jié)節(jié)檢測的CT掃描數(shù)據(jù)集
為了分析深度學習肺結(jié)節(jié)檢測算法的性能,有不同的評測指標被提出。在所綜述的論文里面,用到的評測指標有靈敏度(SE)、特異度(SP)、準確度(ACC)、精準率(PPV)、F1-score、ROC曲線、FROC曲線、AUC以及在ANODE09 挑戰(zhàn)賽中引入的另一種測量方法,競爭性能指標(CPM)[14],后來在LUNA16挑戰(zhàn)賽中用于評估不同模型的性能。用于評估肺結(jié)節(jié)檢測算法性能的不同指標見表2。
典型的基于深度學習的肺結(jié)節(jié)檢測框架有兩個主要任務(wù)。第一個是檢測候選結(jié)節(jié),盡可能從CT 掃描圖像中檢測出所有的真實結(jié)節(jié),結(jié)果通常包括大量的假陽性。第二個任務(wù)是區(qū)分結(jié)節(jié)和非結(jié)節(jié),用于減少前一步產(chǎn)生的大量假陽性。有些工作不使用這種兩階段策略,通過訓練一個端到端的結(jié)節(jié)檢測框架,將結(jié)節(jié)候選檢測和假陽性減少整合到一個模型中共同訓練,在降低模型復雜度以及推理時間的情況下提高檢測性能。在肺結(jié)節(jié)檢測中,常用的深度學習方法有二維卷積神經(jīng)網(wǎng)絡(luò)(Two Dimension Convolutional Neural Network,2D CNN)、三維卷積神經(jīng)網(wǎng)絡(luò)(Three Dimension Convolutional Neural Network,3D CNN)和更快速的區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Faster Regions Convolutional Neural Network,F(xiàn)aster R-CNN)等。本文將根據(jù)典型的研究成果來介紹以上深度學習方法在肺結(jié)節(jié)檢測中的應(yīng)用情況。
二維卷積神經(jīng)網(wǎng)絡(luò)意味著二維的卷積核是在二維圖像上滑動的或者說深度神經(jīng)網(wǎng)絡(luò)的輸入是二維的,但是這并不意味著這些框架都會損失結(jié)節(jié)所有的三維信息。其中有些方法利用相鄰的肺部切片或者不同的軸向切割來保留結(jié)節(jié)立體的信息。
Van Ginneken 等人[16]對 OverFeat 網(wǎng)絡(luò)的特征進行了遷移學習,將用于自然圖像中的目標檢測特征用于計算機斷層掃描中的肺結(jié)節(jié)檢測。首先使用FDA[17]提供的CAD 系統(tǒng)生成候選結(jié)節(jié),得到每個候選結(jié)節(jié)的位置信息以及一個表示該位置是結(jié)節(jié)的可能性的分數(shù)。然后為每個候選結(jié)節(jié)在2D切片中分別提取二維矢狀面(x)、冠狀面(y)和軸向面(z)方向上的50 mm×50 mm大小的圖像塊,并利用Hounsfield單元重標和線性插值方法將圖像塊插值為221×221像素大小。樣本塊輸入OverFeat網(wǎng)絡(luò),從OverFeat的第一個全連接層提取4 096個特征,并喂入線性支持向量機(SVM)進行分類。對于每個方向的特征,通過采用早期融合和晚期融合這兩個策略來收集結(jié)節(jié)更多的二維信息,其中晚期融合的效果更好,完整的檢測模型在LIDC-IDRI 數(shù)據(jù)集上CPM 達到0.71。實驗表明,結(jié)合深度學習特征的分類結(jié)果和商業(yè)CAD的結(jié)果,比單獨使用商業(yè)CAD的結(jié)果好,表明自然圖像分類任務(wù)的CNN特征在醫(yī)學數(shù)據(jù)的檢測任務(wù)中具有巨大的潛力。但是商用CAD系統(tǒng),漏檢了超過20%以上的候選結(jié)節(jié),該CAD系統(tǒng)只能檢測4 mm 到30 mm 之間的實性結(jié)節(jié),在此范圍之外的結(jié)節(jié)和非實性結(jié)節(jié)被漏檢,對檢測性能產(chǎn)生了一定的影響。
Setio等人[18]提出了基于多視角的2D-CNN,用于肺結(jié)節(jié)檢測的假陽性減少任務(wù)中。首先將針對實性結(jié)節(jié)、亞實性結(jié)節(jié)和大結(jié)節(jié)的檢測模型聯(lián)合進行檢測獲得候選結(jié)節(jié),3 種檢測算法聯(lián)合時靈敏度達到了94.4%(1 120/1 186),檢測性能有了很大提升,但是含有大量假陽性。因此第二部分進行去假陽性,網(wǎng)絡(luò)包括9個通道,每個通道的輸入是在候選位置截取的不同視圖的圖像塊,視圖間隔為45°,每個通道的最后一層都是全連接層,這些全連接層會按不同方式級聯(lián)起來,得到最后的分類結(jié)果。該方法利用了9 個視圖,結(jié)果明顯優(yōu)于3 個視圖(矢狀面、冠狀面和橫截面)或1個視圖的方法。此外,在不同視圖的級聯(lián)方式中,晚期融合的結(jié)果最好。在公開可用的LIDC-IDRI數(shù)據(jù)集的888次掃描中,該方法在每個掃描1 次和4 次假陽性時分別達到了85.4%和90.1%的高檢測靈敏性,CPM 值為0.824。此外該方法在ANODE09 和DLCST 數(shù)據(jù)集上進行了評測,在ANODE09數(shù)據(jù)集上CPM 達到了0.637,在DLCST數(shù)據(jù)集當每個掃描6 次假陽性時達到了76.5%的靈敏性,實驗表明該方法有較好的魯棒性。該文獻構(gòu)建了基于多視角卷積神經(jīng)網(wǎng)絡(luò)的肺結(jié)節(jié)輔助檢測系統(tǒng),使用肺結(jié)節(jié)2D 多視角圖像進行卷積特征提取和特征融合,最終完成肺結(jié)節(jié)檢測任務(wù)。但是為獲取2D 的多視角圖像,在前期需要建立3D 肺結(jié)節(jié)圖像,該過程復雜并且受到三維重建過程中插值算法的影響。其次多個2D視圖的融合在一定程度上能體現(xiàn)3D 信息,但不能更充分地利用3D信息。
表2 用于深度學習肺結(jié)節(jié)檢測論文中的評測指標
趙鵬飛等人[19]采用快速邊緣檢測方法和二維高斯概率密度函數(shù)構(gòu)建肺結(jié)節(jié)候選區(qū)域,然后將結(jié)節(jié)候選區(qū)域輸入多輸入卷積神經(jīng)網(wǎng)絡(luò)實現(xiàn)疑似肺結(jié)節(jié)區(qū)域標注,同時在相鄰的CT影像中進行重點檢測。模型選取了3種不同大小的輸入,分別為10×10 像素、20×20 像素和30×30 像素。在LIDC-IDRI 數(shù)據(jù)集上進行評測,提出的多輸入卷積神經(jīng)網(wǎng)絡(luò)在假陽性率為0.1時達到80%的靈敏度,平均檢出率為85.51%。提出的多輸入卷積神經(jīng)網(wǎng)絡(luò)肺部CT圖像肺結(jié)節(jié)檢測方法在結(jié)節(jié)檢出上具有較好的性能,同時相比于其他傳統(tǒng)方法能夠提高微、小結(jié)節(jié)的檢出率,但是其假陽率較高,特別是對于噪聲較高的CT圖像,血管、各級支氣管等也會對檢測造成影響。
Xie 等人[20]提出的結(jié)節(jié)檢測框架,主要是基于2D Faster R-CNN[21]改進的網(wǎng)絡(luò)模型。與原有網(wǎng)絡(luò)相比,該方法使用了兩個區(qū)域生成網(wǎng)絡(luò)(RPN)和一個反卷積結(jié)構(gòu)。肺結(jié)節(jié)檢測網(wǎng)絡(luò)由三部分組成,分別是基于VGG16的特征提取網(wǎng)絡(luò)、區(qū)域生成網(wǎng)絡(luò)和興趣區(qū)域分類網(wǎng)絡(luò)。為了整合結(jié)節(jié)的3D 信息和學習結(jié)節(jié)不同的特征,分別對3 種切片訓練了3 種模型并進行融合獲得候選模型。在LUNA16數(shù)據(jù)集上進行訓練時,篩選出被預(yù)先判別錯誤的具有代表性和難以辨別的結(jié)節(jié)用于再次對模型進行訓練,以增強模型的魯棒性和提高結(jié)節(jié)檢測任務(wù)的靈敏度。其次,設(shè)計了一種基于二維CNN的增強結(jié)構(gòu),用于減少上一步產(chǎn)生得假陽性。在這一階段,假陽性候選結(jié)節(jié)與真實結(jié)節(jié)之間存在嚴重的失衡,分別采用了平移、水平反射的數(shù)據(jù)擴充、預(yù)篩選負樣本以及對負樣本進行下采樣的方法用于解決正負樣本不平衡問題。結(jié)節(jié)檢測模型在LUNA16 數(shù)據(jù)集上評測,檢測靈敏度為86.42%,CPM 值為0.775。進行假陽性減少后,在每個掃描0.125 次和0.25 次假陽性時,靈敏度分別達到73.4%和74.4%,AUC 為0.954,CPM 為0.790。結(jié)果表明,該方法能較好地實現(xiàn)肺結(jié)節(jié)的準確檢測,但是仍然存在靈敏度低,假陽性高的問題,采用部分切片的方法不能充分利用CT 序列的三維空間信息,無法有效提取結(jié)節(jié)的立體特征。
三維卷積神經(jīng)網(wǎng)絡(luò)是利用三維數(shù)據(jù)進行三維卷積,使用3D卷積核學習結(jié)節(jié)立體特征有助于結(jié)節(jié)檢測和分類性能的提升。有些工作針對不同的階段運用了二維和三維結(jié)合的方法。
Golan等人[22]采用三維深度卷積神經(jīng)網(wǎng)絡(luò)來檢測肺結(jié)節(jié),其中沒有采取肺部分割以及假陽性減少步驟。通過反向傳播算法訓練20 層的深度卷積神經(jīng)網(wǎng)絡(luò),從三維輸入數(shù)據(jù)中提取有價值的結(jié)節(jié)立體特征,用于檢測CT圖像樣本塊中的肺結(jié)節(jié)。對于大小為[65,764]×512×512的三維CT圖像,在CNN上應(yīng)用滑動窗口方法,通過對CNN在不同位置的輸出進行平均,計算出與CT掃描大小相同的三維投票網(wǎng)格。該算法采用LIDC-IDRI數(shù)據(jù)集上由4 個醫(yī)生標記的結(jié)節(jié)進行評測,在10 FPs/scan和20 FPs/scan 時靈敏度分別達到71.2%、78.9%。該算法在三維肺結(jié)節(jié)檢測工作上進行了探索,但是存在靈敏度低和假陽性較多的問題;也提出了幾點改進的建議,比如對測試數(shù)據(jù)采用肺部分割步驟來降低假陽性,或者增加假陽性減少步驟等來提高結(jié)節(jié)檢測性能。
在文獻[23]中,提出了一種基于三維卷積神經(jīng)網(wǎng)絡(luò)的肺結(jié)節(jié)自動檢測算法。該算法將具有固定輸入大小的三維卷積神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換為可以采用任意大小輸入的三維全卷積網(wǎng)絡(luò)(FCN),F(xiàn)CN可以在一次掃描中高效地生成整個圖像的分數(shù)圖。先是采用一個3D CNN 將從LIDC-IDRI 數(shù)據(jù)集中提取出來的感興趣區(qū)域樣本塊分類為包含結(jié)節(jié)和不包含結(jié)節(jié)。然后將這個CNN轉(zhuǎn)換為FCN 網(wǎng)絡(luò),用于篩選出難分類的負樣本,以此再去訓練CNN用于分類任務(wù),再轉(zhuǎn)換為新的FCN網(wǎng)絡(luò),生成候選結(jié)節(jié)。將得到的假陽性結(jié)果用于訓練第三個CNN,以此來減少假陽性。與在整個輸入圖像中應(yīng)用CNN的滑動窗口方法相比,F(xiàn)CN 方法的速度提高了800 倍,從而快速生成單個病例的輸出分數(shù)。篩選階段,在LIDCIDRI 數(shù)據(jù)集的25 個驗證集上進行評測,該檢測模型在22.4 FPs/scan 時的靈敏度為80%,在563 FPs/scan 時的靈敏度為95%。降假陽性后在15.28 FPs/scan 時,CNN的靈敏度達到80%。該文獻成功地將二維全卷積神經(jīng)網(wǎng)絡(luò)擴展到了三維,也是首次將3D FCN用于肺結(jié)節(jié)的檢測,但是檢測結(jié)果含有大量假陽性,在使用鑒別力CNN降假陽性后,靈敏度有待提高。
苗光等人[24]提出了一種基于端到端的二維全卷積目標定位網(wǎng)絡(luò)(2D FCN)與三維立體式目標分類卷積神經(jīng)網(wǎng)絡(luò)(3D CNN)相結(jié)合的肺結(jié)節(jié)檢測方法。首先采用2D全卷積神經(jīng)網(wǎng)絡(luò)對所有CT圖像進行初步檢測,快速識別和定位CT 圖像中的疑似結(jié)節(jié)區(qū)域,輸出一張與原圖尺寸相同且被標記好的圖像。然后計算疑似結(jié)節(jié)區(qū)域的坐標,根據(jù)坐標值提取疑似結(jié)節(jié)的三維立體圖像塊用于訓練3D 卷積神經(jīng)網(wǎng)絡(luò),以此對候選結(jié)節(jié)做二分類處理以去除假陽性。在LIDC-IDRI 數(shù)據(jù)集上平均每個掃描36.2 個假陽性時,結(jié)節(jié)初步檢測靈敏度可達98.2%;采用去假陽性之后,每個掃描1 次和4 次假陽性時分別達到了87.3%和97.0%的靈敏度。實驗結(jié)果表明,所提方法對三維CT 圖像的肺結(jié)節(jié)檢測具有很高的適用性,取得了較高的召回率和準確率。該框架易于擴展到其他3D 醫(yī)療圖像的目標檢測任務(wù)中,對輔助醫(yī)師診治具有重要的應(yīng)用價值。但是在采用3D卷積神經(jīng)網(wǎng)絡(luò)去假陽性時,采用40×40×26像素的圖像塊,在模型訓練中對小結(jié)節(jié)的識別能力較弱,而對其他背景干擾信息學習較多,會對小結(jié)節(jié)的信息學習不充分,導致效果不理想。
文獻[25]的研究主要用于肺癌的自動診斷,由結(jié)節(jié)檢測和評估結(jié)節(jié)的惡性程度倆部分組成。第一個模型是一個三維的區(qū)域生成模型,用于提取所有潛在的肺部結(jié)節(jié)。第二個模型是基于置信區(qū)間選擇排名前五的肺結(jié)節(jié)圖像,以此來判斷患有癌癥的可能性,于此同時,結(jié)合leaky noisy-or gate機制獲取患者患癌的概率。檢測模型是基于3D U-Net骨干網(wǎng)絡(luò)的3D版本的RPN模型,用來預(yù)測結(jié)節(jié)的邊界框。在模型進行測試時由于內(nèi)存的限制,CT 掃描被裁剪為208×208×208 的圖像塊。訓練時通過引入難例挖掘機制,使得模型更為關(guān)注困難樣本、正負樣本比例更為平衡。采用DSB數(shù)據(jù)集198例驗證集對模型進行評估,CPM為0.856 2,AUC為0.87。當閾值為0.5,分類準確率為81.42%。此外,leaky noisy-OR模型的交叉熵損失為0.406 0。該方案贏得了Data Science Bowl 2017 大賽的第一名。盡管該算法在本次癌癥預(yù)測比賽中取得了不錯的成績,但這項任務(wù)本身對臨床應(yīng)用存在明顯的局限性,比如沒有考慮結(jié)節(jié)的增長速度,快速增長的結(jié)節(jié)通常很危險。該工作對于小結(jié)節(jié)并沒有追求較高的檢測精度,但是可以通過添加unpooling層以合并更精細的信息,或者減小錨框的大小進行改進。
Ding 等人[26]受到深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)在自然圖像識別領(lǐng)域應(yīng)用成功的啟發(fā),提出了一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的新型肺結(jié)節(jié)檢測方法。首先在Faster RCNN網(wǎng)絡(luò)結(jié)構(gòu)中引入反卷積結(jié)構(gòu),實現(xiàn)候選結(jié)節(jié)檢測,然后提出一個九層的3D DCNN 用于假陽性減少。候選結(jié)節(jié)檢測網(wǎng)絡(luò)由一個用于提取疑似結(jié)節(jié)區(qū)域(ROI)的區(qū)域生成網(wǎng)絡(luò)RPN 和一個識別ROIs 是否是結(jié)節(jié)的ROI 分類器組成。Faster R-CNN 起初是自然圖像上訓練的,在肺部圖像上表現(xiàn)不佳,而且肺結(jié)節(jié)尺寸過小難以提取特征,因此采用了一個反卷積層結(jié)構(gòu)加到VGG16net的卷積層之后,作為共享特征層,可以節(jié)省訓練兩個深度卷積神經(jīng)網(wǎng)絡(luò)的計算成本。為了減少假陽性結(jié)節(jié)的數(shù)量,采用了3D DCNN 方法。2017 年,該算法在LUNA16挑戰(zhàn)[27]中結(jié)節(jié)檢測階段排名第一,CPM值為0.891,展示了該方法在結(jié)節(jié)檢測方面的優(yōu)越性能。另外,在每個掃描1 次和4 次假陽性時分別實現(xiàn)了92.2%和94.4%的高檢測敏感性,在每個掃描有15 個候選結(jié)節(jié)時,結(jié)節(jié)候選檢測的靈敏度達到94.6%。如果沒有引入反卷積層,每個掃描25.8 次假陽性時靈敏度為81.7%。該算法在候選結(jié)節(jié)檢測階段采用了二維與三維相結(jié)合的方法,使用反卷積結(jié)構(gòu)改進了Faster R-CNN網(wǎng)絡(luò),使得結(jié)節(jié)的檢測性能有了很大提升,也給結(jié)節(jié)檢測的后續(xù)研究提供了方向,比如擴展為三維的方法。
Zhongliu_Xie團隊在LUNA16挑戰(zhàn)賽[27]中提出了一個3D Region Proposal U-Net模型,該網(wǎng)絡(luò)具有Densenet和Resnet 網(wǎng)絡(luò)的學習功能。采用的方法拋棄了傳統(tǒng)的兩階段模式,訓練了一個單獨的端到端檢測網(wǎng)絡(luò),沒有額外的假陽性減少階段。提出的網(wǎng)絡(luò)結(jié)構(gòu)借鑒了Faster R-CNN框架中的區(qū)域生成網(wǎng)絡(luò)(RPN),并進行了拓展使其適應(yīng)3D patch的輸入。此外,模型設(shè)計借鑒了DenseNet中的密集學習、ResNet中的殘差學習和U-Net在小目標檢測方面的經(jīng)驗,CPM 值為0.922 6。該算法將結(jié)節(jié)候選檢測和假陽性減少整合到一個模型中共同訓練,在降低模型復雜度以及推理時間的情況下提高了檢測性能。
在 LUNA16 挑戰(zhàn)賽[27]中,LUNA16FONOVACAD 在構(gòu)造結(jié)節(jié)檢測網(wǎng)絡(luò)時受到Kaggle2017 數(shù)據(jù)科學碗比賽第一名團隊工作[25]的啟發(fā),提出了一種基于3D U-Net網(wǎng)絡(luò)的結(jié)節(jié)檢測體系結(jié)構(gòu),在假陽性減少階段,將3 個3D CNN結(jié)構(gòu)集成用于減少假陽性。3D DCNN模型分為3個階段進行描述,在每個階段之后,訓練集被縮減,留下難以分類的樣本,這使得每個網(wǎng)絡(luò)能夠?qū)W習結(jié)節(jié)不同的特征,用來更好地鑒別結(jié)節(jié)。在LUNA16 數(shù)據(jù)集上使用10倍交叉驗證進行評估,F(xiàn)P/TP比為16時,結(jié)節(jié)檢測網(wǎng)絡(luò)的靈敏度為99.1%,CPM 達到了0.947,在LUNA16挑戰(zhàn)賽排行榜中排名第三。此外,該項工作在沒有應(yīng)用任何額外的全連接層來加快訓練的速度的情況下取得了不錯的效果。
文獻[28]設(shè)計了兩個三維深度雙路徑網(wǎng)絡(luò)(DPN),分別用于結(jié)節(jié)檢測和結(jié)節(jié)分類。針對結(jié)節(jié)檢測問題,設(shè)計了一個3D Faster R-CNN 網(wǎng)絡(luò)結(jié)構(gòu),其中結(jié)合了3D雙路徑塊和一個類似U-Net 的編碼器-解碼器結(jié)構(gòu)來學習結(jié)節(jié)的特征,將96×96×96的3D樣本塊輸入3D DPN網(wǎng)絡(luò),利用26個三維雙路徑塊來學習更高層次的特征,最后將所有檢測到的結(jié)果合并在一起,檢測結(jié)構(gòu)如圖2所示。針對結(jié)節(jié)分類,以候選結(jié)節(jié)為中心裁切為32×32×32 的3D 樣本輸入卷積層,利用30 個三維雙路徑塊來學習更高層次的特征,然后使用GBM 將候選結(jié)節(jié)進分為良性和惡性。通過將結(jié)節(jié)尺寸與原始三維裁剪結(jié)節(jié)像素大小和GBM分類器相結(jié)合,得到了86.12%的平均測試精度。最后從結(jié)節(jié)級別和患者級別在LUNA16數(shù)據(jù)集中對模型進行了評估。在沒有采用任何假陽性減少策略下,靈敏度為95.8%,CPM 為0.842,該模型結(jié)合3D DPN 特征和3D Faster R-CNN 網(wǎng)絡(luò)實現(xiàn)結(jié)節(jié)檢測準確率達90.44%。
圖2 3D DPN26 Faster R-CNN結(jié)構(gòu)
為了驗證所提出的深度三維雙路徑網(wǎng)絡(luò)(3D DPN26 Faster R-CNN)的檢測性能,使用了一個深度三維殘差網(wǎng)絡(luò)(3D Res18 Faster R-CNN)作為對比,該網(wǎng)絡(luò)的編碼器部分是一個18 層的深度3D 殘差網(wǎng)絡(luò)。這個網(wǎng)絡(luò)其實是對文獻[25]中結(jié)節(jié)檢測網(wǎng)絡(luò)模型在LUNA16 數(shù)據(jù)集上的應(yīng)用,由于LUNA16數(shù)據(jù)集中結(jié)節(jié)的大小平均要比DSB數(shù)據(jù)集中的結(jié)節(jié)要小,因此將128×128×128調(diào)整為96×96×96,相應(yīng)的網(wǎng)絡(luò)的輸出就變?yōu)?4×24×24×15,其次是anchor 的大小由(10,30,60)調(diào)整為(5,10,20),這樣可以提高對小結(jié)節(jié)的檢測精度。采用18個殘差塊的3D Faster R-CNN,靈敏度為94.6%,CPM為0.834。兩個網(wǎng)絡(luò)模型相比較而言,3D DPN網(wǎng)絡(luò)利用了殘差學習和密集連接的優(yōu)點,實現(xiàn)了新特征的融合。深度DPN比殘差網(wǎng)絡(luò)更緊湊、性能更好,而且減少了計算成本。
在之前的深度學習方法中大多是基于監(jiān)督學習,訓練復雜的深度神經(jīng)網(wǎng)絡(luò)需要標記有g(shù)round truth的大型數(shù)據(jù)集,而這在許多醫(yī)學圖像領(lǐng)域通常是不適用的。文獻[29]用一個基于三維深度卷積神經(jīng)網(wǎng)絡(luò)的結(jié)節(jié)檢測框架DeepEM 來挖掘電子病歷(EMR)中的弱監(jiān)督標簽,用于肺結(jié)節(jié)的檢測。這是一種新穎的深度3D ConvNet 框架,具有期望最大化(EM)增強功能。電子病歷包含了關(guān)于每個醫(yī)療圖像的大量信息,NLST 數(shù)據(jù)集就擁有成千上萬與電子病歷(EMR)相關(guān)的肺部CT圖像。整個模型的訓練采用了3 個數(shù)據(jù)集:LUNA6 數(shù)據(jù)集為有監(jiān)督檢測,NLST 數(shù)據(jù)集為弱監(jiān)督檢測,Ali Tianchi 數(shù)據(jù)集為獨立測試集。其中在LUNA16 數(shù)據(jù)集上進行評測CPM為0.849,在Ali Tianchi數(shù)據(jù)集上評測CPM 為 0.764。 DeepEM 模型應(yīng)用在 LUNA16 和 Ali Tianchi 數(shù)據(jù)集上FROC 評分分別提高1.5%和3.9%,論證了電子病歷中不完全信息對改進深度學習算法的作用。這項工作通過對這個目前尚未開發(fā)的巨大的數(shù)據(jù)源進行探索和利用來提高肺部結(jié)節(jié)的檢測效果,顯示了深度學習方法結(jié)合電子病歷在結(jié)節(jié)檢測中獲益的潛力。電子病歷(EMR)可以從各種醫(yī)療機構(gòu)獲得,其中潛在的大量數(shù)據(jù)不需要專家的昂貴標注,進一步降低了檢測結(jié)節(jié)的成本。
Huang 等人[30]提出一個改進的3D CNN 來檢測肺結(jié)節(jié)。深度學習框架由3個3D CNN組成,每一個網(wǎng)絡(luò)采用不同大小的輸入圖像塊,分別為32×32×32、64×64×64、96×96×96,每個 CNN 的輸出通過使用 AdaBoost 分類器進行融合,稱這種新的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為聯(lián)合-卷積神經(jīng)網(wǎng)絡(luò)(A-CNN)。模型訓練時使用LUNA16和Tianchi 數(shù)據(jù)集,分為訓練、測試和驗證,分別包含14 674、1 795 和1 656 個結(jié)節(jié)。該模型在LUNA16 數(shù)據(jù)集進行評測,競爭性能指標(CPM)為0.876。該算法在充分利用肺結(jié)節(jié)空間信息的同時提出多尺度輸入,以適應(yīng)肺結(jié)節(jié)自身的尺度變化,但多尺度輸入所帶來的多個平行支路大大增加了網(wǎng)絡(luò)的計算量。
在LUNA16挑戰(zhàn)[27]中,中國平安科技公司的PAtech團隊提出的項目由結(jié)節(jié)檢測和假陽性減少兩部分組成。針對檢測問題,在Data Science Bowl 2017 大賽[11]的第一名的網(wǎng)絡(luò)模型基礎(chǔ)上發(fā)展了特征金字塔網(wǎng)絡(luò)(FPN)[31],在假陽性減少部分采用了兩個3D CNN分類器。結(jié)節(jié)檢測任務(wù)是基于特征金字塔網(wǎng)絡(luò)在各個輸出層獨立地進行預(yù)測,3D結(jié)節(jié)檢測模型結(jié)構(gòu)如圖3所示。該網(wǎng)絡(luò)包括一個前饋路徑和一個反饋路徑。在檢測階段,為了解決數(shù)據(jù)不平衡問題,采用了兩個解決措施。首先是將分類損失函數(shù)從交叉熵變?yōu)閒ocal loss函數(shù)[32],其次是采用難例挖掘機制。實驗表明后一個效果更好。在假陽性減少階段,使用了兩個3D DCNN進行分類。第一個網(wǎng)絡(luò)采用了多尺度的輸入,首先采用36×48×48的輸入得到基礎(chǔ)網(wǎng)絡(luò),然后利用20×36×36的輸入來微調(diào)基礎(chǔ)網(wǎng)絡(luò),實現(xiàn)了良好的結(jié)果;第二個網(wǎng)絡(luò)是基于3D U-Net 架構(gòu),輸入大小為32×32×32;最后的結(jié)果是兩種分類模型的融合。在LUNA16 數(shù)據(jù)集上采用10次交叉驗證,結(jié)節(jié)檢測任務(wù)CPM 為0.951,與現(xiàn)有方法相比,F(xiàn)PN網(wǎng)絡(luò)通過整合多尺度信息將不同深度的網(wǎng)絡(luò)特征圖通過橫向連接進行融合,將網(wǎng)絡(luò)較深的帶有豐富語義信息的特征圖與淺層帶有位置信息的特征圖融合,在不同的特征層進行獨立預(yù)測,不僅可以有效區(qū)分結(jié)節(jié)與正常組織、其他病變區(qū),精確檢測肺門區(qū)域結(jié)節(jié),而且能夠大幅度提升小尺寸結(jié)節(jié)的檢測效果。
圖3 結(jié)節(jié)檢測模型
PAtech 團隊采用與U-Net 類似的網(wǎng)絡(luò)結(jié)構(gòu)作為區(qū)域建議網(wǎng)絡(luò)的骨架網(wǎng)絡(luò),而謝未央等人[33]采用了重新開發(fā)的三維ResNeXt[34]網(wǎng)絡(luò)作為區(qū)域建議網(wǎng)絡(luò)的骨架網(wǎng)絡(luò)完成結(jié)節(jié)的初始檢測,在此基礎(chǔ)上,使用多尺度、多網(wǎng)絡(luò)融合的分類網(wǎng)絡(luò)去除初檢結(jié)果中的假陽性。去假陽性網(wǎng)絡(luò)由三維VGG與C3D網(wǎng)絡(luò)組成。由于在二維自然圖像的分類任務(wù)中ResNeXt網(wǎng)絡(luò)表現(xiàn)最優(yōu),將此網(wǎng)絡(luò)進行拓展用于三維肺結(jié)節(jié)的檢測,檢測性能的提升主要體現(xiàn)在參考特征金字塔結(jié)構(gòu),添加上采樣結(jié)構(gòu)進行多尺度檢測,使網(wǎng)絡(luò)適應(yīng)于不同大小的結(jié)節(jié)的檢測任務(wù)。在訓練以ResNeXt作為骨架網(wǎng)絡(luò)的FPN網(wǎng)絡(luò)時,直接訓練網(wǎng)絡(luò)得到的模型假陽性很高,因此,采用了分步訓練,成功解決ResNeXt 網(wǎng)絡(luò)與特征金字塔網(wǎng)絡(luò)結(jié)合時難以收斂的問題,降低了假陽性數(shù)量,提高了結(jié)節(jié)檢測性能。在使用了FPN 結(jié)構(gòu)之后,VGG 網(wǎng)絡(luò)的最高敏感度提高了12.4%。這得益于FPN 結(jié)構(gòu)中上采樣結(jié)構(gòu)的加入,對深層的語義信息和淺層的位置信息進行了融合,使得網(wǎng)絡(luò)能充分利用不同尺度的結(jié)節(jié)特征,有利于初檢網(wǎng)絡(luò)對結(jié)節(jié)的準確定位和分類,提高了不同大小的結(jié)節(jié)的檢出率。該文獻在LUNA16 數(shù)據(jù)集使用FROC 曲線展示了提出的肺結(jié)節(jié)檢測算法的最終檢測性能,7個假陽率點的平均敏感度(CPM)為0.959。此算法能有效地檢測出不同大小、不同形態(tài)的結(jié)節(jié)。對實性結(jié)節(jié)有良好的檢測效果,但是對磨玻璃結(jié)節(jié)的檢測效果有待提升。
在臨床實踐中,放射科醫(yī)生首先快速查看最大強度投影(MIP)圖像,粗略定位候選結(jié)節(jié),以便在特定切片上進一步檢查。MIP 是一種后處理方法,可以將3D 體素以最大強度投射到投影平面,增強了結(jié)節(jié)的可視化,因此被廣泛用于肺結(jié)節(jié)的檢測。受放射科醫(yī)師臨床方法學的啟發(fā),文獻[35]旨在探討應(yīng)用MIP圖像提高卷積神經(jīng)網(wǎng)絡(luò)(CNNs)進行肺結(jié)節(jié)自動檢測有效性的可行性,提出了一種基于CNN 的方法。將不同厚度(5 mm、10 mm、15 mm)MIP 圖像和1 mm 軸向切片的MIP 圖像分別輸入4 個二維卷積神經(jīng)網(wǎng)絡(luò),并分別做了對比實驗。將4 個模型進行融合后,每次掃描的假陽性為19.13時,CAD系統(tǒng)的靈敏度為95.36%。該方法增強了二維CT 切片圖像,使得具有更多代表性的空間信息,有助于通過血管形態(tài)區(qū)分結(jié)節(jié)。在假陽性減少階段,首先以上一階段獲得的候選結(jié)節(jié)為中心提取三維圖像塊,訓練三維卷積神經(jīng)網(wǎng)絡(luò)并將它們進行分類。該方法在LIDC-IDRI 數(shù)據(jù)庫的888 次掃描中,每次掃描1 次假陽性時靈敏度為92.67%,每次掃描2次假陽性時靈敏度為94.19%。實驗結(jié)果表明,利用MIP 圖像有助于檢測小尺寸結(jié)節(jié)(3~10 mm),減少假陽率,驗證了基于MIP 的CNNs 框架在CT 掃描中自動檢測肺結(jié)節(jié)的有效性。該算法提供了一種基于臨床方法的肺結(jié)節(jié)檢測系統(tǒng),對于放射科醫(yī)生而言更容易理解,也證明了將臨床篩查和CNN相結(jié)合的方法用于改善肺結(jié)節(jié)檢測的可行性,顯示了CNNs結(jié)合臨床方法學在結(jié)節(jié)檢測中獲益的潛力。
在肺結(jié)節(jié)檢測過程中,當樣本類別分布嚴重不均衡時,常常會導致模型無法學習少例樣本。在訓練過程中,正例樣本往往被淹沒在負例樣本里,導致網(wǎng)絡(luò)得不到有效訓練,直接訓練得到一個高性能的網(wǎng)絡(luò)是一個非常有挑戰(zhàn)性的任務(wù)。此外,由于肺結(jié)節(jié)自身形態(tài)、尺度等的差異以及肺實質(zhì)內(nèi)部結(jié)構(gòu)復雜,往往會產(chǎn)生許多難樣本,而這些難樣本往往是模型需要側(cè)重學習的,因此,為了有效解決這些問題,有以下幾個方法。
(1)數(shù)據(jù)增強(Data Augmentation)。在進行假陽性減少時,假陽性候選結(jié)節(jié)與真實結(jié)節(jié)之間存在嚴重的失衡,Xie等人[20]采用了3種方法用于解決正負樣本不平衡問題,分別是平移和水平反射的數(shù)據(jù)擴充、預(yù)篩選負樣本以及對負樣本進行下采樣的方法,使得正負樣本比例從大約500∶1 調(diào)為100∶1。在此基礎(chǔ)上,將分類錯誤的結(jié)節(jié)和具有代表性的結(jié)節(jié)挑選出來再次用于訓練,增強模型了魯棒性。
(2)實時樣本過濾(Online Sample Filtering)。為了解決易分和難分樣本比例不平衡的問題,Dou等[36]提出了實時樣本過濾(Online Sample Filtering)的方案,該方法可以在隨機梯度下降的過程中動態(tài)選擇難分樣本,增加其比例,既不需要中斷訓練過程,也不需要額外的測試計算量。相對于易分樣本來說,難分樣本通常會產(chǎn)生更大的分類損失,根據(jù)這個原理,在訓練的每個批次中,對樣本的損失進行排序,把損失大的前50%的樣本當作難分樣本,并從剩下的樣本中隨機選取一半作為簡單樣本,僅由選取出來的難分樣本和簡單樣本對網(wǎng)絡(luò)進行優(yōu)化。這種改動可使整個網(wǎng)絡(luò)的收斂速度變快。該算法在LUNA16 數(shù)據(jù)集的888 個CT 圖像上進行測試,在沒有利用在線樣本過濾策略時,檢測敏感度為94.3%,此時假陽性為286.2 FPs/scan,如果利用該策略,檢測敏感度可以提高到97.1%,同時假陽性的數(shù)量降低為219.1 FPs/scan。靈敏度提高了2.8%,假陽性減少了67.1 FPs/scan,表明了該方法的有效性。
(3)焦點損失函數(shù)(Focal Loss)。為了解決真假陽性結(jié)節(jié)分類不平衡的問題,很多工作在網(wǎng)絡(luò)訓練時將損失函數(shù)設(shè)置為焦點損失函數(shù)(Focal loss),該損失函數(shù)是由何凱明等人在標準交叉熵損失函數(shù)的基礎(chǔ)上改進的。一是難樣本的權(quán)重得到了增強,二是在正樣本周圍的負樣本的權(quán)重得到了降低。通過減小數(shù)據(jù)集中樣本分布不均帶來的影響的同時,加強對難樣本的學習,從而進一步提高網(wǎng)絡(luò)的識別效果。該方法的高效性在密集檢測網(wǎng)絡(luò)RetinaNet得到了驗證。PAtech在結(jié)節(jié)候選檢測和假陽性減少的模型中都采用了此方法[27],最終結(jié)果證明,焦點損失函數(shù)確實有效。
(4)難例挖掘(Hard Negative Mining)。負樣本的數(shù)量遠多于正樣本的數(shù)量,一些負樣本很容易被網(wǎng)絡(luò)區(qū)分,但是一些非結(jié)節(jié)與結(jié)節(jié)有著相似的外觀,很難準確的區(qū)分。目標檢測中常用Hard Negative Mining 來解決這個問題。方法步驟為:①將patch 輸入網(wǎng)絡(luò),得到候選邊框;②從中隨機選取N個負樣本;③負樣本按照置信分數(shù)從大到小排序;④選取前n個樣本作為Hard Negatives,其他的負樣本不計入Loss 計算。通過減少易于分類的樣本的權(quán)重,可以將訓練集中在難以分類的樣本上。PAtech 團隊[27]在訓練結(jié)節(jié)檢測網(wǎng)絡(luò)的過程中逐漸增加N的值來動態(tài)選擇難分樣本,在該工作中,發(fā)現(xiàn)對于樣本不平衡問題采用難例挖掘方法的效果比采用焦點損失函數(shù)的效果好。Liao 等人[25]也采用了此方法取得了很好的效果。
基于深度學習的肺結(jié)節(jié)檢測算法在訓練時也會遇到很多問題,比如由于正負樣本不平衡以及可供研究的醫(yī)學數(shù)據(jù)太少,模型在訓練中容易過擬合的問題,或者檢測的結(jié)果中假陽性過高的情況,不同的參數(shù)設(shè)置和訓練方法也會對結(jié)果產(chǎn)生影響。在Liao 等人[25]提出的工作中,3D 卷積核比2D 卷積核有更多的參數(shù),分類的樣本數(shù)量很有限,模型很容易在訓練集上過擬合。采用數(shù)據(jù)增強和交替訓練的方法來解決上述問題。訓練過程有三個階段:(1)將訓練好的檢測器權(quán)重轉(zhuǎn)移到分類器,并用標準模式訓練;(2)用梯度截斷訓練分類器,然后固定BN參數(shù);(3)交替訓練分類器和檢測器,并用梯度截斷和存儲的BN參數(shù)。謝未央等人[33]在訓練以ResNeXt作為骨架網(wǎng)絡(luò)的FPN網(wǎng)絡(luò)時,直接訓練網(wǎng)絡(luò)得到的模型假陽性率很高。因此,采用了三步訓練的方法,成功地降低了假陽性數(shù)量。訓練方法如下:(1)設(shè)置初始學習率為0.001,訓練不包含F(xiàn)PN模塊的ResNeXt基礎(chǔ)網(wǎng)絡(luò);(2)凍結(jié)ResNeXt網(wǎng)絡(luò)的權(quán)重,設(shè)置學習率為0.000 1,添加并訓練FPN 部分;(3)設(shè)置學習率為0.000 1,基于第二步訓練得到的模型參數(shù),訓練所有層,得到最后的模型。
在深度學習中,神經(jīng)網(wǎng)絡(luò)的訓練過程中的參數(shù)學習是基于梯度下降法進行優(yōu)化的,神經(jīng)網(wǎng)絡(luò)的權(quán)重初始化方法對(Weight Initialization)對模型的收斂速度和性能有著至關(guān)重要的影響。主要討論兩種權(quán)重初始化方法,Glorot 等人為了解決隨機初始化的問題提出來Xavier Initialization 初始化方法,適用的激活函數(shù)是sigmoid和tanh,思想是盡可能地讓輸入和輸出服從相同的分布,這樣就能夠避免后面層的激活函數(shù)的輸出值趨向于0,PAtech 使用了這個方法;何愷明提出的一種針對ReLU的初始化方法He Initialization(Kaiming Initialization)。謝未央等人[33]采用了這個初始化方法。當隱藏層使用ReLU時,效果是比Xavier Initialization好很多?,F(xiàn)在神經(jīng)網(wǎng)絡(luò)中,隱藏層常使用ReLU,權(quán)重初始化常用He Initialization這種方法。對所綜述的基于深度學習的結(jié)節(jié)檢測模型的訓練方法進行了比較,如表3所示。
表3 基于深度學習方法的結(jié)節(jié)檢測模型訓練方法結(jié)果比較
模型可解釋性對于醫(yī)療這種要求特別嚴格的行業(yè)來說是非常必要的,醫(yī)生在看模型結(jié)果的時候,更關(guān)注模型所產(chǎn)生結(jié)果的邏輯過程,因此對于模型可解釋性的探索是非常重要的。以結(jié)節(jié)檢測模型為例進行模型可解釋性分析[12],該模型主要是基于ResNet和FPN結(jié)構(gòu)的Faster R-CNN 網(wǎng)絡(luò),其中也采用了U-Net 的骨干網(wǎng)絡(luò),該算法在天池AI醫(yī)療大賽中獲得冠軍。在結(jié)節(jié)檢測模型可解釋性方面采用了對Loss求原圖導數(shù)的方法,這個導數(shù)代表了原圖中的每一個像素點對于最終結(jié)果的貢獻程度,列出了4個結(jié)果,如圖4所示。每個結(jié)果的左邊是結(jié)節(jié),右邊是對應(yīng)的熱力圖,熱力圖上越亮的點就代表了圖中敏感程度越高的點。
圖4 模型可解釋性
可以看到,圖4 的A 的左圖中心是一個結(jié)節(jié),結(jié)節(jié)的左側(cè)是一個血管,從4的A的右圖可以看出模型整個關(guān)注的區(qū)域是在結(jié)節(jié)上,而并沒有受到旁邊血管的干擾。圖4的B的左側(cè)是一個附著在肺壁旁邊的結(jié)節(jié),在右邊的熱力圖中,可以看到網(wǎng)絡(luò)只關(guān)注到了結(jié)節(jié)的部分,而沒有受到肺壁的干擾,這說明網(wǎng)絡(luò)關(guān)注到了應(yīng)該關(guān)注的結(jié)節(jié)的成分,而沒有受到其他物質(zhì)的干擾。4的C中是一個具有毛刺特征的結(jié)節(jié),從熱力圖中可以看出模型在一定程度地關(guān)注到了這一特征。4的D中是一個有空洞的結(jié)節(jié),可以看到模型也已經(jīng)關(guān)注到了這一點。在以后的研究中,需要探索更多的模型可解釋性方法。
為了更好地進行比較分析,表4列舉了各個算法所采用的數(shù)據(jù)集,模型驗證時采用的切片數(shù)量、結(jié)節(jié)數(shù)量,切片厚度,結(jié)節(jié)大小,每次掃描含有多少假陽性下的靈敏度,競爭性能指標(CPM),以及所采用的網(wǎng)絡(luò)結(jié)構(gòu)等。其中對于兩階段結(jié)節(jié)檢測算法記錄的結(jié)果是進行假陽性減少之后的結(jié)果,具體比較結(jié)果如表4所示。在這篇綜述中,共有8篇文章選擇LIDC-IDRI作為他們進行訓練和測試的數(shù)據(jù)集,有10 篇文章選擇LUNA16 作為他們進行訓練和測試的數(shù)據(jù)集。從所提出的不同方法中可以看出,一部分人把結(jié)節(jié)檢測分成兩個階段完成(結(jié)節(jié)候選檢測和假陽性減少),例如文獻[18,20,23,25,30,33,35],也有人拋棄了假陽性減少,只采用一個階段來完成對肺結(jié)節(jié)的檢測工作,例如文獻[16,22,25,27-29]。其次,所有選定文章中檢測肺結(jié)節(jié)的競爭性能指標(CPM)從0.637至0.959,CPM是FROC曲線中定義的7 個假陽性率點(1/8、1/4、1/2、1、2、4 和8 FPs/scan)的敏感度平均值,能夠綜合體現(xiàn)結(jié)節(jié)檢測系統(tǒng)的性能。在所綜述的文章中,Setio等人[18]、Liao等人[25]、Ding等人[26]、Zhu 等人[28]、Zhu 等人[29]、Dou 等人[36]、Huang 等人[30]實現(xiàn)了0.80以上的競爭性能指標。文獻[27]的LUNA16FONOVACAD[27]、PAtech[27]以及謝未央等人[33]實現(xiàn)了 0.90 以上的高競爭性能指標。其中在二維深度學習方法中,Setio 等人[18]獲得最佳 CPM 值 0.824;在三維深度學習方法中,謝未央等人[33]獲得最佳CPM 值0.959;其次Patech團隊[27]在LUNA16比賽中獲得最佳CPM值0.951,這3 個模型都是在LUNA16 數(shù)據(jù)集上進行評估的。值得注意的是,來自LUNA16 比賽的LUNA16FONOVACAD 團隊[27]使用 3D CNN 方法在精確率為 0.059,F(xiàn)P/TP 比為16 時,獲得了99.1%的高靈敏度。文獻[27]采用一階段的方法獲得了0.922 6 的高競爭性能指標,Zheng等人[35]采用倆階段的方法獲得了高靈敏度和低假陽率。
從表4可以看出,從2015年到2019年,越來越多的深度學習方法在肺結(jié)節(jié)檢測和假陽性減少方面產(chǎn)生了顯著效果,包括ConvNets、CNN、Overfeat、DCNN、FCN、R-CNN、Faster-RCNN 和 Feature Pyramid Networks 等。例如Van Ginneken 等人[16]對OverFeat 網(wǎng)絡(luò)的特征進行了遷移學習,將用于自然圖像中的目標檢測特征用于計算機斷層掃描中的肺結(jié)節(jié)檢測,競爭性能指標為0.71,表明自然圖像分類任務(wù)的CNN特征在醫(yī)學數(shù)據(jù)的檢測任務(wù)中具有巨大的潛力。Setio 等人[18]提出了一種新穎的CAD 系統(tǒng)用于假陽性的減少,該系統(tǒng)使用多視圖卷積網(wǎng)絡(luò)(ConvNets)進行肺結(jié)節(jié)的識別,在每次掃描1次和4 次假陽性時分別達到85.4%和90.1%的高檢測靈敏度。Ding 等人[26]受到深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)在自然圖像識別領(lǐng)域應(yīng)用成功的啟發(fā),提出了一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的新型肺結(jié)節(jié)檢測方法,首次將Faster RCNN網(wǎng)絡(luò)結(jié)構(gòu)中引入肺結(jié)節(jié)檢測工作中,并且在Faster R-CNN網(wǎng)絡(luò)結(jié)構(gòu)中引入反卷積結(jié)構(gòu),在每個掃描1次和4 次假陽性時分別實現(xiàn)了92.2%和94.4%的高檢測敏感性。2017 年,該算法在LUNA16 挑戰(zhàn)中結(jié)節(jié)檢測階段排名第一,CPM 值為0.891,展示了深度卷積神經(jīng)網(wǎng)絡(luò)在結(jié)節(jié)檢測方面的優(yōu)越檢測性能。Liao等人[25]在Faster R-CNN 應(yīng)用了U-Net 網(wǎng)絡(luò)的結(jié)構(gòu)骨架,在DSB 數(shù)據(jù)集上競爭性能指標為 0.856 2;PAtech 團隊[27]也在 Liao 等人[25]所做工作的啟發(fā)下發(fā)展了特征金字塔網(wǎng)絡(luò)(Feature Pyramid Networks),利用特征多尺度以及多層獨立預(yù)測的方法,使結(jié)節(jié)的檢測性能有了相當大的提升,競爭性能指標達到0.951,在LUNA16 挑戰(zhàn)賽排行榜保持第一。謝未央等人[33]采用了重新開發(fā)設(shè)計的三維ResNeXt[34]網(wǎng)絡(luò)作為區(qū)域建議網(wǎng)絡(luò)的骨架網(wǎng)絡(luò)完成結(jié)節(jié)的初始檢測,在此基礎(chǔ)上,使用多尺度、多網(wǎng)絡(luò)融合的分類網(wǎng)絡(luò)去除初檢結(jié)果中的假陽性,達到0.959 的高競爭性能指標,表明在二維情況下獲得更高準確度的網(wǎng)絡(luò),在三維情況下同樣可以獲得更高的準確度,這也為之后三維卷積神經(jīng)網(wǎng)絡(luò)的設(shè)計提供了參考。在文獻[35]中使用了最大密度投影(MIP)圖像,提出了一種基于臨床方法的肺結(jié)節(jié)檢測系統(tǒng),旨在探討應(yīng)用MIP圖像提高卷積神經(jīng)網(wǎng)絡(luò)(CNN)進行肺結(jié)節(jié)自動檢測有效性的可行性,在每次掃描1次和2次假陽性時分別達到92.67%和94.19%的高檢測靈敏度,表明利用MIP圖像有助于檢測小結(jié)節(jié)(3~10 mm),減少假陽率,驗證了基于MIP的CNN框架在CT 掃描中自動檢測肺結(jié)節(jié)的有效性,也證明了將臨床篩查和CNN相結(jié)合的方法用于改善肺結(jié)節(jié)檢測的可行性。
表4 所選文獻結(jié)節(jié)檢測模型結(jié)果比較
在本文工作中,綜述了不同的深度CAD 系統(tǒng)和模型,追求的共同目標是致力于減輕放射科醫(yī)師在肺結(jié)節(jié)檢測方面的研究。調(diào)查工作表明,從2015年到2019年,越來越多的深度學習方法在肺結(jié)節(jié)檢測和假陽性減少方面產(chǎn)生了顯著效果,CAD 系統(tǒng)在肺結(jié)節(jié)檢出方面的價值已得到肯定,尤其對于實性結(jié)節(jié)。所綜述的很多研究工作在網(wǎng)絡(luò)模型中引入了反卷積層,通過保留原始輸入圖像中的空間信息來提升小尺寸結(jié)節(jié)的檢測效果。U-Net網(wǎng)絡(luò),采用收縮路徑(以捕獲上下文內(nèi)容)和對稱擴展路徑(以實現(xiàn)精確定位)對精細層和粗糙層信息進行結(jié)合讓模型能做出遵從全局結(jié)構(gòu)的局部預(yù)測,不僅在醫(yī)療圖像分割領(lǐng)域表現(xiàn)突出,而且也對小尺寸結(jié)節(jié)的檢測提供了幫助。ResNet創(chuàng)造性地使用了“Shortcut Connection”,解決了梯度更新時梯度彌散的問題,使得網(wǎng)絡(luò)的深度大大提升,能夠提取到更高維度的特征,但是由于在檢測階段,網(wǎng)絡(luò)僅僅使用最后一層的特征圖,深度較深的網(wǎng)絡(luò)層的特征圖中,語義信息保留較好,但是空間信息會丟失很多。ResNet 與Faster R-CNN 的結(jié)合,可以使得在充分保持語義信息的同時保留更多的結(jié)節(jié)位置信息。大家知道,網(wǎng)絡(luò)低層的特征語義信息比較少,但是目標位置準確,高層的特征語義信息比較豐富,但是目標位置比較粗略。特征金字塔網(wǎng)絡(luò)的設(shè)計,在不同的特征層進行獨立預(yù)測,將不同深度的網(wǎng)絡(luò)特征圖用過橫向連接進行融合,將網(wǎng)絡(luò)較深的帶有豐富語義信息的特征圖與淺層帶有位置信息的特征圖融合,有利于程度較深的網(wǎng)絡(luò)進行檢測任務(wù),通過整合多尺度信息,不僅可以有效區(qū)分結(jié)節(jié)與正常組織、其他病變區(qū),精確檢測肺門區(qū)域結(jié)節(jié),而且能夠大幅度提升小尺寸結(jié)節(jié)的檢測效果。在所綜述的論文中,Liao等人采用基于ResNet和U-Net骨干網(wǎng)絡(luò)的Faster R-CNN網(wǎng)絡(luò)在DSB數(shù)據(jù)集上檢測結(jié)節(jié),競爭性能指標達到了0.856 2,PAtech 在Liao 等人的工作上添加了Feature Pyramid Networks,基于ResNet 和FPN 結(jié)構(gòu)的Faster R-CNN 網(wǎng)絡(luò)在LUNA16 數(shù)據(jù)集上檢測結(jié)節(jié),競爭性能指標達到了0.951,進一步提高了檢測精度,尤其在小結(jié)節(jié)檢測上。在實際應(yīng)用方面,醫(yī)生也會關(guān)心模型面向?qū)崟r性檢測方面的工作,這也是檢測任務(wù)在應(yīng)用上的目標。在目標檢測領(lǐng)域,實時性這一要求并沒有通用的評價標準,應(yīng)用領(lǐng)域也涉及到更多網(wǎng)絡(luò)的壓縮、加速和工程上的優(yōu)化乃至硬件層面的工作等。對于目標檢測這一任務(wù)而言,如果更關(guān)注實時性的要求,則可以關(guān)注one-stage 的方法,例如YOLO是以實時性為基礎(chǔ)的快速目標檢測算法,這種方法很快,也有許多工作,面向GPU和CPU實時性的目標檢測算法都有人做出來。深度學習技術(shù)在CT掃描檢測結(jié)節(jié)中表現(xiàn)良好,設(shè)計有效的肺結(jié)節(jié)CADe系統(tǒng)具有重要意義,可以潛在地提高治療肺癌的效率并提高患者的生存率。
總體而言,所選的部分文章顯示了通過CT 掃描檢測肺結(jié)節(jié)的潛力,肺結(jié)節(jié)計算機輔助診斷系統(tǒng)也已經(jīng)開始用于臨床階段,但依然存在靈敏度低,假陽性率高,處理速度低,自動化程度低等各種各樣的問題和缺陷。如何在保持高靈敏度的情況下降低假陽性是肺結(jié)節(jié)計算機輔助診斷系統(tǒng)的關(guān)鍵問題。此外,現(xiàn)階段比較先進的肺結(jié)節(jié)計算機輔助診斷系統(tǒng)都是基于深度學習技術(shù)開發(fā)的,而深度學習技術(shù)需要大量帶有金標準的數(shù)據(jù),這就造成了肺結(jié)節(jié)計算機輔助診斷系統(tǒng)的性能提升的瓶頸。由于醫(yī)學影像數(shù)據(jù)的稀缺性,金標準的標注更是花費人們巨大的精力,因而開發(fā)基于半監(jiān)督的深度學習技術(shù),或者小樣本的深度學習技術(shù)是未來解決這些問題的方向。隨著生成對抗網(wǎng)絡(luò)的發(fā)展,若能生成有效的醫(yī)學病變數(shù)據(jù),這樣可大大降低采集醫(yī)學影像數(shù)據(jù)金標準的成本。遷移學習可以通過從海量傳統(tǒng)圖像樣本的學習中提取出高層抽象特征,并將其遷移到稀缺的己標注醫(yī)學圖像樣本訓練中,若能解決遷移學習本身所帶來的負遷移問題,就可以解決容易出現(xiàn)的過擬合問題。從算法復雜度、處理速度和計算效率上看,更需要訓練一個端到端的結(jié)節(jié)檢測框架,將結(jié)節(jié)候選檢測和假陽性減少整合到一個模型中共同訓練,在降低模型復雜度以及推理時間的情況下提高檢測性能??紤]到實際臨床需求,將深度學習方法與電子病歷(EMR)、影像歸檔和通信系統(tǒng)(PACS)相結(jié)合,并且促進學術(shù)機構(gòu)和醫(yī)療組織之間的合作和溝通,將實際的臨床需求和最新的科學成果相結(jié)合,可以進一步改善肺結(jié)節(jié)計算機輔助診斷系統(tǒng)并發(fā)展其對肺癌治療的作用。