宋春寧, 盛 勇, 寧正高
(廣西大學(xué) 電氣工程學(xué)院, 廣西 南寧 530004)
腦—機(jī)接口(brain-computer interface,BCI)技術(shù)是一門多學(xué)科融合的新型人機(jī)結(jié)合技術(shù)。目前較為普遍的是利用大腦特定活動(dòng)產(chǎn)生的腦電(electroencephalogram,EEG)信號(hào)控制外部電子設(shè)備,其基本過程是首先使用電極采集到腦電信號(hào),再經(jīng)過放大、去噪、濾波等一系列預(yù)處理后,最后利用特征提取與分類算法將信號(hào)解碼成控制設(shè)備的指令。有效提出腦電特征并準(zhǔn)確分類是BCI的關(guān)鍵。研究發(fā)現(xiàn),當(dāng)人進(jìn)行單側(cè)肢體運(yùn)動(dòng)想象時(shí)大腦主感覺運(yùn)動(dòng)皮層的特定頻段的能量會(huì)出現(xiàn)變化,這類現(xiàn)象被稱為事件相關(guān)去同步(event-related desynchronization,ERD)及事件相關(guān)同步(event-related synchronization,ERS)[1]?;跁r(shí)頻分析方法的左右手運(yùn)動(dòng)想象腦電信號(hào)分類效果要由于單純的時(shí)域或頻域分析方法。在基于左右手運(yùn)動(dòng)想象腦電信號(hào)識(shí)別方法中,文獻(xiàn)[2]使用短時(shí)傅里葉變換(short-time Fourier transform,STFT)時(shí)頻圖像結(jié)合卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)與SAE(stacked autoencoder)模型,其識(shí)別效果優(yōu)于普通CNN;文獻(xiàn)[3]使用小波變換時(shí)頻圖像結(jié)合CNN進(jìn)行分類,使用C3及C4電極進(jìn)行實(shí)驗(yàn),驗(yàn)證了添加CZ電極會(huì)降低分類器的識(shí)別效果。文獻(xiàn)[4]使用STFT時(shí)頻圖像結(jié)合CNN與支持向量機(jī)(support vector machine,SVM),效果優(yōu)于傳統(tǒng)的濾波器組共空間模式(filter bank common spatial patern,FBCSP),但其分類耗時(shí)較高。傳統(tǒng)的時(shí)間—頻率方法主要包括:STFT、小波變換(wavelet transform,WT)、S變換(S transform)等。
由于STFT窗函數(shù)寬度固定不變,窗太窄雖然會(huì)有高的時(shí)間分辨率但會(huì)導(dǎo)致頻率分辨率差;窗太寬則會(huì)導(dǎo)致時(shí)間分辨率過低,不利于腦電信號(hào)的時(shí)頻特征提取。WT的分析結(jié)果并不是真正的時(shí)間—頻率譜,從而導(dǎo)致信號(hào)特征的精確度有一定的問題。S變換是STFT與WT的繼承與發(fā)展,加入了WT法的多分辨率分析思想,有效克服了STFT時(shí)窗固定的缺點(diǎn),能較好地適應(yīng)非平穩(wěn)信號(hào)。S變換能同時(shí)在時(shí)域和頻域內(nèi)提供信號(hào)良好的局部時(shí)頻特征,因此,它適合用于具有特定節(jié)律特征的運(yùn)動(dòng)想象腦電信號(hào)的分析,而且還不需要考慮小波基函數(shù)選擇問題。
CNN是一種非常有效的圖像識(shí)別方法,在語音識(shí)別、計(jì)算機(jī)視覺、圖像處理等方面取得了不錯(cuò)的成績(jī),在腦電信號(hào)分類領(lǐng)域也有研究[5~7]。通常CNN的最后一層可以看成是一個(gè)線性分類器,但卻不是一個(gè)最優(yōu)的分類器。Huang G B等人[8]在2004年提出了一種單隱層網(wǎng)絡(luò)學(xué)習(xí)算法,稱為極限學(xué)習(xí)機(jī)(extreme learning machine,ELM),與傳統(tǒng)的單隱含層網(wǎng)絡(luò)相比,ELM在保證學(xué)習(xí)精度的前提下比傳統(tǒng)的學(xué)習(xí)算法速度更快,泛化性能好等優(yōu)點(diǎn)。針對(duì)CNN泛化能力稍差、較易陷入局部極值點(diǎn)的不足之處,本文采用CNN和ELM相結(jié)合的方法,使用ELM取代CNN的最后一層。
在腦電信號(hào)采集過程中,受試者受疲勞和精力分散的影響,很難長(zhǎng)時(shí)間保持良好的實(shí)驗(yàn)狀態(tài),很難獲得足夠和優(yōu)質(zhì)的被試標(biāo)記數(shù)據(jù)。在分類問題中,分類模型面對(duì)小樣本訓(xùn)練集能力往往受到限制。文獻(xiàn)[9]使用高斯噪聲作為信息源輸入進(jìn)一個(gè)基于快速傅里葉變換(FFT)的系統(tǒng)來產(chǎn)生腦電信號(hào),但此方法忽視了腦電信號(hào)的時(shí)域特性。文獻(xiàn)[10]將不同時(shí)間段的腦電信號(hào)進(jìn)行拼接構(gòu)造新的數(shù)據(jù),雖然保持了時(shí)域特征然而忽視了腦電信號(hào)的頻域特性。
針對(duì)以上問題本文提出一種基于ACGAN(auxiliary classifier generative adversarial networks)的數(shù)據(jù)增強(qiáng)方法,即使用ACGAN模型進(jìn)行時(shí)頻特征圖像的擴(kuò)增來提高小樣本數(shù)據(jù)下分類模型的分類性能。
S變換是地球物理學(xué)家Stockwell R G在1996年提出的,是連續(xù)WT和STFT的發(fā)展,適用于非平穩(wěn)信號(hào)的分析[11]。
信號(hào)X(t)的S變換定義如下
(1)
(2)
式中ω(τ-t,f)為高斯窗口,f為頻率,τ為控制高斯窗口關(guān)于時(shí)間軸t的位置參數(shù)。
其逆變換公式如下
(3)
由式(1)和式(2)可知,S變換是在繼承STFT原理的基礎(chǔ)上采用了寬度可變的高斯窗函數(shù)。高斯窗函數(shù)ω(t,f)是時(shí)間和頻率的函數(shù),窗寬與頻率呈反比,這使得窗函數(shù)在低頻區(qū)域具有良好的頻率分辨率,在高頻區(qū)域具有良好的時(shí)間分辨率。
ELM網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 ELM模型
對(duì)于給定樣本(xi,yi)∈Rn×Rm(i=1,2,…,N),有激勵(lì)函數(shù)為g(ai,bi,x)和隱節(jié)點(diǎn)數(shù)目L個(gè),ELM網(wǎng)絡(luò)模型可以表示為
(4)
式中ai為輸入權(quán)值;bi為隱含層的偏差;βi為連接隱含層與輸出層的輸出權(quán)值;Oj∈Rn為網(wǎng)絡(luò)輸出值。當(dāng)激勵(lì)函數(shù)g能夠以零誤差逼近任意N個(gè)樣本時(shí),可以將式(4)表示為矩陣形式
Hβ=T
(5)
(6)
式(6)等價(jià)于求解Hβ=T的最小二乘解,即尋找最優(yōu)的輸出權(quán)值β為
β=H+T
(7)
式中H+=HT(HHT)-1為隱含層輸出矩陣H的廣義逆矩陣。
本文將CNN與ELM相結(jié)合,將ELM取代CNN的最后一層,其結(jié)構(gòu)如圖2所示。
圖2 CNN-ELM模型結(jié)構(gòu)
本文CNN兩個(gè)卷積層分別使用不同形狀的卷積核,以便更好地提取圖像特征。網(wǎng)絡(luò)模型第1層為輸入層,輸入圖像大小為48×46;第2層為卷積層,該層有8個(gè)卷積核,其卷積核的大小為[3×3],設(shè)置步長(zhǎng)為大小為[1×2],使用二維卷積核是為了更好地提取圖像的時(shí)頻特性;第3層為最大池化層,大小為[2×2];第4層為卷積層,該層有8個(gè)卷積核,卷積核的大小為[23×1];最后為ELM。網(wǎng)絡(luò)的訓(xùn)練過程如下:先采用梯度下降法調(diào)整CNN的參數(shù),當(dāng)訓(xùn)練誤差小于一定值時(shí)停止訓(xùn)練,之后將CNN全連接層提取的特征作為ELM的輸入用于ELM的訓(xùn)練。當(dāng)ELM訓(xùn)練完成后,將它取代訓(xùn)練完成的CNN的最后一層,整個(gè)分類網(wǎng)絡(luò)也就形成了。
ACGAN是在GAN的基礎(chǔ)上由Odena A等人[12]在2016年提出的一種新的輔助標(biāo)簽GAN。ACGAN損失函數(shù)包含兩部分第一部分Ls是面向數(shù)據(jù)真實(shí)與否的最大似然估計(jì)如式(8),第二部分Lc則是面向數(shù)據(jù)分類準(zhǔn)確性的最大似然估計(jì)如式(9)。在ACGAN的訓(xùn)練中,優(yōu)化的方向是希望判別器使得Ls+Lc盡可能大,而生成器使得Ls-Lc盡可能大。式(8)、式(9)如下
Ls=E[logP(S=real|Xreal)]+E[logP(S=fake|Xfake)]
(8)
Lc=E[logP(C=c|Xreal)]+E[logP(C=c|Xfake)]
(9)
表1實(shí)驗(yàn)使用的ACGAN其具體的結(jié)構(gòu)如表1所示。ACGAN的輸入、輸出圖像大小均為 48×46。模型訓(xùn)練批量大小為30,生成器第一層為全連接層輸出尺寸為(30,24,23,128);第二層為上采樣層輸出尺寸為(30,48,46,128);第三層為卷積層輸出尺寸為(30,48,46,128);第四層為卷積層輸出尺寸大小為(30,48,46,64);第五層為卷積層輸出尺寸大小為(30,48,46,1)。判別器第一層為卷積層輸出尺寸大小為(60,24,23,32);第二層為卷積層輸出尺寸大小為(60,12,12,64);第三層為卷積層輸出尺寸大小為(60,6,6,128);第四層為兩個(gè)全連接層,神經(jīng)元個(gè)數(shù)分別為 1(判斷真假) 和 2(2分類)。
表1 本文ACGAN的生成器與判別器結(jié)構(gòu)
實(shí)驗(yàn)采用的左右手運(yùn)動(dòng)想象腦電數(shù)據(jù)來自BCI Competition II,BCI Competition III和BCI Competition IV。前一數(shù)據(jù)集共包含一名女性受試者,該實(shí)驗(yàn)的任務(wù)是按照箭頭提示進(jìn)行左右手運(yùn)動(dòng)想象來控制一個(gè)反饋條移動(dòng),每9 s采集一次,所有的試次(Trials)均在同一天完成,總共280個(gè)試次,其中想象左右手運(yùn)動(dòng)各140個(gè)試次。實(shí)驗(yàn)采集了C3,C4,CZ三個(gè)電極的腦電信號(hào),信號(hào)的頻率為128 Hz。三個(gè)數(shù)據(jù)集的實(shí)驗(yàn)過程的詳細(xì)描述,如文獻(xiàn)[13]所述。實(shí)驗(yàn)選取C3,C4電極的8~13 Hz及18~24 Hz頻段圖像進(jìn)行組合,其大小為尺寸48×46,組合圖像如圖3所示。
圖3 組合特征圖像
為檢驗(yàn)本文方法的性能,選用BCI Competition II競(jìng)賽數(shù)據(jù)采用五折交叉驗(yàn)證法和訓(xùn)練集測(cè)試集比例1︰1分別進(jìn)行實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表2所示,該表選用對(duì)應(yīng)文獻(xiàn)中的最優(yōu)結(jié)果。STFT+CNN-SAE是文獻(xiàn)[2]中采用的方法,先用STFT方法進(jìn)行時(shí)頻特征提取,然后使用CNN-SAE模型進(jìn)行特征分類。WT+CNN是文獻(xiàn)[3]中采用的方法,先用WT方法進(jìn)行時(shí)頻特征提取,然后使用CNN模型進(jìn)行特征分類。文獻(xiàn)[14]使用WT結(jié)合小波神經(jīng)網(wǎng)絡(luò)(wavelet neural network,WNN),由于存在過擬合問題,進(jìn)行數(shù)據(jù)增強(qiáng)后識(shí)別率為91.1 %。由表2可以看出本文模型的識(shí)別率要優(yōu)于文獻(xiàn)[2]和文獻(xiàn)[3]及文獻(xiàn)[14]所提出的方法的識(shí)別率。
表2 BCI Competition II數(shù)據(jù)識(shí)別率
在BCI Competition III數(shù)據(jù)集上,分別選取被試者O3,S4,X11分別選取320,540,540個(gè)樣本采用五折交叉驗(yàn)證法進(jìn)行實(shí)驗(yàn)。表3列舉了不同文獻(xiàn)在上的識(shí)別率,可見本文的識(shí)別率要優(yōu)于其他方法。
表3 BCI Competition III數(shù)據(jù)識(shí)別率 %
實(shí)驗(yàn)選用BCI Competition IV數(shù)據(jù)集中5名受試者進(jìn)行實(shí)驗(yàn)。數(shù)據(jù)增強(qiáng)實(shí)驗(yàn)分為訓(xùn)練過程與測(cè)試過程。訓(xùn)練過程將由ACGAN的生成器產(chǎn)生出新的樣本數(shù)據(jù),新數(shù)據(jù)用于擴(kuò)增原始數(shù)據(jù)后用于分類器的訓(xùn)練。測(cè)試過程使用訓(xùn)練好的分類器對(duì)測(cè)試集進(jìn)行預(yù)測(cè),從而得出分類器在測(cè)試集上的識(shí)別準(zhǔn)確率。選取每名受試者200個(gè)樣本作為訓(xùn)練集用于訓(xùn)練ACGAN,其余520個(gè)樣本作為分類器的測(cè)試集。
為了驗(yàn)證數(shù)據(jù)增強(qiáng)的效果,實(shí)驗(yàn)擴(kuò)增了原始的200個(gè)數(shù)據(jù),分別加入了新的200,400,600,800個(gè)新生成的樣本,其實(shí)驗(yàn)結(jié)果如表4和圖4所示。表4列出了5名受試者在不同擴(kuò)增數(shù)據(jù)下的平均識(shí)別正確率,可知原始數(shù)據(jù)未擴(kuò)增時(shí)分類器的平均識(shí)別正確率為76.3 %,當(dāng)擴(kuò)增400個(gè)樣本時(shí)平均識(shí)別正確率78.2 %達(dá)到最大。從圖4可以直觀看出最初加入200個(gè)新樣本受試者B04,B05,B08以及B09在測(cè)試集上的識(shí)別正確率得到了提升,而在之后隨著生成樣本的加入各位受試者的識(shí)別正確率走勢(shì)也有所不同。當(dāng)加入的生成樣本遠(yuǎn)大于原始樣本時(shí)分類器更多的去擬合生成樣本的分布,而一定程度上忽視了原始樣本的分布,觀察平均識(shí)別正確率可知,當(dāng)添加的新樣本數(shù)量大于600時(shí)識(shí)別正確率會(huì)逐漸降低。
表4 數(shù)據(jù)增強(qiáng)實(shí)驗(yàn)結(jié)果
圖4 數(shù)據(jù)增強(qiáng)實(shí)驗(yàn)結(jié)果
基于運(yùn)動(dòng)想象的BCI是眾多BCI范式中的重要組成部分,提高腦電信號(hào)的識(shí)別精度是BCI技術(shù)從實(shí)驗(yàn)室研究走向?qū)嶋H應(yīng)用的關(guān)鍵之一。本文研究了利用ELM方法實(shí)現(xiàn)左右手運(yùn)動(dòng)想象腦電信號(hào)的自動(dòng)分類。采用的CNN-ELM模型具有模型簡(jiǎn)單,準(zhǔn)確率高的特點(diǎn),采用的數(shù)據(jù)增強(qiáng)方法豐富了小樣本數(shù)據(jù)集樣本的數(shù)量提高了識(shí)別率。實(shí)驗(yàn)表明CNN結(jié)合ELM提高了識(shí)別率,具有較好的泛化性能,在一定程度上滿足了更高要求BCI系統(tǒng)的需求。