金歡歡,尹海波,何玲娜
(1.浙江工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,杭州 310023; 2.哈爾濱工業(yè)大學(xué) 航天學(xué)院,哈爾濱 150001)
睡眠分期對(duì)研究睡眠相關(guān)疾病[1]具有重要意義。睡眠分期通常由有經(jīng)驗(yàn)的睡眠分期專家,依據(jù)睡眠分期規(guī)則手動(dòng)完成睡眠各階段的劃分和統(tǒng)計(jì)。人工睡眠分期需要大量的專業(yè)人才和時(shí)間,可普及性較差,因此自動(dòng)睡眠分期一直是睡眠分期研究的重要方向。
自動(dòng)睡眠分期的研究多基于睡眠腦電信號(hào)[2]。對(duì)原始數(shù)據(jù)的預(yù)處理、針對(duì)數(shù)據(jù)集特點(diǎn)設(shè)計(jì)所要提取的特征、將提取的特征輸入分類器進(jìn)行類別劃分是近年自動(dòng)睡眠分期研究的三個(gè)關(guān)鍵點(diǎn)。其中針對(duì)特定數(shù)據(jù)集的人工特征設(shè)計(jì),是制約分類效果的關(guān)鍵因素[3]。人工設(shè)計(jì)的特征雖然針對(duì)特定數(shù)據(jù)集效果較好,但是由于需針對(duì)性嘗試設(shè)計(jì)特征,具有很強(qiáng)的主觀性,無(wú)法實(shí)現(xiàn)對(duì)原始睡眠腦電數(shù)據(jù)的端到端學(xué)習(xí)[4]。
近年來(lái)深度學(xué)習(xí)在圖像識(shí)別、自然語(yǔ)言處理以及語(yǔ)音識(shí)別領(lǐng)域已有大量成熟的應(yīng)用。在經(jīng)大量注釋的數(shù)據(jù)集訓(xùn)練后,基于深層神經(jīng)網(wǎng)絡(luò)的機(jī)器學(xué)習(xí)模型,能夠接近并超過(guò)人類專家水平[5-6]。尤其在醫(yī)學(xué)成像識(shí)別中,得益于可直接應(yīng)用現(xiàn)存大型圖像數(shù)據(jù)集對(duì)模型進(jìn)行預(yù)訓(xùn)練,這種優(yōu)越性更為突出[7-8]。在時(shí)序信號(hào)處理方面,卷積神經(jīng)網(wǎng)絡(luò)和遞歸神經(jīng)網(wǎng)共同構(gòu)建的網(wǎng)絡(luò)模型已成功應(yīng)用于語(yǔ)音識(shí)別和自然語(yǔ)言處理中[9-10]。雖然受限于目前包括自動(dòng)睡眠分期在內(nèi)的絕大多數(shù)領(lǐng)域都無(wú)法提供足量的數(shù)據(jù),仍有少量團(tuán)隊(duì)將深度學(xué)習(xí)模型應(yīng)用于自動(dòng)睡眠分期[11-12],實(shí)現(xiàn)了端到端睡眠自動(dòng)分期,但是由于類不平衡小數(shù)據(jù)集在深度學(xué)習(xí)中的局限性,以及未應(yīng)用最新的深度學(xué)習(xí)優(yōu)化技術(shù),分類精度仍有很大的提升空間。
本文在這些技術(shù)的基礎(chǔ)上,分別從對(duì)類不平衡小數(shù)據(jù)集中少數(shù)類的擴(kuò)增,以及應(yīng)用深度學(xué)習(xí)模型優(yōu)化技術(shù)對(duì)模型訓(xùn)練進(jìn)行優(yōu)化兩方面入手,來(lái)完成高分類精度端到端自動(dòng)睡眠分期模型的構(gòu)建。在類不平衡小數(shù)據(jù)集的處理方面,對(duì)修改的生成少數(shù)類過(guò)采樣技術(shù)(Modified Synthetic Minority Oversampling Technique, MSMOTE)[13]進(jìn)行改進(jìn),并將其應(yīng)用于高維度、多分類腦電數(shù)據(jù)集中少數(shù)類的過(guò)采樣。在訓(xùn)練方法的優(yōu)化方面,仿照遷移學(xué)習(xí)中的兩步訓(xùn)練法,將擴(kuò)增后的類平衡數(shù)據(jù)集用于預(yù)訓(xùn)練,原始數(shù)據(jù)集用于微調(diào)。此外還應(yīng)用如殘差連接(Residual Connections)[14]、批歸一化(Batch Normalization, BN)[15]、Swish激活函數(shù)[16]等技術(shù),進(jìn)一步對(duì)模型進(jìn)行優(yōu)化。最終實(shí)現(xiàn)可用于類不平衡小數(shù)據(jù)集的端到端自動(dòng)睡眠分期模型。
本文提出的自動(dòng)睡眠分期模型由三部分組成,如圖1所示,在圖1中依次標(biāo)示為Part1、Part2、Part3。
圖1 模型結(jié)構(gòu)圖及重要參數(shù)
該模型的第一部分(Part1)主要作用為自動(dòng)特征提取。Part1采用三個(gè)獨(dú)立的卷積神經(jīng)網(wǎng)絡(luò)對(duì)序列進(jìn)行并行特征提取。為了從數(shù)據(jù)集中捕獲全局信息,按照一定步幅對(duì)這三個(gè)卷積神經(jīng)網(wǎng)絡(luò)的第一層卷積核尺寸進(jìn)行設(shè)定。在每個(gè)卷積層的卷積運(yùn)算之后,依次進(jìn)行批歸一化、應(yīng)用Swish自門(mén)控激活。最后對(duì)并行卷積神經(jīng)網(wǎng)絡(luò)提取的時(shí)不變特征進(jìn)行連接(Concat)操作。采用與殘差網(wǎng)絡(luò)結(jié)構(gòu)中類似的方式來(lái)構(gòu)建殘差網(wǎng)絡(luò),進(jìn)一步對(duì)卷積神經(jīng)網(wǎng)絡(luò)部分進(jìn)行優(yōu)化;通過(guò)這種結(jié)構(gòu),信息可以在較深的神經(jīng)網(wǎng)絡(luò)中更有效地傳播,進(jìn)而達(dá)到優(yōu)化訓(xùn)練的目的。
作為深度學(xué)習(xí)模型核心結(jié)構(gòu)之一,深度神經(jīng)網(wǎng)絡(luò)中激活函數(shù)的選擇極其重要;即使所使用激活函數(shù)性能只有微小的提升,也會(huì)由于它的大量使用而獲得巨大的性能提升。本文模型使用Swish函數(shù)作為激活函數(shù)。Swish激活函數(shù)的設(shè)計(jì),主要受到高速網(wǎng)絡(luò)(Highway Network)和長(zhǎng)短期記憶網(wǎng)絡(luò)(Long Short Term Memory, LSTM)中使用 Sigmoid 函數(shù)作為門(mén)控所啟發(fā)。谷歌大腦團(tuán)隊(duì)通過(guò)使用相同值進(jìn)行門(mén)控,完成門(mén)控機(jī)制簡(jiǎn)化,并將其稱為自門(mén)控(Self-Gating)。相較于傳統(tǒng)門(mén)控,自門(mén)控最大的優(yōu)勢(shì)是僅需要輸入單個(gè)簡(jiǎn)單標(biāo)量。這種優(yōu)勢(shì)令使用自門(mén)控的Swish激活函數(shù),可輕易在程序中取代用單個(gè)標(biāo)量進(jìn)行輸入的激活函數(shù),如現(xiàn)在廣泛使用的修正線性單元(Rectified Linear Unit, ReLU)激活函數(shù),并且不需對(duì)參數(shù)的隱藏?cái)?shù)量或容量進(jìn)行改變。Swish函數(shù)和ReLU函數(shù)的數(shù)學(xué)表達(dá)式如下:
(1)
ReLU(x)=max(x,0)
(2)
圖2為兩種激活函數(shù)曲線對(duì)比。
圖2 Swish和ReLU函數(shù)曲線對(duì)比
Swish激活函數(shù)形式極其簡(jiǎn)單,且具有非單調(diào)、平滑等特性;這些優(yōu)勢(shì)理論上使Swish成為優(yōu)于ReLU的激活函數(shù),并且谷歌大腦團(tuán)隊(duì)通過(guò)大量相關(guān)實(shí)驗(yàn)得出:在不改變針對(duì)ReLU設(shè)計(jì)的超參的情況下,用Swish 直接替換ReLU,可以在總體上提升深度神經(jīng)網(wǎng)絡(luò)的分類精度和收斂速度[16]。本文會(huì)在4.3節(jié)對(duì)兩種激活函數(shù)應(yīng)用于本文模型中的效果進(jìn)行對(duì)比。
第二部分是由兩層雙向門(mén)限循環(huán)單元構(gòu)建的遞歸神經(jīng)網(wǎng)絡(luò),和含有池化層的捷徑連接,共同構(gòu)成的序列殘差學(xué)習(xí)框架。該框架可從時(shí)不變特征中學(xué)習(xí)時(shí)間信息特征,并完成時(shí)不變特征與時(shí)間信息特征的融合。具體結(jié)構(gòu)及部分參數(shù)如圖1中Part2所示。
門(mén)限循環(huán)單元(Gated Recurrent Unit, GRU)是LSTM的一個(gè)變化極大的變體。GRU除擁有 LSTM的優(yōu)點(diǎn)外,相較于LSTM具有更少的參數(shù),出現(xiàn)過(guò)擬合問(wèn)題的概率更小,處理同樣的問(wèn)題收斂所用時(shí)間更少。
本文模型使用雙向GRU構(gòu)建的遞歸神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)時(shí)間序列中的時(shí)間信息特征。雙向GRU結(jié)構(gòu)相對(duì)于單向GRU,可以通過(guò)兩個(gè)GRU獨(dú)立處理前向和后向輸入序列來(lái)擴(kuò)展GRU;前向和后向GRU的輸出彼此之間沒(méi)有連接,因此該模型能夠利用時(shí)間點(diǎn)前后兩側(cè)的信息。
此外本文模型中的七個(gè)捷徑連接都使用了最大池化層。這樣一方面可對(duì)輸入的時(shí)不變特征進(jìn)行維度變換;另一方面可大幅減少參數(shù)數(shù)量,進(jìn)而減少訓(xùn)練過(guò)程中的過(guò)擬合。
第三部分(圖1中Part3)是完全連接的Softmax層。本層位于模型的最后階段,具體的來(lái)說(shuō)就是:第二部分產(chǎn)生的復(fù)合特征形成模型的倒數(shù)第二層,經(jīng)過(guò)Dropout[17]隨機(jī)丟棄部分神經(jīng)元,然后被饋送到完全連接的Softmax層以產(chǎn)生分類。圖1中兩個(gè)全連接的Softmax層(Softmax-1、Softmax-2)分別用于預(yù)訓(xùn)練和微調(diào)(3.1節(jié)的模型訓(xùn)練方法部分會(huì)詳細(xì)介紹)。
采用PhysioBank的公開(kāi)基準(zhǔn)睡眠數(shù)據(jù)(Sleep-EDF數(shù)據(jù)集)作為實(shí)驗(yàn)數(shù)據(jù),Sleep-EDF數(shù)據(jù)集包含20名25~34歲的健康志愿者(男女各一半)的多導(dǎo)睡眠圖(Polysomnography, PSG)記錄,實(shí)驗(yàn)過(guò)程沒(méi)有使用任何藥物,實(shí)驗(yàn)周期為兩個(gè)晝夜(約40 h),采樣頻率為100 Hz。由于原數(shù)據(jù)集中的一個(gè)文件(SC4132E0.npz)已經(jīng)損壞,實(shí)驗(yàn)數(shù)據(jù)集共包含39個(gè)文件。人工標(biāo)記時(shí),將PSG劃分為30 s(即3 000個(gè)采樣點(diǎn))一段,然后由睡眠專家根據(jù)睡眠分期標(biāo)準(zhǔn)進(jìn)行人工標(biāo)記。本文使用Fpz-Cz通道的原始腦電數(shù)據(jù)對(duì)模型進(jìn)行評(píng)估。使用最新的美國(guó)睡眠醫(yī)學(xué)學(xué)會(huì)(American Academy of Sleep Medicine, AASM)標(biāo)準(zhǔn)。依據(jù)AASM標(biāo)準(zhǔn)整個(gè)睡眠監(jiān)測(cè)過(guò)程由3個(gè)階段組成,分別是清醒(Wake, W)期、非快速動(dòng)眼(Non-Rapid Eye Movement, NREM)期和快速動(dòng)眼(Rapid Eye Movement, REM)期。其中NREM期又細(xì)分為淺睡一(NREM1, N1)期、淺睡二(NREM2, N2)期和慢波睡眠(NREM3, N3)期。表1為睡眠專家人工分類結(jié)果。
表1 睡眠專家對(duì)數(shù)據(jù)的分類及各期比例
通過(guò)表1中各分類占總數(shù)據(jù)的比例可知,該睡眠數(shù)據(jù)集為類不均衡數(shù)據(jù)集,且占比最小的類為N1期(僅為6.63%)。原始數(shù)據(jù)中出現(xiàn)類不均衡是分類任務(wù)中的典型問(wèn)題,通常以少數(shù)類占總數(shù)的10%到20%為類不平衡研究對(duì)象。事實(shí)上若實(shí)驗(yàn)所用數(shù)據(jù)集較大,無(wú)論是少數(shù)類還是多數(shù)類都有足夠的數(shù)據(jù)用于訓(xùn)練,類不平衡的影響可忽略,但是本文采用數(shù)據(jù)集較小,類不均衡會(huì)造成模型對(duì)于少數(shù)類的分類精度較差。通常是通過(guò)復(fù)制來(lái)完成少數(shù)類的過(guò)采樣,進(jìn)而完成類平衡數(shù)據(jù)集的構(gòu)建,以減少對(duì)類不均衡小數(shù)據(jù)集中的少數(shù)類的影響,但復(fù)制重構(gòu)后的數(shù)據(jù)集用于訓(xùn)練極易出現(xiàn)過(guò)擬合問(wèn)題。
本文對(duì)MSMOTE進(jìn)行改進(jìn),并將其應(yīng)用于高維度多分類數(shù)據(jù)集的擴(kuò)增,進(jìn)而完成多分類數(shù)據(jù)集中少數(shù)類的過(guò)采樣,最終生成類平衡數(shù)據(jù)集。MSMOTE將少數(shù)類分為安全類、邊界類、噪聲類,并對(duì)安全類和邊界類進(jìn)行擴(kuò)增,MSMOTE對(duì)于低維數(shù)據(jù)的生成效果較好??紤]到本文所使用的睡眠數(shù)據(jù)為高維數(shù)據(jù)(3 000維),強(qiáng)化各類邊界所起到的作用不明顯,還會(huì)產(chǎn)生部分不屬于任何分類的新數(shù)據(jù),干擾最終的訓(xùn)練效果。對(duì)MSMOTE進(jìn)行改進(jìn),只對(duì)少數(shù)類中的安全類進(jìn)行擴(kuò)增;并從控制擴(kuò)增后少數(shù)類樣本區(qū)域范圍(決策域)的角度出發(fā),對(duì)安全類中新樣本的生成算法進(jìn)行修改。具體修改如下:
1)以N1期的一個(gè)新樣本newS的生成為例,通過(guò)k鄰近算法確定屬于N1的安全類樣本。
2)隨機(jī)選取一個(gè)安全類樣本S[i],從S[i]的3 000個(gè)維度中隨機(jī)選取500個(gè)進(jìn)行修改,修改后的維度與未修改的剩余2 500維重新組合,生成屬于N1的新樣本newS。
3)若待修改的數(shù)據(jù)S[i][d](位于S[i]的第d維),判斷S[i]為安全類的k個(gè)鄰近點(diǎn)的第d維的數(shù)據(jù)分別用N1d、N2d…、Nkd表示,從S[i][d]、N1d、N2d…、Nkd中任意選取一個(gè)數(shù)來(lái)作為新生成的newS的第d維數(shù)值。
修改后的新的少數(shù)類生成過(guò)采樣技術(shù)稱為維度修改生成少數(shù)類過(guò)采樣技術(shù)(Dimension Modified Synthetic Minority Oversampling Technique, DMSMOTE),DMSMOTE偽代碼如下:
輸入:T個(gè)少數(shù)類樣本;DMSMOTE生成的樣本數(shù)N;鄰近數(shù)k。
輸出:生成的N個(gè)少數(shù)類樣本。
k=鄰近樣本數(shù);numdimens= 樣本維度數(shù);S[][]:原始少數(shù)類樣本;newindex:生成樣本的索引號(hào),初值為0;newS[][]:生成樣本數(shù)組。
*(計(jì)算每個(gè)少數(shù)類的k個(gè)鄰居,對(duì)安全類進(jìn)行擴(kuò)充)*
fori← 1 toTdo
計(jì)算第i個(gè)少數(shù)類樣本的k個(gè)鄰近樣本的同類鄰近數(shù),將同類鄰近樣本的索引值保存在nnarray中。
if(type==2)
//type=0,1,2;其中2代表安全類
Populate(N,i,nnarray)
end if
end for
RandomSelect(chooseList)
*(從該安全類和其所有鄰居的第d維數(shù)據(jù)中隨機(jī)選取一個(gè)數(shù)據(jù))*
從1到k+1中隨機(jī)生成一個(gè)隨機(jī)數(shù),叫作i
returnchooseList[i-1]
Populate(N,i,nnarray)
*(從該安全類S[i]和其所有鄰居中產(chǎn)生少數(shù)類樣本)*
whileN≠0 do
cdimens=需要改變的維度數(shù)
flag[numdimens]:flag== 1 表示該維度不需要改變,初值為0
forattr← 1to(numdimens-cdimens) do
//保留原安全類中numdimens-cdimens個(gè)不同維度的數(shù)據(jù)
//不變
newS[newidex][d] =S[i][d] //隨機(jī)選取一個(gè)在1和
//numdimens之間的數(shù)d,且flag[d]≠1
flag[d] = 1
end for
ford← 1 tonumdimensdo
ifflag[d]≠1
//從該安全類和其所有鄰居的第d維的數(shù)據(jù)組成的列表中
//隨機(jī)選取一個(gè)數(shù)據(jù)作為新生成樣本newS的第d維數(shù)據(jù)值
chooseList= [S[i][d],S[nnarray[0][d] ,
S[nnarray[1][d],…,S[nnarray[k][d]]
newS[newindex][d]= RandomSelect(chooseList)
end if
end for
newindex++
N=N-1
end while
returnnewS
理論上,深度學(xué)習(xí)模型性能會(huì)隨著網(wǎng)絡(luò)深度的加深而增強(qiáng),但是更深的網(wǎng)絡(luò)也意味著需要更大的數(shù)據(jù)集來(lái)支撐訓(xùn)練。目前絕大多數(shù)領(lǐng)域都無(wú)法提供足量的數(shù)據(jù),遷移學(xué)習(xí)的引入,為數(shù)據(jù)相似度較高的領(lǐng)域提供了數(shù)據(jù)共享[18-19]的可能性。本文仿照遷移學(xué)習(xí)方法對(duì)模型進(jìn)行訓(xùn)練,首先將經(jīng)DMSMOTE擴(kuò)增后的類平衡數(shù)據(jù)集用于對(duì)模型進(jìn)行預(yù)訓(xùn)練,然后使用未經(jīng)任何處理的原始順序數(shù)據(jù)集對(duì)預(yù)訓(xùn)練后的模型進(jìn)行微調(diào)。本文模型進(jìn)行預(yù)訓(xùn)練的主要目的為學(xué)習(xí)類平衡數(shù)據(jù)集的結(jié)構(gòu),使卷積層權(quán)值靠近較優(yōu)的(保持在有高梯度區(qū)間內(nèi))局部最優(yōu)解,以便能夠有效地對(duì)權(quán)值進(jìn)一步微調(diào)。訓(xùn)練過(guò)程中使用基于小批量梯度下降的自適應(yīng)動(dòng)量估計(jì)(Adaptive moment estimation, Adam) 優(yōu)化器對(duì)網(wǎng)絡(luò)權(quán)值進(jìn)行更新。
圖3為具體訓(xùn)練流程。
1)使用經(jīng)DMSMOTE擴(kuò)增后的類平衡數(shù)據(jù)集,對(duì)整個(gè)模型進(jìn)行預(yù)訓(xùn)練。保留預(yù)訓(xùn)練最后一個(gè)歷元中part1和part2的神經(jīng)網(wǎng)絡(luò)權(quán)值,并將其作為微調(diào)初值。
2)將用于預(yù)訓(xùn)練的Softmax-1(圖1)及其全連接層(dense-1),置換為用于微調(diào)的Softmax-2及dense-2。
3)使用原始順序數(shù)據(jù)集,對(duì)置換了全連接及Softmax層的模型進(jìn)行微調(diào)。
圖3 模型訓(xùn)練方法解析
參數(shù)設(shè)定是影響實(shí)驗(yàn)效果的關(guān)鍵因素。為了對(duì)不同層次時(shí)不變特征進(jìn)行提取,按照一定步幅,對(duì)圖1中三個(gè)獨(dú)立的卷積神經(jīng)網(wǎng)絡(luò)中第一層卷積運(yùn)算的卷積核尺寸進(jìn)行設(shè)定。圖1中標(biāo)示了各卷積運(yùn)算的卷積核大小、卷積核個(gè)數(shù)、步長(zhǎng)(如 “conv 50,64,6”表示卷積核尺寸為50,個(gè)數(shù)為64,卷積運(yùn)算步長(zhǎng)為6 )。對(duì)于卷積運(yùn)算中的補(bǔ)零(pading)規(guī)則,參數(shù)將全部設(shè)置為“SAME”。除此之外,圖1中還標(biāo)示了池化層中的池化尺寸和步長(zhǎng),全連接層和遞歸神經(jīng)網(wǎng)絡(luò)層的單元(cell)個(gè)數(shù)。
預(yù)訓(xùn)練的學(xué)習(xí)率設(shè)置為0.001,Adam優(yōu)化器中參數(shù)beta1、beta2分別為0.9和0.999。預(yù)訓(xùn)練的歷元(epoch)數(shù)為90,一個(gè)迭代(iteration)選取序列個(gè)數(shù)(batchsize)為10,每個(gè)序列長(zhǎng)度30,梯度削波的閾值設(shè)為10。 DMSMOTE中的k值設(shè)置為3,模型中Dropout參數(shù)設(shè)置為0.5。Swish技術(shù)對(duì)應(yīng)開(kāi)啟的縮放參數(shù)gamma(mean=1.0,variance=0.002)。對(duì)于微調(diào)訓(xùn)練,除歷元數(shù)設(shè)為160,學(xué)習(xí)率設(shè)置為0.000 1,其他所有參數(shù)與預(yù)訓(xùn)練完全相同。
為全面評(píng)估模型性能,會(huì)從宏觀(總體)和微觀(每類)兩方面對(duì)模型進(jìn)行評(píng)估??傮w評(píng)估指標(biāo)包括總體分類精度(Overall Accuracy, OA)以及宏平均F1值(Macro-averaged F1-score, MF1);對(duì)于每類評(píng)估,使用每類召回率(REcall, RE)、每類精度(PRecision, PR)、每類F1值(F1-score, F1)來(lái)評(píng)估模型性能。由于本文有五個(gè)分類,每類評(píng)估通過(guò)將其他各類當(dāng)作負(fù)例(Negative),待評(píng)估類作為正例(Positive)進(jìn)行評(píng)估。
各指標(biāo)計(jì)算表達(dá)式如下:
PRi=TPi/(TPi+FPi)
(3)
REi=TPi/(TPi+FNi)
(4)
F1i=2PRi×REi/(PRi+REi)
(5)
(6)
(7)
式(3)~(7)中:TPi為i類真陽(yáng)數(shù),F(xiàn)1i為i類F1值,I為睡眠階段總數(shù),N為所有類的總樣本數(shù)。公式中參數(shù)含義如表2所示。
表2 公式中各參數(shù)含義
為了在數(shù)據(jù)樣本量較少時(shí),最大化利用現(xiàn)有數(shù)據(jù)樣本對(duì)模型進(jìn)行合理評(píng)估,本文使用K折交叉驗(yàn)證(K-fold Cross Validation)來(lái)評(píng)估本文模型。
為確定K折交叉驗(yàn)證實(shí)驗(yàn)最佳K值,對(duì)本文提出的模型分別進(jìn)行5、10、15、20、25折交叉驗(yàn)證實(shí)驗(yàn),得出15折交叉驗(yàn)證實(shí)驗(yàn)分類性能為最優(yōu)。
為驗(yàn)證本文所提出的DMSMOTE及各種優(yōu)化結(jié)構(gòu)的合理性,所進(jìn)行的主要實(shí)驗(yàn)如表3所示。其中“捷徑連接”為模型中的7個(gè)捷徑連接。
表3 實(shí)驗(yàn)設(shè)計(jì)
A、B、C、D、E這5組實(shí)驗(yàn)中,A實(shí)驗(yàn)所用的模型為理論最優(yōu)模型。A組實(shí)驗(yàn)得出的結(jié)果一方面代表本文模型最優(yōu)實(shí)驗(yàn)結(jié)果,一方面用于與其他四組作對(duì)比。五組實(shí)驗(yàn)皆采用15折交叉驗(yàn)證。為控制DMSMOTE生成類平衡數(shù)據(jù)的隨機(jī)性,需要用到DMSMOTE構(gòu)建的類平衡數(shù)據(jù)的實(shí)驗(yàn)(C、D),直接調(diào)用實(shí)驗(yàn)A中的類平衡數(shù)據(jù)。其他四組實(shí)驗(yàn)?zāi)康娜缦拢?/p>
1)B組。B組采用MSMOTE對(duì)預(yù)訓(xùn)練中的少數(shù)類進(jìn)行過(guò)采樣。與實(shí)驗(yàn)A對(duì)比用以驗(yàn)證采用DMSMOTE進(jìn)行過(guò)采樣,相對(duì)于MSMOTE能否取得更好的效果。
2)C組。可驗(yàn)證結(jié)合DMSMOTE生成的類平衡數(shù)據(jù)對(duì)模型作預(yù)激活處理,對(duì)模型的分類效果是否具有提升作用,尤其是對(duì)少數(shù)類分類效果的影響。
3)D組。得出ReLU作為激活函數(shù)時(shí)模型的分類效果,并與A組模型的收斂速度以及分類效果作對(duì)比。
4)E組。得出移除7個(gè)捷徑連接模塊后模型的分類效果,與A組結(jié)果對(duì)比驗(yàn)證這種結(jié)構(gòu)的合理性。
圖4為5組實(shí)驗(yàn)得出的總混淆矩陣圖,總混淆矩陣是由15折交叉驗(yàn)證中的每折驗(yàn)證集混淆矩陣相加得出的。第6列表示每類召回率(REi),第6行代表每類精度(PRi),6行與6列交匯處(各組混淆矩陣右下角)為總體精度(OA)。圖4中A組實(shí)驗(yàn)結(jié)果的右側(cè)為各組實(shí)驗(yàn)所得的MF1值。
圖4 五組實(shí)驗(yàn)總混淆矩陣結(jié)果
從圖4中各實(shí)驗(yàn)分類數(shù)據(jù)指標(biāo)可直觀看出:A組的分類效果明顯優(yōu)于E組;由此可知,模型中7個(gè)捷徑連接模塊的嵌入可優(yōu)化訓(xùn)練,進(jìn)而提升模型分類性能。
圖4中A組與C組結(jié)果對(duì)比可知,采用DMSMOTE生成的類平衡數(shù)據(jù)對(duì)模型作預(yù)訓(xùn)練,然后再用原始數(shù)據(jù)對(duì)模型微調(diào),獲得的總體分類效果優(yōu)于采用原始類不均衡數(shù)據(jù)直接對(duì)模型進(jìn)行訓(xùn)練。為進(jìn)一步驗(yàn)證采用DMSMOTE生成的類平衡數(shù)據(jù)作預(yù)激活處理,對(duì)數(shù)據(jù)集中少數(shù)類的影響;使用A、C兩組實(shí)驗(yàn)結(jié)果中的每類指標(biāo)進(jìn)行分析。以W期F1值提升百分比為例,aF1W代表A組W期的F1值,cF1W代表C組W期的F1值,P代表A組W期F1值相對(duì)于C組提升百分比值,正值代表有所提升,負(fù)值代表下降。計(jì)算公式為:
(8)
表4為A實(shí)驗(yàn)相對(duì)C實(shí)驗(yàn)的每類指標(biāo)(每類精度、每類召回率、每類F1值)提升百分比。
由表4可直觀看出,使用DMSMOTE生成的類平衡數(shù)據(jù)對(duì)模型作預(yù)激活處理,相較于直接使用原始數(shù)據(jù)進(jìn)行訓(xùn)練,對(duì)各類的分類效果都有所提升。其中占數(shù)據(jù)集總數(shù)最少的類(N1期)各指標(biāo)提升幅度最大;REM期的召回率雖然有略微下降,但分類效果是提升的。由圖4中A、C兩組實(shí)驗(yàn)所得的總混淆矩陣也能看出,與C組實(shí)驗(yàn)結(jié)果相比,A組實(shí)驗(yàn)結(jié)果中各分類的真陽(yáng)數(shù)都在增加;N1期被誤分到其他期的數(shù)值,除N2期與C組保持持平,其他各期數(shù)目都有所下降。實(shí)驗(yàn)表明:使用DMSMOTE生成的類平衡腦電數(shù)據(jù)集用于預(yù)訓(xùn)練,在提升總體分類效果的同時(shí),對(duì)各類別的分類效果都有所提升,且可大幅提升極少數(shù)類(N1期)的分類效果。
表4 用DMSMOTE生成的類平衡數(shù)據(jù)作預(yù)訓(xùn)練對(duì)各類分類效果提升 %
由圖4中A、B兩組實(shí)驗(yàn)結(jié)果對(duì)比可知,采用DMSMOTE生成的類平衡數(shù)據(jù)對(duì)模型作預(yù)訓(xùn)練,獲得的總體分類效果優(yōu)于MSMOTE。為進(jìn)一步分析使用DMSMOTE生成的類平衡數(shù)據(jù)對(duì)模型作預(yù)激活處理對(duì)各類的提升效果(相對(duì)于MSMOTE),使用A、B兩組的實(shí)驗(yàn)結(jié)果中的每類指標(biāo)進(jìn)行分析。表5為A實(shí)驗(yàn)相對(duì)B實(shí)驗(yàn)的每類指標(biāo)(每類精度、每類召回率、每類F1值)提升百分比,計(jì)算公式與式(8)類似,正值代表有所提升,負(fù)值代表下降。
由表5結(jié)果可知,DMSMOTE用于對(duì)本文實(shí)驗(yàn)數(shù)據(jù)作過(guò)采樣處理,相對(duì)于MSMOTE,對(duì)各分類的分類效果都有所提升,尤其對(duì)極少數(shù)類(N1)的提升較明顯。綜合總體和每類兩方面的指標(biāo)來(lái)看,DMSMOTE用于處理高維多分類腦電數(shù)據(jù)獲得的性能較優(yōu)。
由圖4中A、D兩組實(shí)驗(yàn)結(jié)果的對(duì)比可知:將兩種激活函數(shù)分別應(yīng)用于本文模型,Swish在本模型中所取得的分類效果略優(yōu)。為進(jìn)一步比較兩激活函數(shù)對(duì)本文模型收斂速度的影響,對(duì)兩組實(shí)驗(yàn)?zāi)P臀⒄{(diào)時(shí)的收斂效果進(jìn)行對(duì)比。對(duì)比所采用的指標(biāo):
指標(biāo)1 每個(gè)模型訓(xùn)練集平均損失函數(shù)曲線。該曲線由AverageLi組成。
Lij表示第i個(gè)歷元第j折的損失函數(shù)值,第i個(gè)歷元的平均損失值A(chǔ)verageLi的計(jì)算公式為:
(9)
指標(biāo)2 每個(gè)模型訓(xùn)練集平均總體精度函數(shù)曲線。該曲線是由AverageOAi組成。
OAij表示第i個(gè)歷元第j折的總體精度值,第i個(gè)歷元的總體精度AverageOAi的計(jì)算公式為:
(10)
表5 DMSMOTE用于過(guò)采樣相對(duì)于MSMOTE對(duì)各類指標(biāo)的提升 %
圖5為采用這兩種指標(biāo)的兩模型微調(diào)收斂效果對(duì)比圖,其中A、D兩模型微調(diào)訓(xùn)練歷元數(shù)分別為160、260。
圖5(a)為依據(jù)指標(biāo)1所繪制的曲線,圖5(b)為依據(jù)指標(biāo)2所繪制的曲線。由圖5可直觀看出,采用Swish函數(shù)作為本模型的激活函數(shù),收斂速度明顯高于使用ReLU函數(shù)。圖5(a)底端的水平線(以ReLU作為激活函數(shù)所得第160個(gè)歷元的訓(xùn)練損失平均值為縱坐標(biāo)所作的水平線)也可看出,采用ReLU函數(shù)作為激活函數(shù)時(shí),第160個(gè)歷元的收斂效果與Swish函數(shù)作為激活函數(shù)的第110個(gè)歷元的收斂效果相當(dāng)。綜合圖4中的模型A、D分類效果以及圖5中的收斂速度對(duì)比可知:作為本文模型所要使用的激活函數(shù),Swish函數(shù)略優(yōu)于ReLU函數(shù)。
圖5 Swish和ReLU函數(shù)平均收斂速度對(duì)比
為驗(yàn)證本文所提出的模型的有效性,將本文模型實(shí)驗(yàn)(實(shí)驗(yàn)A)結(jié)果,與近年采用Sleep-EDF數(shù)據(jù)集(Fpz-Cz通道)作為實(shí)驗(yàn)數(shù)據(jù)的研究成果進(jìn)行比較。為客觀評(píng)價(jià)各文獻(xiàn)模型,只選取進(jìn)行交叉驗(yàn)證實(shí)驗(yàn)的文獻(xiàn)進(jìn)行對(duì)比。多評(píng)價(jià)指標(biāo)對(duì)比結(jié)果如表6所示。
表6的四組模型中,文獻(xiàn)[3]使用的是人工設(shè)計(jì)特征的方法,文獻(xiàn)[11]、[12]以及本文采用的是卷積神經(jīng)網(wǎng)絡(luò)自動(dòng)提取特征的方式。本文方法相對(duì)于其他三種方法獲得了更好的分類效果;除本文外,文獻(xiàn)[12]所提出的模型分類效果最佳。相比文獻(xiàn)[12]所提出模型的分類效果,本文模型OA和MF1兩指標(biāo)提升比例分別為5.74%、6.28%,同時(shí)也明顯提升了數(shù)據(jù)集中極少數(shù)類N1期的分類效果(F1值提升幅度為15.21%)。
表6 近兩年先進(jìn)研究與本文結(jié)果對(duì)比
本文設(shè)計(jì)一種基于深度學(xué)習(xí)和少數(shù)類生成技術(shù)的自動(dòng)睡眠分期模型。實(shí)驗(yàn)表明,該模型能完成少量類不均衡原始睡眠腦電數(shù)據(jù)的高精度端到端分期。鑒于其端到端特性,該模型更適用于配備遠(yuǎn)程服務(wù)器的分體式便攜睡眠監(jiān)測(cè)設(shè)備。
本文提出DMSMOTE算法,并將其用于類不平衡腦電數(shù)據(jù)集中少數(shù)類的過(guò)采樣。 DMSMOTE結(jié)合預(yù)訓(xùn)練的方法只能一定程度上減少類不均衡造成的影響,并不能避免這種分布造成的缺陷。以后的研究可通過(guò)采用集成學(xué)習(xí)算法技術(shù)對(duì)微調(diào)部分的分類器進(jìn)行修改,以增強(qiáng)其對(duì)原始類不均衡微調(diào)數(shù)據(jù)集的適應(yīng)性,最終達(dá)到提升模型分類效果的目的。
[10] WANG J, YU L C, LAI K R, et al. Dimensional sentiment analysis using a regional CNN-LSTM model [EB/OL]. [2017- 12- 11]. http://www.aclweb.org/anthology/P/P16/P16-2037.pdf.
[11] TSINALIS O, MATTHEWS P M, GUO Y, et al. Automatic sleep stage scoring with single-channel EEG using convolutional neural networks [EB/OL]. [2016- 10- 05]. http://xueshu.baidu.com/s?wd=paperuri%3A%284f2f11d92bb57d7a8b02a0ad792a9478%29&filter=sc_long_sign&tn=SE_xueshusource_2kduw22v&sc_vurl=http%3A%2F%2Farxiv.org%2Fpdf%2F1610.01683&ie=utf-8&sc_us=3154002015441067732.
[12] SUPRATAK A, DONG H, WU C, et al. DeepSleepNet: a model for automatic sleep stage scoring based on raw single-channel EEG [J]. IEEE Transactions on Neural Systems and Rehabilitation Engineering, 2017, 25(11): 1998-2008.
[13] HU S, LIANG Y, MA L, et al. MSMOTE: improving classification performance when training data is imbalanced [C]// IWCSE ’09: Proceedings of the 2009 2nd International Workshop on Computer Science and Engineering. Washington, DC: IEEE Computer Society, 2009, 2: 13-17.
[14] HE K, ZHANG X, REN S, et al. Deep residual learning for image recognition [C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Washington, DC: IEEE Computer Society, 2016: 770-778.
[15] IOFFE S, SZEGEDY C. Batch normalization: accelerating deep network training by reducing internal covariate shift [EB/OL]. [2017- 12- 20]. http://proceedings.mlr.press/v37/ioffe15.pdf.
[16] RAMACHANDRAN P, ZOPH B, LE Q V. Swish: a self-gated activation function [EB/OL]. [2017- 10- 27]. http://xueshu.baidu.com/s?wd=paperuri%3A%2829e84daf3ac69561b1408e4fa0638c79%29&filter=sc_long_sign&tn=SE_xueshusource_2kduw22v&sc_vurl=http%3A%2F%2Farxiv.org%2Fpdf%2F1710.05941v1&ie=utf-8&sc_us=7597521573451541055.
[17] HINTON G E, SRIVASTAVA N, KRIZHEVSKY A, et al. Improving neural networks by preventing co-adaptation of feature detectors [J]. Computer Science, 2012, 3(4): 212-223.
[18] 王文朋,毛文濤,何建樑,等.基于深度遷移學(xué)習(xí)的煙霧識(shí)別方法[J].計(jì)算機(jī)應(yīng)用,2017,37(11):3176-3181.(WANG W P, MAO W T, HE J L, et al. Smoke recognition based on deep transfer learning [J]. Journal of Computer Applications, 2017, 37(11): 3176-3181.)
[19] 李彥冬,郝宗波,雷航.卷積神經(jīng)網(wǎng)絡(luò)研究綜述[J].計(jì)算機(jī)應(yīng)用,2016,36(9):2508-2515.(LI Y D, HAO Z B, LEI H. Survey of convolutional neural network [J]. Journal of Computer Applications, 2016, 36(9): 2508-2515.)