唐 潔,文元美
(廣東工業(yè)大學(xué)信息工程學(xué)院,廣東 廣州 510006)
睡眠分期是睡眠醫(yī)學(xué)研究中對(duì)睡眠質(zhì)量有效評(píng)估的重要依據(jù)之一,是睡眠疾病診斷的基礎(chǔ)[1-3]。一直以來,睡眠分期的研究得到了各國(guó)學(xué)者們的重視[4-5]。傳統(tǒng)上多采用手工提取睡眠信號(hào)特征[6-7]或利用SVM等[8-10]分類器進(jìn)行睡眠分期的方法,這類方法不僅費(fèi)時(shí),而且提取的特征少,影響分期準(zhǔn)確性。隨著卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)的發(fā)展,學(xué)者們開展了基于卷積神經(jīng)網(wǎng)絡(luò)的睡眠自動(dòng)分期研究,例如:Tsinalis等[11]利用CNN對(duì)單通道腦電信號(hào)進(jìn)行睡眠自動(dòng)分期;Wei等[12]使用希式變換分別提取信號(hào)的時(shí)頻特征與時(shí)間特征,結(jié)合CNN進(jìn)行睡眠分期;Andreotti等[13]使用遷移學(xué)習(xí)的思想,將CNN的全連接層丟棄后直接使用softmax層進(jìn)行分期。這些方法都取得了較好的分期效果,但是只用CNN提取睡眠腦電信號(hào)的單層次特征,并未考慮睡眠階段之間的內(nèi)部時(shí)間信息。
因此有學(xué)者提出了兩步學(xué)習(xí)法來從睡眠腦電信號(hào)中提取不同層次的特征,并學(xué)習(xí)睡眠階段之間的時(shí)間信息。Sun等[14]提出了一種基于層次神經(jīng)網(wǎng)絡(luò)的分類方法,將手工制作的特征和CNN提取的特征融合得到特征矩陣,并利用雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Bidirectional Long Short Term Memory, BiLSTM)和注意層結(jié)合來學(xué)習(xí)睡眠階段之間的時(shí)間信息,然后利用softmax層進(jìn)行睡眠分期;Liu等[15]采用CNN與LSTM相結(jié)合的方法來提取腦電信號(hào)的時(shí)頻特征和學(xué)習(xí)時(shí)間信息并訓(xùn)練分類器進(jìn)行睡眠分期;Supratak等[16]采用2個(gè)不同過濾尺寸的CNN提取睡眠特征,結(jié)合BiLSTM從腦電紀(jì)元(epoch)中學(xué)習(xí)的睡眠階段之間轉(zhuǎn)換規(guī)則,然后通過softmax層進(jìn)行睡眠分期。雖然單層或雙層卷積神經(jīng)網(wǎng)絡(luò)提取的特征有限,但是以上兩步學(xué)習(xí)方法都取得了比單步分類方法更好的分類準(zhǔn)確率。然而LSTM[17-18]結(jié)構(gòu)參數(shù)多、計(jì)算較為復(fù)雜、模型訓(xùn)練所需時(shí)間長(zhǎng),影響模型的訓(xùn)練效率。
為了充分提取腦電信號(hào)中更多層面的睡眠特征,同時(shí)減少模型訓(xùn)練所需時(shí)間,本文提出將雙向門控循環(huán)單元(Bidirectional Gated Recurrent Unit, BiGRU)[19-21]用于學(xué)習(xí)睡眠階段之間時(shí)間信息的3CNN-BiGRU模型兩步學(xué)習(xí)法,以提高睡眠分期準(zhǔn)確性和模型訓(xùn)練效率。
本文提出的3CNN-BiGRU模型主要由綜合特征學(xué)習(xí)和序列殘差學(xué)習(xí)2個(gè)模塊組成,如圖1所示。綜合特征學(xué)習(xí)模塊主要是從預(yù)處理后的單通道腦電信號(hào)中提取睡眠信號(hào)多層次的特征。序列殘差學(xué)習(xí)模塊主要是從綜合特征學(xué)習(xí)模塊提取到的多層次特征中獲得一系列的時(shí)間信息,例如不同睡眠階段之間的轉(zhuǎn)換規(guī)則等。
圖1 3CNN-BiGRU模型框架圖
本文設(shè)計(jì)3CNN模塊分別捕獲睡眠腦電信號(hào)中的細(xì)節(jié)、結(jié)構(gòu)和形狀等特征,具體參數(shù)設(shè)置在圖1中可見。輸入信號(hào)包括了N個(gè)30-s epoch,即{a1,…,aN},使用3CNN從第t個(gè)腦電epochat中提取第t個(gè)特征的過程定義如式(1)和式(2)所示。
bit=CNNi(at)
(1)
xt=b1t‖b2t‖b3t
(2)
其中,CNNi(at)是一個(gè)函數(shù),i={1,2,3},用每個(gè)分支中的CNN把一個(gè)30-s epochat轉(zhuǎn)換成一個(gè)特征向量bit,‖運(yùn)算符表示將3CNN的輸出進(jìn)行連接操作,這些連接后的特征xt∈{x1,…,xN}被轉(zhuǎn)到序列殘差學(xué)習(xí)模塊進(jìn)行下一步工作。
為了獲取睡眠不同階段之間的時(shí)間序列信息和調(diào)整睡眠階段錯(cuò)分的概率,文獻(xiàn)[16]提出了由BiLSTM和快捷連接構(gòu)成的殘差學(xué)習(xí)模塊,但是LSTM模型復(fù)雜,且訓(xùn)練大型數(shù)據(jù)花費(fèi)的時(shí)間較長(zhǎng)。本文提出用LSTM的一種變體門控循環(huán)單元(Gated Recurrent Unit, GRU)[22]來代替LSTM的序列殘差學(xué)習(xí)模塊,該模塊包括BiGRU和快捷連接2個(gè)部分,BiGRU模型可以同時(shí)處理正向和反向的時(shí)間信息,對(duì)學(xué)習(xí)睡眠階段之間的時(shí)間關(guān)系具有一定的優(yōu)勢(shì),模型結(jié)構(gòu)如圖2所示。
圖2 BiGRU網(wǎng)絡(luò)模型
假設(shè)由CNN提取的特征序列為xt,其中t=[1,…,N]為時(shí)間指數(shù),則序列殘差學(xué)習(xí)定義如式(3)~式(5)所示。
(3)
(4)
(5)
本文所有的實(shí)驗(yàn)都是基于Physionet中公開的sleep-EDF2018數(shù)據(jù)集,其中健康人的睡眠(SC)研究包括83名受試者2個(gè)晚上的多導(dǎo)睡眠監(jiān)測(cè)(Polysomnography, PSG)信號(hào),每個(gè)PSG包含2個(gè)來自Fpz-cz和Pz-oz通道的頭皮-腦電圖(EEG)信號(hào)、1個(gè)水平的EOG等信號(hào),采用相同的100 Hz采樣率。睡眠分析專家根據(jù)R&K標(biāo)準(zhǔn)手工將PSG信號(hào)分為8個(gè)睡眠期(W, N1, N2, N3, N4, REM, MOVEMENT, UNKNOWN)。本文使用數(shù)據(jù)集中Fpz-cz和Pz-oz通道的頭皮-腦電數(shù)據(jù)進(jìn)行實(shí)驗(yàn),將每個(gè)PSG劃分為以30 s為一個(gè)周期的一系列epoch(記為30-s epoch),并將N3和N4期合并為單一的N3期,排除不屬于5個(gè)睡眠期的MOVEMENT和UNKNOWN這2個(gè)期。
本文實(shí)驗(yàn)選取sleep-EDF2018數(shù)據(jù)集的SC研究前40名受試者2個(gè)晚上的PSG信號(hào)來評(píng)估睡眠分期模型的性能。選擇前20名受試者的睡眠信號(hào)(Fpz-cz和Pz-oz通道數(shù)據(jù))記為數(shù)據(jù)集Ⅰ,選擇后20名受試者的睡眠信號(hào)(Fpz-cz通道數(shù)據(jù))記為數(shù)據(jù)集Ⅱ,其中受試者13第2個(gè)晚上和受試者36第1個(gè)晚上的數(shù)據(jù)由于記錄設(shè)備故障丟失。
本文采用整體分期準(zhǔn)確率OverAcc、宏觀平均F1-score(MF1)、Cohen’s Kappa系數(shù)(к)以及訓(xùn)練時(shí)間作為評(píng)價(jià)標(biāo)準(zhǔn),各評(píng)價(jià)標(biāo)準(zhǔn)計(jì)算公式如下。
整體分期準(zhǔn)確率OverAcc計(jì)算如式(6)所示。
(6)
其中,Np為預(yù)測(cè)正確結(jié)果的總樣本數(shù),N為相應(yīng)睡眠階段的樣本總數(shù)。
宏觀平均F1-score(MF1)的計(jì)算公式如式(7)所示。
(7)
其中,F(xiàn)1i(i=0,…,4)表示每個(gè)睡眠期的F1。
Cohen’s Kappa系數(shù)(к)計(jì)算公式如式(8)所示。
к=(OverAcc-Pe)/(1-Pe)
(8)
本文使用數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ分別作為訓(xùn)練和預(yù)測(cè)數(shù)據(jù),首先將2個(gè)數(shù)據(jù)集進(jìn)行濾波與類平衡處理,然后送入睡眠分期模型中進(jìn)行兩步訓(xùn)練,最后對(duì)睡眠分期模型進(jìn)行睡眠階段的分期。
睡眠EEG信號(hào)是各個(gè)睡眠階段的腦電信號(hào)記錄,包括有α波、δ波、θ波、β波及k復(fù)合波、睡眠紡錘波等,不同的腦電波型代表著不同的睡眠階段,各個(gè)睡眠階段存在的波形如表1所示。
表1 各個(gè)睡眠階段存在的波形
由表1可知,睡眠腦電信號(hào)有用信息存在的頻率范圍是在0.4 Hz~30 Hz,本文采用巴特沃斯帶通濾波器提取出0.4 Hz~30 Hz的信號(hào),濾除其它非必要的噪聲和偽影。
一段30-s epoch中所包含的各個(gè)睡眠階段樣本數(shù)大小差距較大,存在各階段(類)樣本不平衡的問題,本文引入合成少數(shù)類過采樣技術(shù)(Synthetic Minority Oversampling Technique, SMOTE)[23],基于對(duì)少數(shù)類樣本的分析來人工合成新樣本以補(bǔ)充到數(shù)據(jù)集中,可較好地避免過擬合問題,實(shí)現(xiàn)過程如下。
對(duì)于少數(shù)類中每一個(gè)樣本xi,以歐氏距離為標(biāo)準(zhǔn)計(jì)算它到少數(shù)類樣本集中所有樣本的距離,得到其k近鄰,根據(jù)樣本不平衡比例設(shè)置一個(gè)采樣比例以確定采樣倍率N,對(duì)于每一個(gè)少數(shù)類樣本xi,從xi的k近鄰中隨機(jī)選擇N個(gè)樣本xzi。對(duì)于每一個(gè)隨機(jī)選出的近鄰xzi,分別與原樣本按照如下的公式構(gòu)建新的樣本,合成公式如式(9)所示。
xnew=xi+rand(0,1)×(xzi-xi)
(9)
本文采用包括預(yù)訓(xùn)練和微調(diào)訓(xùn)練的兩步訓(xùn)練法。首先對(duì)模型的綜合特征學(xué)習(xí)部分進(jìn)行預(yù)訓(xùn)練,然后使用2種不同的學(xué)習(xí)率對(duì)整個(gè)模型進(jìn)行微調(diào),模型的兩步訓(xùn)練法如圖3所示。
圖3 模型兩步訓(xùn)練法
1)預(yù)訓(xùn)練。
經(jīng)SMOTE類平衡處理后的訓(xùn)練數(shù)據(jù)集送入3CNN模型進(jìn)行監(jiān)督預(yù)訓(xùn)練,從模型中提取出3個(gè)不同尺寸的CNN,然后與softmax層進(jìn)行堆疊,其中使用基于小批量梯度的自適應(yīng)矩估計(jì)(Adaptive moment estimation, Adam)優(yōu)化器對(duì)模型進(jìn)行訓(xùn)練,從而得到3CNN的參數(shù),用于下一步的微調(diào)訓(xùn)練。
2)微調(diào)訓(xùn)練。
微調(diào)訓(xùn)練是使用原始的數(shù)據(jù)集對(duì)基于預(yù)訓(xùn)練輸出參數(shù)的3CNN-BiGRU模型進(jìn)行有監(jiān)督的微調(diào)。通過對(duì)Adam優(yōu)化器分別設(shè)置2個(gè)不同的學(xué)習(xí)率來實(shí)現(xiàn)對(duì)3CNN模型部分和BiGRU模型部分的學(xué)習(xí),將不同睡眠階段之間的轉(zhuǎn)換規(guī)則編碼到模型中,對(duì)預(yù)訓(xùn)練的3CNN參數(shù)進(jìn)行一些微調(diào)。本文使用dropout技術(shù)防止模型過擬合,還使用啟發(fā)式梯度裁剪技術(shù)來防止梯度爆炸,當(dāng)梯度超過預(yù)定義的閾值時(shí),該技術(shù)使用全局范數(shù)將梯度重新縮放為更小的值。
本文的CNN模型參數(shù)見圖1,采用ReLU作為CNN的激活函數(shù)(其中,ReLU(x)=max(0,x))。預(yù)訓(xùn)練的Adam優(yōu)化器學(xué)習(xí)率lr1=10-4,epoch步長(zhǎng)設(shè)置為100。微調(diào)訓(xùn)練Adam優(yōu)化器的2個(gè)不同學(xué)習(xí)率分別為lr1=10-4、lr2=10-6,epoch步長(zhǎng)設(shè)置為200,梯度裁剪閾值為10。2個(gè)數(shù)據(jù)集中用于預(yù)測(cè)的各睡眠階段epoch數(shù)量如表2所示。
表2 數(shù)據(jù)集用于預(yù)測(cè)的各階段epoch數(shù)量
本文的實(shí)驗(yàn)均在Python3.6.5、TensorFlow1.4框架下實(shí)現(xiàn),采用GPU提高計(jì)算速度,GPU的型號(hào)為GeForce RTX 2080 Ti,GPU內(nèi)存為11 GB。
將本文設(shè)計(jì)的方法(記為3CNN-BiGRU)、雙層CNN+雙向LSTM(記為2CNN-BiLSTM)方法以及雙層CNN+雙向GRU(記為2CNN-BiGRU)方法,在數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ中分別采用20次(20-folds)和10次(10-folds)交叉驗(yàn)證設(shè)置了2組對(duì)比實(shí)驗(yàn)。
2CNN-BiGRU模型由綜合特征學(xué)習(xí)模塊2CNN和序列殘差學(xué)習(xí)模塊構(gòu)成,其序列殘差學(xué)習(xí)模塊由BiGRU和一個(gè)快捷連接構(gòu)成。數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ的數(shù)據(jù)經(jīng)過采樣進(jìn)行類平衡處理后輸入到2CNN-BiGRU模型中進(jìn)行訓(xùn)練和預(yù)測(cè)。將2CNN-BiGRU模型中的序列殘差學(xué)習(xí)模塊BiGRU換成BiLSTM從而構(gòu)成2CNN-BiLSTM模型,然后進(jìn)行2CNN-BiLSTM模型訓(xùn)練和預(yù)測(cè),記錄2個(gè)模型下的實(shí)驗(yàn)結(jié)果并分析。
2CNN-BiLSTM模型和2CNN-BiGRU模型在數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ中的訓(xùn)練時(shí)間對(duì)比結(jié)果如表3所示。
表3 2個(gè)模型訓(xùn)練消耗時(shí)間對(duì)比表
由表3可知,由于數(shù)據(jù)集Ⅰ中2個(gè)通道(Fpz-cz、Pz-oz)中的epoch數(shù)量相同,經(jīng)過20次交叉驗(yàn)證后,2CNN-BiLSTM模型訓(xùn)練所需總時(shí)長(zhǎng)均為75.0 h,而采用2CNN-BiGRU模型訓(xùn)練所需總時(shí)長(zhǎng)均為56.5 h,比采用2CNN-BiLSTM模型節(jié)省了18.5 h。究其原因,發(fā)現(xiàn)分別采用2CNN-BiLSTM模型和2CNN-BiGRU模型進(jìn)行訓(xùn)練時(shí),預(yù)訓(xùn)練中Train的平均時(shí)間由12.0 s減少為11.0 s,Valid平均時(shí)間相同;微調(diào)訓(xùn)練中Train的平均時(shí)間由57.0 s減少為42.0 s,Valid平均時(shí)間從1.05 s減少為0.80 s,經(jīng)過20-folds后所需總時(shí)長(zhǎng)明顯減少。
在數(shù)據(jù)集Ⅱ的Fpz-cz通道中,經(jīng)過10次交叉驗(yàn)證后,2CNN-BiLSTM模型訓(xùn)練所需總時(shí)長(zhǎng)為39.0 h,采用2CNN-BiGRU模型訓(xùn)練所需總時(shí)長(zhǎng)為29.0 h,比采用2CNN-BiLSTM模型節(jié)省了10.0 h。通過訓(xùn)練過程中的平均消耗時(shí)間可以發(fā)現(xiàn),分別采用2CNN-BiLSTM模型和2CNN-BiGRU模型進(jìn)行訓(xùn)練時(shí),預(yù)訓(xùn)練中Train的平均時(shí)間從12.0 s減少為11.0 s,Valid平均時(shí)間相同;微調(diào)訓(xùn)練中Train的平均時(shí)間從56.5 s減少為43.0 s,Valid平均時(shí)間從1.10 s減少為0.80 s,經(jīng)過10-folds后訓(xùn)練總時(shí)長(zhǎng)明顯減少。綜上可見,2CNN-BiGRU模型在訓(xùn)練過程中能夠減少計(jì)算復(fù)雜度,縮短訓(xùn)練時(shí)長(zhǎng)。
2個(gè)模型在數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ中的睡眠預(yù)測(cè)結(jié)果對(duì)比如表4所示。
表4 2個(gè)模型的預(yù)測(cè)結(jié)果對(duì)比表
由表4可知,分別采用2CNN-BiLSTM模型和2CNN-BiGRU模型在數(shù)據(jù)集Ⅰ(Fpz-cz)進(jìn)行的預(yù)測(cè)時(shí),OverAcc從81.4%提高為82.2%,上升了0.8個(gè)百分點(diǎn);MF1從76.3%提高為76.6%,上升了0.3個(gè)百分點(diǎn);к從0.75提高為0.76,上升了0.01。在數(shù)據(jù)集Ⅰ(Pz-oz)中,分別采用2CNN-BiLSTM模型和2CNN-BiGRU模型預(yù)測(cè)的結(jié)果顯示,OverAcc保持80.2%不變;MF1從72.8%下降為72.1%,降低了0.7個(gè)百分點(diǎn);к保持0.73不變。
分別采用2個(gè)模型在數(shù)據(jù)集Ⅱ(Fpz-cz)進(jìn)行預(yù)測(cè)時(shí),OverAcc從79.4%提高為79.6%,上升了0.2個(gè)百分點(diǎn);MF1從73.6%下降為73.4%,降低了0.2個(gè)百分點(diǎn);к從0.72提高為0.73,上升了0.01。綜上所述,2CNN-BiGRU模型比2CNN-BiLSTM模型在整體分期準(zhǔn)確率上要高。
為探討2個(gè)模型在相同數(shù)據(jù)集中預(yù)測(cè)準(zhǔn)確性差異在交叉驗(yàn)證中的具體體現(xiàn),本文展示了2個(gè)模型在數(shù)據(jù)集Ⅰ(Fpz-cz)20次交叉驗(yàn)證的準(zhǔn)確率關(guān)系fold-Acc,如圖4所示,圖中橫軸為交叉驗(yàn)證次數(shù),用fold表示,縱軸為預(yù)測(cè)準(zhǔn)確率Acc。
圖4 2個(gè)模型20次交叉驗(yàn)證準(zhǔn)確率變化規(guī)律
由圖4可知,采用2CNN-BiGRU模型的20次交叉驗(yàn)證中,共有17次預(yù)測(cè)準(zhǔn)確率Acc在0.70以上,有13次比2CNN-BiLSTM模型高,在fold17時(shí)高出0.037,2個(gè)模型的預(yù)測(cè)準(zhǔn)確率Acc有3次基本相同,而在第5、8、10、12個(gè)fold時(shí),交叉驗(yàn)證的Acc比2CNN-BiLSTM模型稍低。2個(gè)模型均在fold11出現(xiàn)了最低不到0.60的預(yù)測(cè)準(zhǔn)確率。因此,2CNN-BiGRU模型比2CNN-BiLSTM模型在睡眠分期的整體準(zhǔn)確率上要高。
2CNN-BiGRU與2CNN-BiLSTM模型的對(duì)比實(shí)驗(yàn)表明,2CNN-BiGRU模型訓(xùn)練所耗費(fèi)時(shí)間更短、分期準(zhǔn)確率更高。
3CNN-BiGRU模型由綜合特征學(xué)習(xí)模塊3CNN和序列殘差學(xué)習(xí)模塊構(gòu)成。數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ的數(shù)據(jù)經(jīng)帶通濾波和SMOTE算法類平衡后輸入到3CNN-BiGRU模型中進(jìn)行訓(xùn)練和預(yù)測(cè)。將數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ的數(shù)據(jù)經(jīng)過采樣類平衡處理后輸入到2CNN-BiLSTM模型進(jìn)行訓(xùn)練和預(yù)測(cè),記錄2個(gè)模型下的實(shí)驗(yàn)結(jié)果并分析。
2CNN-BiLSTM模型和3CNN-BiGRU模型在數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ中的訓(xùn)練時(shí)間對(duì)比結(jié)果如表5所示。
由表5可知,因?yàn)閿?shù)據(jù)集Ⅰ中2個(gè)通道(Fpz-cz、Pz-oz)中的epoch數(shù)量相同,在經(jīng)過20次交叉驗(yàn)證后,2CNN-BiLSTM模型訓(xùn)練所需總時(shí)長(zhǎng)均為75.0 h,而3CNN-BiGRU模型訓(xùn)練所需總時(shí)長(zhǎng)均為56.0 h,比采用2CNN-BiLSTM模型節(jié)省了19.0 h。由訓(xùn)練過程每個(gè)epoch平均消耗的時(shí)間數(shù)據(jù)可知,分別采用2CNN-BiLSTM模型和3CNN-BiGRU模型進(jìn)行訓(xùn)練時(shí),預(yù)訓(xùn)練中Train的平均時(shí)間由12.0 s減少到11.0 s,Valid平均時(shí)間相同;微調(diào)訓(xùn)練中Train的平均時(shí)間從57.0 s減少到41.0 s,Valid平均時(shí)間從1.05 s減少到0.85 s,因此經(jīng)過20-folds后所需總時(shí)長(zhǎng)明顯減少。
表5 2個(gè)模型訓(xùn)練消耗時(shí)間對(duì)比表
在數(shù)據(jù)集Ⅱ的Fpz-cz通道中,經(jīng)過10次交叉驗(yàn)證后,2CNN-BiLSTM模型訓(xùn)練所需總時(shí)長(zhǎng)為39.0 h,而3CNN-BiGRU模型訓(xùn)練所需總時(shí)長(zhǎng)為28.5 h,比采用2CNN-BiLSTM模型節(jié)省了10.5 h。通過訓(xùn)練過程中的平均消耗時(shí)間可以發(fā)現(xiàn),分別采用2CNN-BiLSTM模型和3CNN-BiGRU模型進(jìn)行訓(xùn)練時(shí),預(yù)訓(xùn)練中Train的平均時(shí)間從12.0 s減少為11.0 s,Valid平均時(shí)間相同;微調(diào)訓(xùn)練中Train的平均時(shí)間從56.5 s減少為41.0 s,Valid平均時(shí)間從1.10 s減少為0.80 s,因此經(jīng)過10-folds后訓(xùn)練總時(shí)長(zhǎng)明顯減少。
2個(gè)模型在2個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,3CNN-BiGRU模型比2CNN-BiLSTM模型訓(xùn)練所消耗時(shí)間少。
2個(gè)模型在數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ中的睡眠預(yù)測(cè)結(jié)果對(duì)比如表6所示。
表6 2個(gè)模型的預(yù)測(cè)結(jié)果對(duì)比表
由表6可知,分別采用2CNN-BiLSTM模型和3CNN-BiGRU模型在數(shù)據(jù)集Ⅰ(Fpz-cz)進(jìn)行的預(yù)測(cè)時(shí),OverAcc從81.4%提高為83.5%,上升了2.1個(gè)百分點(diǎn);MF1從76.3%提高為77.3%,上升了1.0個(gè)百分點(diǎn);к從0.75提高為0.77,上升了0.02。在數(shù)據(jù)集Ⅰ(Pz-oz)中,分別采用2CNN-BiLSTM模型和3CNN-BiGRU模型預(yù)測(cè)的結(jié)果顯示,OverAcc從80.2%提高為81.3%,上升了1.1個(gè)百分點(diǎn);MF1從72.8%提高為73.1%,上升了0.3個(gè)百分點(diǎn);к從0.73提高為0.74,上升了0.01。
分別采用2CNN-BiLSTM模型和3CNN-BiGRU模型在數(shù)據(jù)集Ⅱ(Fpz-cz)進(jìn)行預(yù)測(cè)時(shí),OverAcc從79.4%提高為81.1%,上升了0.7個(gè)百分點(diǎn);MF1從73.6%下降為73.5%,降低了0.1個(gè)百分點(diǎn);к從0.72提高為0.74,上升了0.02。綜上所述,3CNN-BiGRU模型比2CNN-BiLSTM模型在整體分期準(zhǔn)確率上要高。
為探討2個(gè)模型在相同數(shù)據(jù)集中預(yù)測(cè)準(zhǔn)確性差異在交叉驗(yàn)證中的具體體現(xiàn),本文展示了2CNN-BiLSTM模型和3CNN-BiGRU模型在數(shù)據(jù)集Ⅰ(Fpz-cz)20次交叉驗(yàn)證的準(zhǔn)確率關(guān)系fold-Acc,如圖5所示,圖中橫軸為交叉驗(yàn)證次數(shù),用fold表示,縱軸為準(zhǔn)確率Acc。
圖5 2個(gè)模型20次交叉驗(yàn)證fold-Acc變化規(guī)律
由圖5可知,3CNN-BiGRU模型在20次交叉驗(yàn)證中,其準(zhǔn)確率Acc均在0.70以上,其中有15次高過2CNN-BiLSTM模型,最高在第8次高出了0.17,2個(gè)模型有1次交叉驗(yàn)證的Acc基本相同,而在第4、5、9、13次fold時(shí),交叉驗(yàn)證的Acc比2CNN-BiLSTM模型稍低;2CNN-BiLSTM模型的20次交叉驗(yàn)證中,有3次的Acc在0.70以下,其中fold11最低,為0.58左右。20次交叉驗(yàn)證的結(jié)果顯示3CNN-BiGRU模型比2CNN-BiLSTM模型在睡眠分期整體準(zhǔn)確率上要高。
為進(jìn)一步探討2個(gè)模型在相同數(shù)據(jù)集中預(yù)測(cè)準(zhǔn)確性差異的原因,展示了2個(gè)模型在數(shù)據(jù)集Ⅰ(Fpz-cz)各個(gè)睡眠階段預(yù)測(cè)結(jié)果對(duì)應(yīng)的混淆矩陣,如圖6所示。
由圖6(a)和圖6(b)的混淆矩陣可知,2CNN-BiLSTM模型在W期、N1期、N2期、N3期和REM期的預(yù)測(cè)準(zhǔn)確率Acc分別為0.85、0.47、0.80、0.90和0.87;3CNN-BiGRU模型在上述各睡眠階段的預(yù)測(cè)準(zhǔn)確率Acc分別為0.89、0.36、0.85、0.90和0.94。2個(gè)模型在N3期的預(yù)測(cè)準(zhǔn)確率均為0.90,而3CNN-BiGRU模型比2CNN-BiLSTM模型在睡眠W期、N2期和REM期的Acc要高。究其原因,發(fā)現(xiàn)采用3CNN-BiGRU模型進(jìn)行預(yù)測(cè)時(shí),主要是減少了將W期錯(cuò)分為N1期的概率,將N2期錯(cuò)分為W期、N1期和N3期的概率以及將REM期錯(cuò)分為N1期和N2期的概率,從而從整體上取得了高于2CNN-BiLSTM模型的準(zhǔn)確率。3CNN-BiGRU模型將N1期錯(cuò)分為W期和REM期的概率較高,表現(xiàn)出比2CNN-BiLSTM模型預(yù)測(cè)準(zhǔn)確率低0.11。
(a) 2CNN-BiLSTM
由此可見,采用3CNN-BiGRU模型并結(jié)合帶通濾波、SMOTE算法對(duì)于如睡眠W期、N2期、N3期和REM期這類epoch數(shù)量較多的睡眠階段能更準(zhǔn)確地提取其睡眠特征并充分學(xué)習(xí)階段之間的時(shí)間信息,取得較好的分期準(zhǔn)確率。而N1期是W期和N2期的過渡階段,經(jīng)歷時(shí)間最短,由表2可知,N1期epoch數(shù)量最少,并且N1期的特征與REM期相似,采用3CNN-BiGRU模型進(jìn)行睡眠分期時(shí),模型對(duì)N1期的特征提取不夠,時(shí)間信息學(xué)習(xí)不足,導(dǎo)致N1期的預(yù)測(cè)準(zhǔn)確率較低。
3CNN-BiGRU模型與2CNN-BiLSTM模型的對(duì)比實(shí)驗(yàn)結(jié)果表明,3CNN-BiGRU模型訓(xùn)練消耗時(shí)間短、分期準(zhǔn)確率高,尤其對(duì)W期、N2期、N3期和REM期的睡眠分期準(zhǔn)確率有明顯提升。
綜上2CNN-BiLSTM、2CNN-BiGRU和3CNN-BiGRU這3個(gè)模型在數(shù)據(jù)集Ⅰ和數(shù)據(jù)集Ⅱ中的2組對(duì)比實(shí)驗(yàn)結(jié)果表明,3CNN-BiGRU模型訓(xùn)練所消耗的時(shí)間最少,睡眠分期整體準(zhǔn)確率最好,特別是在W期、N2期、N3期和REM期的分期效果最好。在數(shù)據(jù)集Ⅰ(Fpz-cz)進(jìn)行的20次交叉驗(yàn)證中均在fold11出現(xiàn)了最低準(zhǔn)確率,但是3CNN-BiGRU模型最低為0.70,也高過其它2個(gè)模型的0.58和0.60。
為了提升腦電信號(hào)睡眠分期模型訓(xùn)練效率和分期準(zhǔn)確率,本文在利用CNN提取睡眠特征的同時(shí)引入BiGRU模塊以縮短模型訓(xùn)練時(shí)間。本文提出的3CNN-BiGRU模型與2CNN-BiLSTM模型、2CNN-BiGRU模型的睡眠分期實(shí)驗(yàn)結(jié)果對(duì)比表明,3CNN-BiGRU模型在所耗費(fèi)訓(xùn)練時(shí)間最短的情況下獲得了最高的睡眠分期準(zhǔn)確率。下一步工作將重點(diǎn)關(guān)注如何提升N1期分類準(zhǔn)確率和數(shù)據(jù)集I(Fpz-cz)中fold11的準(zhǔn)確率。