王明智,馬志強(qiáng),趙鋒鋒,王永杰,郭繼峰
(東北林業(yè)大學(xué) 信息與計(jì)算機(jī)工程學(xué)院,黑龍江 哈爾濱 150040)
糖尿病視網(wǎng)膜病變(Diabetic Retinopathy,DR)是最常見的視網(wǎng)膜疾病之一[1],這種疾病主要是由糖尿病性微血管病引起的,它會對糖尿病患者眼睛后部視網(wǎng)膜的小血管造成損傷,導(dǎo)致視網(wǎng)膜組織腫脹和視力模糊。根據(jù)2021年世界衛(wèi)生組織(WHO)的報(bào)告顯示,全球超過4.2億人患糖尿病,預(yù)計(jì)到2030年將上升到5.78億[2]。在全球的糖尿病人群中,約40%~50%可能會患有視網(wǎng)膜病變[3]。值得注意的是,DR病人失明的風(fēng)險(xiǎn)性是一般健康人群的25倍,所以,在全球范圍內(nèi)DR是20~65歲人群失明的主要因素之一。
事實(shí)上,如果及時(shí)發(fā)現(xiàn)和治療,糖尿病視網(wǎng)膜病變對于視力的損害是可以控制甚至避免的。由于DR的早期幾乎沒有明顯的癥狀,這使得及時(shí)診斷變得非常困難。傳統(tǒng)的檢查方案效率較低,經(jīng)驗(yàn)豐富的臨床醫(yī)生可以手動檢查和通過眼底數(shù)字圖像進(jìn)行診斷。這種診斷由于不同地區(qū)醫(yī)療水平的不一致,有時(shí)會需要很長的時(shí)間。此外,診斷的結(jié)果也因不同醫(yī)生的主觀性會產(chǎn)生一定的區(qū)別,其準(zhǔn)確性在很大程度上取決于臨床醫(yī)生的專業(yè)知識[4]。通過定期眼底檢查可以預(yù)防DR引起的失明。對于DR篩查的好處,部分西方國家已經(jīng)形成了廣泛的共識。大多數(shù)DR研究根據(jù)早期治療糖尿病視網(wǎng)膜病變研究(Early Treat?ment Diabetic Retinopathy Study,ETDRS),使用國際臨床疾病嚴(yán)重程度量表對DR進(jìn)行分類。
在過去的10年里,研究人員已經(jīng)開發(fā)了多個(gè)自動診斷系統(tǒng)。Pan等人[5]設(shè)計(jì)了眼底自適應(yīng)成像系統(tǒng)的輔助工具并取得了良好的效果。Quellec等人[6]提出了一個(gè)模型,通過使用卷積神經(jīng)網(wǎng)絡(luò)(Convolution Neural Network,CNN)檢測DR,利用敏感度標(biāo)準(zhǔn)[7]的修改產(chǎn)生熱圖,可視化每個(gè)像素在輸出預(yù)測中的貢獻(xiàn)。Lam等人[8]開發(fā)了幾個(gè)關(guān)于二分類、三分類和五分類任務(wù)的模型,對于“無DR”或“嚴(yán)重DR”的病例在敏感性和特異性方面取得了較好的表現(xiàn)。Khojasteh等人[9]為了避免分割后的標(biāo)識周圍存在冗余邊界和雜亂像素,采用關(guān)閉、打開和最后侵腐蝕3種形態(tài)進(jìn)行了實(shí)驗(yàn)。然而,由于他們生成了3個(gè)輸出概率映射,每種情況對應(yīng)一個(gè),因此很可能有些像素屬于多種情況。Saha等人[10]利用一種Encoder-Decoder CNN來分割病灶,他們還采用一個(gè)額外的類對應(yīng)視盤,以便網(wǎng)絡(luò)能夠更好地區(qū)分它與滲出物。Zhou等人[11]提出了一種融合多尺度特征及注意力機(jī)制的醫(yī)學(xué)圖像檢索方法,引入注意力模塊,對網(wǎng)絡(luò)輸出的特征圖進(jìn)行通道加權(quán)求和,提高關(guān)鍵特征通道的特征表達(dá)能力,使網(wǎng)絡(luò)更能關(guān)注到圖像中具有辨識性的病理特征區(qū)域。
Pang等人[12]構(gòu)建兩級深度卷積神經(jīng)網(wǎng)絡(luò),完成了原始照片的特征提取、特征組合和結(jié)果分類,提出利用弱監(jiān)督學(xué)習(xí)進(jìn)行細(xì)粒度圖像分類的改進(jìn)方法在驗(yàn)證集上獲得了0.85的kappa分?jǐn)?shù)。Galdran等人[13]在2020年的一項(xiàng)研究中使用基于ResNeXt50網(wǎng)絡(luò)的模型對DR進(jìn)行分類,得到二次加權(quán)kappa分?jǐn)?shù)為0.78。同年Goolge Health[14]訓(xùn)練了一個(gè)深度學(xué)習(xí)模型,從眼底照片預(yù)測ci-DME,模型受試者工作特征曲線(Receiver oper?ating characteristic curve,ROC)下面積(AUC)值為0.89。2020年,Sun等人[15]通過修改Inception模塊的組成減少模型參數(shù)從而提升收斂速度,引入殘差模塊,解決了模型深度增加帶來的梯度消失和梯度爆炸等問題,提出的DetectionNet深度卷積神經(jīng)網(wǎng)絡(luò)對糖尿病視網(wǎng)膜病變患病程度等級分類任務(wù)的識別率達(dá)到91%。Lands等人[16]在2020年利用DenseNet網(wǎng)絡(luò)訓(xùn)練模型,該模型能夠定位物體、檢測物體和分割視網(wǎng)膜圖像中的毛細(xì)血管,毛細(xì)血管異??捎糜跈z測糖尿病患者的失明。他在EyePACS數(shù)據(jù)上得到了二次加權(quán)kappa 0.81的分?jǐn)?shù)。
代價(jià)敏感正則化(Cost Sensitive Regulariza?tion,CSR)可應(yīng)用于多種疾病的分類模型中,但很少出現(xiàn)在糖尿病視網(wǎng)膜病變檢測模型中。基于上述分析,為了提高糖尿病視網(wǎng)膜病變分類模型的性能,本文提出基于EfficientNet網(wǎng)絡(luò)的改進(jìn)模型用于糖尿病視網(wǎng)膜病變的檢測,有針對性地對眼底圖像進(jìn)行預(yù)處理和數(shù)據(jù)增強(qiáng)[17],然后輸入到模型中,模型自動提取特征、訓(xùn)練參數(shù)、產(chǎn)生分級,引入代價(jià)敏感正則化對錯(cuò)誤的分級施加不同程度的懲罰,盡可能地糾正模型中的分級錯(cuò)誤。同時(shí),從ImageNet訓(xùn)練得到的遷移學(xué)習(xí)[18]結(jié)果有利于提升模型的性能。
我們所提出的模型在DR主流數(shù)據(jù)集上表現(xiàn)出了很好的分類性能,對醫(yī)生輔助診斷DR嚴(yán)重程度具有重要的參考意義。現(xiàn)在已有很多系統(tǒng)在實(shí)際生活中獲得了很好的應(yīng)用。EyeArt是美國食品和藥物管理局批準(zhǔn)的商業(yè)AI軟件,該軟件在檢測DR時(shí)的敏感度為92%,特異性為94%。我們所提出的模型應(yīng)用于臨床當(dāng)中,將會大幅減輕眼科醫(yī)生的負(fù)擔(dān),同時(shí)也可以減少由于醫(yī)生主觀性所導(dǎo)致的誤診,具有非常廣闊的臨床應(yīng)用前景。
EfficientNet是Google在ICML 2019提 出 的一個(gè)神經(jīng)網(wǎng)絡(luò)模型[19]。該模型提供了一種更有效的計(jì)算方式,并改善了最新的研究結(jié)果。通常,如果模型設(shè)計(jì)得太寬、太深或者分辨率太高,剛進(jìn)行訓(xùn)練時(shí),增加這些特性是有益的,但是訓(xùn)練很快就會達(dá)到飽和,模型的參數(shù)也會隨之增加很多。通過人工去調(diào)整網(wǎng)絡(luò)深度、網(wǎng)絡(luò)寬度和輸入圖像的分辨率這3個(gè)參數(shù)使網(wǎng)絡(luò)達(dá)到最佳性能是非常困難的,由于組合空間太大,人力無法窮舉并驗(yàn)證所有可能組合的性能,因而效率不高。而在EfficientNet中,這些特性是按更優(yōu)原則的方式擴(kuò)展的,不會像傳統(tǒng)的方法那樣任意地縮放網(wǎng)絡(luò)的維度,一切都是逐漸增加的。EfficientNet使用了組合縮放系數(shù),用單一的組合縮放系數(shù)φ,同時(shí)縮放網(wǎng)絡(luò)寬度w、網(wǎng)絡(luò)深度d和輸入圖像的分辨率r,其縮放系數(shù)分別為α、β和γ。在約束條件下,在EfficientNet-B0中最好的參數(shù)是α=1.2、β=1.1、γ=1.15。根據(jù)算力的不同,我們提出了B0~B7的縮放尺度。EfficientNet-B0模型結(jié)構(gòu)如圖1所示。
圖1 EfficientNet-B0模型結(jié)構(gòu)Fig.1 Model structure of EfficientNet-B0
首先考慮模型R會產(chǎn)生預(yù)測R(x)=y?∈[0,1]×…×[0,1],此預(yù)測與相應(yīng)的真實(shí)標(biāo)簽y進(jìn)行比較。用y概括地指代整體標(biāo)簽y∈L={0,1,2,3,4},對應(yīng)的獨(dú)熱編碼為y∈{0,1}×…×{0,1},其在相應(yīng)的分級下取1,其他分級下取0。我們使用兩種標(biāo)準(zhǔn)分類損失函數(shù)作為基本損失函數(shù)。
第一種是交叉熵?fù)p失函數(shù)(Cross Entropy Loss Function,CE),其定義為:
式中對于一個(gè)特定的例子(xi,yi),無論預(yù)測結(jié)果如何,最后產(chǎn)生的誤差將保持不變[20]。
第二種基本損失函數(shù)是焦點(diǎn)損失函數(shù)(Focal Loss Function,F(xiàn)L),其定義為:
式中α是加權(quán)因子,γ是聚焦參數(shù)[21]。Focal Loss函數(shù)在多分類任務(wù)中已經(jīng)得到廣泛的應(yīng)用,它是在標(biāo)準(zhǔn)交叉熵?fù)p失函數(shù)的基礎(chǔ)上改進(jìn)得到的,目標(biāo)是克服樣本類型不均勻和樣本分類難度不均勻等問題。這個(gè)函數(shù)能夠通過降低容易分類樣本的權(quán)重,使模型在訓(xùn)練的過程中更專注在難于分類的樣本上。相較于正確分類中的誤差,F(xiàn)ocal Loss對錯(cuò)誤分類中的誤差懲罰會更大。
為了使模型能夠在多分類任務(wù)的訓(xùn)練過程中懲罰不同類型的錯(cuò)誤,進(jìn)一步改進(jìn)式(1)的結(jié)果,考慮使用一個(gè)懲罰代價(jià)矩陣M,將需要的懲罰設(shè)置到代價(jià)矩陣當(dāng)中,并且隨著預(yù)測標(biāo)簽y?與真實(shí)標(biāo)簽y之間的距離||y-y?||的增大,懲罰也會更大。
要想實(shí)現(xiàn)這種根據(jù)預(yù)測標(biāo)簽y?與真實(shí)標(biāo)簽y相差的不同程度來設(shè)置不同的懲罰,可以通過在代價(jià)矩陣M中的每一行編碼這些懲罰,然后計(jì)算y?與M中對應(yīng)行的標(biāo)量積,如式(3)所示:
給出一個(gè)帶有標(biāo)簽y=k和一個(gè)獨(dú)熱編碼預(yù)測R(x)=[x1,x2,x3],代價(jià)敏感損失將通過簡單的計(jì)算R(x)與懲罰代價(jià)矩陣M中第k行的標(biāo)量積實(shí)現(xiàn)懲罰。值得注意的是,在不同的分類任務(wù)中,對于不同的錯(cuò)誤分類情況,我們對它們的懲罰程度也不相同。本文對糖尿病視網(wǎng)膜病變嚴(yán)重程度進(jìn)行5分類,根據(jù)Krause等人[22]收集的關(guān)于視網(wǎng)膜專家之間對于受試者嚴(yán)重程度的分歧以及在數(shù)據(jù)集的分級過程中裁定共識信息的研究,我們設(shè)計(jì)了具體的代價(jià)懲罰矩陣Md如式(4)所示,其中矩陣中數(shù)值越高,懲罰越低;數(shù)值越低,懲罰越高。
然而由于目前糖尿病視網(wǎng)膜病變數(shù)據(jù)集各分類間的高度不平衡,在實(shí)驗(yàn)中發(fā)現(xiàn),如果只使用CSR的損失會導(dǎo)致復(fù)雜的卷積神經(jīng)網(wǎng)絡(luò)陷入局部最小值,因此,把CSR作為其他標(biāo)準(zhǔn)損失函數(shù)(CE,F(xiàn)L)的正則化結(jié)合起來,得到公式(5):
式中選擇了基于L2規(guī)范化的代價(jià)矩陣M(2),它能最大化二次加權(quán)kappa分?jǐn)?shù),θ是正則化參數(shù)。
遷移學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一種方式,也就是將源領(lǐng)域的知識轉(zhuǎn)移到目標(biāo)領(lǐng)域之中,讓目標(biāo)領(lǐng)域可以達(dá)到更好的學(xué)習(xí)效果。一般來說,源領(lǐng)域的數(shù)據(jù)量很充足,而目標(biāo)領(lǐng)域數(shù)據(jù)量較小。如本文所研究的DR分類問題,當(dāng)涉及醫(yī)療問題時(shí),訓(xùn)練穩(wěn)定且準(zhǔn)確的模型是相當(dāng)困難的,可用的數(shù)據(jù)也非常有限??紤]到這些分類任務(wù)之間是具有關(guān)聯(lián)性的,利用遷移學(xué)習(xí)我們能夠?qū)⒃?jīng)獲得的模型參數(shù)共享給最新的網(wǎng)絡(luò)模型,使模型可以更加方便地檢測圖像的低水平特征,進(jìn)而提高并優(yōu)化模型的訓(xùn)練效率,不再需要從零開始訓(xùn)練。
選擇EfficientNet-B3網(wǎng)絡(luò)作為分類任務(wù)的主要模型,在此模型上進(jìn)行具體的調(diào)整。將模型在ImageNet數(shù)據(jù)集上訓(xùn)練,得到可以識別圖像低水平特征的模型參數(shù)。隨著特征圖分辨率的降低,模型通道的數(shù)量將成倍增長,從而盡可能地提取和保留圖像的語義信息,逐漸地將圖像的紋理特征組合成類別特征。在ImageNet上得到一個(gè)預(yù)訓(xùn)練好的EfficentNet網(wǎng)絡(luò)模型后,刪除該網(wǎng)絡(luò)模型頂部的全連接層,將網(wǎng)絡(luò)的剩余部分作為EyePACS和Messidor-2兩個(gè)數(shù)據(jù)集的特征提取層。
加載EfficientNet網(wǎng)絡(luò)模型,模型底層使用從ImageNet預(yù)先訓(xùn)練好的特征提取層參數(shù)。同時(shí)對頂層網(wǎng)絡(luò)進(jìn)行微調(diào),在模型頂部添加平均池化和dropout為0.2的隨機(jī)失活層,并使用Soft?max激活函數(shù)的全連接層。將EfficientNet-B3輸出的1 536張大小為13×13的特征圖像作為頂層的輸入。根據(jù)本文研究的DR分類問題,整個(gè)EfficientNet網(wǎng)絡(luò)結(jié)構(gòu)的輸出具有與每個(gè)DR嚴(yán)重程度相對應(yīng)的5個(gè)可能性值。
本文采用Kaggle EyePACS作為主要數(shù)據(jù)集,它是糖尿病視網(wǎng)膜病變分類任務(wù)中使用最多、規(guī)模最大的公共數(shù)據(jù)集[23]。加州醫(yī)療保健基金會提出一個(gè)比賽,創(chuàng)建一個(gè)自動檢測糖尿病視網(wǎng)膜病變的程序,包含在各種成像條件下拍攝的35 126張高分辨率的眼底訓(xùn)練圖像。圖像由一名經(jīng)驗(yàn)豐富的專業(yè)人員根據(jù)ICDRDSS評分標(biāo)準(zhǔn)[24]進(jìn)行標(biāo)注。根據(jù)DR嚴(yán)重程度將圖像分為5個(gè)等級(0,1,2,3,4),0級圖像表示沒有視網(wǎng)膜病變的跡象,而4級圖像則表示增生性視網(wǎng)膜病變。圖2展示了眼底圖像上指示性DR病變,圖3展示了不同等級糖尿病視網(wǎng)膜病變的眼底圖像。Kaggle EyePACS訓(xùn)練集是非常不平衡的,0級圖像 有25 810張,1級 圖 像 有2 443張,2級 圖 像 有5 292張,3級圖像有873張,4級圖像有708張,如表1所示。我們對數(shù)據(jù)集進(jìn)行了詳細(xì)的劃分,將不同等級標(biāo)簽的圖像分別分為兩部分,其中90%用于訓(xùn)練網(wǎng)絡(luò),10%用于測試模型性能,即數(shù)據(jù)集的80%作為訓(xùn)練集,10%作為驗(yàn)證集,剩下的10%作為測試集。
表1 Kaggle EyePACS數(shù)據(jù)集的數(shù)據(jù)分布Tab.1 Data distribution of the Kaggle EyePACS
圖2 眼底圖像上指示性DR病變Fig.2 Indicative DR lesions on a fundus image
圖3 不同病變等級的DR圖像。(a)正常無明顯病變;(b)輕度非增生性DR;(c)中度非增生性DR;(d)重度非增生性DR;(e)增生性DR。Fig.3 Different levels of DR images.(a)Normal with?out obvious lesions;(b)Mild non-proliferative DR;(c)Moderate non-proliferative DR;(d)Severe non-proliferative DR;(e)Proliferative DR.
值得注意的是,這些圖像是由不同類型的成像設(shè)備在各種環(huán)境下拍攝的。由于這種可變性,數(shù)據(jù)存在模糊、聚焦、曝光、倒置、人為干擾等問題,因此在Kaggle EyePACS的數(shù)據(jù)集中,圖像和真實(shí)標(biāo)簽都存在不可避免的噪聲,這對任何模型的魯棒性都有很高的要求。
我們使用Messidor-2作為第二測試集,該數(shù)據(jù)集包含了874名患者的1 748張圖像,全部用于測試。與Kaggle EyePACS不同的是該數(shù)據(jù)集沒有任何形式的明顯噪聲,包含了每幅圖像關(guān)于糖尿病視網(wǎng)膜病變嚴(yán)重程度的圖像級醫(yī)療診斷。由于它本身的自定義分級系統(tǒng)與ICDRDSS評分標(biāo)準(zhǔn)不同,我們采用Krause等人[22]發(fā)布的真實(shí)標(biāo)簽,這些標(biāo)簽是由3個(gè)視網(wǎng)膜專家共同表決得出的,因此,它們的質(zhì)量比EyePACS的真實(shí)標(biāo)簽更加可靠。
無論是Kaggle EyePACS還是Messidor-2都是糖尿病視網(wǎng)膜病變等級分類相關(guān)研究中主流且具有代表性的數(shù)據(jù)集,數(shù)據(jù)集規(guī)模大、數(shù)據(jù)質(zhì)量高等特點(diǎn)使其在訓(xùn)練實(shí)驗(yàn)和對比實(shí)驗(yàn)中可以有效地訓(xùn)練模型并真實(shí)地反映出模型性能的變化[25-26]。
由于原始數(shù)據(jù)存在噪聲和嚴(yán)重的數(shù)據(jù)不平衡問題,我們對數(shù)據(jù)集進(jìn)行了有針對性的預(yù)處理和數(shù)據(jù)增強(qiáng)處理操作:
(1)隨機(jī)縮放每幅圖像10%;
(2)將圖像從中心裁剪到416×416像素,以提高模型的訓(xùn)練速度;
(3)對圖像進(jìn)行對比度受限的自適應(yīng)直方圖均衡化(CLAHE)[27]處理,使視網(wǎng)膜的微妙結(jié)構(gòu)變得更加清晰可見,更容易被檢測;
(4)采用非局部均值去噪(NLMD)[27-28]方法去除圖像中的部分噪聲;
(5)將圖像的色調(diào)、亮度統(tǒng)一到一定的范圍內(nèi),將其歸一化以提高模型的訓(xùn)練效果[29];
(6)將所有圖像由原來的方形圖像裁剪為以中心為圓點(diǎn),以208像素為半徑的圓形圖像。
為了平衡訓(xùn)練集并增加用于訓(xùn)練的圖像數(shù)量,處理數(shù)據(jù)集的類別不平衡問題,我們使用0°~360°的旋轉(zhuǎn)、0~15像素的放大和縮小以及水平和垂直的翻轉(zhuǎn)進(jìn)行數(shù)據(jù)增強(qiáng),對訓(xùn)練集中所有的圖像進(jìn)行隨機(jī)的增強(qiáng),對類1、類2、類3和類4設(shè)置不同的增強(qiáng)參數(shù)重復(fù)圖像[30-31]。改進(jìn)Effi?cientNet的糖尿病視網(wǎng)膜病變分類模型如圖4所示。
圖4 改進(jìn)EfficientNet的糖尿病視網(wǎng)膜病變分類模型Fig.4 Diabetic retinopathy classification model of improved EfficientNet
本實(shí)驗(yàn)在Intel(R)Xeon(R)CPU E5-2407、32G內(nèi) 存、Geforce RTX 3060 12G顯卡 的Ubun?tu18.04服務(wù)器上調(diào)試運(yùn)行。本文所提出模型的訓(xùn)練過程是基于Pytorch模型框架實(shí)現(xiàn)的。我們選擇EfficientNet-B3體系結(jié)構(gòu),首先使用在ImageNet數(shù)據(jù)集中預(yù)先訓(xùn)練的權(quán)重文件進(jìn)行訓(xùn)練,然后傳輸?shù)紼yePACS數(shù)據(jù)集并執(zhí)行微調(diào)。設(shè)置式(4)中的參數(shù)θ=10來訓(xùn)練網(wǎng)絡(luò),使用隨機(jī)梯度下降(Stochastic gradient descent,SGD)算法,Momentum設(shè)置為0.9,batch-size設(shè)置為8,學(xué)習(xí)率初始化為0.000 1。性能二次加權(quán)kappa分?jǐn)?shù)在驗(yàn)證集中停滯時(shí),學(xué)習(xí)率會降低10倍。本文設(shè)置了早停機(jī)制(Early Stopping),在10個(gè)epoch后性能沒有提升時(shí),訓(xùn)練就會停止。
損失函數(shù)會影響模型的性能,在相同網(wǎng)絡(luò)條件下不同的損失函數(shù)會導(dǎo)致不同的實(shí)驗(yàn)結(jié)果。為了驗(yàn)證交叉熵?fù)p失函數(shù)和焦點(diǎn)損失函數(shù)在EfficientNet網(wǎng)絡(luò)中的影響,設(shè)計(jì)了2組對比實(shí)驗(yàn)。實(shí)驗(yàn)1使用交叉熵?fù)p失函數(shù)的EfficientNet網(wǎng)絡(luò),實(shí)驗(yàn)2使用焦點(diǎn)損失的EfficientNet網(wǎng)絡(luò),2組實(shí)驗(yàn)均引入代價(jià)敏感正則化。
目前,糖尿病視網(wǎng)膜病變的分類通常采用Inception V3網(wǎng)絡(luò)[32-34]進(jìn)行數(shù)據(jù)訓(xùn)練。為了驗(yàn)證所引入的代價(jià)敏感正則化對模型的影響,本文設(shè)計(jì)了4組實(shí)驗(yàn)更加全面地對比實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)3使用Inception V3網(wǎng)絡(luò),實(shí)驗(yàn)4使用EfficientNet網(wǎng)絡(luò),實(shí)驗(yàn)5使用引入代價(jià)敏感正則化的Incep?tion V3網(wǎng)絡(luò),實(shí)驗(yàn)6使用引入代價(jià)敏感正則化的EfficientNet網(wǎng)絡(luò),4組實(shí)驗(yàn)均使用在實(shí)驗(yàn)1和實(shí)驗(yàn)2中表現(xiàn)更好的損失函數(shù)。
本文采用準(zhǔn)確率(Accuracy,ACC)、二次加權(quán)kappa分?jǐn)?shù)和ROC曲線下面積AUC等指標(biāo)來評價(jià)模型的性能。TP、FP、FN、TN分別表示真陽性、假陽性、假陰性、真陰性,ACC的計(jì)算公式為:
二次加權(quán)kappa分?jǐn)?shù)的計(jì)算公式為:
式中Οi,j表示將第i類判別為第j類的個(gè)數(shù),ωi,j為加權(quán)系數(shù),ωi,j和Ei,j的公式分別如式(8)和式(9)所示:
式(8)中N為分類的總類數(shù),式(9)中n為樣本的總數(shù)量。
4.3.1損失函數(shù)的影響
從表2可以看出,在引入代價(jià)敏感正則化的EfficientNet網(wǎng)絡(luò)中使用交叉熵?fù)p失函數(shù)時(shí),模型的準(zhǔn)確率為0.88,二次加權(quán)kappa分?jǐn)?shù)為0.85,ROC曲線下面積AUC的值為0.91;使用焦點(diǎn)損失函數(shù)時(shí),模型的準(zhǔn)確率為0.90,二次加權(quán)kappa分?jǐn)?shù)為0.86,ROC曲線下面積AUC的值為0.93,各項(xiàng)指標(biāo)都有約2%的提升。交叉熵?fù)p失函數(shù)已經(jīng)廣泛應(yīng)用于多分類任務(wù)中,而本實(shí)驗(yàn)結(jié)果驗(yàn)證了焦點(diǎn)損失函數(shù)在樣本類別不均勻的多分類任務(wù)中能夠通過對分類錯(cuò)誤施加不同程度的懲罰來提升模型的結(jié)果,對性能產(chǎn)生更好的影響。
表2 使用交叉熵?fù)p失函數(shù)和焦點(diǎn)損失函數(shù)的Efficient?Net網(wǎng)絡(luò)性能Tab.2 EfficientNet network performance with cross en?tropy loss function and focal loss function
4.3.2引入代價(jià)敏感正則化的影響
從表3可以看出,EfficientNet網(wǎng)絡(luò)在使用焦點(diǎn)損失時(shí)引入代價(jià)敏感正則化所得到二次加權(quán)kappa分?jǐn)?shù)為0.86,AUC值為0.93,表明該模型具有很好的性能,相較于不引入代價(jià)敏感正則化的EfficientNet網(wǎng)絡(luò)各項(xiàng)性能指標(biāo)提高了3%~5%。
為進(jìn)一步驗(yàn)證引入代價(jià)敏感正則化對分類網(wǎng)絡(luò)模型的影響,在Inception V3網(wǎng)絡(luò)中引入代價(jià)敏感正則化。由表3的實(shí)驗(yàn)結(jié)果可以看出,作為DR分類常用的Inception V3網(wǎng)絡(luò)在引入代價(jià)敏感正則化后準(zhǔn)確率、二次加權(quán)kappa分?jǐn)?shù)和AUC有2%~4%的提升。從上述結(jié)果可以看出,兩種分類模型的各項(xiàng)性能指標(biāo)均有所提高,特別是EfficientNet網(wǎng)絡(luò)準(zhǔn)確率提升到0.90以上,證明引入代價(jià)敏感正則化能夠有效提高分類網(wǎng)絡(luò)的性能。
表3 實(shí)驗(yàn)結(jié)果對比Tab.3 Comparison of experimental results
4.3.3與其他網(wǎng)絡(luò)模型的比較
[
我 們 將 本 文 方 法與Lands等 人16]在2020年利用DenseNet169網(wǎng)絡(luò)所提出的方法進(jìn)行對比,該方法在利用CNN對糖尿病視網(wǎng)膜病變進(jìn)行分類的任務(wù)中具有較高的性能結(jié)果。使用二次加權(quán)kappa分?jǐn)?shù)和ROC曲線下面積AUC作為評估模型性能的指標(biāo)。同時(shí)為了進(jìn)一步驗(yàn)證本文方法的先進(jìn)性,另外選擇了Galdran等人[13]在2020年使用的ResNeXt50網(wǎng)絡(luò)模型和Inception V3網(wǎng)絡(luò)模型,分別在EyePACS和Messidor-2兩大分類數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表4所示。同時(shí)使用集平均方式計(jì)算了模型5分類的平均真陽性率和假陽性率,并繪制了模型在EyePACS測試集上的ROC曲線以及混淆矩陣,如圖5所示。
圖5 EfficientNet-CSR模型在EyePACS測試集上的性能。(a)ROC曲線;(b)混淆矩陣。Fig.5 Performance of EfficientNet-CSR in the EyePACS test set.(a)ROC curves;(b)Confusion matrix.
表4 4種網(wǎng)絡(luò)模型在兩個(gè)數(shù)據(jù)集上的性能Tab.4 Performance of four Network models on two data sets
從 表4可 以 看 出,ResNeXt50網(wǎng) 絡(luò)和Incep?tion V3網(wǎng)絡(luò)在兩個(gè)數(shù)據(jù)集上的二次加權(quán)kappa分?jǐn)?shù)未超過0.80,AUC值未超過0.90,分類器性能一般。Lands等人[16]所提出的模型二次加權(quán)kappa分 數(shù) 為0.81~0.83,AUC超 過0.90,分 類器性能較好。本文所提方法在EyePACS數(shù)據(jù)集上的二次加權(quán)kappa分?jǐn)?shù)為0.86,AUC值為0.93;在Messidor-2數(shù)據(jù)集上的二次加權(quán)kappa分?jǐn)?shù)為0.88,AUC值為0.95,分類器性能很好,特別是二次加權(quán)kappa分?jǐn)?shù)超出Lands等人[16]所提出模型的5%。
從圖5的混淆矩陣可以看出,數(shù)據(jù)大部分分布在主對角線上,說明模型的準(zhǔn)確率很高。模型把第0類預(yù)測成第2類,把第1類預(yù)測成第0類,把第2類預(yù)測成第0類,3種錯(cuò)誤所占比例較高,我們可以在后續(xù)的實(shí)驗(yàn)中通過修改懲罰矩陣中的值加大對這3種錯(cuò)誤的懲罰。ROC曲線位于偏左上角位置,表明我們的分類器性能較好,AUC值為0.93表明模型綜合性能很好。
Lands等人[16]所提出的模型復(fù)雜,無法優(yōu)化網(wǎng)絡(luò),模型參數(shù)量和計(jì)算量較大。利用Efficient?Net網(wǎng)絡(luò)在網(wǎng)絡(luò)寬度、網(wǎng)絡(luò)深度等方面進(jìn)行特征提取,同時(shí)引入代價(jià)敏感正則化加大對難分類別的懲罰,提高了模型對DR的分類效果,彌補(bǔ)了EfficientNet網(wǎng)絡(luò)模型分類準(zhǔn)確率不高的缺點(diǎn)。上述結(jié)果與分析表明,EfficientNet網(wǎng)絡(luò)模型在該分類任務(wù)中比其他CNN模型具有更好的性能。與目前主流分類模型相比,本文所提出的引入代價(jià)敏感正則化的EfficientNet網(wǎng)絡(luò)模型在糖尿病視網(wǎng)膜病變分類任務(wù)中具有更好的結(jié)果。
本文提出了一種引入代價(jià)敏感正則化的Ef?ficientNet網(wǎng)絡(luò)模型對糖尿病視網(wǎng)膜病變進(jìn)行分類的方法。將代價(jià)敏感正則化引入到焦點(diǎn)損失函數(shù)中,使模型能夠懲罰錯(cuò)誤的分類結(jié)果,更好地區(qū)分不同類別之間的差異。通過代價(jià)敏感正則化和EfficientNet的結(jié)合,使DR分類任務(wù)的綜合性能得到了提升。在EyePACS和Messidor-2上得到0.86和0.88的二次加權(quán)kappa分?jǐn)?shù),實(shí)驗(yàn)結(jié)果充分證明了所提方法的優(yōu)越性。與其他模型相同,EfficientNet網(wǎng)絡(luò)模型也無法給出分類的具體原因,這也是糖尿病視網(wǎng)膜病變分類模型無法有效應(yīng)用于臨床當(dāng)中的主要原因之一,未來可以在模型的結(jié)構(gòu)上進(jìn)一步優(yōu)化完善。