?

基于深度遷移學習的老年人群眼底疾病輔助診斷研究

2022-10-18 06:32楊康趙太宏
北京生物醫學工程 2022年5期
關鍵詞:眼底病深度分類

楊康 趙太宏,2

0 引言

眼底是眼球內后部組織,眼底病則是一系列眼后段疾病的總稱。眼底病有很多種,老年人常見的眼底病主要包括老年性黃斑變性、高度近視引起眼底病變和糖尿病視網膜病變等。眼底疾病是導致視力不可逆損害的主要病因[1]。老年性黃斑變性是老年人群首位致盲性眼部疾病[2]。高度近視引起的眼底病變已成為我國第二大致盲性疾病[3]。糖尿病視網膜病變是糖尿病的主要并發癥之一。近幾年我國開展的一些眼病流行病學調查[4-7]顯示,隨著我國經濟的迅速發展以及人口老齡化進程的加快,老年人眼底病的發病率、患病率以及致盲率逐年增多。眼底病已經嚴重威脅我國老年人的健康和生活質量,也是我國防盲行動的重點。目前,已有眼科公共衛生專家呼吁為老年人開展定期眼底篩查[8]?;鶎由鐓^是最適宜開展常態化眼底篩查的主體單位,但由于基層社區專業眼科醫生較少,對眼底病的診斷能力不足,導致我國基層老年人群眼底篩查普及率較低。

隨著人工智能技術的發展,深度學習技術已經在眼科學領域廣泛使用。與傳統的人工識別特性相比,深度學習技術通過端對端的方式實現更好的診斷性能。深度學習主要包括卷積神經網絡(convolution neural network,CNN)、循環神經網絡和深度信念網絡等[9]。CNN廣泛應用在醫學圖像分類、檢測、分割和配準等多種任務中,在眼底疾病診斷方面也有較多的成功應用,如Cen等[10]在近25萬張眼底圖像中使用傳統的深度學習方法搭建CNN模型實現對糖尿病視網膜病變、老年性黃斑變性和青光眼等多種眼底疾病的自動診斷。Son等[11]在10萬多張眼底圖像中構建CNN網絡,應用于眼底出血、滲出物和青光眼等多種眼底病的分類診斷。上述研究都是使用傳統的深度學習方法在海量標記眼底圖像中從零開始完整建立CNN網絡模型。這種完整訓練模型的方法需要依賴海量的數據。但是,對于大部分醫學研究者而言,獲得如此海量標注醫學圖像是非常困難的。因此,在少量數據集下構建分類效果較好的深度學習算法具有重要現實意義。

遷移學習是數據科學界一種強大的研究方法,是一項允許對現有模型算法進行微調,以應用于新領域或新功能的技術[12]。該方法主要是通過遷移已學到相關任務的知識來改進新任務的學習過程,本質上就是兩個不同領域的知識遷移過程。CNN的底層是通用性特征,中高層是抽象的高級特征,而最后連接層和輸出層通常是特定任務的相關特征。遷移學習可根據CNN分類任務的特點,選擇性將預訓練的不同層遷移到目標任務中。遷移學習特別適用于高度專業化但數據集規模較小的深度學習研究,可較大程度地減少模型構建對數據量的依賴。在醫學圖像領域,遷移學習可緩解帶標簽的醫學圖像較少的問題[13]。深度遷移學習可實現在小樣本數據集中構建分類效果較好的診斷模型。

為此,本文提出使用深度遷移學習方法在基層社區收集的小樣本眼底圖像中構建老年人群眼底病的分類輔助診斷網絡模型,應用于老年人常見眼底病和無異常2種類別的彩色眼底圖像自動分類,期望可輔助提高基層社區對老年人群眼底病的診斷能力,從而不斷提升基層社區對眼底疾病的健康管理水平。

1 材料和方法

1.1 數據資料

收集2020年7月至2021年5月在南京市秦淮區石門坎社區衛生服務中心體檢的60歲以上老年人群眼底圖像共2 048張。該批眼底圖像由南京市秦淮區石門坎社區衛生服務中心1名眼科醫師使用日本尼德克公司NIDEK AFC-330免散瞳自動眼底照相儀器拍攝。拍攝后的眼底圖像經南京市第一醫院眼科2名副主任醫師交叉閱片診斷,其中眼底病變的圖像有1 192張,無異常的眼底圖像有856張。眼底病主要包括老年性黃斑變性、高度近視引起眼底病變和糖尿病視網膜病變。

1.2 研究方法

采集的原始眼底圖像首先經過預處理篩選操作,然后通過遷移學習方法訓練優化CNN,最終構建眼底病和正常2種類別的分類診斷模型。同時,為了選用最適宜作為眼底病分類的診斷網絡模型,本文選用目前在醫學領域廣泛使用的8種CNN模型進行眼底病的特征提取,然后使用遷移學習的方法完成網絡模型的訓練。

1.2.1 圖像預處理

