金歡歡,尹海波,何玲娜
(1.浙江工業(yè)大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,杭州 310023; 2.哈爾濱工業(yè)大學(xué) 航天學(xué)院,哈爾濱 150001)
睡眠分期對研究睡眠相關(guān)疾病[1]具有重要意義。睡眠分期通常由有經(jīng)驗的睡眠分期專家,依據(jù)睡眠分期規(guī)則手動完成睡眠各階段的劃分和統(tǒng)計。人工睡眠分期需要大量的專業(yè)人才和時間,可普及性較差,因此自動睡眠分期一直是睡眠分期研究的重要方向。
自動睡眠分期的研究多基于睡眠腦電信號[2]。對原始數(shù)據(jù)的預(yù)處理、針對數(shù)據(jù)集特點設(shè)計所要提取的特征、將提取的特征輸入分類器進行類別劃分是近年自動睡眠分期研究的三個關(guān)鍵點。其中針對特定數(shù)據(jù)集的人工特征設(shè)計,是制約分類效果的關(guān)鍵因素[3]。人工設(shè)計的特征雖然針對特定數(shù)據(jù)集效果較好,但是由于需針對性嘗試設(shè)計特征,具有很強的主觀性,無法實現(xiàn)對原始睡眠腦電數(shù)據(jù)的端到端學(xué)習(xí)[4]。
近年來深度學(xué)習(xí)在圖像識別、自然語言處理以及語音識別領(lǐng)域已有大量成熟的應(yīng)用。在經(jīng)大量注釋的數(shù)據(jù)集訓(xùn)練后,基于深層神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)模型,能夠接近并超過人類專家水平[5-6]。尤其在醫(yī)學(xué)成像識別中,得益于可直接應(yīng)用現(xiàn)存大型圖像數(shù)據(jù)集對模型進行預(yù)訓(xùn)練,這種優(yōu)越性更為突出[7-8]。在時序信號處理方面,卷積神經(jīng)網(wǎng)絡(luò)和遞歸神經(jīng)網(wǎng)共同構(gòu)建的網(wǎng)絡(luò)模型已成功應(yīng)用于語音識別和自然語言處理中[9-10]。雖然受限于目前包括自動睡眠分期在內(nèi)的絕大多數(shù)領(lǐng)域都無法提供足量的數(shù)據(jù),仍有少量團隊將深度學(xué)習(xí)模型應(yīng)用于自動睡眠分期[11-12],實現(xiàn)了端到端睡眠自動分期,但是由于類不平衡小數(shù)據(jù)集在深度學(xué)習(xí)中的局限性,以及未應(yīng)用最新的深度學(xué)習(xí)優(yōu)化技術(shù),分類精度仍有很大的提升空間。
本文在這些技術(shù)的基礎(chǔ)上,分別從對類不平衡小數(shù)據(jù)集中少數(shù)類的擴增,以及應(yīng)用深度學(xué)習(xí)模型優(yōu)化技術(shù)對模型訓(xùn)練進行優(yōu)化兩方面入手,來完成高分類精度端到端自動睡眠分期模型的構(gòu)建。在類不平衡小數(shù)據(jù)集的處理方面,對修改的生成少數(shù)類過采樣技術(shù)(Modified Synthetic Minority Oversampling Technique, MSMOTE)[13]進行改進,并將其應(yīng)用于高維度、多分類腦電數(shù)據(jù)集中少數(shù)類的過采樣。在訓(xùn)練方法的優(yōu)化方面,仿照遷移學(xué)習(xí)中的兩步訓(xùn)練法,將擴增后的類平衡數(shù)據(jù)集用于預(yù)訓(xùn)練,原始數(shù)據(jù)集用于微調(diào)。此外還應(yīng)用如殘差連接(Residual Connections)[14]、批歸一化(Batch Normalization, BN)[15]、Swish激活函數(shù)[16]等技術(shù),進一步對模型進行優(yōu)化。最終實現(xiàn)可用于類不平衡小數(shù)據(jù)集的端到端自動睡眠分期模型。
本文提出的自動睡眠分期模型由三部分組成,如圖1所示,在圖1中依次標示為Part1、Part2、Part3。
圖1 模型結(jié)構(gòu)圖及重要參數(shù)
該模型的第一部分(Part1)主要作用為自動特征提取。Part1采用三個獨立的卷積神經(jīng)網(wǎng)絡(luò)對序列進行并行特征提取。為了從數(shù)據(jù)集中捕獲全局信息,按照一定步幅對這三個卷積神經(jīng)網(wǎng)絡(luò)的第一層卷積核尺寸進行設(shè)定。在每個卷積層的卷積運算之后,依次進行批歸一化、應(yīng)用Swish自門控激活。最后對并行卷積神經(jīng)網(wǎng)絡(luò)提取的時不變特征進行連接(Concat)操作。采用與殘差網(wǎng)絡(luò)結(jié)構(gòu)中類似的方式來構(gòu)建殘差網(wǎng)絡(luò),進一步對卷積神經(jīng)網(wǎng)絡(luò)部分進行優(yōu)化;通過這種結(jié)構(gòu),信息可以在較深的神經(jīng)網(wǎng)絡(luò)中更有效地傳播,進而達到優(yōu)化訓(xùn)練的目的。
作為深度學(xué)習(xí)模型核心結(jié)構(gòu)之一,深度神經(jīng)網(wǎng)絡(luò)中激活函數(shù)的選擇極其重要;即使所使用激活函數(shù)性能只有微小的提升,也會由于它的大量使用而獲得巨大的性能提升。本文模型使用Swish函數(shù)作為激活函數(shù)。Swish激活函數(shù)的設(shè)計,主要受到高速網(wǎng)絡(luò)(Highway Network)和長短期記憶網(wǎng)絡(luò)(Long Short Term Memory, LSTM)中使用 Sigmoid 函數(shù)作為門控所啟發(fā)。谷歌大腦團隊通過使用相同值進行門控,完成門控機制簡化,并將其稱為自門控(Self-Gating)。相較于傳統(tǒng)門控,自門控最大的優(yōu)勢是僅需要輸入單個簡單標量。這種優(yōu)勢令使用自門控的Swish激活函數(shù),可輕易在程序中取代用單個標量進行輸入的激活函數(shù),如現(xiàn)在廣泛使用的修正線性單元(Rectified Linear Unit, ReLU)激活函數(shù),并且不需對參數(shù)的隱藏數(shù)量或容量進行改變。Swish函數(shù)和ReLU函數(shù)的數(shù)學(xué)表達式如下:
(1)
ReLU(x)=max(x,0)
(2)
圖2為兩種激活函數(shù)曲線對比。
圖2 Swish和ReLU函數(shù)曲線對比
Swish激活函數(shù)形式極其簡單,且具有非單調(diào)、平滑等特性;這些優(yōu)勢理論上使Swish成為優(yōu)于ReLU的激活函數(shù),并且谷歌大腦團隊通過大量相關(guān)實驗得出:在不改變針對ReLU設(shè)計的超參的情況下,用Swish 直接替換ReLU,可以在總體上提升深度神經(jīng)網(wǎng)絡(luò)的分類精度和收斂速度[16]。本文會在4.3節(jié)對兩種激活函數(shù)應(yīng)用于本文模型中的效果進行對比。
第二部分是由兩層雙向門限循環(huán)單元構(gòu)建的遞歸神經(jīng)網(wǎng)絡(luò),和含有池化層的捷徑連接,共同構(gòu)成的序列殘差學(xué)習(xí)框架。該框架可從時不變特征中學(xué)習(xí)時間信息特征,并完成時不變特征與時間信息特征的融合。具體結(jié)構(gòu)及部分參數(shù)如圖1中Part2所示。
門限循環(huán)單元(Gated Recurrent Unit, GRU)是LSTM的一個變化極大的變體。GRU除擁有 LSTM的優(yōu)點外,相較于LSTM具有更少的參數(shù),出現(xiàn)過擬合問題的概率更小,處理同樣的問題收斂所用時間更少。
本文模型使用雙向GRU構(gòu)建的遞歸神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)時間序列中的時間信息特征。雙向GRU結(jié)構(gòu)相對于單向GRU,可以通過兩個GRU獨立處理前向和后向輸入序列來擴展GRU;前向和后向GRU的輸出彼此之間沒有連接,因此該模型能夠利用時間點前后兩側(cè)的信息。
此外本文模型中的七個捷徑連接都使用了最大池化層。這樣一方面可對輸入的時不變特征進行維度變換;另一方面可大幅減少參數(shù)數(shù)量,進而減少訓(xùn)練過程中的過擬合。
第三部分(圖1中Part3)是完全連接的Softmax層。本層位于模型的最后階段,具體的來說就是:第二部分產(chǎn)生的復(fù)合特征形成模型的倒數(shù)第二層,經(jīng)過Dropout[17]隨機丟棄部分神經(jīng)元,然后被饋送到完全連接的Softmax層以產(chǎn)生分類。圖1中兩個全連接的Softmax層(Softmax-1、Softmax-2)分別用于預(yù)訓(xùn)練和微調(diào)(3.1節(jié)的模型訓(xùn)練方法部分會詳細介紹)。
采用PhysioBank的公開基準睡眠數(shù)據(jù)(Sleep-EDF數(shù)據(jù)集)作為實驗數(shù)據(jù),Sleep-EDF數(shù)據(jù)集包含20名25~34歲的健康志愿者(男女各一半)的多導(dǎo)睡眠圖(Polysomnography, PSG)記錄,實驗過程沒有使用任何藥物,實驗周期為兩個晝夜(約40 h),采樣頻率為100 Hz。由于原數(shù)據(jù)集中的一個文件(SC4132E0.npz)已經(jīng)損壞,實驗數(shù)據(jù)集共包含39個文件。人工標記時,將PSG劃分為30 s(即3 000個采樣點)一段,然后由睡眠專家根據(jù)睡眠分期標準進行人工標記。本文使用Fpz-Cz通道的原始腦電數(shù)據(jù)對模型進行評估。使用最新的美國睡眠醫(yī)學(xué)學(xué)會(American Academy of Sleep Medicine, AASM)標準。依據(jù)AASM標準整個睡眠監(jiān)測過程由3個階段組成,分別是清醒(Wake, W)期、非快速動眼(Non-Rapid Eye Movement, NREM)期和快速動眼(Rapid Eye Movement, REM)期。其中NREM期又細分為淺睡一(NREM1, N1)期、淺睡二(NREM2, N2)期和慢波睡眠(NREM3, N3)期。表1為睡眠專家人工分類結(jié)果。
表1 睡眠專家對數(shù)據(jù)的分類及各期比例
通過表1中各分類占總數(shù)據(jù)的比例可知,該睡眠數(shù)據(jù)集為類不均衡數(shù)據(jù)集,且占比最小的類為N1期(僅為6.63%)。原始數(shù)據(jù)中出現(xiàn)類不均衡是分類任務(wù)中的典型問題,通常以少數(shù)類占總數(shù)的10%到20%為類不平衡研究對象。事實上若實驗所用數(shù)據(jù)集較大,無論是少數(shù)類還是多數(shù)類都有足夠的數(shù)據(jù)用于訓(xùn)練,類不平衡的影響可忽略,但是本文采用數(shù)據(jù)集較小,類不均衡會造成模型對于少數(shù)類的分類精度較差。通常是通過復(fù)制來完成少數(shù)類的過采樣,進而完成類平衡數(shù)據(jù)集的構(gòu)建,以減少對類不均衡小數(shù)據(jù)集中的少數(shù)類的影響,但復(fù)制重構(gòu)后的數(shù)據(jù)集用于訓(xùn)練極易出現(xiàn)過擬合問題。
本文對MSMOTE進行改進,并將其應(yīng)用于高維度多分類數(shù)據(jù)集的擴增,進而完成多分類數(shù)據(jù)集中少數(shù)類的過采樣,最終生成類平衡數(shù)據(jù)集。MSMOTE將少數(shù)類分為安全類、邊界類、噪聲類,并對安全類和邊界類進行擴增,MSMOTE對于低維數(shù)據(jù)的生成效果較好??紤]到本文所使用的睡眠數(shù)據(jù)為高維數(shù)據(jù)(3 000維),強化各類邊界所起到的作用不明顯,還會產(chǎn)生部分不屬于任何分類的新數(shù)據(jù),干擾最終的訓(xùn)練效果。對MSMOTE進行改進,只對少數(shù)類中的安全類進行擴增;并從控制擴增后少數(shù)類樣本區(qū)域范圍(決策域)的角度出發(fā),對安全類中新樣本的生成算法進行修改。具體修改如下:
1)以N1期的一個新樣本newS的生成為例,通過k鄰近算法確定屬于N1的安全類樣本。
2)隨機選取一個安全類樣本S[i],從S[i]的3 000個維度中隨機選取500個進行修改,修改后的維度與未修改的剩余2 500維重新組合,生成屬于N1的新樣本newS。
3)若待修改的數(shù)據(jù)S[i][d](位于S[i]的第d維),判斷S[i]為安全類的k個鄰近點的第d維的數(shù)據(jù)分別用N1d、N2d…、Nkd表示,從S[i][d]、N1d、N2d…、Nkd中任意選取一個數(shù)來作為新生成的newS的第d維數(shù)值。
修改后的新的少數(shù)類生成過采樣技術(shù)稱為維度修改生成少數(shù)類過采樣技術(shù)(Dimension Modified Synthetic Minority Oversampling Technique, DMSMOTE),DMSMOTE偽代碼如下:
輸入:T個少數(shù)類樣本;DMSMOTE生成的樣本數(shù)N;鄰近數(shù)k。
輸出:生成的N個少數(shù)類樣本。
k=鄰近樣本數(shù);numdimens= 樣本維度數(shù);S[][]:原始少數(shù)類樣本;newindex:生成樣本的索引號,初值為0;newS[][]:生成樣本數(shù)組。
*(計算每個少數(shù)類的k個鄰居,對安全類進行擴充)*
fori← 1 toTdo
計算第i個少數(shù)類樣本的k個鄰近樣本的同類鄰近數(shù),將同類鄰近樣本的索引值保存在nnarray中。
if(type==2)
//type=0,1,2;其中2代表安全類
Populate(N,i,nnarray)
end if
end for
RandomSelect(chooseList)
*(從該安全類和其所有鄰居的第d維數(shù)據(jù)中隨機選取一個數(shù)據(jù))*
從1到k+1中隨機生成一個隨機數(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個不同維度的數(shù)據(jù)
//不變
newS[newidex][d] =S[i][d] //隨機選取一個在1和
//numdimens之間的數(shù)d,且flag[d]≠1
flag[d] = 1
end for
ford← 1 tonumdimensdo
ifflag[d]≠1
//從該安全類和其所有鄰居的第d維的數(shù)據(jù)組成的列表中
//隨機選取一個數(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í)模型性能會隨著網(wǎng)絡(luò)深度的加深而增強,但是更深的網(wǎng)絡(luò)也意味著需要更大的數(shù)據(jù)集來支撐訓(xùn)練。目前絕大多數(shù)領(lǐng)域都無法提供足量的數(shù)據(jù),遷移學(xué)習(xí)的引入,為數(shù)據(jù)相似度較高的領(lǐng)域提供了數(shù)據(jù)共享[18-19]的可能性。本文仿照遷移學(xué)習(xí)方法對模型進行訓(xùn)練,首先將經(jīng)DMSMOTE擴增后的類平衡數(shù)據(jù)集用于對模型進行預(yù)訓(xùn)練,然后使用未經(jīng)任何處理的原始順序數(shù)據(jù)集對預(yù)訓(xùn)練后的模型進行微調(diào)。本文模型進行預(yù)訓(xùn)練的主要目的為學(xué)習(xí)類平衡數(shù)據(jù)集的結(jié)構(gòu),使卷積層權(quán)值靠近較優(yōu)的(保持在有高梯度區(qū)間內(nèi))局部最優(yōu)解,以便能夠有效地對權(quán)值進一步微調(diào)。訓(xùn)練過程中使用基于小批量梯度下降的自適應(yīng)動量估計(Adaptive moment estimation, Adam) 優(yōu)化器對網(wǎng)絡(luò)權(quán)值進行更新。
圖3為具體訓(xùn)練流程。
1)使用經(jīng)DMSMOTE擴增后的類平衡數(shù)據(jù)集,對整個模型進行預(yù)訓(xùn)練。保留預(yù)訓(xùn)練最后一個歷元中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ù)集,對置換了全連接及Softmax層的模型進行微調(diào)。
圖3 模型訓(xùn)練方法解析
參數(shù)設(shè)定是影響實驗效果的關(guān)鍵因素。為了對不同層次時不變特征進行提取,按照一定步幅,對圖1中三個獨立的卷積神經(jīng)網(wǎng)絡(luò)中第一層卷積運算的卷積核尺寸進行設(shè)定。圖1中標示了各卷積運算的卷積核大小、卷積核個數(shù)、步長(如 “conv 50,64,6”表示卷積核尺寸為50,個數(shù)為64,卷積運算步長為6 )。對于卷積運算中的補零(pading)規(guī)則,參數(shù)將全部設(shè)置為“SAME”。除此之外,圖1中還標示了池化層中的池化尺寸和步長,全連接層和遞歸神經(jīng)網(wǎng)絡(luò)層的單元(cell)個數(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,一個迭代(iteration)選取序列個數(shù)(batchsize)為10,每個序列長度30,梯度削波的閾值設(shè)為10。 DMSMOTE中的k值設(shè)置為3,模型中Dropout參數(shù)設(shè)置為0.5。Swish技術(shù)對應(yīng)開啟的縮放參數(shù)gamma(mean=1.0,variance=0.002)。對于微調(diào)訓(xùn)練,除歷元數(shù)設(shè)為160,學(xué)習(xí)率設(shè)置為0.000 1,其他所有參數(shù)與預(yù)訓(xùn)練完全相同。
為全面評估模型性能,會從宏觀(總體)和微觀(每類)兩方面對模型進行評估??傮w評估指標包括總體分類精度(Overall Accuracy, OA)以及宏平均F1值(Macro-averaged F1-score, MF1);對于每類評估,使用每類召回率(REcall, RE)、每類精度(PRecision, PR)、每類F1值(F1-score, F1)來評估模型性能。由于本文有五個分類,每類評估通過將其他各類當(dāng)作負例(Negative),待評估類作為正例(Positive)進行評估。
各指標計算表達式如下:
PRi=TPi/(TPi+FPi)
(3)
REi=TPi/(TPi+FNi)
(4)
F1i=2PRi×REi/(PRi+REi)
(5)
(6)
(7)
式(3)~(7)中:TPi為i類真陽數(shù),F(xiàn)1i為i類F1值,I為睡眠階段總數(shù),N為所有類的總樣本數(shù)。公式中參數(shù)含義如表2所示。
表2 公式中各參數(shù)含義
為了在數(shù)據(jù)樣本量較少時,最大化利用現(xiàn)有數(shù)據(jù)樣本對模型進行合理評估,本文使用K折交叉驗證(K-fold Cross Validation)來評估本文模型。
為確定K折交叉驗證實驗最佳K值,對本文提出的模型分別進行5、10、15、20、25折交叉驗證實驗,得出15折交叉驗證實驗分類性能為最優(yōu)。
為驗證本文所提出的DMSMOTE及各種優(yōu)化結(jié)構(gòu)的合理性,所進行的主要實驗如表3所示。其中“捷徑連接”為模型中的7個捷徑連接。
表3 實驗設(shè)計
A、B、C、D、E這5組實驗中,A實驗所用的模型為理論最優(yōu)模型。A組實驗得出的結(jié)果一方面代表本文模型最優(yōu)實驗結(jié)果,一方面用于與其他四組作對比。五組實驗皆采用15折交叉驗證。為控制DMSMOTE生成類平衡數(shù)據(jù)的隨機性,需要用到DMSMOTE構(gòu)建的類平衡數(shù)據(jù)的實驗(C、D),直接調(diào)用實驗A中的類平衡數(shù)據(jù)。其他四組實驗?zāi)康娜缦拢?/p>
1)B組。B組采用MSMOTE對預(yù)訓(xùn)練中的少數(shù)類進行過采樣。與實驗A對比用以驗證采用DMSMOTE進行過采樣,相對于MSMOTE能否取得更好的效果。
2)C組??沈炞C結(jié)合DMSMOTE生成的類平衡數(shù)據(jù)對模型作預(yù)激活處理,對模型的分類效果是否具有提升作用,尤其是對少數(shù)類分類效果的影響。
3)D組。得出ReLU作為激活函數(shù)時模型的分類效果,并與A組模型的收斂速度以及分類效果作對比。
4)E組。得出移除7個捷徑連接模塊后模型的分類效果,與A組結(jié)果對比驗證這種結(jié)構(gòu)的合理性。
圖4為5組實驗得出的總混淆矩陣圖,總混淆矩陣是由15折交叉驗證中的每折驗證集混淆矩陣相加得出的。第6列表示每類召回率(REi),第6行代表每類精度(PRi),6行與6列交匯處(各組混淆矩陣右下角)為總體精度(OA)。圖4中A組實驗結(jié)果的右側(cè)為各組實驗所得的MF1值。
圖4 五組實驗總混淆矩陣結(jié)果
從圖4中各實驗分類數(shù)據(jù)指標可直觀看出:A組的分類效果明顯優(yōu)于E組;由此可知,模型中7個捷徑連接模塊的嵌入可優(yōu)化訓(xùn)練,進而提升模型分類性能。
圖4中A組與C組結(jié)果對比可知,采用DMSMOTE生成的類平衡數(shù)據(jù)對模型作預(yù)訓(xùn)練,然后再用原始數(shù)據(jù)對模型微調(diào),獲得的總體分類效果優(yōu)于采用原始類不均衡數(shù)據(jù)直接對模型進行訓(xùn)練。為進一步驗證采用DMSMOTE生成的類平衡數(shù)據(jù)作預(yù)激活處理,對數(shù)據(jù)集中少數(shù)類的影響;使用A、C兩組實驗結(jié)果中的每類指標進行分析。以W期F1值提升百分比為例,aF1W代表A組W期的F1值,cF1W代表C組W期的F1值,P代表A組W期F1值相對于C組提升百分比值,正值代表有所提升,負值代表下降。計算公式為:
(8)
表4為A實驗相對C實驗的每類指標(每類精度、每類召回率、每類F1值)提升百分比。
由表4可直觀看出,使用DMSMOTE生成的類平衡數(shù)據(jù)對模型作預(yù)激活處理,相較于直接使用原始數(shù)據(jù)進行訓(xùn)練,對各類的分類效果都有所提升。其中占數(shù)據(jù)集總數(shù)最少的類(N1期)各指標提升幅度最大;REM期的召回率雖然有略微下降,但分類效果是提升的。由圖4中A、C兩組實驗所得的總混淆矩陣也能看出,與C組實驗結(jié)果相比,A組實驗結(jié)果中各分類的真陽數(shù)都在增加;N1期被誤分到其他期的數(shù)值,除N2期與C組保持持平,其他各期數(shù)目都有所下降。實驗表明:使用DMSMOTE生成的類平衡腦電數(shù)據(jù)集用于預(yù)訓(xùn)練,在提升總體分類效果的同時,對各類別的分類效果都有所提升,且可大幅提升極少數(shù)類(N1期)的分類效果。
表4 用DMSMOTE生成的類平衡數(shù)據(jù)作預(yù)訓(xùn)練對各類分類效果提升 %
由圖4中A、B兩組實驗結(jié)果對比可知,采用DMSMOTE生成的類平衡數(shù)據(jù)對模型作預(yù)訓(xùn)練,獲得的總體分類效果優(yōu)于MSMOTE。為進一步分析使用DMSMOTE生成的類平衡數(shù)據(jù)對模型作預(yù)激活處理對各類的提升效果(相對于MSMOTE),使用A、B兩組的實驗結(jié)果中的每類指標進行分析。表5為A實驗相對B實驗的每類指標(每類精度、每類召回率、每類F1值)提升百分比,計算公式與式(8)類似,正值代表有所提升,負值代表下降。
由表5結(jié)果可知,DMSMOTE用于對本文實驗數(shù)據(jù)作過采樣處理,相對于MSMOTE,對各分類的分類效果都有所提升,尤其對極少數(shù)類(N1)的提升較明顯。綜合總體和每類兩方面的指標來看,DMSMOTE用于處理高維多分類腦電數(shù)據(jù)獲得的性能較優(yōu)。
由圖4中A、D兩組實驗結(jié)果的對比可知:將兩種激活函數(shù)分別應(yīng)用于本文模型,Swish在本模型中所取得的分類效果略優(yōu)。為進一步比較兩激活函數(shù)對本文模型收斂速度的影響,對兩組實驗?zāi)P臀⒄{(diào)時的收斂效果進行對比。對比所采用的指標:
指標1 每個模型訓(xùn)練集平均損失函數(shù)曲線。該曲線由AverageLi組成。
Lij表示第i個歷元第j折的損失函數(shù)值,第i個歷元的平均損失值A(chǔ)verageLi的計算公式為:
(9)
指標2 每個模型訓(xùn)練集平均總體精度函數(shù)曲線。該曲線是由AverageOAi組成。
OAij表示第i個歷元第j折的總體精度值,第i個歷元的總體精度AverageOAi的計算公式為:
(10)
表5 DMSMOTE用于過采樣相對于MSMOTE對各類指標的提升 %
圖5為采用這兩種指標的兩模型微調(diào)收斂效果對比圖,其中A、D兩模型微調(diào)訓(xùn)練歷元數(shù)分別為160、260。
圖5(a)為依據(jù)指標1所繪制的曲線,圖5(b)為依據(jù)指標2所繪制的曲線。由圖5可直觀看出,采用Swish函數(shù)作為本模型的激活函數(shù),收斂速度明顯高于使用ReLU函數(shù)。圖5(a)底端的水平線(以ReLU作為激活函數(shù)所得第160個歷元的訓(xùn)練損失平均值為縱坐標所作的水平線)也可看出,采用ReLU函數(shù)作為激活函數(shù)時,第160個歷元的收斂效果與Swish函數(shù)作為激活函數(shù)的第110個歷元的收斂效果相當(dāng)。綜合圖4中的模型A、D分類效果以及圖5中的收斂速度對比可知:作為本文模型所要使用的激活函數(shù),Swish函數(shù)略優(yōu)于ReLU函數(shù)。
圖5 Swish和ReLU函數(shù)平均收斂速度對比
為驗證本文所提出的模型的有效性,將本文模型實驗(實驗A)結(jié)果,與近年采用Sleep-EDF數(shù)據(jù)集(Fpz-Cz通道)作為實驗數(shù)據(jù)的研究成果進行比較。為客觀評價各文獻模型,只選取進行交叉驗證實驗的文獻進行對比。多評價指標對比結(jié)果如表6所示。
表6的四組模型中,文獻[3]使用的是人工設(shè)計特征的方法,文獻[11]、[12]以及本文采用的是卷積神經(jīng)網(wǎng)絡(luò)自動提取特征的方式。本文方法相對于其他三種方法獲得了更好的分類效果;除本文外,文獻[12]所提出的模型分類效果最佳。相比文獻[12]所提出模型的分類效果,本文模型OA和MF1兩指標提升比例分別為5.74%、6.28%,同時也明顯提升了數(shù)據(jù)集中極少數(shù)類N1期的分類效果(F1值提升幅度為15.21%)。
表6 近兩年先進研究與本文結(jié)果對比
本文設(shè)計一種基于深度學(xué)習(xí)和少數(shù)類生成技術(shù)的自動睡眠分期模型。實驗表明,該模型能完成少量類不均衡原始睡眠腦電數(shù)據(jù)的高精度端到端分期。鑒于其端到端特性,該模型更適用于配備遠程服務(wù)器的分體式便攜睡眠監(jiān)測設(shè)備。
本文提出DMSMOTE算法,并將其用于類不平衡腦電數(shù)據(jù)集中少數(shù)類的過采樣。 DMSMOTE結(jié)合預(yù)訓(xùn)練的方法只能一定程度上減少類不均衡造成的影響,并不能避免這種分布造成的缺陷。以后的研究可通過采用集成學(xué)習(xí)算法技術(shù)對微調(diào)部分的分類器進行修改,以增強其對原始類不均衡微調(diào)數(shù)據(jù)集的適應(yīng)性,最終達到提升模型分類效果的目的。
[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í)的煙霧識別方法[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].計算機應(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.)