湯云琪,郭濱,李可欣
(長春理工大學(xué) 電子信息工程學(xué)院,長春 130022)
近年來,癲癇疾病已經(jīng)成為了人們乃至醫(yī)學(xué)界困擾的難治性疾?。?-3],它的突發(fā)性與反復(fù)性不僅對人的生命帶來了危險,也對生活造成極大的負(fù)擔(dān)。癲癇發(fā)作的臨床表現(xiàn)復(fù)雜且多樣性,可表現(xiàn)為發(fā)作性運動、感覺、自主神經(jīng)、意識及精神障礙等,所以如果能夠通過采取一些措施來預(yù)測癲癇的發(fā)作是非常有必要的。
腦電信號(EEG)是人類腦神經(jīng)細(xì)胞的電生理活動在大腦皮層的一種總體信息反映[4]。在臨床醫(yī)學(xué)的研究方面,人們可以通過對患者進行不同的刺激或者外力幫助下觀察腦電信號的變化,達到對癲癇疾病的有效預(yù)測和預(yù)防[5]。2018 年,韓凌[6]利用多變量相位同步參數(shù)、Hil?bert邊緣譜和Hilbert加權(quán)頻率組成的三維特征向量作為空間頻率特征值,并將其作為支持向量機的輸入,實現(xiàn)了80%的靈敏度的癲癇發(fā)作預(yù)測。2018年,劉偉楠[7]先對睡眠的腦電信號構(gòu)建特征向量,再利用支持向量機(SVM)實現(xiàn)預(yù)測分類,靈敏度達100%。誤報率達2.11%。
本文提出一種基于改進的LSTM網(wǎng)絡(luò)模型的癲癇預(yù)測算法,采用小波變換對經(jīng)過預(yù)處理的腦電信號(EEG)提取特征信息作為LSTM網(wǎng)絡(luò)的輸入向量,將電子搜索算法和BPTT算法結(jié)合來調(diào)整網(wǎng)絡(luò)訓(xùn)練權(quán)重系數(shù),利用電子搜索算法的收斂性與快速性提高網(wǎng)絡(luò)的性能,從而實現(xiàn)癲癇發(fā)作的準(zhǔn)確預(yù)測。
腦電信號可以更加全面的反映腦神經(jīng)的狀態(tài)和運動趨勢,在得到一段腦電信號后,首先需要將腦電信號中所包含的Delta波、Theta波、Alpha波、Beta波以及Gamma波完整提取出來,這5個波的頻率區(qū)間如表1所示。
表1 腦電信號的頻率分布
本文選擇小波變換[8-9]作為腦電信號特征提取的方法,通過小波變換處理,可以將腦電信號分為 D1、D2、D3、D4、D5、D6、D7、D8共 8個頻段。而腦電信號的頻率分布大部分在4~ 32 Hz,所以本文選擇D4、D5、D6波段作為特征提取的依據(jù)。
長短時記憶網(wǎng)絡(luò)[10-11](LSTM)是在循環(huán)網(wǎng)絡(luò)(RNN)的基礎(chǔ)上進行了記憶時間的改進,從而解決RNN網(wǎng)絡(luò)因梯度爆發(fā)和消失的問題,達到網(wǎng)絡(luò)訓(xùn)練模型的長期依賴關(guān)系。LSTM整體網(wǎng)絡(luò)框架相較于RNN差異不大,具有相同的重復(fù)的神經(jīng)網(wǎng)絡(luò)模塊。RNN生物核心主要是隱藏層的設(shè)計,圖1顯示的就是展開的循環(huán)網(wǎng)絡(luò)。
圖1 展開的循環(huán)神經(jīng)網(wǎng)絡(luò)
將循環(huán)神經(jīng)網(wǎng)絡(luò)展開后,xt和At-1作為輸入向量具有多個變量,ht和At作為輸出向量。在標(biāo)準(zhǔn)的RNN中,其重復(fù)的模塊只有一個簡單的結(jié)構(gòu),例如tanh層,因此很容易發(fā)生梯度消失和爆炸。LSTM在RNN的基礎(chǔ)上進行了隱層網(wǎng)絡(luò)結(jié)構(gòu)上的改進,在模塊中添加門操作,如圖2所示。
圖2 LSTM的核心交互層
LSTM在循環(huán)神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上添加了遺忘門、輸入門、輸出門和記憶單元。
式中,it表示輸入門;ft表示遺忘門;ot表示輸出門;C?t表示輸入的信息;Ct表示當(dāng)前網(wǎng)絡(luò)所表示的信息;ht表示當(dāng)前時刻輸出的信息;σ是sigmoid函數(shù);b為偏置項。遺忘門決定丟棄哪部分信息,輸入門確定哪些新的信息可以存儲,輸出門用來控制信息的過濾情況。三個門操作是相互獨立且同步傳遞工作的,隱藏狀態(tài)信息ht-1和細(xì)胞狀態(tài)信息ct-1由前一時刻xt-1傳遞給xt時刻,先通過遺忘門操作篩選保留,如公式(2),再通過輸入門操作將前一層隱藏狀態(tài)的信息ht-1和當(dāng)前輸入的信息傳遞到σ函數(shù)中。將值調(diào)整到0-1之間來決定要更新哪些信息,見公式(1)。最后,將前一個隱藏狀態(tài)和當(dāng)前輸入傳遞到σ函數(shù)中,然后將新得到的細(xì)胞狀態(tài)傳遞給tanh函數(shù),最后將tanh的輸出與σ的輸出相乘,以確定隱藏狀態(tài)應(yīng)攜帶的信息,見公式(3)-(6)。再將隱藏狀態(tài)作為當(dāng)前細(xì)胞的輸出,把新的細(xì)胞狀態(tài)和新的隱藏狀態(tài)傳遞到下一個時刻。
電子搜索算法(Electronic Search Algorithm)[12]是基于Bohr模型提出的一種新的優(yōu)化算法,由隨機分布的各種原子構(gòu)成的分子空間作為可行解的空間域,電子通過圓周運動發(fā)生軌道躍遷,以達到更高的能級,類似于目標(biāo)函數(shù)的最優(yōu)解,總共分為三個階段:
1.3.1 第一階段--原子擴撒
可行解隨機分布在搜索空間內(nèi),每一個原子都由原子核及核外電子構(gòu)成代表一個初始解,電子通過吸收或釋放特定的能量發(fā)生軌道躍遷[13]。
1.3.2 第二階段--電子軌道躍遷
每個原子核周圍的電子開始移動到能級更高的軌道上,這種轉(zhuǎn)變可以表示為:
其中,ei為電子;posi為第i個原子核當(dāng)前位置;n代表電子可以被定位的能量級;r是由Dk確定的軌道半徑。在經(jīng)過軌道躍遷后,每個原子核周圍能量級最高的電子成為最佳電子(ebest),就是最佳適應(yīng)度函數(shù)值。
1.3.3 第三階段--原子核遷移
根據(jù)Rydberg公式,通過計算兩個原子之間的能量差來確定原子核的新位置,具體公式如下:
其中,k是迭代次數(shù);Dk是原子核遷移的距離,是由當(dāng)前最佳原子核位置posbest,圍繞原子核最佳電子ebest,原子核當(dāng)前位置posk以及Rydberg能量常數(shù)系數(shù)Rek共同決定的,而遷移后的原子核新位置posnew受加速系數(shù)Ack的影響,通過公式(9)的計算,使原子朝著當(dāng)前全局最優(yōu)方向移動,其中初次迭代時的Ack和Rek的系數(shù)是隨機設(shè)置的,它們決定了位置變化的收斂速度,具體的原子軌道調(diào)節(jié)公式如下:
其中,n為原子個數(shù);Aci和Rei是原子核的算法系數(shù);原子核的適應(yīng)度函數(shù)值由f表示;Rebest和Acbest是posbest的算法系數(shù);Rek+1是Rydberg能量常數(shù);Ack+1是第k+1次迭代的加速系數(shù)。
1.3.4 收斂準(zhǔn)則
停止準(zhǔn)則即一旦可選解的迭代停止,則整個算法停止。一般的遺傳算法、粒子群算法等這類演化算法的停止準(zhǔn)則一般會選擇設(shè)置最大迭代次數(shù)或者采取一些其他的方案來找到最佳迭代次數(shù)這兩種方法來考慮算法的收斂性。本文采用設(shè)置最大迭代次數(shù)作為結(jié)束算法的條件,原子核根據(jù)公式(10)和公式(11)來更新參數(shù)Re和Ac,并重復(fù)原子擴散,電子軌道遷移以及原子核遷移這三個步驟,再進入下一次迭代過程,通過不斷的重復(fù),使得原子核逐漸找到全局最優(yōu)的位置,以達到算法的最大優(yōu)化,電子搜索算法的具體流程圖如圖3所示。
圖3 電子搜索算法流程圖
本文的腦電數(shù)據(jù)來自于德國弗萊堡醫(yī)學(xué)院腦電數(shù)據(jù)庫,由21組癲癇患者的腦電信號構(gòu)成。癲癇發(fā)作的時間不同,最短的是12秒,最長的達到了15分鐘,所有病人都是難治性癲癇疾病,對病人的癲癇信號數(shù)據(jù)進行整理,如表2所示。
表2 德國弗萊堡腦電數(shù)據(jù)庫患者腦電信號數(shù)據(jù)
通過小波變換[14-15]對腦電信號分解重構(gòu),可以獲得癲癇疾病在發(fā)作前和發(fā)作時不同的波段頻率和特征,以此來訓(xùn)練模型達到更好的分類預(yù)測效果。利用小波變換提取的Db4,Db5,Db6波段,將發(fā)作時異常的腦電信號區(qū)分出來作為特征標(biāo)記,更準(zhǔn)確的預(yù)測和判斷癲癇發(fā)作時期和發(fā)作間期的特點,并將其輸入LSTM網(wǎng)絡(luò),有效的訓(xùn)練模型。
本文提出的改進的LSTM模型,主要是對傳統(tǒng)的LSTM模型采用BPTT隨時間反向傳播算法和ESA電子搜索算法結(jié)合訓(xùn)練模型。BPTT算法計算并傳遞參數(shù)梯度誤差,ESA優(yōu)化算法負(fù)責(zé)更新LSTM網(wǎng)絡(luò)的權(quán)重系數(shù),如圖4所示。由ht確定ht-1的誤差,并對從門操作層傳播回來的梯度求和。ct-1由ct決定,而ct的誤差由兩部分決定,一部分是ht,一部分是ct+1,所以在計算ct反向傳播誤差的時候,需要傳入ht和ct+1,而ht在更新的時候需要加上ht+1,這樣就可以從t時刻向后計算任意時刻的梯度,再利用BPTT計算并傳遞參數(shù)梯度誤差,準(zhǔn)確判斷網(wǎng)絡(luò)訓(xùn)練情況,ESA算法優(yōu)化算法更新網(wǎng)絡(luò)權(quán)重,加快和精確網(wǎng)絡(luò)訓(xùn)練。
圖4 ESA+BPTT優(yōu)化網(wǎng)絡(luò)
將D4、D5、D6小波變換提取出來的特征作為LSTM網(wǎng)絡(luò)的輸入,普通網(wǎng)絡(luò)層對輸入的小波特征進行分解學(xué)習(xí),再傳遞給LSTM核心隱藏層,共有5層LSTM隱藏層,每層設(shè)置10個隱藏單元對輸入進行學(xué)習(xí)和記憶,最后通過全連接層對隱藏層信息進行分類預(yù)測,整個實驗流程如圖5所示。
圖5 實驗流程
本文利用21組病人中的10組病人的發(fā)作前期和發(fā)作間期的腦電信號通過小波變換進行特征提取后訓(xùn)練改進的LSTM網(wǎng)絡(luò),然后再利用剩余的11組病人的腦電信號進行相應(yīng)的小波變換,并利用訓(xùn)練好的改進的LSTM模型,LSTM模型以及SVM模型分別進行癲癇發(fā)作的分類預(yù)測。
對于改進的LSTM網(wǎng)絡(luò),本文選用了電子搜索算法對模型進行優(yōu)化,實驗中,將原子數(shù)設(shè)置為30,并且最大迭代次數(shù)設(shè)置為200次,圖6(a)和圖6(b)分別顯示的是三種模型對預(yù)測精確度和敏感度的統(tǒng)計比較分析圖。
圖6 三種模型的預(yù)測準(zhǔn)確度和敏感度
如表3總結(jié)所示,改進的LSTM網(wǎng)絡(luò)的預(yù)測分類平均精確度達93.7%,平均敏感度為93.5%;傳統(tǒng)LSTM網(wǎng)絡(luò)的平均精確度為91%,平均敏感度為89.7%;而SVM網(wǎng)絡(luò)的平均精確度為88.1%,平均敏感度為85.4%??梢钥闯?,改進的LSTM網(wǎng)絡(luò)相較于傳統(tǒng)的LSTM網(wǎng)絡(luò)和SVM網(wǎng)絡(luò)在精確度與敏感度方面都有所提高。
表3 模型比較
SVM模型只能對某一小段時間內(nèi)小波變化提取的特征進行預(yù)測分類,放大了信息量的間距,所以分類誤差造成的結(jié)果較大,而LSTM模型則能夠較好的分析腦電信息間的關(guān)系,得到更為準(zhǔn)確的預(yù)測分類結(jié)果,所以經(jīng)過電子搜索算法優(yōu)化過的LSTM模型的精確度更高。
本文提出一種基于LSTM網(wǎng)絡(luò)模型改進的ESA-LSTM癲癇發(fā)作預(yù)測分類方法,先對腦電信號進行預(yù)處理,再利用小波變換提出EEG特征作為網(wǎng)絡(luò)輸入?yún)?shù),并在傳統(tǒng)的LSTM網(wǎng)絡(luò)基礎(chǔ)上,通過合理調(diào)節(jié)LSTM隱藏層數(shù)目,將ESA算法與BPTT算法結(jié)合調(diào)節(jié)網(wǎng)絡(luò)訓(xùn)練權(quán)重參數(shù),對輸入的癲癇病人腦電信號可以實現(xiàn)準(zhǔn)確的分類預(yù)測,經(jīng)實驗驗證,該方法可以實現(xiàn)癲癇疾病的93.7%的預(yù)測平均精確度與93.5%的平均敏感度,利用電子搜索算法收斂速度快的特點,可以更快速有效的適用于癲癇預(yù)測分類應(yīng)用方面。