董青青,銀溫社,易三莉
(昆明理工大學(xué) 信息工程與自動(dòng)化學(xué)院,云南 昆明 650500)
黑色素瘤是一種獨(dú)特的癌癥,大多數(shù)表現(xiàn)為色素性并發(fā)生于皮膚表面。目前,臨床診斷主要依靠視診,缺點(diǎn)是受醫(yī)生個(gè)人主觀性影響,還因?yàn)檫M(jìn)一步的病理活檢而延長(zhǎng)檢查周期[1-2]。因此,目前臨床實(shí)踐上還缺乏一種具有高精度、高效率和非侵入式的診斷皮膚癌良惡性的方法。(圖像分類(lèi)指根據(jù)圖像信息中反映的不同特征,把不同類(lèi)別的特征區(qū)分開(kāi)來(lái)的圖像處理過(guò)程[3-5]。目前來(lái)看,圖像分類(lèi)方法主要分為線性分類(lèi)和深度神經(jīng)網(wǎng)絡(luò)方法。線性分類(lèi)主要用于解決某類(lèi)具體問(wèn)題,常見(jiàn)的線性分類(lèi)方法包括支持向量機(jī)(Support Vector Machine,SVM)和貝葉斯方法等。深度神經(jīng)網(wǎng)絡(luò)方法可應(yīng)用于不同類(lèi)型的分類(lèi)問(wèn)題,通用性高、泛化能力強(qiáng),常見(jiàn)的神經(jīng)網(wǎng)絡(luò)方法包括前饋神經(jīng)網(wǎng)絡(luò)(Back Propagation,BP)。SVM依據(jù)結(jié)構(gòu)風(fēng)險(xiǎn)最小化理論,被廣泛應(yīng)用于解決小樣本和高維特征等圖像分類(lèi)問(wèn)題中[6]。武崢等人提出的聚類(lèi)優(yōu)化貝葉斯算法,通過(guò)k點(diǎn)算法實(shí)現(xiàn)聚類(lèi),在聚類(lèi)結(jié)果上進(jìn)行貝葉斯識(shí)別,得到了較高的識(shí)別率[7]。以上方法主要處理線性分類(lèi)問(wèn)題,神經(jīng)網(wǎng)絡(luò)方法則通過(guò)作用于大量神經(jīng)元的ReLU等非線性激活函數(shù),在非線性問(wèn)題上有很好的處理能力[8]。Rumelhart和Mcllelland等人提出的BP神經(jīng)網(wǎng)絡(luò)模型,有效解決了非線性問(wèn)題[9];鄧俊峰[10]等多個(gè)團(tuán)隊(duì)對(duì)編碼器結(jié)構(gòu)進(jìn)行了改進(jìn),使得自動(dòng)編碼器同時(shí)具有稀疏性約束條件和邊緣降噪約束條件,在多個(gè)分類(lèi)任務(wù)上,學(xué)習(xí)精度都取得了較高的分類(lèi)效果。相對(duì)于其他方法,LeCun提出的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)引入權(quán)值共享機(jī)制,大大降低了需要學(xué)習(xí)的參數(shù)量,同時(shí)降低了訓(xùn)練多隱層網(wǎng)絡(luò)的難度[11-12]。Esteva[13]等人采用大量臨床數(shù)據(jù)對(duì)GoogleNet Inception v3網(wǎng)絡(luò)進(jìn)行遷移學(xué)習(xí),對(duì)皮膚病變圖像進(jìn)行分類(lèi),CNN訓(xùn)練的結(jié)果與皮膚科醫(yī)生診斷結(jié)果相媲美。
上述算法在圖像分類(lèi)任務(wù)上都取得了較好的分類(lèi)效果。CNN由于引入權(quán)值共享機(jī)制,大大降低了學(xué)習(xí)的參數(shù)量,且相對(duì)其他方法有更高的分類(lèi)精度。然而,該算法在對(duì)圖像進(jìn)行分類(lèi)時(shí),存在收斂速度慢問(wèn)題[14]。為了提高皮膚癌良惡性預(yù)測(cè)精度,本文在CNN結(jié)構(gòu)的基礎(chǔ)上,在卷積神經(jīng)網(wǎng)絡(luò)最后一個(gè)池化層與輸出層之間增加一個(gè)卷積層和池化層,構(gòu)建了基于深度卷積神經(jīng)網(wǎng)絡(luò)的皮膚癌良惡性預(yù)測(cè)模型。
卷積神經(jīng)網(wǎng)絡(luò)具有局部連接、權(quán)值共享等特性,在圖像分類(lèi)、人臉識(shí)別等多個(gè)計(jì)算機(jī)視覺(jué)任務(wù)中被廣泛應(yīng)用[15]。本文針對(duì)黑色素瘤數(shù)據(jù)特點(diǎn),提出將改進(jìn)的CNN算法用于建立皮膚癌良惡性預(yù)測(cè)模型。該模型對(duì)于黑色素瘤良惡性預(yù)測(cè)的效果更好,收斂速度更快。
卷積神經(jīng)網(wǎng)絡(luò)是由用于特征提取的卷積層和用于特征處理的亞采樣層交疊組成的多層神經(jīng)網(wǎng)絡(luò)[16]。網(wǎng)絡(luò)底層輸入數(shù)據(jù),輸出其識(shí)別結(jié)果,輸入圖像經(jīng)過(guò)若干個(gè)“卷積”和“采樣”后,在全連接層實(shí)現(xiàn)與輸出目標(biāo)間的映射。
對(duì)于卷積層,卷積核中每一個(gè)元素都作為權(quán)值參數(shù),同輸入圖像相應(yīng)區(qū)塊的像素值加權(quán)求和,并經(jīng)過(guò)激活函數(shù)得到輸出像素。第l層的第j個(gè)特征圖矩陣由前一層若干個(gè)特征圖卷積加權(quán)得到,以表示為:
其中,f(·)是神經(jīng)元激活函數(shù);Nj代表輸入特征圖的組合,*代表卷積運(yùn)算,為卷積核矩陣,為偏置矩陣。
對(duì)于采樣層而言,也稱(chēng)為“池化”層,作用是基于局部相關(guān)性原理進(jìn)行池化采樣,從而在減少數(shù)據(jù)量的同時(shí)保留有用信息。
舉辦大型的文化事件營(yíng)銷(xiāo)活動(dòng),也是城市發(fā)展的途徑之一。德國(guó)西部魯爾區(qū)的波鴻,通過(guò)打造魯爾藝術(shù)節(jié)、魯爾鋼琴節(jié)和波鴻綜合音樂(lè)節(jié)等在歐洲擁有較高聲譽(yù)和影響力的藝術(shù)節(jié)慶活動(dòng),實(shí)現(xiàn)了從工業(yè)基地到文化藝術(shù)中心城市的轉(zhuǎn)型。法國(guó)名城戛納,以每年5月舉行電影節(jié)的方式,走上了城市發(fā)展的快車(chē)道。經(jīng)過(guò)幾十年的發(fā)展,戛納國(guó)際電影節(jié)已躋身世界最大、最重要的四大電影節(jié)之一,每年吸引著30萬(wàn)人前來(lái)參加,給城市帶來(lái)巨大的經(jīng)濟(jì)效益和良好口碑,戛納也因此成為世界名城,吸引著眾多游客。
采樣過(guò)程可以表示為:
其中,down(·)表示下采樣函數(shù),常用的有最大值采樣函數(shù)和均值采樣函數(shù)。
全連接層的結(jié)構(gòu)和全連接神經(jīng)網(wǎng)絡(luò)的隱層結(jié)構(gòu)相同。全連接層的每個(gè)神經(jīng)元都會(huì)與下一層的每個(gè)神經(jīng)元相連。第l層全連接層特征向量xl可以表示為:
其中,wl是權(quán)值矩陣,bl是偏置向量。
模型的最后輸出層為邏輯回歸層。卷積神經(jīng)網(wǎng)絡(luò)輸出的每個(gè)節(jié)點(diǎn)表示輸入圖片屬于某一類(lèi)別i的概率:
式中,w為最后一層的權(quán)參數(shù),b為相應(yīng)偏置參數(shù)。
遷移學(xué)習(xí)在深度學(xué)習(xí)中應(yīng)用廣泛,特別對(duì)于在醫(yī)療領(lǐng)域數(shù)據(jù)量非常受限時(shí)。從自然圖像到醫(yī)療數(shù)據(jù)的遷移學(xué)習(xí),將訓(xùn)練學(xué)習(xí)到的權(quán)重作為目標(biāo)數(shù)據(jù)的初始化參數(shù)。本文采用自然圖像訓(xùn)練得到的CIFAR-10模型進(jìn)行黑色素瘤數(shù)據(jù)的遷移學(xué)習(xí),為了得到更好的皮膚病變分類(lèi)效果,在CIFAR-10網(wǎng)絡(luò)基礎(chǔ)上進(jìn)行卷積的改進(jìn)。
卷積層結(jié)構(gòu)的核心是使用局部最優(yōu)的稀疏結(jié)構(gòu)取代原有的全連接方式[17],并利用稠密計(jì)算實(shí)現(xiàn)訓(xùn)練過(guò)程的加速。卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)在構(gòu)建皮膚癌良惡性預(yù)測(cè)模型中,存在計(jì)算速度較慢、預(yù)測(cè)精度不高的問(wèn)題[18-19]。
針對(duì)這些問(wèn)題,本文在CIFAR-10網(wǎng)絡(luò)最后一個(gè)池化層與輸出層之間增加一個(gè)卷積層和池化層,通過(guò)增加網(wǎng)絡(luò)深度,更好地應(yīng)用于復(fù)雜的圖像分類(lèi)任務(wù),提高分類(lèi)準(zhǔn)確率,解決分類(lèi)效果在輸出層和前一卷積層之間的受限問(wèn)題。通過(guò)對(duì)比實(shí)驗(yàn)采用ReLU激活函數(shù),使得網(wǎng)絡(luò)變得稀疏,大大減小了計(jì)算量,降低了過(guò)擬合問(wèn)題。
圖1 網(wǎng)絡(luò)結(jié)構(gòu)流程
CNN網(wǎng)絡(luò)常用的激活函數(shù)有ReLU、AbsVal和tanh,其中線性激活函數(shù)ReLU是目前使用最多的激活函數(shù),表達(dá)式如下:
其中x表示輸入值,ReLU函數(shù)是分段函數(shù),如果x大于0,輸出即保持原值,否則輸出為0。ReLU簡(jiǎn)單地將閾值設(shè)置在零點(diǎn),對(duì)輸入x值只進(jìn)行單邊計(jì)算,大大減小了計(jì)算量。對(duì)Mnist數(shù)據(jù)采用三種不同的激活函數(shù)進(jìn)行1 000次迭代訓(xùn)練,三種激活函數(shù)的損失值及運(yùn)算時(shí)間見(jiàn)表1。可以看出,采用ReLU函數(shù)得到的損失值最小,且運(yùn)算時(shí)間最短,網(wǎng)絡(luò)最先達(dá)到收斂。
表1 不同激活函數(shù)損失值比較
SGD優(yōu)化訓(xùn)練數(shù)據(jù)集首先將其分成n個(gè)batch,每個(gè)batch包含m個(gè)樣本。當(dāng)訓(xùn)練數(shù)據(jù)太多時(shí),利用整個(gè)數(shù)據(jù)集更新往往時(shí)間上不顯示。batch的方法可以減少計(jì)算機(jī)的壓力,并且可以更快收斂。每次更新利用一個(gè)batch的數(shù)據(jù)而非整個(gè)訓(xùn)練集,即:
其中Xt+1為當(dāng)前更新值,Xt為上一次的更新值,η為學(xué)習(xí)率,gt為X在t時(shí)刻的梯度。
本文基于Caffe深度學(xué)習(xí)平臺(tái)進(jìn)行網(wǎng)絡(luò)結(jié)構(gòu)的搭建和模型訓(xùn)練。該平臺(tái)由C++開(kāi)發(fā),具備python、matlab以及命令行接口,且兼顧GPU與CPU的加速優(yōu)化與切換。本文采用公開(kāi)數(shù)據(jù)集ISBI提供的900例有注釋的黑色素瘤數(shù)據(jù)。根據(jù)提供的CSV文件,數(shù)據(jù)分為良性和惡性?xún)深?lèi),如圖2所示。圖2(a)表示良性黑色素瘤,圖2(b)表示惡性黑色素瘤。
本文基于Caffe深度學(xué)習(xí)平臺(tái),采用改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)方法,針對(duì)黑色素瘤數(shù)據(jù)對(duì)網(wǎng)絡(luò)進(jìn)行參數(shù)設(shè)置,對(duì)數(shù)據(jù)集進(jìn)行訓(xùn)練測(cè)試,并將其與他方法進(jìn)行比較。
圖2 黑色素瘤良惡性樣本
本文基于Caffe框架構(gòu)建的卷積神經(jīng)網(wǎng)絡(luò)模型實(shí)現(xiàn)皮膚癌良惡性識(shí)別的訓(xùn)練過(guò)程。實(shí)驗(yàn)中,網(wǎng)絡(luò)模型的數(shù)據(jù)層、卷積層、池化層、全連接層參數(shù)配置具體如下。
網(wǎng)絡(luò)的輸入層即數(shù)據(jù)層,設(shè)置數(shù)據(jù)批處理大小batch_size為64。為了提高分類(lèi)的有效性,將通道圖像像素進(jìn)行歸一化處理,設(shè)置scale為0.003 906 25。
卷積層設(shè)置濾波器權(quán)重學(xué)習(xí)率參數(shù)lr_mult為1,偏置學(xué)習(xí)率參數(shù)bias為2,bias設(shè)置為lr_mult的2倍。卷積核個(gè)數(shù)為32,步長(zhǎng)為1,卷積核大小為5×5,填充為2,使用高斯分布隨機(jī)初始化卷積核,高斯分布標(biāo)準(zhǔn)差為0.001。
對(duì)于池化層,因?yàn)閳D像的紋理特征對(duì)于圖像分類(lèi)特征很重要,而最大值池化方法能夠更好地保留紋理特征,設(shè)置池化窗口大小為3×3,窗口滑動(dòng)步長(zhǎng)為2。
全連接層同卷積層形式一樣,輸出類(lèi)別數(shù)和數(shù)據(jù)分類(lèi)數(shù)目相同。本文黑色素瘤數(shù)據(jù)分為良、惡性?xún)深?lèi),設(shè)置輸出類(lèi)別數(shù)為2。
本文采用SGD優(yōu)化方式進(jìn)行網(wǎng)絡(luò)訓(xùn)練,設(shè)置60 000次迭代訓(xùn)練,訓(xùn)練集樣本數(shù)5 606張,測(cè)試集1 002張,實(shí)驗(yàn)結(jié)果如表2所示??梢钥闯?,基于改進(jìn)的CNN皮膚癌良惡性預(yù)測(cè)模型,最終分類(lèi)精度訓(xùn)練集識(shí)別率達(dá)到91.92%,測(cè)試集識(shí)別率為89.5%。CNN和改進(jìn)的CNN迭代訓(xùn)練過(guò)程中Loss和Accuracy變化曲線如圖3所示,其中虛線表示準(zhǔn)確度變化,實(shí)線表示損失值變化。
表2 CNN預(yù)測(cè)皮膚癌良惡性識(shí)別率
圖3 CNN與改進(jìn)的CNN Loss下降和Accuracy上升過(guò)程
從圖3可以看出,改進(jìn)后的CNN與未改進(jìn)的CNN網(wǎng)絡(luò)在數(shù)據(jù)集上的預(yù)測(cè)精度與損失值的對(duì)比。改進(jìn)的CNN預(yù)測(cè)精度隨著迭代次數(shù)的增加穩(wěn)定上升,而CNN隨著迭代次數(shù)的增加,準(zhǔn)確度逐漸趨于穩(wěn)定。改進(jìn)的CNN由于在CIFAR-10網(wǎng)絡(luò)最后一個(gè)池化層與輸出層之間增加了一個(gè)卷積層和池化層,通過(guò)增加網(wǎng)絡(luò)深度,能夠更好地應(yīng)用于難以區(qū)分的黑色素瘤良惡性圖像分類(lèi)任務(wù)中,提高了分類(lèi)準(zhǔn)確率。
為了驗(yàn)證改進(jìn)的CNN對(duì)于黑色素瘤數(shù)據(jù)識(shí)別的有效性[20-21],將本文方法與KNN、SVM等方法進(jìn)行比較。從表3可以看出,在訓(xùn)練集和測(cè)試集上改進(jìn)的CNN,對(duì)皮膚癌良惡性預(yù)測(cè)識(shí)別率均高于KNN、SVM方法。KNN、SVM等淺層學(xué)習(xí)方法主要適用于小樣本學(xué)習(xí),在數(shù)據(jù)量較大時(shí)識(shí)別率不高。
表3 改進(jìn)的CNN與KNN、SVM比較結(jié)果
本文在CIFAR-10結(jié)構(gòu)的基礎(chǔ)上,在網(wǎng)絡(luò)最后一個(gè)池化層與輸出層之間增加一個(gè)卷積層和池化層,構(gòu)建了基于深度卷積神經(jīng)網(wǎng)絡(luò)的皮膚癌良惡性預(yù)測(cè)模型。在黑色素瘤數(shù)據(jù)集上,改進(jìn)的CNN結(jié)構(gòu)對(duì)黑色素瘤良惡性預(yù)測(cè)準(zhǔn)確度比原始遷移模型CIFAR-10有一定提升。
本文基于卷積神經(jīng)網(wǎng)絡(luò)構(gòu)建的皮膚癌良惡性預(yù)測(cè)模型,通過(guò)對(duì)黑色素瘤數(shù)據(jù)進(jìn)行擴(kuò)增,對(duì)CIFAR-10結(jié)構(gòu)層次進(jìn)行加深,選擇ReLU為激活函數(shù),采用SGD方法進(jìn)行網(wǎng)絡(luò)訓(xùn)練,實(shí)現(xiàn)了分類(lèi)精度更高、收斂效果好的深度學(xué)習(xí)網(wǎng)絡(luò)。本文方法在黑色素瘤良惡性預(yù)測(cè)準(zhǔn)確度訓(xùn)練集達(dá)到91.92%,測(cè)試集達(dá)到89.5%,相對(duì)于其他方法取得了較好的分類(lèi)效果。
后續(xù)工作中,將緊密結(jié)合臨床醫(yī)學(xué)相關(guān)知識(shí),對(duì)初步建立的皮膚癌良惡性預(yù)測(cè)模型進(jìn)行不斷遷移和更新,進(jìn)而找到更加通用的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)方法。