仝 航,楊 燕,江永全
西南交通大學(xué) 計(jì)算機(jī)與人工智能學(xué)院,成都611756
癲癇是第四大最常見的神經(jīng)疾病,具有慢性、復(fù)發(fā)性、非感染性等特點(diǎn),全世界有超過(guò)5 000 萬(wàn)的癲癇患者,其中25%的患者沒(méi)有得到有效的手術(shù)或藥物控制。由于癲癇發(fā)作的時(shí)間不可預(yù)測(cè),癲癇對(duì)患者的生活質(zhì)量造成了很大的影響。大腦活動(dòng)異常即大腦神經(jīng)細(xì)胞突然過(guò)度放電導(dǎo)致癲癇發(fā)作,致使患者出現(xiàn)不正常的行為或感覺(jué),有時(shí)甚至失去意識(shí),進(jìn)而導(dǎo)致其他健康問(wèn)題,甚至死亡。
腦電圖(electroencephalogram,EEG)是一種記錄大腦活動(dòng)的有效工具,已被廣泛用于分析和診斷癲癇、阿爾茨海默癥、注意力缺陷多動(dòng)障礙等疾病。作為監(jiān)測(cè)、檢測(cè)和診斷癲癇發(fā)作的常用方法之一,腦電圖通過(guò)放置在大腦不同位置的多個(gè)電極來(lái)測(cè)量腦電活動(dòng),記錄的信號(hào)通常包含多個(gè)通道。根據(jù)以往的工作,腦電圖信號(hào)的采集通常是將電極置于頭皮表面或短期植入顱內(nèi),分別稱為頭皮腦電圖和顱內(nèi)腦電圖。雖然顱內(nèi)腦電圖記錄提供了更好的信噪比,更好地定位于致癇區(qū)域,但是,顱內(nèi)電極的覆蓋范圍有限,可能會(huì)漏過(guò)覆蓋范圍以外的癇樣放電,對(duì)手術(shù)者要求較高。頭皮腦電圖是一個(gè)非侵入性的無(wú)創(chuàng)技術(shù),對(duì)于每天的患者監(jiān)測(cè)和發(fā)作警報(bào)生成,頭皮腦電圖記錄具有更高的適用性和易用性,因此,目前對(duì)癲癇發(fā)作檢測(cè)的研究大多傾向于利用頭皮腦電圖。
在癲癇發(fā)作檢測(cè)任務(wù)中,需要對(duì)腦電圖信號(hào)進(jìn)行徹底的分析,以判斷癲癇是否發(fā)作,這是一項(xiàng)依賴大量臨床經(jīng)驗(yàn)且耗時(shí)的工作。由于癲癇發(fā)作的頻率相對(duì)較低,面對(duì)長(zhǎng)期的腦電圖記錄,人類專家或?qū)I(yè)醫(yī)生通過(guò)視覺(jué)閱讀多通道腦電圖信號(hào)識(shí)別癲癇發(fā)作的特征模式耗時(shí)嚴(yán)重且效率低下。腦電圖癲癇發(fā)作的自動(dòng)檢測(cè)深受神經(jīng)信息學(xué)研究者和醫(yī)學(xué)界的關(guān)注,因此,迫切需要基于計(jì)算機(jī)的癲癇自動(dòng)檢測(cè)技術(shù),這也是節(jié)省時(shí)間和精力的關(guān)鍵方法。
近年來(lái),癲癇發(fā)作自動(dòng)檢測(cè)方面存在著大量的研究。一般來(lái)說(shuō),癲癇檢測(cè)過(guò)程分為特征提取和分類兩個(gè)階段。特征提取至關(guān)重要,因?yàn)樘崛〉哪X電特征模式將影響著分類器的性能。基于人工特征和機(jī)器學(xué)習(xí)分類器的技術(shù)研究很多。常見的人工特征提取方法有時(shí)頻分析[1]、非線性動(dòng)力學(xué)[2]、累積能量增量[3]、統(tǒng)計(jì)特征[4]等。這些人工特征提取的設(shè)計(jì)方法雖然各不相同,但通常涉及大量的專家知識(shí),以便從數(shù)據(jù)中獲得可解釋的表示。常見的機(jī)器學(xué)習(xí)分類器有決策樹、貝葉斯網(wǎng)絡(luò)、高斯混合模型、傳統(tǒng)神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)等。然而,特征提取依賴于有限的和預(yù)先細(xì)化的手工工程操作集。此外,不同患者的癲癇發(fā)作特征不同且可能隨著時(shí)間的推移而有所改變,提取這些特征所需的計(jì)算時(shí)間取決于過(guò)程的復(fù)雜性,因此,自動(dòng)從腦電數(shù)據(jù)中提取和學(xué)習(xí)特征信息是非常有必要的。
隨著深度學(xué)習(xí)在圖像分類、自然語(yǔ)言處理、時(shí)間序列預(yù)測(cè)等領(lǐng)域的廣泛應(yīng)用和深入推廣,越來(lái)越多的深度學(xué)習(xí)模型被提出。尤其是深度學(xué)習(xí)算法擁有可以從自然信號(hào)中學(xué)習(xí)高級(jí)表示的能力[5],因此,它在醫(yī)學(xué)領(lǐng)域和信號(hào)處理領(lǐng)域取得了較為突出的結(jié)果。在腦電圖癲癇檢測(cè)中,像卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)和堆疊自編碼器(stacked autoencoder,SAE)等深度學(xué)習(xí)模型可以直接從腦電數(shù)據(jù)中學(xué)習(xí)特征表示,進(jìn)而代替手工設(shè)計(jì)的特征提取方法,已被證明提取的特征更健壯,可以實(shí)現(xiàn)更好的性能檢測(cè)[6-7]。因此,本文將基于深度學(xué)習(xí)的癲癇發(fā)作檢測(cè)作為研究的主要任務(wù)。
EEG 信號(hào)本質(zhì)上是多維度、高度動(dòng)態(tài)、非線性的時(shí)間序列數(shù)據(jù),BiLSTM(bi-directional long short-term memory)網(wǎng)絡(luò)在提取不同狀態(tài)下大腦活動(dòng)的時(shí)間特征方面比CNN 有設(shè)計(jì)上的優(yōu)勢(shì),如在情緒識(shí)別[8]、運(yùn)動(dòng)想象分類[9]和睡眠分期[10]等方面。但由于信息在深層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中經(jīng)過(guò)許多層后會(huì)衰減,當(dāng)長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(long short-term memory,LSTM)面對(duì)超長(zhǎng)序列時(shí),反向傳播也會(huì)導(dǎo)致梯度消失問(wèn)題,會(huì)削弱模型的可靠性。而CNN 可以從輸入序列中提取位移不變的局部模式作為分類模型的特征,尤其是學(xué)習(xí)多元時(shí)間序列數(shù)據(jù)的特征,例如,用于動(dòng)作或活動(dòng)識(shí)別[11],可捕獲醫(yī)療保健數(shù)據(jù)的多元時(shí)間序列的隱藏模式[12],提取周期信息進(jìn)行多元時(shí)間序列預(yù)測(cè)[13]。
由于深度學(xué)習(xí)算法需要大量的腦電圖記錄數(shù)據(jù),缺乏開放的含標(biāo)記的腦電圖數(shù)據(jù)是一個(gè)限制因素。公開的波士頓兒童醫(yī)院收集的頭皮腦電圖數(shù)據(jù)庫(kù)CHB-MIT 是一個(gè)包含連續(xù)長(zhǎng)期頭皮腦電圖記錄的開放數(shù)據(jù)庫(kù),且由專家對(duì)癲癇發(fā)作期做了標(biāo)記,可用于癲癇檢測(cè)。在實(shí)踐中,不平衡的數(shù)據(jù)問(wèn)題可能會(huì)破壞深度學(xué)習(xí)方法的有效性,因?yàn)榘d癇發(fā)作事件的數(shù)量是有限的。另外,因?yàn)榘d癇發(fā)作的腦電圖特征在不同患者之間可能存在顯著差異,雖然大部分針對(duì)特定患者的分類器可以具有良好的性能,卻不能對(duì)其他新患者起作用。由于癲癇發(fā)作和癲癇不發(fā)作活動(dòng)因患者不同而具有特異性,跨多患者非特異性分類器的研究更有實(shí)際意義。文獻(xiàn)[14]提出了一種基于堆疊稀疏去噪自編碼器(stacked sparse denoising autoencoder,SSDA)的腦電通道選擇方法,考慮了多種信息共同確定關(guān)鍵信道特征。由于不相關(guān)的通道被過(guò)濾掉,這些方法顯著地減輕了噪聲影響。雖然他們的選擇策略取得了很好的效果,但實(shí)際上,不相關(guān)的通道會(huì)因設(shè)備不同、患者不同而有所改變。大多研究是利用領(lǐng)域知識(shí)從多通道腦電信號(hào)中選擇特定的通道進(jìn)行分析,而對(duì)多通道癲癇腦電信號(hào)的數(shù)據(jù)驅(qū)動(dòng)分析還沒(méi)有深入研究。此外,由于癲癇發(fā)作與一系列的腦電圖信號(hào)有關(guān),而不是與某一時(shí)刻的值有關(guān),大多數(shù)方法將每個(gè)時(shí)間戳隨機(jī)反饋給分類器,忽略了腦電數(shù)據(jù)之間的動(dòng)態(tài)相關(guān)性,這導(dǎo)致無(wú)法更好地識(shí)別時(shí)間信號(hào)模式,因此時(shí)間分析對(duì)于癲癇發(fā)作的檢測(cè)是關(guān)鍵且有必要的。
為了解決上述挑戰(zhàn),本文提出了一種廣義的癲癇預(yù)測(cè)方法,此方法將特征提取和分類階段結(jié)合到一個(gè)單獨(dú)的自動(dòng)化框架中,能夠直接處理原始腦電圖數(shù)據(jù)。本文的主要貢獻(xiàn)包括三方面:
(1)利用滑動(dòng)窗口將CHB-MIT 多通道腦電信號(hào)分割成固定時(shí)間長(zhǎng)度的片段,確保癲癇發(fā)作和非發(fā)作數(shù)據(jù)的平衡,以便進(jìn)一步研究和分析。
(2)提出了CABLNet(convolutional attention bidirectional long short-term memory network)深度學(xué)習(xí)網(wǎng)絡(luò)模型,使用CNN 提取腦電時(shí)間序列數(shù)據(jù)的時(shí)間短期模式和多通道之間的局部依賴關(guān)系,利用多頭自注意力機(jī)制捕獲特征表示的時(shí)間動(dòng)態(tài)相關(guān)性,使用雙向LSTM 充分利用上下文向量前后時(shí)刻信息,可在不依賴任何醫(yī)學(xué)專家知識(shí)的情況下,從多通道腦電信號(hào)中準(zhǔn)確檢測(cè)癲癇發(fā)作。
(3)在CHB-MIT 有噪聲腦電數(shù)據(jù)上的實(shí)驗(yàn)結(jié)果表明,本文提出的模型在捕獲癲癇發(fā)作模式上具有很好的魯棒性和穩(wěn)定性,能較好地克服不同患者癲癇發(fā)作的變化,用于跨多患者癲癇檢測(cè)。
癲癇自動(dòng)檢獲的研究已經(jīng)進(jìn)行了幾十年,提出的許多方法都取得了良好的性能。這些方法可以分為兩類:基于特征的方法和深度學(xué)習(xí)方法。
大多數(shù)基于特征的方法將專家手工制作的特征與分類器相結(jié)合,比較注重從背景模式中提取手工制作的特征,常見的特征包括時(shí)域方法[15]、頻域方法[16]、時(shí)頻域方法[17]和非線性方法[18]。分類器常使用傳統(tǒng)的機(jī)器學(xué)習(xí)方法,更注重研究開發(fā)患者特異性癲癇檢測(cè)方法。例如,文獻(xiàn)[19]提取了頻譜、空間、時(shí)間三類特征,提出了一種混合數(shù)據(jù)采樣和增強(qiáng)技術(shù)的算法,這種學(xué)習(xí)框架可以緩解類別不平衡問(wèn)題,在魯棒性和泛化方面具有強(qiáng)大能力,對(duì)CHB-MIT 數(shù)據(jù)集進(jìn)行患者特異性實(shí)驗(yàn),檢出準(zhǔn)確率達(dá)97%,每小時(shí)誤檢率為0.08,可以有效地用于自動(dòng)癲癇發(fā)作檢測(cè)問(wèn)題。文獻(xiàn)[17]提出了一種基于離散小波變換(discrete wavelet transform,DWT)的新型計(jì)算效率特征Sigmoid熵的癲癇自動(dòng)檢測(cè)模型。根據(jù)每個(gè)子帶的小波系數(shù)估計(jì)出Sigmoid 熵,并使用非線性支持向量機(jī)分類器進(jìn)行交叉驗(yàn)證,在UBonn 和CHB-MIT 兩個(gè)數(shù)據(jù)集的靈敏度分別達(dá)到100.00%和94.21%。文獻(xiàn)[20]認(rèn)為將部分定向相干性(partial directed coherence,PDC)分析作為特征提取機(jī)制應(yīng)用于癲癇發(fā)作檢測(cè)的頭皮腦電圖記錄,可以反映癲癇發(fā)作前后大腦活動(dòng)的生理變化。于是,利用PDC 分析方法提取腦電通道相關(guān)信息流的方向和強(qiáng)度等特征,將特征輸入到支持向量機(jī)分類器,用于區(qū)分癲癇間期和發(fā)作期。這些方法試圖通過(guò)整合圖像特征和信號(hào)相關(guān)特征來(lái)捕捉腦電信號(hào)的非平穩(wěn)行為,雖然在特征提取方面有所不同,但通常需要大量的領(lǐng)域知識(shí)。
然而,在許多領(lǐng)域,通過(guò)深度學(xué)習(xí)方法提取的特征比手工制作的特征更健壯。隨著深度學(xué)習(xí)技術(shù)的興起,許多深度學(xué)習(xí)方法被開發(fā)出來(lái)用于癲癇檢測(cè)。卷積神經(jīng)網(wǎng)絡(luò)引起了人們對(duì)癲癇發(fā)作檢測(cè)的極大興趣,文獻(xiàn)[21]利用短時(shí)傅里葉變換(short time Fourier transform,STFT)提取腦電信號(hào)的時(shí)域和頻域信息,使用由3 個(gè)block 組成的CNN 架構(gòu)(每個(gè)block包括一個(gè)歸一化層、一個(gè)卷積層和一個(gè)最大池化層)進(jìn)行特征提取和分類。在CHB-MIT 數(shù)據(jù)集上,平均癲癇檢測(cè)靈敏度達(dá)81.2%,誤檢率為每小時(shí)0.16。文獻(xiàn)[22]并不對(duì)腦電信號(hào)進(jìn)行特征提取,而是直接使用金字塔型一維深度卷積神經(jīng)網(wǎng)絡(luò)對(duì)單通道腦電信號(hào)進(jìn)行癲癇檢測(cè),實(shí)驗(yàn)結(jié)果表明,CNN 比人工工程技術(shù)的學(xué)習(xí)效果好。
另外,循環(huán)神經(jīng)網(wǎng)絡(luò)也被用于從頭皮腦電圖記錄中自動(dòng)檢測(cè)癲癇發(fā)作。文獻(xiàn)[23]提出了一種基于頭皮腦電圖的特殊癲癇發(fā)作檢測(cè)的深度循環(huán)結(jié)構(gòu)(deep recurrent neural network,DRNN)和一種癲癇腦電信號(hào)映射方法,使所提出的深度結(jié)構(gòu)能夠同時(shí)分別學(xué)習(xí)原始腦電信號(hào)的時(shí)間特征和空間特征。文獻(xiàn)[24]提取Hurst 和自回歸滑動(dòng)平均(auto-regressive moving average,ARMA)特征,為腦電信號(hào)建立一個(gè)20 維的通道特征,標(biāo)準(zhǔn)化處理之后送入LSTM,實(shí)驗(yàn)結(jié)果表明,雙層LSTM 方法比之前使用的支持向量機(jī)分類器獲得了更高的精度。文獻(xiàn)[25]對(duì)原始腦電信號(hào)進(jìn)行局部均值分解,使用最大值、最小值、中位數(shù)、均值、標(biāo)準(zhǔn)差、方差、均值絕對(duì)偏差、均方根、偏度、峰度10 個(gè)統(tǒng)計(jì)參數(shù)作為特征,將這些特征送入到雙向LSTM。在CHB-MIT 頭皮腦電圖數(shù)據(jù)庫(kù)中,平均靈敏度為93.61%,平均特異度為91.85%,該模型考慮了當(dāng)前分析時(shí)刻前后的信息,并共同確定了決策結(jié)果。文獻(xiàn)[26]首先在腦電通道中引入注意機(jī)制,不同的權(quán)重會(huì)自動(dòng)分配給大腦不同區(qū)域的信號(hào)通道,之后采用BiLSTM 提取腦電圖信號(hào)的前向和后向的時(shí)間特征,使用時(shí)間分布全連接層是在每個(gè)時(shí)間步上進(jìn)一步提取特征,平均池化操作后提取每個(gè)樣本的全局特征,大量的實(shí)驗(yàn)結(jié)果表明,提出的新方法的性能更加穩(wěn)定。這些研究都取得了良好的成果,深度學(xué)習(xí)技術(shù)在腦電分析中仍有很大的潛力。
手工提取特征需要大量的領(lǐng)域知識(shí),只選擇部分腦電通道會(huì)丟失部分有用信息。雖然腦電圖信號(hào)通常是動(dòng)態(tài)的和非線性的,但在足夠小的時(shí)間段內(nèi),信號(hào)可以被認(rèn)為是平穩(wěn)的。不同的大腦區(qū)域可能對(duì)癲癇有不同的影響,不同腦區(qū)癲癇的腦電圖數(shù)據(jù)特征不同,不同的通道之間可能存在著局部依賴性。腦電圖信號(hào)在一個(gè)時(shí)間點(diǎn)的特征與過(guò)去時(shí)間點(diǎn)的數(shù)據(jù)和未來(lái)時(shí)間點(diǎn)的數(shù)據(jù)有著不同程度的關(guān)聯(lián)。而在自然語(yǔ)言處理領(lǐng)域,自注意力機(jī)制往往用于捕獲上下文關(guān)系。例如,文獻(xiàn)[27]提出了一種具有自注意力機(jī)制和多通道特性的BiLSTM 模型,結(jié)合多種特征向量和BiLSTM 模型的隱式輸出,利用自注意力機(jī)制對(duì)不同的詞給出不同的情感權(quán)重,能有效提高情感極性詞的重要性,充分挖掘文本中的情感信息。文獻(xiàn)[28]提出了一種基于多尺度局部上下文特征和自注意力機(jī)制的中文命名實(shí)體識(shí)別模型。通過(guò)融合不同核大小的卷積神經(jīng)網(wǎng)絡(luò)(CNN)提取多尺度局部上下文特征,改進(jìn)了原有的雙向長(zhǎng)短期記憶和條件隨機(jī)場(chǎng)模型(bidirectional long short-term memory and conditional random field,BiLSTM-CRF),利用多頭自注意機(jī)制打破了BiLSTM-CRF 在捕獲遠(yuǎn)程依賴關(guān)系方面的局限性,進(jìn)一步提高了模型的性能。
基于上述觀點(diǎn),本文提出了基于多頭自注意力機(jī)制神經(jīng)網(wǎng)絡(luò)的癲癇腦電檢測(cè)方法。該方法不提取手工特征,直接處理原始腦電信號(hào),提取信號(hào)的時(shí)間短期模式和多通道之間的局部依賴關(guān)系,引入多頭自注意力機(jī)制進(jìn)一步捕獲短期時(shí)間模式之間的上下文聯(lián)系。在本文構(gòu)造的數(shù)據(jù)集上進(jìn)行跨多患者實(shí)驗(yàn),與其他方法進(jìn)行對(duì)比,結(jié)果表明,提出的新方法的性能有了很大提升,具有高穩(wěn)定性。
本章主要介紹所提出的CABLNet(即卷積-多頭自注意力機(jī)制-雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò))模型,模型結(jié)構(gòu)如圖1 所示。該模型包括卷積層、多頭自注意力層、雙向長(zhǎng)短時(shí)記憶層和融合輸出層。本文將腦電信號(hào)切割為長(zhǎng)為4 s 的樣本(詳見3.2 節(jié)),對(duì)切割得到的全部數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化,每個(gè)樣本可以表示為一組時(shí)間序列信號(hào)X={x1,x2,…,xn}∈RT×n,其中,xi∈RT,n表示腦電信號(hào)通道數(shù),T表示每個(gè)樣本記錄的時(shí)間數(shù)。
圖1 模型架構(gòu)圖Fig.1 Model architecture diagram
CABLNet 網(wǎng)絡(luò)模型的第一層是一個(gè)沒(méi)有池化層的卷積層,其目的是為了提取腦電信號(hào)的短期時(shí)間模式和各個(gè)腦電通道間的局部依賴關(guān)系。同時(shí),對(duì)時(shí)間步進(jìn)行位移不變的壓縮,防止超長(zhǎng)時(shí)間序列導(dǎo)致的梯度消失問(wèn)題,方便后續(xù)雙向長(zhǎng)短時(shí)記憶層捕獲信息。卷積層由多個(gè)濾波器組成,濾波器高度為h,濾波器寬度為n(寬度設(shè)置與腦電信號(hào)通道數(shù)相同),步長(zhǎng)為s。第k個(gè)濾波器掃過(guò)腦電時(shí)間序列信號(hào)X得到輸出,計(jì)算過(guò)程如式(1)所示。
其中,*表示卷積操作,hk表示此濾波器對(duì)應(yīng)的輸出向量,bk表示偏置項(xiàng),函數(shù)f是非線性激活函數(shù),這里使用ReLU,如式(2)所示。
另外,為了減少神經(jīng)網(wǎng)絡(luò)訓(xùn)練中的內(nèi)部協(xié)變量偏移,降低過(guò)擬合的風(fēng)險(xiǎn),同時(shí)增加收斂速度,本文在卷積之后以及使用非線性激活函數(shù)之前加入批處理歸一化(batch normalization,BN)操作。在非線性激活函數(shù)之后,增加dropout操作,用于減少神經(jīng)元之間復(fù)雜的協(xié)同適應(yīng),迫使每個(gè)神經(jīng)元學(xué)習(xí)更加魯棒的特征,避免過(guò)擬合。最終得到特征表示C∈Rt×m,其中m是濾波器的個(gè)數(shù),t(t 自注意力機(jī)制是注意力機(jī)制的一個(gè)特例,已經(jīng)成功應(yīng)用于自然語(yǔ)言處理(natural language processing,NLP)和問(wèn)答系統(tǒng)(question answering system,QA)等多個(gè)領(lǐng)域。自注意力機(jī)制可以用于捕獲輸入輸出之間的全局依賴關(guān)系和序列本身的長(zhǎng)距離依賴。針對(duì)本文,卷積得到的特征表示在時(shí)間維度上具有位移不變性,不同時(shí)間步的特征向量之間依然存在著長(zhǎng)距離依賴關(guān)系和時(shí)間動(dòng)態(tài)相關(guān)性。采用多頭自注意力機(jī)制[29]可以在不同表示子空間學(xué)習(xí)到相關(guān)的信息,進(jìn)一步提高全局上下文特征的提取能力。 自注意力機(jī)制主要采用縮放點(diǎn)積注意力,注意力模塊的輸入由查詢(queries)、鍵(keys)、值(values)矩陣三部分組成,輸出是基于查詢和鍵的相似度與值的加權(quán)和。縮放點(diǎn)積注意力計(jì)算公式如下: 其中,Q、K、V分別表示查詢、鍵、值矩陣,dk表示鍵的維數(shù)。自注意力機(jī)制是一種與單個(gè)序列的不同位置相關(guān)的注意力機(jī)制,用于計(jì)算序列的表示。本文使用d表示自注意力機(jī)制的輸出維度,用Wq,Wk,Wv∈Rm×d表示可訓(xùn)練的參數(shù)矩陣,則根據(jù)如下計(jì)算過(guò)程可得到上下文表示: 圖2 自注意力機(jī)制的計(jì)算過(guò)程Fig.2 Computational process of self-attention mechanism 與CNN 中的過(guò)濾器類似,一次自注意力關(guān)注不足以學(xué)習(xí)多個(gè)特征的權(quán)值。為了讓模型從不同的表示子空間學(xué)習(xí)信息,通過(guò)多個(gè)平行頭重復(fù)多次Attention運(yùn)算,每個(gè)頭處理不同的信息,這樣可以處理特征表示的不同部分,提取出更豐富的時(shí)間序列長(zhǎng)距離依賴關(guān)系。多頭自注意力機(jī)制的模型圖如圖3 所示,其中,h表示頭數(shù)。用Qi、Ki、Vi表示第i個(gè)子空間的查詢、鍵、值矩陣,則第i頭的自注意力結(jié)果表示如式(5)所示,將各個(gè)頭的自注意力結(jié)果拼接,使用矩陣Wdr進(jìn)行多空間融合,最終得到多頭自注意力的最終結(jié)果,具體如式(6)所示。 圖3 多頭自注意力機(jī)制模型圖Fig.3 Model of multi-head self-attention mechanism 最后,使用層規(guī)范化(layer normalization)得到最終的上下文表示矩陣M∈Rt×d。多頭自注意力機(jī)制為不同時(shí)間步的特征向量分配不同的權(quán)重,即大的權(quán)重分配給少數(shù)關(guān)鍵特征向量,小的權(quán)重分配給大多數(shù)不相關(guān)的特征向量,從而有效地解決了各時(shí)間步特征向量的平等貢獻(xiàn)問(wèn)題,捕獲了各時(shí)間步特征向量的長(zhǎng)距離依賴關(guān)系和時(shí)間動(dòng)態(tài)相關(guān)性。 循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)比人工神經(jīng)網(wǎng)絡(luò)(artificial neural network,ANN)更適合于具有短期依賴性的序列學(xué)習(xí)問(wèn)題。然而,RNN并不能有效地處理長(zhǎng)期依賴的問(wèn)題,因?yàn)殚L(zhǎng)期的訓(xùn)練過(guò)程可能因訓(xùn)練權(quán)重突然變化導(dǎo)致網(wǎng)絡(luò)不穩(wěn)定(即梯度爆炸)。 長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)[30]是一種特殊的遞歸神經(jīng)網(wǎng)絡(luò),它使用記憶單元(memory cell)的概念來(lái)處理長(zhǎng)期依賴關(guān)系,克服了傳統(tǒng)RNN 模型的梯度消失和爆炸問(wèn)題,可以有選擇地保存上下文信息。如圖4 所示,用mt表示第t時(shí)間步的輸入向量,用b表示偏置項(xiàng),用ft、it、ot分別表示遺忘門、輸入門、輸出門的激活值向量,用ct、表示細(xì)胞狀態(tài)和候選值向量,用ht表示輸出向量,用W表示權(quán)重矩陣。在時(shí)間步t更新LSTM 記憶單元的計(jì)算操作如下: 圖4 LSTM 網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.4 LSTM network structure diagram 其中,函數(shù)σ表示Sigmoid 非線性激活函數(shù),⊙表示元素的乘積。 然而,LSTM 只考慮過(guò)去的信息,只能按順序處理來(lái)自過(guò)去的信息,忽略了未來(lái)的信息。針對(duì)腦電癲癇檢測(cè)問(wèn)題,需要有效地使用上下文信息,因此,采用雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(Bi-LSTM)。將上下文表示矩陣送入Bi-LSTM,分別由前向LSTM 和后向LSTM 通過(guò)計(jì)算前向隱藏序列和后向隱藏序列得到兩個(gè)單獨(dú)的隱藏狀態(tài),然后將這兩個(gè)隱藏狀態(tài)拼接起來(lái)形成最終提取到的上下文特征: ht+1∈R2h_d,h_d表示隱狀態(tài)的特征維度。 含有長(zhǎng)距離依賴關(guān)系的上下文表示,經(jīng)過(guò)雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)的信息提取,得到最終的上下文特征表示,將其輸入到全連接層進(jìn)行融合,經(jīng)logsoftmax函數(shù)計(jì)算得到最后的分類結(jié)果,如式(13)所示。其中,Wp、bp分別表示權(quán)重矩陣和偏置項(xiàng)。 本文使用靈敏度(Sen)、特異性(Spe)、G-均值(G-mean)、準(zhǔn)確率(Acc)、F1-score(F1)作為模型分類的評(píng)價(jià)指標(biāo)[25-26]。如果用TP 表示預(yù)測(cè)類別和真實(shí)類別都為癲癇發(fā)作期的樣本數(shù),F(xiàn)N 表示預(yù)測(cè)類別為癲癇間期而真實(shí)類別為癲癇發(fā)作期的樣本數(shù),F(xiàn)P表示預(yù)測(cè)類別為癲癇發(fā)作期而真實(shí)類別為癲癇間期的樣本數(shù),TN 表示預(yù)測(cè)類別和真實(shí)類別都為癲癇間期的樣本數(shù),那么所用評(píng)價(jià)指標(biāo)公式表示如下: 用Pre表示精確率,其公式如式(18)所示,則可根據(jù)Pre和Sen得到F1,如式(19)所示。 本文使用波士頓兒童醫(yī)院收集的頭皮腦電圖數(shù)據(jù)庫(kù)(CHB-MIT),此數(shù)據(jù)庫(kù)包含連續(xù)長(zhǎng)期頭皮腦電圖記錄。該數(shù)據(jù)庫(kù)共包含23 名患者24 個(gè)病例記錄(每個(gè)文件包含9 至42 個(gè)連續(xù)的.edf 格式的腦電數(shù)據(jù)文件),其中第1 個(gè)和第21 個(gè)病例記錄來(lái)自同一名患者。這些記錄采用國(guó)際10-20 EEG 電極位置和命名系統(tǒng),所有信號(hào)采樣頻率為256 Hz,16 位分辨率。大多數(shù)病例記錄的腦電圖信號(hào)是23 通道的,為便于統(tǒng)一研究,本文只保留這23 個(gè)通道:FP1-F7、F7-T7、T7-P7、P7-O1、FP1-F3、F3-C3、C3-P3、P3-O1、FP2-F4、F4-C4、C4-P4、P4-O2、FP2-F8、F8-T8、T8-P8、P8-O2、FZCZ、CZ-PZ、P7-T7、T7-FT9、FT9-FT10、FT10-T8、T8-P8。通道數(shù)小于23 的記錄將被舍棄。 因?yàn)槊總€(gè)病例記錄文件所包含的每條記錄長(zhǎng)度都不同,大部分記錄沒(méi)有發(fā)作,而發(fā)作的記錄也可能是多次發(fā)作,為保證樣本數(shù)據(jù)維度統(tǒng)一,需對(duì)數(shù)據(jù)做預(yù)處理工作。為便于理解數(shù)據(jù)預(yù)處理過(guò)程,圖5 展示了對(duì)只含有癲癇間期的記錄和同時(shí)含癲癇發(fā)作期的記錄的處理過(guò)程,上方的記錄只含有癲癇間期的記錄,下方的記錄表示含癲癇發(fā)作期的記錄,灰色部分表示癲癇發(fā)作期,陰影部分表示癲癇發(fā)作間期,小矩形表示4 s 的無(wú)重疊滑動(dòng)窗口,將截取的長(zhǎng)為4 s 的癲癇發(fā)作期數(shù)據(jù)、癲癇發(fā)作間期數(shù)據(jù)分別看作正、負(fù)樣本,對(duì)包含發(fā)作期的記錄進(jìn)行兩次發(fā)作期采樣(第一次從發(fā)作開始,第二次從發(fā)作后3 s 開始),每段發(fā)作最后不足4 s 的部分將被舍棄,可得到5 236 條正樣本。每個(gè)不含發(fā)作期的記錄從第10 min 開始采樣12個(gè)無(wú)重疊的負(fù)樣本,為保證樣本數(shù)據(jù)的平衡性,從采樣得到的負(fù)樣本中隨機(jī)選擇5 236 條。按照60%∶20%∶20%的比例分別將正負(fù)樣本數(shù)據(jù)集劃分,最終得到訓(xùn)練集數(shù)據(jù)6 284 條、驗(yàn)證集數(shù)據(jù)2 094 條、測(cè)試集數(shù)據(jù)2 094 條。 圖5 腦電數(shù)據(jù)預(yù)處理過(guò)程圖Fig.5 Preprocessing process chart of EEG data 本文的實(shí)驗(yàn)環(huán)境為:Ubuntu 16.04 操作系統(tǒng),cudnn7,編程語(yǔ)言采用的是Python 3.6.8,深度學(xué)習(xí)框架為Pytorch(其版本為1.1)。另外使用了CUDA 9 用于GPU 加 速,GPU 為TIAN X,內(nèi) 存16 GB,顯 存12 GB。 本實(shí)驗(yàn)在模型訓(xùn)練過(guò)程中訓(xùn)練200 個(gè)輪次(Epoch),數(shù)據(jù)批處理大小設(shè)置為20。使用負(fù)對(duì)數(shù)似然損失函數(shù)NLLLoss 作為損失函數(shù),使用Adam 優(yōu)化器進(jìn)行優(yōu)化,學(xué)習(xí)率為0.000 1。根據(jù)以上參數(shù)設(shè)置,按照3.2 節(jié)的預(yù)處理方法,對(duì)數(shù)據(jù)進(jìn)行分割,每個(gè)EEG 片段的大小為(1 024,23),可表示成通道數(shù)為1的張量(1,1 024,23),則卷積層輸入一個(gè)批次的張量大小為(20,1,1 024,23),卷積核尺寸設(shè)置為(26,23),卷積產(chǎn)生的通道數(shù)為26,步長(zhǎng)設(shè)置為4,dropout為0.5,最終卷積層輸出張量大小為(20,26,250,1)??捎?xùn)練矩陣Wq、Wk、Wv的大小都為(26,64),多頭自注意力層的輸入Q、K、V的張量大小都為(250,20,64)。雙向長(zhǎng)短時(shí)記憶層的隱藏狀態(tài)數(shù)為12,前后兩個(gè)方向最后時(shí)間步的隱藏狀態(tài)拼接后的上下文特征矩陣大小為(20,24)。最終經(jīng)過(guò)融合輸出層得到輸出矩陣大?。?0,2)。 在本節(jié)中,通過(guò)在CHB-MIT 有噪聲的頭皮腦電圖數(shù)據(jù)集上進(jìn)行跨多患者實(shí)驗(yàn)來(lái)評(píng)估CABLNet模型的性能,并針對(duì)不同病例的測(cè)試集進(jìn)行分析,對(duì)比幾種不同方法的敏感性、特異性、G-均值、準(zhǔn)確率、F1-score。 子空間數(shù)量(即頭數(shù))意味著多頭自注意力層的多個(gè)子表示層的學(xué)習(xí)能力,頭數(shù)過(guò)少會(huì)導(dǎo)致提取的特征數(shù)量不足,頭數(shù)過(guò)多會(huì)導(dǎo)致過(guò)度表示,并不能從中提取更多有用的信息,反而增加了模型的復(fù)雜度。因此,就多頭注意力機(jī)制的頭數(shù)對(duì)實(shí)現(xiàn)性能的影響進(jìn)行對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如圖6 所示,分析可得,8 頭對(duì)應(yīng)的G-均值、準(zhǔn)確率、F1-score 均取得較高值,因此,本文將注意力子空間數(shù)量的最優(yōu)值設(shè)置為8。 圖6 不同頭數(shù)的實(shí)驗(yàn)結(jié)果對(duì)比Fig.6 Comparison of experimental results with different number of heads 使用8 頭注意力機(jī)制,模型在大約175 個(gè)輪次之后趨于收斂。如圖7 所示,(a)圖展示了在訓(xùn)練集和驗(yàn)證集上準(zhǔn)確率隨輪次的變化情況,(b)圖展示了訓(xùn)練損失和驗(yàn)證損失隨輪次的變化情況。 圖7 準(zhǔn)確率和損失值隨輪次的變化情況Fig.7 Variation of accuracy and loss with epoch 雖然是針對(duì)同一腦電數(shù)據(jù)集CHB-MIT,但不同的文獻(xiàn)對(duì)數(shù)據(jù)切割所得到的樣本時(shí)長(zhǎng)(1~30 s)不盡相同。為了使實(shí)驗(yàn)結(jié)果具有可對(duì)比性,本文對(duì)比了兩個(gè)基線實(shí)驗(yàn)CNN+LSTM 和CNN+BiLSTM,同時(shí)復(fù)現(xiàn)了文獻(xiàn)[26]、文獻(xiàn)[31]、文獻(xiàn)[32]、文獻(xiàn)[33]所提出的方法,在本文預(yù)處理得到的數(shù)據(jù)集上進(jìn)行了對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表1 所示。 表1 中,模型7 是本文提出的模型,模型1、模型2是兩個(gè)基線模型,隱藏狀態(tài)數(shù)為12,卷積層的相關(guān)設(shè)置以及其他實(shí)驗(yàn)參數(shù)和本文模型相同。模型3、模型4、模型5 和模型6 是對(duì)比實(shí)驗(yàn)?zāi)P停鼈兊南嚓P(guān)參數(shù)設(shè)置與對(duì)應(yīng)原文獻(xiàn)一致。 表1 不同模型在CHB-MIT 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果對(duì)比Table 1 Comparison of experimental results of different models on CHB-MIT dataset 與模型1 相比,除特異性外,模型2 在靈敏度、G-均值、準(zhǔn)確率、F1-score 上有了大幅度提升,由此可見,雙向LSTM 比單方向的LSTM 具有更好的性能,對(duì)癲癇檢測(cè)問(wèn)題融合前后信息至關(guān)重要。與模型2相比,本文提出的模型在各個(gè)評(píng)價(jià)指標(biāo)上均有所提高,捕獲短期時(shí)間模式特征間的相關(guān)性有利于更好地進(jìn)行特征提取。對(duì)比模型3、模型4、模型5 和模型6,靈敏度方面,模型5 最高,可達(dá)到91.60%,而本文提出的模型為96.18%,高出其4.58 個(gè)百分點(diǎn);特異性方面,模型4 和模型5 比較高,分別為96.94%和96.75%,而本文模型為97.04%,與這些模型不相上下;G-均值方面,模型3、模型4 和模型6 較低,模型5 較高,為94.14%,本文模型為96.61%,高出其2.47 個(gè)百分點(diǎn);準(zhǔn)確率和F1-score 方面,模型3、模型4 和模型6 較低,模型5 最高,分別為94.17%和94.02%,本文模型為96.61%和96.59%,均高出其2 個(gè)百分點(diǎn)。整體看來(lái),本文提出的模型在各項(xiàng)指標(biāo)上均比對(duì)比的算法高,具有良好的性能。 癲癇發(fā)作和癲癇不發(fā)作活動(dòng)因患者不同而具有特異性,為了比較訓(xùn)練的模型在不同的病例上的表現(xiàn)能力,將原來(lái)的測(cè)試集數(shù)據(jù)按病例劃分為24 個(gè)測(cè)試集,實(shí)驗(yàn)結(jié)果如表2 所示。本文提出的CABLNet模型,病例chb07、chb11、chb21 的準(zhǔn)確率最高,為100.00%,病例chb14、chb24 的準(zhǔn)確率較低,分別為84.78%、86.44%,靈敏度分別為73.68%、82.93%。病例ch13的特異性最差,為75.00%,敏感性為100.00%。經(jīng)過(guò)對(duì)比,模型4 在病例chb01、chb10、chb22、chb23上準(zhǔn)確率最高,模型5 在病例chb3、chb18、chb20 上準(zhǔn)確率最高,而在其他病例上,本文提出的模型準(zhǔn)確率均最高。模型3 準(zhǔn)確率低于85.00%的病例分別為chb08、chb13、chb14、chb16 和chb24,模型4 準(zhǔn)確率低于85.00%的病例分別為chb12、chb14、chb20、chb21和chb24,模型5 準(zhǔn)確率低于85.00%的病例分別為chb12、chb14 和chb24,模型6 準(zhǔn)確率低于85.00%的病例分別為chb5、chb14 和chb24,而本文提出的模型僅在病例chb14 上低于85.00%。更進(jìn)一步,模型3 在13 個(gè)病例上準(zhǔn)確率低于90.00%,模型4 在9 個(gè)病例上準(zhǔn)確率低于90.00%,模型5 在4 個(gè)病例上準(zhǔn)確率低于90.00%,模型6 在7 個(gè)病例上準(zhǔn)確率低于90.00%,而本文提出的模型準(zhǔn)確率低于90.00%的病例僅有2個(gè)。實(shí)驗(yàn)結(jié)果表明,CABLNet 模型具有較好的魯棒性,能有效檢測(cè)不同患者的癲癇發(fā)作情況。 表2 不同模型在不同病例數(shù)據(jù)上的表現(xiàn)Table 2 Performance of different models on different case data 本文提出了一種基于多頭自注意力機(jī)制神經(jīng)網(wǎng)絡(luò)的癲癇腦電檢測(cè)方法,該模型主要由卷積層、多頭自注意力層、雙向長(zhǎng)短時(shí)記憶層構(gòu)成,因此,命名為CABLNet(C 代表卷積,A 代表注意力機(jī)制,BL 代表雙向LSTM)模型。首先,對(duì)多位患者的數(shù)據(jù)進(jìn)行采樣,確保得到不同類別均衡的樣本數(shù)據(jù)。其次,將原始腦電時(shí)序數(shù)據(jù)送入到卷積層,提取短期時(shí)間模式和通道之間的關(guān)系,將特征表示送入多頭自注意力機(jī)制捕獲短期時(shí)間模式的時(shí)間動(dòng)態(tài)相關(guān)性,進(jìn)而得到上下文表示,利用雙向LSTM 充分提取前后兩個(gè)方向的信息。最后,進(jìn)行融合分類。實(shí)驗(yàn)結(jié)果表明,該方法在捕獲癲癇發(fā)作模式上具有魯棒性和穩(wěn)定性,提高了泛化性能,能夠有效地實(shí)現(xiàn)對(duì)多通道腦電信號(hào)的跨多患者癲癇檢測(cè)。該工作可以減輕臨床醫(yī)生的工作量,對(duì)輔助診斷有重要意義。 在未來(lái)的研究工作中,一方面,擴(kuò)大癲癇數(shù)據(jù)的規(guī)模,使用更多患者的EEG 數(shù)據(jù),繼續(xù)優(yōu)化模型,提升算法性能;另一方面,結(jié)合實(shí)際情況,考慮EEG 記錄過(guò)程中部分電極脫落的情況,針對(duì)通道缺失問(wèn)題做進(jìn)一步研究。2.2 多頭自注意力層
2.3 雙向長(zhǎng)短時(shí)記憶層
2.4 融合輸出層
3 實(shí)驗(yàn)與結(jié)果
3.1 評(píng)價(jià)指標(biāo)
3.2 實(shí)驗(yàn)數(shù)據(jù)及預(yù)處理
3.3 實(shí)驗(yàn)環(huán)境
3.4 實(shí)驗(yàn)參數(shù)
3.5 實(shí)驗(yàn)結(jié)果分析
4 結(jié)束語(yǔ)