劉俊志 朱昆侖 宋笑涵
摘要:乳腺癌是導致女性癌癥死亡的首要原因,嚴重危害廣大女性的身體健康,早期的診斷和治療是防治的關(guān)鍵。針對當前乳腺X線圖像人工標注工作量大、數(shù)據(jù)不易獲取、圖像特征提取耗時且難度大等問題,現(xiàn)以稀疏自編碼網(wǎng)絡(luò)為基礎(chǔ),訓練具有兩個隱含層的神經(jīng)網(wǎng)絡(luò)以對圖像進行有無病變分類。首先,使用自編碼器以無監(jiān)督方式單獨訓練各隱含層。然后訓練最終Softmax層,并將這些層連接在一起形成堆疊網(wǎng)絡(luò),該網(wǎng)絡(luò)最后以有監(jiān)督方式進行訓練。醫(yī)生可通過系統(tǒng)得出的結(jié)果對患者是否患有乳腺病變進行診斷。
關(guān)鍵詞:乳腺X線圖像;稀疏自編碼器;深度學習;病變檢測;MATLAB
1. 前言
目前國內(nèi)外學者先后提出了多種乳腺病變檢測系統(tǒng)。Christoyiarni等人提出在腫塊疑似區(qū)域上利用獨立元分析方法提取特征辨別腫塊與正常組織,再利用神經(jīng)網(wǎng)絡(luò)方法分類訓練腫塊,能達到較高檢測率同時能區(qū)分腫塊的良惡性[1]。盡管特征提取確實得到很大提升,但是CAD系統(tǒng)中的分類器在分類病變圖像的準確度上仍然存在很大缺陷。近年來,深度學習在諸多領(lǐng)域能夠同時進行特征學習和分類,深度學習技術(shù)中的無監(jiān)督特征學習技術(shù)已經(jīng)成功地被應用于計算機視覺領(lǐng)域。因其不需要依賴于先驗知識,可以自適應地構(gòu)建有效的特征描述,所以靈活性和普遍性較傳統(tǒng)特征提取方法更具有優(yōu)越性[2]。自編碼器(Auto-encoder,AE)就是深度學習中最流行的代表性學習方法中的一種,該學習方法能實現(xiàn)良好的性能,并具有較少的調(diào)節(jié)參數(shù)和低的迭代次數(shù)等優(yōu)點,在圖像特征表達中得到廣泛的運用[3]。由此設(shè)計一個基于自編碼網(wǎng)絡(luò)的乳腺病變檢測系統(tǒng),采用無監(jiān)督自編碼網(wǎng)絡(luò)訓練及有監(jiān)督的微調(diào),訓練建立能夠區(qū)分乳腺X線圖像是否發(fā)生病變的神經(jīng)網(wǎng)絡(luò)模型,檢測結(jié)果對乳腺癌診斷有很好的參考價值,對促進醫(yī)學影像診斷的智能化發(fā)展具有重要的意義。
2. 基于自編碼網(wǎng)絡(luò)的乳腺病變檢測系統(tǒng)
2.1 數(shù)據(jù)集加載
本文使用乳腺X線圖像數(shù)據(jù)進行訓練和測試。每個數(shù)據(jù)圖像為256×256像素,共有1200張訓練樣本,其中包括1000張正常的乳腺X線圖像和200張已發(fā)生病變的乳腺X線圖像。通過for循環(huán)依次將1200張訓練數(shù)據(jù)加載到MATLAB中,然后使用imresize函數(shù)把每個數(shù)據(jù)圖像壓縮為28×28像素,利用rgb2gray函數(shù)將真彩色圖像轉(zhuǎn)換成灰度圖像。
訓練圖像的標簽存儲在一個2×1200的矩陣中,其中每列都有一個元素為1,指示該圖像所屬的類,該列中的所有其他元素為0。數(shù)據(jù)加載完成后利用for循環(huán)查看其中一些圖像,查看效果。
2.2 訓練自編碼網(wǎng)絡(luò)
2.2.1 訓練第一個自編碼器
首先在不使用標簽的情況下基于訓練數(shù)據(jù)訓練稀疏自編碼器。自編碼器是一種神經(jīng)網(wǎng)絡(luò),該網(wǎng)絡(luò)會嘗試在其輸出端復制其輸入。因此,其輸入的大小將與其輸出的大小相同。當隱含層中的神經(jīng)元數(shù)量小于輸入的大小時,自編碼器將學習輸入的壓縮表示。
第一步:顯示設(shè)置隨機數(shù)生成器種子。
第二步:設(shè)置自編碼器的隱含層的大小。
第三步:訓練自編碼器。
第四步:可以使用view函數(shù)查看自編碼器的圖。自編碼器由一個編碼器和一個解碼器組成。編碼器將輸入映射為隱含表示,解碼器則嘗試進行逆映射以重新構(gòu)造原始輸入。
2.2.2 可視化第一個自編碼器的權(quán)重
自編碼器的編碼器部分所學習的映射可用于從數(shù)據(jù)中提取特征。編碼器中的每個神經(jīng)元都具有一個與之相關(guān)聯(lián)的權(quán)重向量,該向量將進行相應調(diào)整以響應特定可視化特征。
自編碼器的隱含層的100維輸出是輸入的壓縮版本,它匯總了對上面可視化的特征的響應。基于從訓練數(shù)據(jù)中提取的一組向量訓練下一個自編碼器。首先,必須使用經(jīng)過訓練的自編碼器中的編碼器生成特征。
2.2.3 訓練第二個自編碼器
第二個自編碼器的訓練與第一個類似,主要區(qū)別在于將使用從第一個自編碼器生成的特征作為第二個自編碼器中的訓練數(shù)據(jù)并且將隱含表示的大小減小到50,以便第二個自編碼器中的編碼器學習輸入數(shù)據(jù)的更小表示。將前一組特征傳遞給第二個自編碼器中的編碼器,以此提取第二組特征。
2.2.4 訓練最終Softmax層
訓練Softmax層以對50維特征向量進行分類。與自編碼器不同,將使用訓練數(shù)據(jù)的標簽以有監(jiān)督方式訓練Softmax層。
2.2.5 形成堆疊神經(jīng)網(wǎng)絡(luò)
已單獨訓練了組成堆疊神經(jīng)網(wǎng)絡(luò)的三個網(wǎng)絡(luò):autoenc1、autoenc2和Softmax。
將自編碼器中的編碼器與Softmax層堆疊在一起形成用于分類的堆疊網(wǎng)絡(luò)。
2.2.6 微調(diào)堆疊神經(jīng)網(wǎng)絡(luò)
為了更好地進行分類,通過以有監(jiān)督方式基于訓練數(shù)據(jù)重新訓練網(wǎng)絡(luò)來對整個多層網(wǎng)絡(luò)執(zhí)行反向傳播,改進堆疊神經(jīng)網(wǎng)絡(luò)的結(jié)果。
2.3 基于自編碼網(wǎng)絡(luò)的乳腺病變檢測
本文使用乳腺X線圖像數(shù)據(jù)進行測試。每個數(shù)據(jù)圖像為256×256像素,共有1375張測試樣本,其中包括1000張正常的乳腺X線圖像和375張已發(fā)生病變的乳腺X線圖像。通過for循環(huán)依次將1375張測試數(shù)據(jù)加載到MATLAB中,然后使用imsize函數(shù)把每個數(shù)據(jù)圖像壓縮為28×28像素,利用rgb2gray函數(shù)將真彩色圖像轉(zhuǎn)換成灰度圖像。數(shù)據(jù)集加載方式與訓練數(shù)據(jù)集加載方式類似,可參考前文。
測試圖像的標簽存儲在一個2×1375的矩陣中,其中每列都有一個元素為1,指示該圖像所屬的類,該列中的所有其他元素為0。
2.4 實驗結(jié)果分析
在MATLAB command window窗口輸入guide命令查看圖形用戶界面GUI,包括一個可編輯文本;四個按鈕,功能分別是導入訓練數(shù)據(jù)、訓練網(wǎng)絡(luò)、導入測試數(shù)據(jù)、測試;兩個坐標軸,用于展示訓練集和測試集中的部分乳腺X線圖像。
可以看出目標類加載的1000個正常的測試數(shù)據(jù)中有988個被正確檢測出,12個被檢測錯誤,第一類數(shù)據(jù)檢測的準確率為98.8%;加載的1000個正常的測試數(shù)據(jù)中有988個被正確檢測出,12個被檢測錯誤,第一類數(shù)據(jù)檢測的準確率為98.8%;目標類加載的375個有病變的測試數(shù)據(jù)中有350個被正確檢測出,25個被檢測錯誤,第二類數(shù)據(jù)檢測的準確率為93.3%;輸出類中第一類數(shù)據(jù)被正確檢測的有988張,錯誤檢測的有25張,檢測的準確率為97.5%;輸出類中第二類數(shù)據(jù)被正確檢測的有350張,錯誤檢測的有12張,檢測的準確率為96.7%;經(jīng)過多次測試,整個系統(tǒng)分類的準確率最高達到了97.3%。
3. 結(jié)論
在本文完成過程中,做了大量的實驗工作,實現(xiàn)了基于自編碼網(wǎng)絡(luò)的方法對乳腺X線圖像中的病變進行檢測。本文將自編碼網(wǎng)絡(luò)模型應用在乳腺病變的檢測任務(wù)中,提高了計算機輔助診斷系統(tǒng)的精度,測試階段,單幅圖像平均處理時間為0.00236秒。經(jīng)過多次測試,整個系統(tǒng)分類的準確率最高達到了97.3%。為醫(yī)生診斷患者是否患有乳腺癌病變提供了有力的幫助。
參考文獻
[1]? 王金平. 基于深度卷積稀疏自編碼分層網(wǎng)絡(luò)的人臉識別技術(shù). 太原理工大學學報,2018,49(05):765~770
[2]? 朱恩澤. 基于深度學習的醫(yī)學圖像分割方法. 徐州醫(yī)科大學學報,2019,39(2):143~147
[3]? 余立付. 基于深度自編碼網(wǎng)絡(luò)的高光譜圖像空譜聯(lián)合分類:[碩士學位論文]. 西安:西安電子科技大學,2017