曾雷雷, 楊帆, 雷平貴, 繆月紅, 謝弘, 葉遠濃
(1.貴州醫(yī)科大學 大健康學院, 貴州 貴陽 550025; 2.貴州醫(yī)科大學 生物與工程學院, 貴州 貴陽 550025; 3.貴州醫(yī)科大學附屬醫(yī)院 影像科, 貴州 貴陽 550004)
阿爾茨海默病(Alzheimer's disease,AD)是一種發(fā)病原因較難發(fā)現的進行性發(fā)展神經系統(tǒng)退行性疾病,臨床上主要表現為記憶障礙同時伴隨失語、視空間技能喪失或損壞、執(zhí)行功能障礙以及人格改變等全面癡呆性行為,最終導致無法開展日常活動[1-2]。AD是導致老年癡呆最常見的疾病,據2015年國際老年癡呆協(xié)會發(fā)布的AD報告,預計至2050年,全球患者人數將從現在的4 600萬增加到1.315億,大量的癡呆患者將給社會衛(wèi)生系統(tǒng)和患者家庭帶來巨大的壓力[3]。因此需要盡早診斷AD,以便在不能完全停止其病變的情況下減緩發(fā)病進程[4-5]。為了實現AD的準確和早期診斷,研究人員已經開發(fā)出許多神經成像技術,如磁共振成像(magnetic resonance imaging,MRI)和正電子發(fā)射斷層掃描(positron emission on computed tomography,PET)用于放射科醫(yī)生對AD進行診斷[6]。但是面對大量的AD患者,專業(yè)放射科醫(yī)生數量卻不多,從而導致人工診斷效率較低的問題;為了解決該問題,研究人員提出了基于深度學習和機器學習的方法對AD進行自動診斷以及制定適當的治療策略[7-11]。目前,對AD自動診斷的機器學習方法主要為利用隨機森林、支持向量機、boosting等機器學習算法對MRI圖像進行分析以區(qū)別AD、輕度認知障礙(mild cognitive impairment,MCI)及正常認知(normal control,NC)受試者[12-14]。由于傳統(tǒng)的機器學習方法需要人工預先勾選出大腦變化較為明顯的區(qū)域,例如海馬、杏仁核及顳葉等感興趣區(qū)域(region of interset,ROI)后再通過機器學習方法對ROI區(qū)域進行特征分析并診斷,其弊端在于需要具有豐富臨床經驗的相關醫(yī)生進行人工勾選ROI,耗時耗力且易出現經驗錯誤,因此研究人員為解決該問題提出利用深度學習的方法實現AD的自動診斷[15]。近年來,針對使用深度學習方法分析MRI圖像診斷患者是否患有AD的研究取得了一定的進展,大多采用卷積神經網絡(convolutional neural network,CNN)對MRI圖像進行分析,例如Hosseiniasl等[16]采用3 D CNN預測AD,該網絡經過在對3 D卷積自編碼器的預訓練后,可以對未進行顱骨剝離和預處理的MRI圖像數據進行預測,并且研究表明其準確率優(yōu)于幾種傳統(tǒng)的方法;Spasov等[17]提出基于3 D可分離和分組的卷積模型用于預測MCI到AD的轉換和AD、NC的分類;Ju等[18]采用深度學習的方法用于AD的早期分類、其針對性建立的自編碼器網絡能將正常衰老和MCI(AD的早期階段)的預測精度提高31.21%;曾安等[15]基于MRI、PET兩種模態(tài)數據提出了一種基于2 D CNN和循環(huán)CNN(recurrent neural network,RNN)的多模態(tài)融合分類模型用于AD的診斷。先前針對提高AD自動診斷精度的方法主要是通過3 D CNN網絡對MRI圖像進行分析、以及利用患者多模態(tài)數據融合的辦法進行分析預測,存在對硬件要求高、訓練成本高及數據預處理繁瑣的問題。因此本研究為了改善此種情況,提出了基于雙線性卷積神經網絡(bilinear convolutional neural network,BRNV)的模型,該模型采用2 D Resnet18和2 D VGG16作為基礎特征提取器,使用患者MRI模態(tài)數據進行特征提取分析數據,實現AD的自動診斷。
1.1.1數據集 數據集來自AD神經成像倡議(AD neuroimaging initiative,ADNI)數據庫(www.loni.ucla.edu/ADNI)[19],從該數據庫中僅下載AD、MCI及NC組受試者T1權重的MRI數據,其中AD組受試者93人,男54人、女39人,年齡66~83歲、平均(74.59±7.82)歲;MCI組受試者76人,男34人、女42人,年齡68~80歲、平均(74.10±5.26)歲;NC組受試者100人,男55人、女45人,年齡72~82歲、平均(77.24±4.70)歲。
1.1.2預處理 從ADNI數據庫下載269名受試者的MRI數據,每名受試者只有唯一的MRI數據。首先使用統(tǒng)計參數圖譜(statistical parametric mapping,SPM)中的工具包CAT12對MRI進行頭動矯正,對頭動矯正后的MRI數據分別進行顱骨剝離、配準到Template_MNI152標準模板空間及圖像平滑(平滑核大小為6 像素×6 像素×6 像素)等操作,除平滑核大小外其余均使用CAT12中的默認參數;經過上述處理后的圖像大小均為121 像素×145 像素×121像素,空間分辨率為1.5 mm,3組受試者處理前后圖像對比見圖1。由于本研究的受試者數據是MRI數據,MRI數據是三維數據而本文模型輸入是二維圖像數據,因此需要對數據進行二維切片操作。然而在觀察受試者二維切片數據時,發(fā)現部分切片中腦組織較少或者不包含腦組織區(qū)域,因此本研究只取受試者三維MRI數據中的冠狀面21~125 mm、矢狀面20~97 mm、橫斷面28~96 mm,間隔取出分別冠狀面、矢狀面及橫斷面各50、40及33張切片,最終取出來自3個觀察面共123張切片作為1位完整受試者的數據,并對這123張圖片進行灰度歸一化,將所有圖片尺度統(tǒng)一為224 像素×224 像素×3 像素的格式以便于輸入網絡進行訓練。
1.1.3訓練集、驗證集及測試集 將所有完成預處理的受試者數據按照8 ∶2的比例將整個數據集劃分為訓練集和驗證集。采用10次隨機交叉實驗的方法,每次實驗從訓練集與驗證集中按8 ∶2比例重新隨機選取訓練集和驗證集。由于本文涉及遷移學習,為了驗證模型在測試集上的精度,選取ADNI中不同于以上已經選取的受試者數據150例作為測試集,AD、MCI及NC受試者各50例。將所選取的數據經過“1.1.2”項下方法處理后,最終分別提取出每1例受試者冠狀面、矢狀面及橫斷面2 D切片123張,因此AD組受試者人數以及受試者訓練集、驗證集及測試集2 D切片總數分別為143例、9 225張、2 214張及6 150張;MCI組受試者人數及受試者訓練集、驗證集、測試集2D切片總數分別為126例及7 503張、1 845張、6 150張;NC組受試者人數及受試者訓練集、驗證集、測試集2D切片總數分別為150例及9 840張、2 460張、6 150張。
1.2.1BRNV模型 BRNV模型融合Resnet18及VGG16深度學習模型特點[20],模型結構如圖2所示。BRNV模型對經過預處理后的MRI圖像均在同一局部位置利用兩個基礎特征提取器提取圖像特征,在初期階段兩個特征提取器Resnet18和VGG16分別獨立地進行特征提取,其中Resnet18和VGG16均是不包含全連接層的模型。特征提取后,Resnet18的輸出向量維度為1×512,VGG16的輸出向量維度為1×2 048,利用如上2個向量進行雙線性變化,得到維度為256×2的輸出向量,最后通過線性變換以及歸一化指數函數(softmax)將前一步操作得到的特征向量轉換為1×2的可用來預測類別概率的特征向量,進行類別分類預測。在整個模型中,網絡使用交叉熵損失函數(cross entropy loss)作為模型的損失函數,用于評估模型的魯棒性。
1.2.2實施 本研究設計的BRNV模型基于Pytorch 1.7.1平臺開發(fā),所采用的Resnet18和VGG16均加載官方提供的預訓練參數作為初始參數權重,加快模型的收斂速度;為了彌補訓練數據量過少,防止因數據量過少導致模型訓練出現過擬合現象,本研究通過利用Pytorch中的Transforms函數對圖像進行隨機水平旋轉、隨機垂直旋轉、隨機噪聲及隨機仿射等操作,以對數據進行擴充;隨后采用本研究中已選取并且進行二維切片后的受試者數據對模型進行訓練,所有的實驗都是在一塊GTX 1080Ti上面完成的,圖像處理器(graphic processing unit,GPU)顯存為11 GB,其中模型訓練的epoch為50,batchsize為40,學習率為0.001,衰減程度為每迭代10次后學習率除以10,均使用隨機梯度下降(stochastic gradient descent,SGD)更新算法[21]。第1次完整的50個epoch訓練后,將模型在測試集上進行準確率的排序,選擇精確度最高的模型做為下一輪模型訓練的預訓練模型,更新整個模型的初始參數權重,并在該劃分的數據集上再進行30次的實驗,每次將前一次的訓練模型作為下一輪模型訓練的預訓練權重參數并重頭訓練,最后經30次重復上述操作后,得到精度達到飽和的分類模型和最優(yōu)的模型初始參數權重。
采用Python 3.7進行圖表繪制及數據統(tǒng)計分析,以BRNV模型識別AD、MCI的效果繪制受試者工作特征曲線(receiver operating characteristic,ROC),計算ROC曲線下面積(area under the curve,AUC)和準確率(accuracy,ACC)、敏感性(sensitivity)、特異性(specificity)等作為評估指標來評價分類模型的分類效果。
對比分析BRNV、Resnet18、VGG16對ADNI數據庫中AD 和 NC、MCI 和 NC的訓練準確率、損失曲線以及測試ROC曲線,顯示BRNV模型較Resnet18、VGG16模型的準確率具有更高的指標。見圖3。
AD和MCI分類模型評估指標對比,BRNV模型較Resnet18、VGG16模型分類效果更好;本研究和最新算法的ACC和AUC結果表明,本研究的2個指標均高于先前只利用MRI模態(tài)數據的算法。見圖4和表1。
AD與NC、MCI與NC的自動診斷分類對于研發(fā)AD的計算機輔助診斷系統(tǒng)具有重要意義,AD、NC與MCI自動診斷算法的開發(fā)能夠緩解因臨床放射科醫(yī)生數量不足而導致的AD診斷效率不高問題[23]。本研究結果顯示,針對ADNI數據庫中的AD受試者和NC受試者的診斷分類,BRNV模型準確率、AUC、特異性及敏感性分別達85.4%、91.3%、86.1%及84.2%;對MCI受試者和NC受試者的診斷分類,BRNV模型準確率、AUC、特異性及敏感性分別達73.3%、75.1%、72.0%及74.0%,提示BRNV模型在AD與NC、MCI與NC的診斷分類中取得了較好的分類精度。
表1 不同模型的ACC和AUC比較Tab.1 Comparison of ACC and AUC of different models
本研究通過分析、對比BRNV、Resnet18及VGG16分類模型訓練過程曲線,結果顯示在針對AD、NC的分類中Resnet18和VGG16雖然模型能夠收斂、但準確率不高且極不穩(wěn)定,整體模型效果不理想;在MCI、NC的分類中可以明顯看出Resnet18和VGG16已經出現模型不能很好收斂的問題,且準確率無法隨著訓練次數的增加而上升;但在將VGG16與Resnet18融合進雙線性網絡組成的BRNV模型中,BRNV模型在AD、NC與MCI、NC訓練過程中均能保持較高的準確率以及較低的損失值,并在測試集上利用AUC評估指標證明了BRNV模型的優(yōu)越性。
針對AD自動診斷的醫(yī)學分類問題,模型分類結果的敏感性和特異性同樣是需要重點關注的指標,其中敏感性越高,代表漏診的患者越少,特異性越高,代表正常人被誤診為患者的概率越小,因此在醫(yī)學分類問題中,實驗結果通常希望漏診和誤診的患者越少越好[24]。本研究中BRNV模型在AD、NC與MCI、NC診斷分類中的敏感性和特異性能夠有效地降低漏診和誤診的人數,雖然ACC和AUC指標略低于文獻[15]中利用MRI和PET數據的信息融合方法,但是BRNV模型的2個指標均高于先前只利用MRI數據的算法,并且分別提升1.0%、1.3%。
本研究主要采用Resnet18和VGG16作為研究模型BRNV的基礎特征提取器,主要原因是Resnet18中的深度殘差模塊能夠為模型帶來更好的收斂效果,VGG16中均是3×3的卷積核的特點能夠給較為精細的區(qū)域帶來更優(yōu)秀的特征提取能力[25-26]。但是從模型訓練準確率曲線以及損失曲線可以看出單一的Resnet18和VGG16對于AD的診斷分類準確率不高且穩(wěn)定性較差。以往通常使用將Resnet18和VGG16改進成3 D的訓練網絡或者使用MRI、PET多模態(tài)融合的方法,來達到提高準確率的目的,但是此種方法對硬件和數據的要求高,訓練時間長。本研究提出的BRNV模型,融合將Resnet18和VGG16的優(yōu)勢,在不增加硬件和數據要求前提下,能夠有效地提高AD的診斷分類準確率。此外,本研究結果顯示前期2個基礎特征提取器在大部分特征提取中存在相似的地方,這會部分地造成資源浪費,在今后的研究中,將進一步改進BRNV模型中的基礎提取器部分,減少資源浪費問題,以期進一步提高分類準確率與分類速度。
綜上所述,本研究采用的BRNV模型在AD自動診斷分類中準確率、特異性、敏感性及AUC均取得了較高的評估指標,與最新算法對比驗證了BRNV模型對于AD自動診斷的可行性和有效性。AD自動診斷方法的研究,未來有助于計算機輔助診斷系統(tǒng)的開發(fā),幫助醫(yī)生減少閱片時間,提高AD的診斷效率。