(1) 收集的彩色眼底圖像首先篩選處理。數據集中部分圖像清晰度嚴重失衡,保留這些圖像會增加負樣本的比例從而影響最終的模型準確率。因此,將原始眼底圖像中曝光過度或不足、邊緣模糊和眼底血管模糊不清等圖像去除。本次處理去除458張眼底圖像,其中正常眼底圖像311張,眼底病變147張。

(2) 原始眼底圖像包括大面積的黑色區域,這些黑色區域不僅增加網絡訓練的計算量,而且不利于后期的網絡優化。通過一個算法將所有眼底圖像的四邊裁剪固定數量的像素,從而去除圖像周邊的黑色區域。同時將原始的眼底圖像分辨率(2 336×1 752)縮小到標準值(497×498),既滿足所有網絡模型的輸入要求,同時也減小整個模型構建過程的計算量。

(3) 對比度調整,為提高最終網絡模型的性能,對部分曝光過高或不足的眼底圖像進行對比度調整,通過圖像處理的非線性校正函數實現這一目標,其數學表達公式如下:

θ=(I/255)γ×255

(1)

式中:θ是圖像校正后像素值;I是原圖像素值;γ是常數。

從式(1)可看出,調整γ參數可調整圖像的不同對比度。通過算法生成多個不同γ的圖像,最終將清晰度最高的圖像納入研究。

預處理前后眼底圖像對比見圖1。本研究通過預處理操作,最終納入1 588張眼底圖像進行分析,其中正常545張,眼底病變1 045張。

圖1 眼底圖像預處理前后對比

1.2.2 網絡模型訓練

在搭建CNN網絡過程中,參數量越多,網絡訓練的時間越長,而且從頭開始訓練一個CNN網絡往往會遇到過擬合情況。遷移學習的引入可以通過選擇泛化能力強的CNN網絡,然后凍結前面卷積層參數,只微調最后一個全連接層的參數來減少訓練時間,加快模型的收斂速度,提高模型分類精度。本文采用遷移學習中經典的歸納遷移學習方法。

(1) 數據劃分。眼底圖像預處理后,將圖像數據按照8∶1∶1的比例隨機劃分成訓練集、驗證集和測試集。

(2) 遷移學習訓練策略。首先,本研究所選用的CNN網絡均已經在ImageNet數據集大約100萬張圖像中完成預訓練。使用遷移學習的方法將預訓練的網絡模型遷移到本分類任務中完成網絡模型的初始化。然后,根據眼底病的分類任務,微調網絡最后一個全連接層的參數。微調參數方法主要選用交叉熵損失函數和小批量梯度下降方法。交叉熵損失函數是分類問題常用方法。交叉熵是按照概率分布的最優編碼對真實分布的信息進行編碼的長度,一般用來作為衡量2個概率分布的差異。小批量梯度下降方法是選取批量樣本數據進行更新參數。與隨機梯度下降或者批量梯度下降相比,小批量梯度下降方法在保證訓練速度的同時不降低訓練精度。本文使用基于庫中的optim.SGD方法實現,將梯度下降速率衰減設置為0.001,沖量設置為0.9。

(3) 網絡優化。為了進一步提高網絡模型的分類效果,本文提出在遷移學習過程中學習率指數衰減法和類別不平衡優化網絡。學習率是網絡模型重要的超參數,若學習率過大,則模型訓練不會收斂;過小則收斂速度太慢。本文根據訓練次數來調整學習率的方法,是基于庫中的Lr_scheduler方法,將設置為每6個回合參數調整一次學習率,學習率的更新因子設置為0.1。對于眼底圖像中正負樣本不均衡,采用正負樣本加權重法平衡這一策略,將權重設置為0.58∶0.42。

1.2.3 網絡模型

本研究選用了目前廣泛使用的8種CNN分別訓練同一批眼底數據。深度殘差網絡(residual network,ResNet[14])是2015年的ImageNet比賽冠軍。該結構最大的優點是解決了反向傳播過程中的梯度消失問題,大大地提升了網絡的性能。與其他神經網絡相比,ResNet網絡能夠極大提高系統的魯棒性。Inception-V3網絡是2016年谷歌公司開發的深度學習系統。其主要特點是通過局部拓撲結構的網絡對輸入圖像并行計算,從而實現保持檢測性能的同時減少參數計算量。稠密卷積網絡(dense convolutional network,DenseNet)是2016年在ResNet基礎上開發出來的[15]。該網絡將ResNet網絡中的殘差連接改為稠密連接,其在減輕梯度消失的同時增強了傳播特征且參數量更小。EfficientNet網絡[16]是2019年谷歌公司提出的一種多維度混合的網絡模型,其在網絡深度、網絡寬度和圖像分辨率三個維度之間達到比較好的融合。RegNet網絡是2020年Facebook公司何愷明團隊開發的一種新型參數較少的網絡模型。各網絡參數量和計算量對比見表1。

表1 各網絡模型基礎信息對比

1.2.4 深度學習網絡訓練環境

