(1.浙江工業(yè)大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,浙江 杭州 310023;2.浙江大學(xué)附屬第一醫(yī)院,浙江 杭州 310003)
皮膚癌是常見的人類惡性腫瘤[1],而黑色素瘤(Melanoma)是皮膚癌中最致命的疾病之一,約占皮膚癌致死率的75%[2]。根據(jù)美國癌癥協(xié)會的統(tǒng)計,2016 年在美國診斷出約76 380 例新增的黑色素瘤病例,其中死亡人數(shù)約為10 130 人[3]。如果黑色素瘤能在早期被發(fā)現(xiàn)并正確治療,存活率非常高[4]。皮膚鏡檢查(Dermatoscopy)是一種非侵入性皮膚成像技術(shù),它為皮膚癌的臨床診斷與相關(guān)的研究提供了可靠的依據(jù)[4]。隨著計算機(jī)圖像處理技術(shù)的發(fā)展,計算機(jī)輔助診斷在醫(yī)學(xué)圖像處理中得到廣泛應(yīng)用[5-7]。通過皮膚鏡檢查技術(shù)可獲得皮膚癌黑色素瘤與非黑色素瘤圖像,其中黑色素瘤存在巨大的類內(nèi)變化,如顏色、紋理、形狀、大小和位置,而且黑色素瘤和非黑色素瘤之間具有高度的視覺相似性。另外,皮膚癌圖像的采集與標(biāo)記,需要相關(guān)的醫(yī)學(xué)知識,數(shù)據(jù)獲取難于自然圖像,可用于研究分析的數(shù)據(jù)量相對較小。這些問題都使得區(qū)分黑色素瘤與非黑色素瘤變得很困難。因此在有限的數(shù)據(jù)集中,如何提取表達(dá)能力強(qiáng)的皮膚癌高維特征,是提高皮膚癌疾病分類性能所要解決的主要問題。為了解決該問題,早期的研究嘗試?yán)玫图壍氖止ぬ卣鱽韰^(qū)分黑色素瘤和非黑色素瘤,這些手工特征包括形狀、顏色和紋理[8-9]。一些研究人員進(jìn)一步提出采用特征選擇算法來選擇合適的特征,并利用這些低級手工特征的組合提高識別性能[9]。另一方面,有部分學(xué)者提出首先進(jìn)行分割,然后基于分割的結(jié)果來識別黑色素瘤[10]。分割允許特征提取過程僅在病變區(qū)域進(jìn)行,從而生成更具體和更有代表性的特征。但在這些方法中,分割和分類過程都是基于手工特征,這限制了區(qū)分能力。
近年來,隨著深度學(xué)習(xí)領(lǐng)域的快速發(fā)展,具有層次特征學(xué)習(xí)能力的CNN在許多醫(yī)學(xué)圖像分析任務(wù)中取得了突破,其中包括分類[11]、檢測[12]和分割[13]。一些研究人員開始使用CNN進(jìn)行皮膚癌黑色素瘤識別,利用CNN的區(qū)分能力來獲得性能提升。Codella等提出整合CNN,稀疏編碼和支持向量機(jī)(SVM)來識別黑色素瘤[14]。Kawahara等提出了通過基于AlexNet[15]的完全卷積神經(jīng)網(wǎng)絡(luò)來提取黑色素瘤的代表性特征[16],Gal等提出了貝葉斯學(xué)習(xí)與主動學(xué)習(xí)框架相結(jié)合的方法識別皮膚癌[17]。但是這些方法或者只是在依靠自然圖像數(shù)據(jù)集(如ImageNet[18])訓(xùn)練獲得的特征,沒有充分考慮黑色素瘤的自身特征,或者只是使用了淺層的CNN結(jié)構(gòu),這并不能很好地應(yīng)對黑色素瘤識別的挑戰(zhàn)。CNN還有很大的潛力待挖掘,可以進(jìn)一步提高黑色素瘤識別的準(zhǔn)確性。卷積神經(jīng)網(wǎng)絡(luò)的深度是決定模型表達(dá)能力的主要因素,增加網(wǎng)絡(luò)的深度,網(wǎng)絡(luò)模型可以得到更好的特征學(xué)習(xí)和特征表達(dá)能力。但隨著網(wǎng)絡(luò)層數(shù)的增加,模型的訓(xùn)練難度不斷加大,很難保證模型可訓(xùn)練得到一個理想的結(jié)果。為了解決淺層CNN學(xué)習(xí)到的特征區(qū)分能力不夠高的問題,同時讓加深的網(wǎng)絡(luò)模型能得到好的訓(xùn)練結(jié)果,在卷積神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上,筆者提出了一種基于深層殘差網(wǎng)絡(luò)的皮膚癌黑色素瘤識別算法。針對皮膚鏡黑色素瘤識別的數(shù)據(jù)集,將提出的算法實(shí)驗(yàn)結(jié)果與不同深度CNN的實(shí)驗(yàn)結(jié)果進(jìn)行對比,預(yù)期能夠取得更好的識別性能。
卷積神經(jīng)網(wǎng)絡(luò)是計算機(jī)視覺領(lǐng)域的研究熱點(diǎn),許多理論研究和實(shí)踐研究表明:卷積神經(jīng)網(wǎng)絡(luò)的深度是決定模型表達(dá)能力的主要因素,增加網(wǎng)絡(luò)的深度,網(wǎng)絡(luò)模型可以得到更好的特征學(xué)習(xí)和特征表達(dá)能力[19]。從Lecun等[20]提出的5 層LeNet引入了卷積神經(jīng)網(wǎng)路的概念,到8 層的AlexNet[15]在ISVRC-2012圖像識別的比賽上取得第1 名,引起了深度學(xué)習(xí)的熱潮,再然后受到AlexNet的啟發(fā),通過增加網(wǎng)絡(luò)深度有了16 層與19 層的VGG網(wǎng)絡(luò)[19]以及22 層的GoogLeNet[21]。然而,隨著網(wǎng)絡(luò)深度的增加,訓(xùn)練難度不斷加大,會產(chǎn)生梯度消失和梯度爆炸問題[22],這很難保證模型可訓(xùn)練得到理想的結(jié)果,因此卷積神經(jīng)網(wǎng)絡(luò)的深度受到一定的限制。He等[23]提出了一種基于殘差學(xué)習(xí)算法的深度殘差網(wǎng)絡(luò)構(gòu)建方法,一方面可以很好地減輕訓(xùn)練深層網(wǎng)絡(luò)的負(fù)擔(dān),另一方面可以解決因網(wǎng)絡(luò)深度增加帶來的梯度退化問題,使構(gòu)建的網(wǎng)絡(luò)深度更深、具備更好的模型表達(dá)能力。
圖1為殘差學(xué)習(xí)算法示意圖,殘差學(xué)習(xí)是通過在卷積神經(jīng)網(wǎng)絡(luò)原有的堆疊的權(quán)重層(卷積層)外部加入越層的快捷連接(Shortcut connections)[24]構(gòu)成一個殘差學(xué)習(xí)模塊,殘差學(xué)習(xí)模塊可以作為神經(jīng)網(wǎng)絡(luò)的一部分。假設(shè)殘差學(xué)習(xí)模塊的輸入為x,它要擬合的原始映射函數(shù)(即模塊的輸出)為H(x),可以定義另一個殘差映射函數(shù)F(x)為H(x)-x,那么原始映射函數(shù)H(x)就可以表示為F(x)+x。He等通過實(shí)驗(yàn)證明擬合殘差映射函數(shù)F(x)比擬合原始函數(shù)映射H(x)要容易得多[23]。這樣,就可以把F(x)+x看成是前饋網(wǎng)絡(luò)中主路徑上的F(x)與快捷連接x的和??旖葸B接不會引入額外的參數(shù),也不會增加網(wǎng)絡(luò)的計算復(fù)雜度。
圖1 殘差學(xué)習(xí)算法示意圖Fig.1 The schematic of residual learning
簡單來說,殘差學(xué)習(xí)是在傳統(tǒng)的線性網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上,增加一條越層的快捷連接,快捷連接通過與線性網(wǎng)絡(luò)主路徑上的擬合函數(shù)相融,得到所求輸出的映射。加入快捷連接后,可以使得訓(xùn)練過程中底層的誤差利用快捷連接向上層傳播,減弱了由于層數(shù)過多而造成的梯度退化問題,因此模型更容易訓(xùn)練得到理想狀態(tài)。
針對皮膚鏡圖像的黑色素瘤識別的實(shí)際問題,利用殘差學(xué)習(xí)算法,構(gòu)建了一個基于深度殘差網(wǎng)絡(luò)的黑色素瘤識別模型,該模型涉及的殘差網(wǎng)絡(luò)整體框架如圖2所示。圖2中卷積層和殘差塊上的數(shù)字表示該模塊輸出的特征圖數(shù)量,全連接層上方的數(shù)字表示該層的節(jié)點(diǎn)數(shù)。整個網(wǎng)絡(luò)共有50 個權(quán)重層,包括49 個卷積層和1 個全連接層,網(wǎng)絡(luò)的具體結(jié)構(gòu)如下:
1) 圖像數(shù)據(jù)首先從經(jīng)網(wǎng)絡(luò)的輸入層到達(dá)第1 個卷積層,該層卷積核大小為7×7,步長為2,經(jīng)過卷積層卷積后得到64 個大小為112×112的特征圖。再經(jīng)過最大池化(Max pooling)層,該層的卷積核大小為3×3,步長為2,經(jīng)過池化操作得到64 個大小為56×56特征圖。整個網(wǎng)絡(luò)在第1 個卷積層之后分成了4 個殘差塊組(Residual block group,RBG),每個RBG又由若干個殘差塊(Residual block,RB)組成。
2) 經(jīng)過第1 個殘差塊組(RBG1),該組包含有3 個RB,經(jīng)過該組的操作輸出256 個特征圖,特征圖大小為56×56。
3) 經(jīng)過第2 個殘差塊組(RBG2),該組也包含有4 個RB,經(jīng)過該組的操作輸出512 個特征圖,特征圖大小為28×28。
4) 經(jīng)過第3 個殘差塊組(RBG3),該組包含有6 個RB,經(jīng)過該組的操作輸出1 024 個特征圖,特征圖大小為14×14。
5) 再經(jīng)過第4 個殘差塊組(RBG4),該組包含有3 個RB,經(jīng)過該組的操作輸出2 048 個特征圖,特征圖大小為7×7。
6) 最后經(jīng)過平均池化(Average pooling)層和全連接(Full connection, FC)層,通過Softmax,得到分類結(jié)果。
圖2 黑色素瘤識別的深度殘差網(wǎng)絡(luò)整體框架Fig.2 Framework of deep residual network for melanoma recognition
殘差塊的內(nèi)部結(jié)構(gòu)如圖3所示,圖3中:x表示輸入殘差塊的特征圖;m表示輸入殘差塊的特征圖的數(shù)量;y表示殘差塊的輸出。殘差塊中分為主路徑和快捷連接,主路徑上有3 個卷積層用于提取皮膚鏡圖像的深層特征,主路徑的前兩層采用的卷積核數(shù)量為輸入的特征圖數(shù)量的1/4,在第3 個卷積層將卷積核數(shù)量恢復(fù)到m。為了使得網(wǎng)絡(luò)訓(xùn)練速度更快、得到更優(yōu)異的結(jié)果,在每個卷積層之后,都會進(jìn)行批標(biāo)準(zhǔn)化操作(Batch normalization, BN)和采用整流線性單元(Rectified linear unit,ReLU)進(jìn)行激活[23]。殘差塊通過圖3中虛線部分的堆疊層學(xué)習(xí)殘差映射函數(shù)F(x),并在模塊的最后與快捷連接進(jìn)行融合,再經(jīng)過激活函數(shù)進(jìn)行激活輸出,那么可得到輸入和輸出的關(guān)系為
y=σ(F(x)+id(x))
(1)
式中:σ為ReLU激活函數(shù);id(x)為恒等變換,是為了快捷連接實(shí)現(xiàn)殘差學(xué)習(xí)操作時,使輸入與輸出的維度相匹配。
圖3 殘差塊內(nèi)部結(jié)構(gòu)示意圖Fig.3 Schematic of internal structure of residual block
批標(biāo)準(zhǔn)化(BN)方法使得卷積提取后的特征的均值為0,方差為1,有利于加速網(wǎng)絡(luò)訓(xùn)練和優(yōu)化結(jié)果[25]。為了優(yōu)化深度殘差網(wǎng)絡(luò)的訓(xùn)練過程,在每個卷積層之后都會進(jìn)行批標(biāo)準(zhǔn)化操作。
在每個卷積層和BN層之后都會采用ReLU作為激活函數(shù),ReLU激活函數(shù)能夠加快網(wǎng)絡(luò)的訓(xùn)練速度,并且使用ReLU的網(wǎng)絡(luò)在一些情況下比預(yù)處理過的網(wǎng)絡(luò)表現(xiàn)更為優(yōu)異[26]。
實(shí)驗(yàn)的平臺為Ubuntu16.04系統(tǒng),基于caffe深度學(xué)習(xí)框架,采用C++和Matlab語言,軟件環(huán)境是Matlab R2016b,硬件配置為 GeForce GTX 1070 GPU,英特爾E3-1230 v5 3.40 GHz處理器和16 GB內(nèi)存。
實(shí)驗(yàn)數(shù)據(jù)是國際皮膚影像協(xié)會(International skin imaging collaboration,ISIC)[27]2016 年針對黑色素瘤識別的皮膚癌病變分析任務(wù)提供的數(shù)據(jù)集,使用此數(shù)據(jù)集對皮膚癌黑色素瘤識別算法進(jìn)行驗(yàn)證。該數(shù)據(jù)集包含900 張訓(xùn)練圖片和379 張測試圖片,每張圖片都由專業(yè)醫(yī)生標(biāo)注了皮膚癌疾病類別,分別為黑色素瘤和良性痣(非黑色素瘤)。由于深度殘差網(wǎng)絡(luò)含大量的參數(shù),所以存在過擬合的風(fēng)險。為了提高網(wǎng)絡(luò)模型的魯棒性并減少過擬合,需采用數(shù)據(jù)增強(qiáng)策略來擴(kuò)大訓(xùn)練數(shù)據(jù)集。數(shù)據(jù)增強(qiáng)的操作包括旋轉(zhuǎn)(90°,180°,270°)、鏡像和增加隨機(jī)噪聲,如圖4所示。
圖4 數(shù)據(jù)增強(qiáng)操作Fig.4 Operation of data augmentation
針對皮膚癌黑色素瘤識別問題,通常有5 個評估標(biāo)準(zhǔn)[27]:分別為敏感性(Sensitivity)、特異性(Specificity)、準(zhǔn)確率(Accuracy)、平均精度(Average precision, AP)和ROC曲線下面積(Area under roc curve,AUC)。其中準(zhǔn)確率,敏感性和特異性的標(biāo)準(zhǔn)定義為
(2)
(3)
(4)
式中:TP,TN,F(xiàn)P,F(xiàn)N分別為陽性樣本正確分類數(shù)量、陰性樣本正確分類數(shù)量、陽性樣本錯誤分類數(shù)量以及陰性樣本錯誤分類數(shù)量。ROC曲線下面積是計算接受者操作特征曲線(Receiver operating characteristic curve,ROC)下的面積得到的,平均精度表示精度召回曲線在區(qū)間內(nèi)的積分,平均精度和準(zhǔn)確率是分類性能重要的評估指標(biāo)[27]。
網(wǎng)絡(luò)深度對于識別的性能有一定的影響。通常,在充分訓(xùn)練的情況下,網(wǎng)絡(luò)深度的增加可以使模型學(xué)習(xí)到樣本更本質(zhì)的特征,識別結(jié)果應(yīng)該更好。但隨著網(wǎng)絡(luò)深度的增加之后,訓(xùn)練難度加大,用傳統(tǒng)的堆疊CNN網(wǎng)絡(luò)會出現(xiàn)梯度退化現(xiàn)象,即使增加訓(xùn)練次數(shù),模型還是處于欠擬合狀態(tài),識別性能會降低。因此,研究網(wǎng)絡(luò)深度對殘差網(wǎng)絡(luò)和傳統(tǒng)CNN性能的影響。
將筆者提出的用于黑色素瘤識別的50 層深度殘差網(wǎng)絡(luò)(DRN-50)與幾種不同深度的經(jīng)典卷積神經(jīng)網(wǎng)絡(luò)模型在皮膚鏡圖像黑色素瘤識別的數(shù)據(jù)集上做了對比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表1所示。表1列出了不同網(wǎng)絡(luò)的分類性能,其中主要包含了AlexNet(8 層)[15],VGG-16(16 層)[19],GoogLeNet(22 層)[21],深度殘差網(wǎng)絡(luò)DRN-50(50 層)。從表1可以看出:筆者提出的DRN-50取得了最高的平均精度,而且隨著網(wǎng)絡(luò)層數(shù)的增加,平均精度也在提升。這說明在皮膚癌黑色素瘤識別任務(wù)上,隨著網(wǎng)絡(luò)深度的增加,網(wǎng)絡(luò)模型辨別黑色素瘤的能力在提高,而且利用殘差學(xué)習(xí)構(gòu)建深度殘差網(wǎng)絡(luò)容易訓(xùn)練得到理想的模型。
表1 傳統(tǒng)CNN與殘差網(wǎng)絡(luò)在黑色素瘤識別上的分類結(jié)果
Table 1 The result of CNN and residual network networks in melanoma recognition
網(wǎng)絡(luò)模型準(zhǔn)確率ROC曲線下面積平均精度敏感性特異性AlexNet0.8230.7400.5350.4130.924VGG-160.8250.7360.5420.4260.924GoogLeNet0.8310.7760.5470.4130.934DRN-500.8680.7750.6490.4660.967
另外,在第2 節(jié)中提到,用于黑色素瘤識別的深度殘差網(wǎng)絡(luò)有50 層(DRN-50),以下為選擇50 層的實(shí)驗(yàn)結(jié)果分析。He等[23]研究發(fā)現(xiàn):殘差網(wǎng)絡(luò)一般構(gòu)建到18,34,50,101 層,在不同的任務(wù)上可以取得不錯的結(jié)果。通過增加和較少殘差塊的數(shù)量,可以得到不同層的殘差網(wǎng)絡(luò)DRN-18,DRN-34,DRN-50,DRN-101,通過對這幾種不同層次的殘差網(wǎng)絡(luò)實(shí)驗(yàn)對比,證明50 層的殘差在黑色素瘤識別上最合適。表2為不同層次的殘差網(wǎng)絡(luò)的實(shí)驗(yàn)結(jié)果,從表2可以看出:殘差網(wǎng)絡(luò)深度在達(dá)到50 層前,隨著深度的增加,模型在準(zhǔn)確率和平均精度上能夠得到很好的提升。從DRN-50與DRN-34對比來看:DRN-50在準(zhǔn)確率和平均精度上分別提升了2.7,3.5 個百分點(diǎn),性能提升顯著。而從DRN-101與DRN-50對比來看:DRN-101在準(zhǔn)確率和平均精度上分別只提升了0.2,0.1 個百分點(diǎn),性能提升不明顯,但相比于50 層的殘差網(wǎng)絡(luò),101 層的殘差網(wǎng)絡(luò)極大增加了網(wǎng)絡(luò)復(fù)雜度,需要更好的硬件支持,并且訓(xùn)練過程費(fèi)時,因此使用101 層的殘差網(wǎng)絡(luò)優(yōu)勢并不明顯,最終使用50 層的殘差網(wǎng)絡(luò)來解決黑色素瘤識別問題。
表2 不同層次殘差網(wǎng)絡(luò)在黑色素瘤識別上的分類結(jié)果
Table 2 The result of different levels of residual networks in melanoma recognition
網(wǎng)絡(luò)模型準(zhǔn)確率ROC曲線下面積平均精度敏感性特異性DRN-180.8290.7730.5740.4000.950DRN-340.8410.7900.6140.5860.865DRN-500.8680.7750.6490.4660.967DRN-1010.8700.7730.6500.5200.858
針對皮膚癌黑色素瘤圖像類內(nèi)變化巨大、黑色素瘤和非黑色素瘤類間具有高度的視覺相似性導(dǎo)致的基于皮膚鏡圖像的黑色素瘤識別困難的問題,筆者提出一種基于深度殘差網(wǎng)絡(luò)的皮膚癌黑色素瘤識別算法。采用的深度殘差學(xué)習(xí)算法使用于識別的卷積神經(jīng)網(wǎng)絡(luò)的深度得以大幅度增加同時,較好地克服了網(wǎng)絡(luò)學(xué)習(xí)過程中出現(xiàn)的梯度退化問題。同時,通過不同深度的卷積神經(jīng)網(wǎng)絡(luò)在黑色素瘤識別任務(wù)上的實(shí)驗(yàn)對比,隨著卷積神經(jīng)網(wǎng)絡(luò)深度的增加,網(wǎng)絡(luò)能夠更好地提取到黑色素瘤的高維特征,同時也驗(yàn)證了深度殘差網(wǎng)絡(luò)給黑色素瘤識別帶來準(zhǔn)確率和平均精度上的提升。下一步的研究重點(diǎn)是研究CNN提取的特征和根據(jù)已知的皮膚病學(xué)規(guī)則提取的特征相結(jié)合對黑色素瘤識別性能的影響,另外探索本算法在其他皮膚癌類別任務(wù)上的適應(yīng)性和更多其他領(lǐng)域的應(yīng)用。