李軒屹,朱曉軍
(太原理工大學(xué) 信息與計(jì)算機(jī)學(xué)院,山西 太原 030024)
糖尿病視網(wǎng)膜病變(DR)是全球致盲性疾病中發(fā)病率最高的。據(jù)國際糖尿病聯(lián)盟(IDF)分析研究[1],糖尿病病齡超過10年,視網(wǎng)膜病變幾率高達(dá)60%,因此對眼底圖像的DR嚴(yán)重程度進(jìn)行準(zhǔn)確分類是當(dāng)前研究重點(diǎn)。
隨著深度學(xué)習(xí)的發(fā)展,卷積神經(jīng)網(wǎng)絡(luò)已被廣泛應(yīng)用于醫(yī)療領(lǐng)域的圖像分類。Yu等[2]首先預(yù)處理數(shù)據(jù)集突出DR的跡象,使用卷積網(wǎng)絡(luò)提取圖像特征,最后使用提升樹算法做預(yù)測。Sharma等[3]提出一種深度的CNN結(jié)構(gòu),對不同糖尿病視網(wǎng)膜病變數(shù)據(jù)集進(jìn)行分類,得到了較好的分類準(zhǔn)確率。Wan等[4]使用遷移學(xué)習(xí)與超參數(shù)優(yōu)化,分別在4種經(jīng)典網(wǎng)絡(luò)上進(jìn)行分類預(yù)測,結(jié)果驗(yàn)證遷移學(xué)習(xí)對DR分類效果更好。李等[5]提出在AlexNet基礎(chǔ)上,在卷積層后引入批量歸一化層并使用熱度圖對圖像進(jìn)行特征分析,結(jié)果表明充分提取視網(wǎng)膜質(zhì)特征可以提升準(zhǔn)確率。
利用神經(jīng)網(wǎng)絡(luò)進(jìn)行分類時(shí),根據(jù)圖像表達(dá)出的不同特征劃分為不同的類別。使用卷積層對視網(wǎng)膜圖像特征提取時(shí),不同卷積層提取到的特征是不同的,前人使用固定分辨率圖像與單層特征對網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,沒有充分利用不同特征信息訓(xùn)練網(wǎng)絡(luò)。因此本文提出一種輸入多分辨率圖像融合多層特征的多尺度ResNext網(wǎng)絡(luò)模型對糖尿病視網(wǎng)膜病變(DR)的嚴(yán)重程度進(jìn)行分類。
針對前研究者對DR嚴(yán)重程度分類的不足,本文使用多分辨率眼底圖像作為輸入層數(shù)據(jù),將多層特征通過加權(quán)融合方式作為全連接層的學(xué)習(xí)特征。使用遷移學(xué)習(xí)的方法對模型超參數(shù)進(jìn)行初始化,以加快網(wǎng)絡(luò)收斂并減少過擬合的發(fā)生。
1.1.1 多分辨率圖像輸入
向網(wǎng)絡(luò)輸入不同分辨率眼底圖像作為訓(xùn)練數(shù)據(jù),卷積層使用卷積核提取眼底圖像特征時(shí),不同分辨率圖像所表達(dá)出的特征信息是不同的。卷積層在提取同一眼底照片的高分辨率圖像特征時(shí),可以提取到更多的紋理、顏色等細(xì)節(jié)性特征。而在提取相對低分辨率圖像的特征時(shí),則可以提取到相對高分辨率圖像紋理特征的語義特征信息。在訓(xùn)練網(wǎng)絡(luò)時(shí),多類型特征可以使網(wǎng)絡(luò)學(xué)習(xí)到更全面的眼底圖像信息,從而提高DR病理圖像分類準(zhǔn)確率。
本文采用多分辨率圖像作為輸入層數(shù)據(jù),受限于全連接層特征神經(jīng)元個(gè)數(shù),采用空間金字塔池化(SPP)[6]方式對特征圖進(jìn)行特征選擇,通過該方法可以提取到固定數(shù)目的特征,從而使網(wǎng)絡(luò)可以提取多分辨率圖像的特征進(jìn)行訓(xùn)練。SPP池化與傳統(tǒng)池化方法相似,通過設(shè)置多種池化窗口大小與移動(dòng)步長,采用平均值算法選擇特征。本文將經(jīng)過池化后得到的特征圖大小設(shè)置為:3×3、2×2、1×1。假設(shè)特征圖大小為m×m,池化窗口大小為win=m/n,滑動(dòng)步長為str=m/n,其中n=1,2,3。SPP池化結(jié)構(gòu)圖如圖1所示。
圖1 空間金字塔池化
如圖1所示,我們將特征層提取出的每一個(gè)特征圖經(jīng)過SPP池化后,可以得到9+4+1=14維的特征神經(jīng)元,任意大小特征圖經(jīng)過池化后都形成14×1024-d特征神經(jīng)元用于訓(xùn)練全連接層。
1.1.2 多層特征融合
傳統(tǒng)算法使用卷積神經(jīng)網(wǎng)絡(luò)對視網(wǎng)膜病理圖像進(jìn)行分類時(shí),僅用高卷積層特征來訓(xùn)練全連接層網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)模型中不同特征層反應(yīng)圖像的不同特征信息,網(wǎng)絡(luò)的淺層特征圖分辨率高且局部視野小,可以提取到圖像的紋理特征,實(shí)驗(yàn)結(jié)果表明細(xì)節(jié)性特征在一定程度上可以提高分類的精度[7]。網(wǎng)絡(luò)的高層特征圖分辨率低但具有高視野,從而可以提取到圖像的語義特征信息。圖像分類的準(zhǔn)確度取決于特征的選取,本文充分利用不同層所表達(dá)的特征信息,采用融合多層特征的方式[8],將深層特征與淺層特征進(jìn)行融合,進(jìn)一步挖掘出圖像信息,從而提取到更豐富的紋理信息,同時(shí)針對圖像的各種變化,又可以得到具有較好的魯棒性的特征,實(shí)現(xiàn)特征的優(yōu)勢互補(bǔ),以提高分類的準(zhǔn)確率[9]。圖2為網(wǎng)絡(luò)不同卷積層特征,從圖2中可以看出淺層特征圖突出眼底圖像的特征信息,深層特征圖更突出語義信息。
圖2 不同卷積層特征
直接將不同層特征進(jìn)行融合不能達(dá)到好的融合效果,因此基于不同特征層分類準(zhǔn)確率的不同,本文將不同特征層根據(jù)分類準(zhǔn)確率進(jìn)行加權(quán)融合。結(jié)合FPN網(wǎng)絡(luò)融合思想,由于不同層特征維度不同,所以采用最近鄰方法將高層特征圖進(jìn)行上采樣,使其與低層特征圖有相同的維度。將網(wǎng)絡(luò)模型中的卷積層劃分為5部分,由于第一卷積層特征信息復(fù)雜,融合時(shí)不考慮融合該層特征。通過實(shí)驗(yàn)測試以得到不同層的分類準(zhǔn)確率作為融合權(quán)重,通常情況下認(rèn)為,準(zhǔn)確率越高,說明該層特征有較高的分類信息,所以準(zhǔn)確率越高該層的融合權(quán)重越大。加權(quán)融合方法如圖3所示,其中每個(gè)卷積層提取出的特征圖為Ci,準(zhǔn)確率為ai,特征權(quán)重為wi+(i+1),其中i=2,3,4,5。
圖3 加權(quán)融合
首先將每一層特征經(jīng)過1×1卷積層,使不同層具有相同的特征圖維度。其次將特征圖C5進(jìn)行上采樣操作以達(dá)到相同維度。根據(jù)分類準(zhǔn)確率得到第五層與第四層的融合權(quán)重分別為w5-4與w4-5,如式(1)所示。根據(jù)權(quán)重將兩層特征進(jìn)行加權(quán)融合,為了消除上采樣后融合產(chǎn)生的特征混疊效應(yīng),使用3×3卷積再提取特征得到p4,如式(2)所示。其余層采用類似的方式進(jìn)行融合分別得到p3與p2。將融合后的特征圖采用concat 融合方式進(jìn)行合并,最后使用SPP池化進(jìn)行特征選擇得到特征F,如式(3)所示
(1)
p4=Conv3×3(w5-4×p5+w4-5×C4)
(2)
F=spp(concat(p5+p4+p3+p2))
(3)
缺乏標(biāo)記數(shù)據(jù)是使用卷積神經(jīng)網(wǎng)絡(luò)預(yù)測醫(yī)療領(lǐng)域疾病時(shí)所面臨的一大難題。訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)時(shí),訓(xùn)練集過小極易導(dǎo)致過擬合現(xiàn)象的發(fā)生,導(dǎo)致網(wǎng)絡(luò)模型不收斂,進(jìn)而不能達(dá)到預(yù)期的分類效果。為了解決醫(yī)療數(shù)據(jù)少的問題,相關(guān)學(xué)者提出在使用卷積神經(jīng)網(wǎng)絡(luò)處理醫(yī)療領(lǐng)域問題時(shí),采用遷移學(xué)習(xí)的方法來解決因訓(xùn)練集過小導(dǎo)致的模型不收斂或泛化能力差的問題。
本文使用遷移學(xué)習(xí)的方法,對模型超參數(shù)進(jìn)行初始化?;诜诸悢?shù)據(jù)的相似性,提取使用ResNext網(wǎng)絡(luò)模型參數(shù),作為本文模型的初始化參數(shù)。將靠近輸入層的卷積層學(xué)習(xí)率設(shè)為0,不再更新低卷積層參數(shù),僅對之后的卷積層與全連接層訓(xùn)練學(xué)習(xí),以加快模型收斂并減少過擬合發(fā)生。
使用卷積神經(jīng)網(wǎng)絡(luò)在圖像領(lǐng)域預(yù)測分類時(shí),網(wǎng)絡(luò)越深,可以提取到的特征信息越精確,進(jìn)而提高分類準(zhǔn)確率。但實(shí)驗(yàn)發(fā)現(xiàn)經(jīng)典VGG網(wǎng)絡(luò)模型隨著網(wǎng)絡(luò)的加深,分類準(zhǔn)確率不變甚至?xí)陆?,一部分原因是出現(xiàn)了梯度爆炸,但主要原因是網(wǎng)絡(luò)退化。隨后何愷明等使用殘差網(wǎng)絡(luò)[10]來解決網(wǎng)絡(luò)退化問題,當(dāng)網(wǎng)絡(luò)某層出現(xiàn)退化時(shí),對該層做恒等變換映射H(x)=F(x)+x,使網(wǎng)絡(luò)退回卷積前的狀態(tài)。例如出現(xiàn)退化則F(x)=0,則恒等變換后為H(x)=x。恒等變換如圖4所示。
圖4 殘差網(wǎng)絡(luò)恒等變換
隨后何愷明團(tuán)隊(duì)提出了基于殘差網(wǎng)絡(luò)的變形網(wǎng)絡(luò)—ResNext網(wǎng)絡(luò)[11]。此網(wǎng)絡(luò)通過在殘差網(wǎng)絡(luò)中加入獨(dú)立路徑即“基數(shù)”(Cardinality)的超參數(shù),來增加網(wǎng)絡(luò)的維度。文獻(xiàn)[11]實(shí)驗(yàn)證明,通過增加“基數(shù)”來拓寬網(wǎng)絡(luò)維度比傳統(tǒng)的增加網(wǎng)絡(luò)深度或?qū)挾鹊姆椒ǜ行?。網(wǎng)絡(luò)結(jié)構(gòu)中基數(shù)采用分組卷積的思想,將多層特征圖分成不同組分別進(jìn)行卷積操作,最后將卷積后的結(jié)果進(jìn)行合并。而分組卷積為將輸入向量x通過T(x) 函數(shù)投影到一個(gè)低維空間,并對低維表示特征進(jìn)行變換即卷積特征提取,其中不同組的Ti(x) 具有相同的拓?fù)浣Y(jié)構(gòu),最后將不同組的特征結(jié)果進(jìn)行聚合。如式(4)所示,其中x表示特征圖、T(x) 為降維變換函數(shù)、C表示分組數(shù)、y為輸出值。實(shí)驗(yàn)結(jié)果表明50層ResNext與100層殘差網(wǎng)絡(luò)在參數(shù)個(gè)數(shù)相同,且計(jì)算量僅有一半的情況下分類準(zhǔn)確率更高。分組聚合變換如圖5所示
圖5 分組聚合變換
(4)
神經(jīng)網(wǎng)絡(luò)主要由輸入層、卷積層、激活函數(shù)、池化層、全連接層構(gòu)成。輸入層用來向網(wǎng)絡(luò)輸入訓(xùn)練的圖像數(shù)據(jù)。卷積層通過滑動(dòng)濾波器提取特征,本文使用7×7、3×3、1×1這3種濾波器進(jìn)行特征提取。將每層輸出數(shù)據(jù)使用激活函數(shù)進(jìn)行非線性化,以更準(zhǔn)確表達(dá)圖像信息。池化層對特征圖進(jìn)行壓縮只提取顯著特征以降低模型參數(shù),降低模型的過擬合。全連接層將卷積層學(xué)到的分布式特征映射到樣本的標(biāo)記空間,將結(jié)果使用softmax交叉熵?fù)p失函數(shù)進(jìn)行分類損失評估。網(wǎng)絡(luò)結(jié)構(gòu)如圖6所示。
圖6 網(wǎng)絡(luò)結(jié)構(gòu)
對網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,如圖6所示訓(xùn)練過程如下:
(1)將預(yù)處理后眼底圖像輸入網(wǎng)絡(luò)模型。
(2)第一階段將輸入圖像使用7×7大視野卷積核進(jìn)行特征提取,再使用最大池化方法降低網(wǎng)絡(luò)參數(shù)。
(3)第二階段至第五階段卷積采取分組形式進(jìn)行特征提取,每個(gè)階段中用多個(gè)小卷積核實(shí)現(xiàn)大卷積核的感受野。
(4)每次卷積后數(shù)據(jù)分布會發(fā)生變化,分布的不斷變化會造成網(wǎng)絡(luò)訓(xùn)練精度的損失。每次卷積操作后對每一維數(shù)據(jù)進(jìn)行批量歸一化。歸一為均值為0、方差為1的數(shù)據(jù)分布,以加快模型收斂速度。
(5)為了使網(wǎng)絡(luò)表達(dá)能力更強(qiáng),在批量歸一化后加入激活函數(shù)來表達(dá)更近似圖像信息。本文使用LeakyRelu 函數(shù)激活網(wǎng)絡(luò)中的神經(jīng)元,其函數(shù)給負(fù)值神經(jīng)元賦予一個(gè)非零斜率α,這樣可以激活Relu 函數(shù)無法激活的負(fù)值神經(jīng)元。如式(5)所示
(5)
(6)將多層特征進(jìn)行加權(quán)融合,融合后使用SPP池化進(jìn)行特征選擇,最后輸入全連接層進(jìn)行學(xué)習(xí)。
(7)最后使用softmax 交叉熵?fù)p失函數(shù)對模型分類效果進(jìn)行評估。首先使用softmax函數(shù)計(jì)算出全連接層輸出不同類別的概率值p(m|x)。如式(6)所示。然后根據(jù)概率值使用交叉熵?fù)p失函數(shù)計(jì)算得到損失值。如式(7)所示
(6)
(7)
3.1.1 數(shù)據(jù)集簡介
本實(shí)驗(yàn)數(shù)據(jù)來源于kaggle社區(qū)競賽的EYEPACS數(shù)據(jù)集,該數(shù)據(jù)集包含35 126張由專業(yè)眼科醫(yī)生診斷為不同嚴(yán)重程度的高分辨率視網(wǎng)膜圖片,其嚴(yán)重程度分為,如圖7所示:圖7(a)正常、圖7(b)輕度DR、圖7(c)中度DR、圖7(d)嚴(yán)重DR和圖7(e)增殖性DR這5大類。
圖7 眼底五分類
在醫(yī)療領(lǐng)域,使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行多分類時(shí),分類類別的數(shù)量與圖像質(zhì)量對分類準(zhǔn)確率有較大影響。該數(shù)據(jù)集中不同類別的視網(wǎng)膜圖像數(shù)據(jù)量嚴(yán)重失衡,正常數(shù)據(jù)量是患病數(shù)據(jù)量的30多倍。見表1。而且眼底圖像在采集過程中受環(huán)境影響會產(chǎn)生噪聲,導(dǎo)致網(wǎng)絡(luò)模型收斂速度較慢,以至于達(dá)不到預(yù)期目標(biāo)。
表1 不同類別數(shù)據(jù)量
3.1.2 數(shù)據(jù)預(yù)處理
針對視網(wǎng)膜圖像樣本數(shù)量失衡和圖像噪聲問題,在輸入網(wǎng)絡(luò)前對圖像進(jìn)行預(yù)處理操作。數(shù)據(jù)預(yù)處理如下:
(1)受采集環(huán)境影響,會采集到部分黑或全黑的眼底圖像,這些數(shù)據(jù)對訓(xùn)練網(wǎng)絡(luò)沒有意義,將這些數(shù)據(jù)刪除。如圖8(a)所示。
(2)去除眼底視網(wǎng)膜圖像周圍黑邊。如圖8(b)所示。
(3)對圖像進(jìn)行歸一化處理,以減小光線不均勻造成的干擾。如圖8(c)所示。
(4)對圖像進(jìn)行直方圖均衡化處理,即對圖像進(jìn)行線性拉伸,重新分配圖像像素元值,減少光線引起的噪聲,使圖像表現(xiàn)出具有的最大特征信息。如圖8(d)所示。
(5)由于每種類別數(shù)據(jù)量的失衡,采用數(shù)據(jù)增強(qiáng)方法增加負(fù)樣本數(shù)量。主要通過旋轉(zhuǎn)(90°、180°、270°)圖像、翻轉(zhuǎn)數(shù)據(jù)、平移的方法來增加負(fù)樣本數(shù)量。使每種類別數(shù)量基本相同,從而解決樣本數(shù)量失衡問題。如圖8(e)、圖8(f)所示。
圖8 數(shù)據(jù)預(yù)處理對比
(6)為了減少模擬實(shí)驗(yàn)的計(jì)算量,將訓(xùn)練數(shù)據(jù)的分辨率大小調(diào)整為512×512與256×256,其中256×256通過縮放512×512方式得到。
將預(yù)處理后的數(shù)據(jù)進(jìn)行劃分,將80%的數(shù)據(jù)作為訓(xùn)練集用于訓(xùn)練網(wǎng)絡(luò)與參數(shù)學(xué)習(xí),并在訓(xùn)練過程中采取5倍交叉驗(yàn)證驗(yàn)證網(wǎng)絡(luò)在訓(xùn)練過程中是否發(fā)生過擬合。20%的數(shù)據(jù)作為測試集用于測試模型的識別與泛化能力。使用不同分辨率圖像交替訓(xùn)練網(wǎng)絡(luò)100個(gè)周期,反饋學(xué)習(xí)對模型參數(shù)進(jìn)行調(diào)優(yōu)時(shí),使用小學(xué)習(xí)率的SGD算法對網(wǎng)絡(luò)進(jìn)行調(diào)優(yōu)。
本文設(shè)置兩組對比實(shí)驗(yàn)。第一組實(shí)驗(yàn):為了驗(yàn)證聚集殘差網(wǎng)絡(luò)(ResNext)和多尺度ResNext網(wǎng)絡(luò)分類效果,在相同環(huán)境下使用相同數(shù)據(jù)集分別對網(wǎng)絡(luò)進(jìn)行訓(xùn)練對比。第二組實(shí)驗(yàn)為多尺度ResNext網(wǎng)絡(luò)與傳統(tǒng)經(jīng)典DR分類方法進(jìn)行對比。
3.3.1 評價(jià)指標(biāo)
參考相關(guān)領(lǐng)域研究者文獻(xiàn),本文通過分類準(zhǔn)確率(ACC)、AUC值、特異性(Specicity)與靈敏度(Sensiti-vity)對模型分類效果進(jìn)行評估?;诙喾诸惸P?,定義在統(tǒng)計(jì)真陽性(TP)、假陽性(FP)、真陰性(TN)和假陰性(FN)時(shí),當(dāng)輸入無DR眼底圖片時(shí),模型分類為正常時(shí)則為真陽性,分類為其它類別時(shí)則為假陽性。當(dāng)輸入一個(gè)患有DR眼底圖片時(shí),模型分類為患有DR的為真陰性,分類為正常時(shí)為假陰性。統(tǒng)計(jì)如式(8)~式(10)所示
(8)
(9)
(10)
3.3.2 實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)一:
為了驗(yàn)證多尺度網(wǎng)絡(luò)分類的有效性,選擇在相同的環(huán)境下,使用相同的數(shù)據(jù)集分別對兩種方法進(jìn)行模擬實(shí)驗(yàn)。從圖9中可以看出,由于本文使用遷移學(xué)習(xí)對模型參數(shù)進(jìn)行初始化,初始準(zhǔn)確率是高于殘差網(wǎng)絡(luò)的。本文模型收斂速度在前期沒有殘差網(wǎng)絡(luò)收斂速度快,隨后收斂速度逐漸加快。兩條曲線總體都朝著收斂方向上升。通過數(shù)據(jù)增強(qiáng)技術(shù)增加數(shù)據(jù)量,經(jīng)過測試沒有發(fā)生過擬合。
圖9 實(shí)驗(yàn)對比
實(shí)驗(yàn)二:
為了評估本文的多尺度ResNext網(wǎng)絡(luò)模型分類的有效性,本文與使用相同數(shù)據(jù)集的經(jīng)典方法進(jìn)行比較。見表2,在分類準(zhǔn)確率上本文方法是最好的,并且在特異性與靈敏度上都超過0.9,有更好的平衡性。表明多尺度ResNext網(wǎng)絡(luò)模型的分類性能優(yōu)于傳統(tǒng)的經(jīng)典算法。
表2 與4個(gè)經(jīng)典方法的結(jié)果對比
糖尿病視網(wǎng)膜病變是糖尿病患者發(fā)生在眼部的一種并發(fā)癥疾病,如果在早期不給予治療極易導(dǎo)致失明。由于醫(yī)療水平與眼科醫(yī)生數(shù)量的限制,使用計(jì)算機(jī)輔助醫(yī)生進(jìn)行準(zhǔn)確診斷極其重要。本文提出使用多尺度卷積神經(jīng)網(wǎng)絡(luò)和遷移學(xué)習(xí),對眼底照片中患有糖尿病視網(wǎng)膜病變的嚴(yán)重程度進(jìn)行分類。使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分類時(shí),特征的自動(dòng)提取減少了人工提取特征的誤差。模型使用遷移學(xué)習(xí)方法對模型參數(shù)進(jìn)行初始化,加快了模型收斂速度。本文充分考慮深淺層特征的特點(diǎn),使用多尺度特征用于網(wǎng)絡(luò)的學(xué)習(xí)以達(dá)到更好的分類效果。實(shí)驗(yàn)中分類準(zhǔn)確率最好結(jié)果為96.98%,其表明多尺度卷積神經(jīng)網(wǎng)絡(luò)對眼底圖像患有DR的嚴(yán)重程度分類效果有所提升。
后續(xù)工作將采用多種卷積網(wǎng)絡(luò)共同決策的集成方法進(jìn)行分類預(yù)測。在對DR分類時(shí),由于類間差異性小,考慮加入注意力機(jī)制方法,提取特征時(shí)可以不斷地聚焦于最具辨別性區(qū)域從而提高分類的準(zhǔn)確性。