本文的實驗平臺為64位的Windows10系統,網絡模型訓練是基于神經網絡的Pytorch1.10.1和Torchvision0.11.2庫,編譯環境為Python3.8,圖像可視化基于Tensorflow2.3.0框架和Matplotlib3.3.4庫,所有算法代碼在Spyder 4.2.5中運行執行。硬件配置如下,處理器為AMD Ryzen 5 3600 6-Core Processor@3.59 GHz,內存為16G,GPU信息為NVIDIA Geforce GTX 1660 SUPER,顯存為6G。

1.3 評價指標

以眼科專家對眼底病的手動診斷結果作為金標準,使用受試者工作特征曲線(receiver operating characteristic curve,ROC)、曲線下面積(area under curve,AUC)來評價網絡模型診斷性能。同時使用準確率(accuracy)、靈敏度(sensitivity)、特異度(specificity)和F1值(F1-score)等評價網絡模型分類性能。

(5)

式中:TP為真陽性;FP為假陽性;TN為真陰性;FN為假陰性。

2 實驗結果

用測試集對本研究提出用遷移學習方法訓練的CNN模型進行測試并輸出混淆矩陣查看分類結果,測試結果的混淆矩陣如圖2所示。接著,根據混淆矩陣結果及式(2)~式(5)可計算各CNN模型的準確率、靈敏度、特異度、AUC和F1值,結果如表2所示。結果顯示,基于遷移學習方法訓練后的CNN模型的準確率幾乎均高于0.9,表明遷移學習方法訓練的網絡模型可以以較高準確率完成眼底病的分類診斷。

0代表正常眼底,1代表眼底病變

從表2的分類模型結果可看出,ResNet50的準確率、靈敏度和特異度分別為0.93、0.95和0.94,均明顯優于其他模型,表明該網絡模型在對眼底病分類準確性上更優。ResNet50的F1值為0.95,高于其他模型,表明ResNet50在對眼底病分類過程中整體性能更為穩健。表2的AUC值進一步反映了ResNet50和其他模型的分類性能。從表中可看出,ResNet50的AUC為0.92,一定程度上證明該網絡實現了更高的分類性能。上述結果揭示,ResNet50最適宜于本文的眼底病分類任務,性能最優且最穩定。

表2 不同網絡模型分類結果

3 討論

眼底病變是老年人致盲的主要原因。本研究將準確、快速、穩定的眼底病變輔助診斷算法應用于基層社區老年人眼底篩查服務,對實現老年人眼底疾病早期自動化和智能化診斷具有重要意義。傳統深度學習技術往往是從零開始訓練網絡模型,訓練過程需要大量的標注數據。但是,獲取醫學領域大量人工標注數據非常困難且耗時耗力[17]。Gargeya和Leng[18]在75 137張眼底圖像中從頭開始訓練ResNet網絡達到對糖尿病視網膜病變的分類。該研究對糖尿病視網膜病變分類的靈敏度和特異度分別為0.93和0.87。Gulshan等[19]在128 175張眼底圖像中訓練網絡模型以實現對糖尿病視網膜病變的診斷,診斷靈敏度為0.91。與上述研究相比,本文使用遷移學習方法在1 588張眼底圖像的小樣本數據集中訓練網絡模型,測試結果表明,基于遷移學習CNN模型在眼底病變中可實現很高的分類準確性。

雖然本研究構建的網絡模型對老年人群眼底病的診斷性能較優,但是還有一些改進和值得商榷的地方。首先,眼底圖像數據主要來源于一家社區衛生服務中心和一種規格的眼底相機,局限性較大,后期考慮融入多中心采集的眼底圖像,使分類輔助診斷模型能夠更加廣泛地應用于多種場景。其次,本研究結果都是內部測試結果,缺乏真實世界的外部驗證研究,后期還需進一步評價模型的診斷性能。最后,本研究僅僅基于眼底圖像的單模態研究,未來,深度遷移學習在醫學中的進一步應用方向是融合多模態數據,從而多維度地提升網絡模型診斷性能。如國外一課題組[20]融合眼底圖像和光學相干斷層掃描技術圖像2種模態數據,再將不同模態提取的特征輸入到相應的分類任務層中,實現糖尿病視網膜病變嚴重程度的分級,結果顯示多模態融合構建的網絡模型診斷性能優于單模態。

4 結論

通過遷移學習微調策略改進后的CNN模型在小樣本眼底圖像中取得較高的準確性,且具有較短的訓練周期和較高的穩定性,可用于老年人群眼底病變的輔助診斷和篩查。

猜你喜歡
眼底病深度分類
四增四減 深度推進
分類算一算
激光光凝聯合血府逐瘀湯治療眼底病的療效及對視力的影響
深度理解一元一次方程
《圖說小兒眼底病》一書出版
《圖說小兒眼底病》一書出版
細節護理對眼底病患者的實施效果及對改善患者不良情緒的作用
簡約教學 深度學習
教你一招:數的分類
說說分類那些事
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合