王丹丹,夏斌
(上海海事大學(xué), 上海 201306)
摘要:隨著模式識別技術(shù)的發(fā)展與應(yīng)用,睡眠自動分期方法正在逐漸取代手動分期研究。文章使用深度置信網(wǎng)絡(luò)(Deep Belief Network, DBN)和長短時記憶遞歸神經(jīng)網(wǎng)絡(luò)(Long ShortTerm Memory Recurrent Neural Network, LSTMRNN)這兩種方法對眼電(Electrooculogram, EOG)通道的數(shù)據(jù)進(jìn)行睡眠自動分期。LSTMRNN方法(平均準(zhǔn)確率83.4%)相對DBN(平均準(zhǔn)確率75.6%)在基于眼電信號的睡眠分期問題上取得了更好的效果。
關(guān)鍵詞:DBN;LSTM-RNN;睡眠自動分期;EOG
0引言
睡眠與人的健康息息相關(guān)。充足的睡眠可以消除疲勞,保證日常生活的正常進(jìn)行,但是由于生活節(jié)奏的加快和壓力的增大,現(xiàn)代人通常都存在不同程度的睡眠障礙。有調(diào)查顯示,成年人存在睡眠障礙的比例高達(dá)30%。睡眠障礙會導(dǎo)致大腦功能紊亂,對身體造成多種危害,嚴(yán)重影響身心健康。因此對睡眠狀況進(jìn)行研究,了解睡眠質(zhì)量,可以及早地診斷和治療隱藏疾病。睡眠分期是將睡眠過程分為不同的狀態(tài)。根據(jù)參考文獻(xiàn)[1],睡眠過程分為三種狀態(tài):清醒狀態(tài)(Awake)、非眼球快速運(yùn)動睡眠狀態(tài)(NonRapid Eye Movements, NREMS)和眼球快速運(yùn)動睡眠狀態(tài)(Rapid Eye Movements, REMS)。其中NREMS細(xì)分為四個狀態(tài):S1~S4,分別代表淺度睡眠、輕度睡眠、中度睡眠和深度睡眠。
睡眠分期的方法主要有兩類:一類是基于R&K準(zhǔn)則,需要經(jīng)驗(yàn)豐富的專家對數(shù)據(jù)進(jìn)行目測分類,這種方法不僅耗時費(fèi)力,而且易受專家主觀因素影響。另一類是睡眠的自動分期方法,其用模式識別算法自動對數(shù)據(jù)提取特征和進(jìn)行分類。目前使用較多的有支持向量機(jī)(Support Vector Machine, SVM)、隨機(jī)森林(Random Forest)、人工神經(jīng)網(wǎng)絡(luò)等。
由于深度學(xué)習(xí)可以自動提取特征,通過組合低層特征形成更加抽象的高層特征[2],因此本文利用兩種深度學(xué)習(xí)網(wǎng)絡(luò)分別對EOG進(jìn)行分期研究,并對分期結(jié)果進(jìn)行比較。
1方法概述
1.1深度置信網(wǎng)絡(luò)
深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)是Hinton在2006年提出的[3]。它由一系列受限玻爾茲曼機(jī)(Restricted Boltzmann Machines, RBM)組成。DBN網(wǎng)絡(luò)的核心思想是將RBM堆疊在一起,訓(xùn)練出權(quán)值,將這個權(quán)值作為神經(jīng)網(wǎng)絡(luò)權(quán)值的初始值,再用經(jīng)典的梯度法去訓(xùn)練網(wǎng)絡(luò)。本文中用到的DBN結(jié)構(gòu)如圖1所示。DBN網(wǎng)絡(luò)共有5層:輸入層、3個隱層、標(biāo)簽層。隱層的單元個數(shù)分別為500、200、100。DBN的訓(xùn)練過程包括三步:(1) RBM的訓(xùn)練,需將數(shù)據(jù)劃分為小批量的數(shù)據(jù),HINTON G E在參考文獻(xiàn)[4]中提出小批量數(shù)據(jù)的大小minibatche設(shè)置為10~100,本文中設(shè)置為60,訓(xùn)練迭代次數(shù)epoch設(shè)為10。 (2)將RBM訓(xùn)練得到的權(quán)重作為DBN網(wǎng)絡(luò)的初始值進(jìn)行訓(xùn)練。設(shè)置minibatche為1 000,epoch為30。(3)進(jìn)行有監(jiān)督微調(diào),學(xué)習(xí)率設(shè)置為0.03。
1.2長短時記憶遞歸神經(jīng)網(wǎng)絡(luò)
將每個受試的EOG數(shù)據(jù)看做一個序列,由于序列節(jié)點(diǎn)之間存在時序相關(guān)性,因此預(yù)測模型要具有記憶功能,能夠包含序列的遠(yuǎn)距離信息。而遞歸神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)恰好滿足這一要求。RNN含有從單元的輸出到單元的輸入的連接(即含有遞歸連接),因此可以利用其內(nèi)部的記憶來處理具有時序的輸入序列。然而,傳統(tǒng)的RNN存在梯度消失和梯度激增的問題,導(dǎo)致遠(yuǎn)距離的信息不能有效地被利用。為了解決這一問題,HOCHREITER S和SCHMIDHUBER J在1997年提出了一種新的RNN網(wǎng)絡(luò)——長短時記憶遞歸神經(jīng)網(wǎng)絡(luò)(LSTMRNN),它使用記憶模塊取代傳統(tǒng)RNN的隱層單元,通過記憶細(xì)胞內(nèi)部狀態(tài)的自反饋和輸入輸出門對誤差的截?cái)?,解決了梯度消失和激增的問題。LSTMRNN可以學(xué)習(xí)長度超過1 000的序列[5]。本文中使用的是具有忘記門的記憶模塊,結(jié)構(gòu)如圖2所示。
LSTM層的權(quán)重的計(jì)算主要包括兩個過程:前向傳播和后向傳播。
Xt表示t時刻的輸入向量,W表示輸入權(quán)重矩陣,R表示遞歸權(quán)重矩陣,b表示偏置單元。門的激活函數(shù)σ通常指的是sigmoid函數(shù)。記憶細(xì)胞的輸入輸出激活函數(shù)(g和h)通常是tanh函數(shù)。E表示損失函數(shù),兩個向量之間的點(diǎn)乘用“·”表示。
前向傳播就是依次按照順序計(jì)算模塊內(nèi)部各個組成部分的輸入輸出直至得到記憶模塊的輸出。
模塊輸入:
zt=g(WzXt+Rzyt-1+bz)(1)
輸入門輸出:
it=σ(WiXt+Riyt-1+bi)(2)
忘記門輸出:
ft=σ(WfXt+Rfyt-1+bf)(3)
記憶細(xì)胞輸出:
ct=zt·it+ct-1·ft(4)
輸出門輸出:
ot=σ(WoXt+Royt-1+bo)(5)
模塊輸出:
yt=h(ct)·ot(6)
后向過程就是從最后一個時間將積累的殘差E傳遞回來。在此過程中采用的是BPTT[6](Back Propagation Through Time)算法。
在本文中,將每30 s的數(shù)據(jù)作為一個時間步長進(jìn)行輸入,輸出長度為6的向量,因此使用到LSTMRNN的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,其中TimeDistributedDense層是一個基于時間維度的全連接層。學(xué)習(xí)率和網(wǎng)絡(luò)單元個數(shù)是圖3LSTMRNN 網(wǎng)絡(luò)模型網(wǎng)絡(luò)的最重要的參數(shù),而且各參數(shù)之間的調(diào)整可以看做是獨(dú)立的[7],因此可以獨(dú)立地對各個參數(shù)進(jìn)行調(diào)優(yōu)。最終參數(shù)的設(shè)置為第一層全連接層單元數(shù)為500,兩層LSTM的單元個數(shù)為200、100,最后一層全連接層與第一層全連接層單元相同但是單元數(shù)設(shè)為6,batchsize為1,迭代次數(shù)epoch為128,學(xué)習(xí)率為0.003。
2實(shí)驗(yàn)數(shù)據(jù)
本文用到的數(shù)據(jù)是圖賓根大學(xué)采集到的9名受試者晚上的睡眠數(shù)據(jù),他們的平均年齡為23.5歲,其中包括3名女性。在實(shí)驗(yàn)前的6周,要求受試者們保持規(guī)律的作息時間并禁止喝咖啡。在本項(xiàng)研究中使用EOG通道,信號的采樣率是500 Hz,專家將每30 s的數(shù)據(jù)對應(yīng)于一個標(biāo)簽。由于本文對數(shù)據(jù)做6分類(AWAKE、S1、S2、S3、S4、REM)分析,因此只保留此6個狀態(tài)的數(shù)據(jù)。首先對數(shù)據(jù)進(jìn)行預(yù)處理操作:(1)去除兩個不同狀態(tài)轉(zhuǎn)換時對應(yīng)的數(shù)據(jù),得到處理后各子類數(shù)據(jù)比例如表1所示。(2)將數(shù)據(jù)進(jìn)行快速傅里葉變換,取0.5~35 Hz之間的頻域數(shù)據(jù)。(3)進(jìn)行歸一化后得到用于分期的數(shù)據(jù)。表1處理后睡眠數(shù)據(jù)各子類比例狀態(tài)Awake S1S2S3S4REM百分比/%5.600.8154.256.2011.9821.16
3實(shí)驗(yàn)結(jié)果
本文中使用留一驗(yàn)證的方法,圖4展示了每個受試者DBN和LSTMRNN的分類結(jié)果。表2和表3展示的是兩種方法對應(yīng)的混淆矩陣。通過分析結(jié)果可以得到以下結(jié)論:(1)EOG數(shù)據(jù)可以用作睡眠分期研究。(2)DBN和LSTMRNN在睡眠分期研究中都取得了較好的結(jié)果,但是LSTMRNN無論是在每個受試者的準(zhǔn)確率還是在每個狀態(tài)的分類準(zhǔn)確率上都要優(yōu)于DBN。(3)在混淆矩陣中,S2、S4和REM的準(zhǔn)確率比其他狀態(tài)的準(zhǔn)確率高,這與處于S2、S4、REM狀態(tài)的數(shù)據(jù)在總數(shù)據(jù)中占得比例較高和各個狀態(tài)具有相似特征有關(guān)。
4結(jié)論
本文通過基于EOG通道的睡眠分期研究可以得出,DBN和LSTMRNN作為睡眠自動分期方法,可以很好地自動提取特征并進(jìn)行分類,在處理時序序列的分類時,LSTMRNN可以更好地利用長距離信息對睡眠數(shù)據(jù)進(jìn)行分期,其分類效果優(yōu)于DBN。
參考文獻(xiàn)
?。?] RECHTSCHAFFEN A,KALES A. A manual of standardized terminology,techniques and scoring system for sleep stages of human subjects[M]. Los Angeles: Brain Information Service/Brain Research Institute,1977.
?。?] BENGIO Y,DELALLEAU O. On the expressive power of deep architectures[C].Proc of the 14th International Conference on Discovery Science. Berlin: SpringVerlag,2011:1836.
?。?] HINTON G E,OSIJDERO S,TEH Y W. A fast learning algorithm for deep belief nets[J]. Neural Computation,2006,18(7) :15271554.
?。?] HINTON G E. A practical guide to training restricted Boltzmann machines[J].Momentum,2010, 9(1):599619.
?。?] HOCHREITER S, SCHMIDHUBER J. Long shortterm memory[J].Neural Computation, 1997,9(8):17351780.
?。?] GRAVES A. Supervised sequence labelling with recurrent neural networks[M]. Berlin: Springer, 2012.
[7] GREFF K, SRIVASTAVA R K,KOUTNI'K J,et al. LSTM:a search space odyssey[J/OL]. arXiv preprint. (20150313)[20160301].http://arxiv.org/abs/1503.04069.