吳鈞 汪書久 柳玉婷
摘要:OCT視網(wǎng)膜圖像是眼科醫(yī)學中最常用的診斷成像技術,眼科醫(yī)生使用這些圖像來診斷和跟蹤年齡相關性黃斑變性、糖尿病和其他眼部系統(tǒng)疾病,人工分類視網(wǎng)膜病理眼底圖像存在特征提取困難,分類耗時長等問題。為此,提出一種基于卷積神經(jīng)網(wǎng)絡的自動分類器。首先對圖像進行三次插值、歸一化等預處理操作,在ResNet50模型基礎上采用遷移學習。最后,將提取的特征輸入模型網(wǎng)絡進行分類。實驗在數(shù)據(jù)集上進行驗證,在準確率、靈敏度等評價指標上均有所提升。
關鍵詞:遷移學習;視網(wǎng)膜;殘差網(wǎng)絡;OCT;圖像分類
中圖分類號:TP183? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2022)34-0029-03
1 概述
隨著全球經(jīng)濟的持續(xù)增長,生活水平的大幅提高,醫(yī)療條件的改善,人類的平均壽命已達到了前所未有的水平。但是,由于與眼睛健康相關的退化效應隨著年齡的增長而增加,因此眼病的發(fā)病率也隨之增加。與此同時,隨著數(shù)字化的發(fā)展,人類在屏幕前花費的時間越來越多,這進一步加劇了眼部相關疾病的問題[1-2]。 OCT視網(wǎng)膜圖像是醫(yī)生判斷黃斑是否病變的重要標準,所以近年來對OCT視網(wǎng)膜圖像的分類是熱點問題之一。
2015年,何愷明等人在IEEE國際計算機視覺與模式識別會議發(fā)表了論文 Deep Residual Learning for Image Recognition,該論文提出了新的神經(jīng)網(wǎng)絡架構—ResNet,ResNet通過建立殘差塊將輸入信息繞道傳到輸出,加深了神經(jīng)網(wǎng)絡的深度,而且訓練的速度更快,性能比普通CNN更強,殘差塊中不僅有順序排列的卷積層,還通過與卷積層并列的捷徑連接,跳過了一些卷積層,這樣在訓練過程中,可以通過捷徑連接將誤差無損反向傳播,解決了梯度消失的問題[3-4]。
殘差神經(jīng)網(wǎng)絡有很多種形式,按照網(wǎng)絡層數(shù)分為:ResNet18、ResNet34、ResNet50、 ResNet101、ResNet152 等模型,由于過深的網(wǎng)絡層數(shù)會導致過擬合。所以,本文采用ResNet50網(wǎng)絡架構進行視網(wǎng)膜病變眼底圖像的分類,在公開的OCT2017數(shù)據(jù)集上訓練,驗證該模型在視網(wǎng)膜病變眼底圖像的分類的有效性。
2? 圖像預處理
2.1 數(shù)據(jù)集介紹
本文使用的數(shù)據(jù)集來自于數(shù)據(jù)分析競賽平臺(kaggle) 的OCT2017數(shù)據(jù)集。該數(shù)據(jù)集一共包含83484張圖片,并根據(jù)病變類型將視網(wǎng)膜圖像分為 4類。如圖 1 所示,圖 1 (a) 是健康(NORMAL)的視網(wǎng)膜圖像; 圖 1(b) 是脈絡膜新生血管(CNV) 的視網(wǎng)膜圖像; 圖 1(c)是糖尿病黃斑水腫(DME) 的視網(wǎng)膜圖像。圖 1(d)是黃斑區(qū)玻璃膜疣(DRUSEN) 的視網(wǎng)膜圖像[5-6]。從圖1可以看出,各種病變的類型不是很容易看出,因此人為地進行特征提取并進行圖像分類可能會導致相互誤判。
該數(shù)據(jù)集的各類別分布如圖2所示,其中健康(NORMAL)的視網(wǎng)膜圖像共有26315張,脈絡膜新生血管(CNV) 的視網(wǎng)膜圖像共有37205張,糖尿病黃斑水腫(DME) 的視網(wǎng)圖像共有11348張,黃斑區(qū)玻璃膜疣(DRUSEN) 的視網(wǎng)膜圖像共有8616張。
2.2 圖像預處理
3 模型的選取與訓練
本文中,采用ResNet50神經(jīng)網(wǎng)絡進行特征提取,為了避免數(shù)據(jù)集不夠大的情況導致模型不收斂,不擬合的問題,所以沒有采用從頭訓練的方法,而是采用遷移學習的方法,即用imagenet數(shù)據(jù)集對ResNet50進行預訓練,在用預訓練好的ResNet50模型對圖像進行特征提取。本文根據(jù)提取到的特征,建立了一個簡單的卷積神經(jīng)網(wǎng)絡分類器[9-10],將提取到的特征輸入到分類器中,神經(jīng)網(wǎng)絡分類流程圖如圖3所示,該分類器包括一個卷積層、池化層,一個Flatten層和一個全連接層。
4? 實驗結(jié)果及分析
4.1 實驗環(huán)境及實驗設置
本實驗是在Intel(R) Core(TM) i5-10300H CPU,顯卡NVIDIA GeForce GTX 1650 Ti上,采用64位windows 10系統(tǒng),使用的框架是tensorflow2.4.0。為了對比是否使用遷移學習對視網(wǎng)膜眼底圖像分類性能的影響,本文設置了以下實驗:
實驗1: 使用經(jīng)過預處理的視網(wǎng)膜OCT圖像數(shù)據(jù)集ResNet50神經(jīng)網(wǎng)絡所有參數(shù)采取從頭開始的訓練方式。
實驗2:用imagenet數(shù)據(jù)集對本文的提取特征的ResNet-50進行預訓練,再將得到的模型遷移到視網(wǎng)膜眼底病變圖像數(shù)據(jù)集上進行再訓練。
在參數(shù)設置上,考慮到圖片大小不統(tǒng)一,為了方便模型的訓練,所以將所有圖像縮放成224×224的大小,并且在經(jīng)過預處理后將數(shù)據(jù)集分為訓練集和驗證集,訓練集用于訓練網(wǎng)絡和參數(shù)訓練,驗證集用于驗證模型可靠性及泛化性,其中訓練集占0.8,驗證集占0.2,兩部分數(shù)據(jù)集不交叉。
訓練的batch_size 設為128,使用 Adam算法優(yōu)化損失函數(shù),迭代100次。在學習率的設置上,實驗1和實驗2采用不同的超參數(shù)。
由于實驗1中的所有參數(shù)都沒有經(jīng)過訓練,所以將實驗1的學習率設置為0.05;實驗2中,考慮到用于提取特征的ResNet50網(wǎng)絡已經(jīng)經(jīng)過了預訓練,已經(jīng)可以很好地特征了,所以在學習率的設置上,特征提取的這部分網(wǎng)絡學習率設置為0.0001,而分類器的學習率設置為0.01。
4.2 模型評價指標
本文使用準確率(Accuracy)、召回率(Recall)、精確率(Precision)、混淆矩陣作為本實驗分類任務的評價指標,具體如式(4) 、式(5) 、式(6) 、式(7) 所示:
其中TP是將正樣本正確分類的個數(shù),TN 為將負樣本正確分類的個數(shù),F(xiàn)P 為將正樣本分類錯誤的個數(shù),F(xiàn)N 為將負樣本分類錯誤的個數(shù)。
由于本文為多分類任務,這里的正樣本指的是某一類別,對應地,負樣本指的是另外三個類別。例如,當CNV為正樣本時,DME、DRUSEN、NORMAL為負樣本。
4.3 實驗結(jié)果分析
在tensorflow框架下用matplotlib庫繪制實驗1和實驗2訓練時驗證集(val) 準確率(accuracy) 隨訓練輪次的變化圖,具體圖4所示。
由圖4可知,未用遷移學習的深度神經(jīng)網(wǎng)絡驗證集準確率達到穩(wěn)定狀態(tài)需要的輪次明顯多于經(jīng)過遷移學習的深度神經(jīng)網(wǎng)絡,且達到穩(wěn)定狀態(tài)時,前者準確率低于后者,同時未用遷移學習的深度神經(jīng)網(wǎng)絡達到穩(wěn)定時準確率最好為92.86%,經(jīng)過遷移學習的深度神經(jīng)網(wǎng)絡達到穩(wěn)定時準確率為96.09%,由此可見,遷移學習可以幫助神經(jīng)網(wǎng)絡更好的提取特征,降低運算成本[11]。
本文經(jīng)過遷移學習再訓練后模型用在OCT2017數(shù)據(jù)集的測試上進行性能測試,分類結(jié)果的混淆矩陣如圖5所示,其中對角線位置為正確分類的數(shù)量統(tǒng)計。
準確率、精確率、召回率如表1所示。
4.4 模型微調(diào)
為了提高模型準確率,防止過擬合,采用調(diào)整分類器學習率對模型進行優(yōu)化,用于提取特征。ResNet-50的學習率固定為0.0001。為了更好地擬合模型,本文針對學習率進行了多次的調(diào)整,具體結(jié)果如表2所示。由圖可知,當學習率為0.001時,準確率最高,且在測試集上準確率為97.99%。
5 結(jié)論
本文利用基于遷移學習方法對視網(wǎng)膜病變眼底圖像進行了自動分類,在實驗中,我們發(fā)現(xiàn)了圖片的大小不一,且大量的圖片具有大量的噪聲,無法直接利用原始圖片進行訓練,需要對數(shù)據(jù)集進行預處理。對此,我們首先對視網(wǎng)膜病變眼底圖像利用雙三次插值算法進行降噪,再將其統(tǒng)一縮放成224×224的大小。
從實驗結(jié)果中可以看到,準確率(accuracy) 在訓練集及驗證集上經(jīng)過幾個輪次后就得到很大的提升。所以可以看出經(jīng)過預訓練ResNet-50模型可以很好地提取視網(wǎng)膜病變眼底圖像的特征。遷移學習的使用讓模型開始就有了一定的預測能力,通過遷移學習對視網(wǎng)膜病變眼底圖像分類只需要訓練最后的分類器,縮短了學習與訓練的時間,且提高了模型的泛化能力。
但由于oct2017數(shù)據(jù)集的數(shù)據(jù)量不是很大,導致整個模型的魯棒性不夠。由于DME及DRUSEN類別的圖像較其他兩個類別的數(shù)據(jù)上,導致模型對這兩類的準確率較低,整體準確率還有待提高,在后續(xù)工作中,在原有模型的基礎上進行改進,進一步解決模型整體準確率問題,以提高模型的魯棒性。
參考文獻:
[1] 王詩惠,郝曉鳳,謝立科.人工智能在視網(wǎng)膜疾病中應用的研究現(xiàn)狀與展望[J].中華眼科醫(yī)學雜志(電子版),2020,10(6):374-379.
[2] 張勇東,符子龍,尚志華,等.基于深度學習的視網(wǎng)膜OCT圖像分類方法:CN109376767A[P].2021-07-13.
[3] He K , Zhang X , Ren S , et al. Deep Residual Learning for Image Recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition, 2016:770-778.
[4] 戴曉峰.遷移學習相關理論研究[J].電腦迷,2018(6):226.
[5] Ting D S W,Pasquale L R,Peng L,et al.Artificial intelligence and deep learning in ophthalmology[J].The British Journal of Ophthalmology,2019,103(2):167-175.
[6] Margot S.Diagnostic tests what physicians need to know IDx-DR for diabetic retinopathy screening margot Savoy[J].American Family Physician,2020,101(5):307-308.
[7] Yoo T K,Choi J Y,Kim H K.Feasibility study to improve deep learning in OCT diagnosis of rare retinal diseases with few-shot classification[J].Medical & Biological Engineering & Computing,2021,59(2):401-415.
[8] Larsson G,Maire M,Shakhnarovich G.FractalNet:ultra-deep neural networks without residuals[EB/OL].[2021-10-20].2016:arXiv:1605.07648.https://arxiv.org/abs/1605.07648.
[9] 何媛,周濤,蘇婷,等.糖尿病視網(wǎng)膜病變的分類、發(fā)生機制及治療進展[J].山東醫(yī)藥,2020,60(19):111-115.
[10] 張嘉陽,黃河,劉子怡,等.基于Gabor濾波器的糖尿病視網(wǎng)膜新生血管檢測[J].中國醫(yī)學物理學雜志,2018,35(8):968-971.
[11] Zeiler M D,F(xiàn)ergus R.Visualizing and understanding convolutional networks[M]//Computer Vision - ECCV 2014.Cham:Springer International Publishing,2014:818-833.
【通聯(lián)編輯:唐一東】