王元發(fā),龐 宇,周前能,黃志偉
(1.重慶郵電大學(xué) 光電工程學(xué)院,重慶 400065;2.西南醫(yī)科大學(xué) 醫(yī)學(xué)信息與工程學(xué)院,四川 瀘州 646000)
癲癇是由腦部神經(jīng)異常放電引起的慢性疾病,長(zhǎng)期頻繁的癲癇發(fā)作會(huì)對(duì)患者的身心、智力產(chǎn)生嚴(yán)重影響。如果癲癇發(fā)作未及時(shí)發(fā)現(xiàn)與治療,會(huì)因高熱、循環(huán)衰竭、神經(jīng)元損傷導(dǎo)致不可逆的腦損傷,給患者及其家人造成極大的痛苦和傷害[1-2],且癲癇的突然性發(fā)作可能導(dǎo)致生命危險(xiǎn)[3]。及時(shí)、準(zhǔn)確地檢測(cè)癲癇疾病并采取對(duì)應(yīng)的治療或控制措施,不但可以減輕患者的痛苦及其家庭的負(fù)擔(dān),而且可以提高患者的健康水平。目前腦電圖(electroencephalogram,EEG)檢測(cè)由于其無(wú)創(chuàng)、方便的特點(diǎn)在癲癇疾病檢測(cè)中扮演著重要的角色。傳統(tǒng)的檢測(cè)方法是由醫(yī)療工作者對(duì)患者EEG信號(hào)長(zhǎng)時(shí)間監(jiān)測(cè),并根據(jù)臨床經(jīng)驗(yàn)視覺診斷[4-5]。該方法耗時(shí),效率低下,而且不方便。近年來(lái),專家學(xué)者提出了一種基于計(jì)算機(jī)軟件技術(shù)以及智能分類算法的癲癇EEG信號(hào)自動(dòng)檢測(cè)方法。本文研究一種高性能的多分類器,用于區(qū)分正常、癲癇發(fā)作和發(fā)作間期EEG信號(hào),在臨床上具有重要意義。
通過(guò)機(jī)器學(xué)習(xí)算法對(duì)癲癇EEG信號(hào)訓(xùn)練與自動(dòng)識(shí)別是一種常用的方法[6-7]。近年來(lái),許多機(jī)器學(xué)習(xí)算法,包括人工神經(jīng)網(wǎng)絡(luò)(artificial neural network,ANN)[8-9]、K鄰近(k-nearest neighbor algorithm,KNN)[10]、樸素貝葉斯(Naive bayes classifier,NB)[10]、線性判別分析(linear discriminant analysis,LDA)[11]、支持矢量機(jī)(support vector machine,SVM)[12-14]、極限學(xué)習(xí)機(jī)(extreme learning machine,ELM)[6]以及最小二乘回歸[15]等用在EEG信號(hào)自動(dòng)檢測(cè)中并取得較好的檢測(cè)效果,其中SVM處理非線性EEG信號(hào)由于良好的性能引起極大的關(guān)注。文獻(xiàn)[16-17]通過(guò)仿真對(duì)比了KNN、NB、LDA、SVM幾種分類算法,得出SVM可以取得較好分類性能的結(jié)論。SVM具有較好的分類性能和泛化能力被廣泛應(yīng)用到癲癇EEG信號(hào)的自動(dòng)分類識(shí)別中[18-19]。本文采用SVM算法自動(dòng)檢測(cè)癲癇EEG信號(hào)。由于癲癇EEG信號(hào)數(shù)據(jù)樣本較大,傳統(tǒng)SVM的訓(xùn)練算法將耗費(fèi)大量時(shí)間。文獻(xiàn)[20]提出SVM的序列最小優(yōu)化(sequential minimal optimization,SMO)算法,可以用于大樣本快速訓(xùn)練。文獻(xiàn)[21-22]對(duì)SMO算法進(jìn)行改進(jìn),提出了改進(jìn)的SMO算法(modified SMO,MSMO),減少了計(jì)算上的浪費(fèi),進(jìn)一步加快了SVM的訓(xùn)練速度。因此,本文采用MSMO算法對(duì)EEG信號(hào)進(jìn)行訓(xùn)練。
從分類的角度講,SVM本質(zhì)是一個(gè)二分類算法,而對(duì)于同時(shí)區(qū)分正常、癲癇發(fā)作和發(fā)作間期EEG信號(hào)等實(shí)際問題,需要用到多分類SVM。通過(guò)多個(gè)二分類SVM構(gòu)建的多分類方法有一對(duì)一、一對(duì)多、有向無(wú)環(huán)圖、糾錯(cuò)輸出編碼和二叉樹(binary tree,BT)[23-24]等方法。對(duì)區(qū)分正常、癲癇發(fā)作和發(fā)作間期EEG信號(hào)的三分類問題,一對(duì)一、一對(duì)多、有向無(wú)環(huán)圖、糾錯(cuò)輸出編碼需要構(gòu)建3個(gè)SVM分類器,二叉樹多分類SVM只需要2個(gè)分類器。
特征提取作為EEG分類識(shí)別中的重要組成部分,直接影響EEG信號(hào)的分類性能。針對(duì)非線性非平穩(wěn)的EEG信號(hào),離散小波變換(discrete wavelet transform,DWT)在時(shí)頻域具有較好的分辨能力,已被證實(shí)處理EEG信號(hào)是一種有效的工具[7,15,19]。研究表明,DWT更適用于EEG信號(hào)棘波的檢測(cè)。同時(shí),形狀類似于棘波的Daubechies 4(db4)母小波能夠有效地處理癲癇EEG信號(hào)。常用的DWT濾波器設(shè)計(jì)基于卷積運(yùn)算,而該算法計(jì)算復(fù)雜度較高并且運(yùn)算過(guò)程中需要較大的內(nèi)存[25]。為了克服這些缺點(diǎn),本文采用提升小波變換(lifting discrete wavelet transform,LDWT)算法對(duì)癲癇EEG信號(hào)進(jìn)行分解。同時(shí),采用LDWT的多分辨率分解將EEG信號(hào)分解為不同頻段的子帶信號(hào),然后有選擇性地提取不同頻帶EEG信號(hào)的特征量。
基于LDWT、MSMO及BT的優(yōu)點(diǎn),本文提出了一種高性能的癲癇及癲癇發(fā)作EEG信號(hào)自動(dòng)檢測(cè)方法,實(shí)現(xiàn)正常、癲癇發(fā)作和發(fā)作間期EEG信號(hào)分類識(shí)別。首先,將原始EEG信號(hào)經(jīng)多級(jí)LDWT,得到不同頻段范圍的子帶信號(hào),求得小波變換后數(shù)據(jù)的近似熵(ApEn)、Teager能量、局部波動(dòng)率、自回歸系數(shù)(ACF)、Hurst指數(shù)特征值;其次,采用隨機(jī)效應(yīng)模型的Fisher得分法,篩選具有較好分類性能的特征值構(gòu)成高維特征向量,將高維特征通過(guò)MSMO算法對(duì)3類EEG信號(hào)進(jìn)行訓(xùn)練;最后,采用二叉樹多分類SVM實(shí)現(xiàn)EEG信號(hào)分類識(shí)別。
1.1.1 基于LDWT的EEG信號(hào)處理
在EEG信號(hào)處理中,采用LDWT可以減小存儲(chǔ)、提高計(jì)算速度。小波提升策略的基本結(jié)構(gòu)如圖1所示。
圖1 提升小波結(jié)構(gòu)Fig.1 Structure of the LDWT
圖1中:Xo[n]和Xe[n]分別代表奇、偶序列;d[n]為預(yù)測(cè)產(chǎn)生的高頻小波系數(shù);s[n]為更新產(chǎn)生的低頻小波系數(shù);H[n]和L[n]為d[n]和s[n]分別歸一化后的值。本文采用基于db4的4級(jí)LDWT將癲癇EEG信號(hào)分解為不同時(shí)頻特性的子帶信號(hào)。
1.1.2 自相關(guān)系數(shù)特征提取
自相關(guān)系數(shù)描述一個(gè)時(shí)間序列中先前數(shù)據(jù)值與之后數(shù)據(jù)值的相關(guān)程度,即度量這個(gè)時(shí)間序列過(guò)去對(duì)現(xiàn)在的影響[26]。根據(jù)EEG信號(hào)的特點(diǎn),正常人的EEG信號(hào)非線性度和混沌性比癲癇患者強(qiáng),通過(guò)自相關(guān)系數(shù)可以很好描述這種差別。第j級(jí)小波系數(shù)的L個(gè)連續(xù)時(shí)間序列的自相關(guān)系數(shù)為
(1)
1.1.3Hurst指數(shù)特征提取
基于重標(biāo)極差(R/S)分析的Hurst指數(shù)是一種時(shí)間序列分形統(tǒng)計(jì)法,通過(guò)改變時(shí)間尺度的大小研究時(shí)間序列統(tǒng)計(jì)規(guī)律變化[27]。
對(duì)于一個(gè)時(shí)間序列xi(i=1,2,…,N),定義前k個(gè)數(shù)據(jù)點(diǎn)的平均誤差為
(2)
R(n)=max(0,W1,W2,…,Wn)-
min(0,W1,W2,…,Wn)
(3)
(3)式中,n=1,2,…,N。定義R(n)/S(n)為
(4)
根據(jù)EEG信號(hào)特性,同時(shí)為了減小特征計(jì)算復(fù)雜度,本文將R(n)/S(n)的對(duì)數(shù)值作為特征值之一,記為logRS(n)。
1.1.4ApEn特征提取
研究表明,正常人的EEG信號(hào)時(shí)間序列比癲癇發(fā)作時(shí)更復(fù)雜,通過(guò)計(jì)算兩者的ApEn值可區(qū)分正常人與癲癇患者[14,18]。
1.1.5 局部波動(dòng)率特征提取
1.1.6Teager能量特征提取
癲癇發(fā)作時(shí)EEG信號(hào)常表現(xiàn)出高頻率或者高幅值,通過(guò)Teager能量能夠較好識(shí)別癲癇是否發(fā)病。離散Teager能量定義為[9]
ψ(x(n))=x2(n)-x(n-1)x(n+1)
(5)
(5)式中:ψ為Teager能量算子;x為原始EEG信號(hào)。
為了區(qū)分正常、癲癇發(fā)作和發(fā)作間期EEG信號(hào),需要用到多分類SVM。圖2為三分類的BT算法結(jié)構(gòu)。
圖2 三分類的BT結(jié)構(gòu)Fig.2 BT structure for three-class
在訓(xùn)練階段,第1個(gè)二分類SVM將類別1、2共同作為一類,類別3單獨(dú)作為一類。第2個(gè)二分類SVM將類別1與2進(jìn)行訓(xùn)練。當(dāng)預(yù)測(cè)新的樣本x時(shí),通過(guò)第1個(gè)二分類SVM判別x所屬類別。如果為類別3,即為最終結(jié)果;如果為類別1或2,需要利用第2個(gè)二分類SVM進(jìn)行判別。從圖2可以看出,二叉樹多分類SVM在三分類問題中只需要2個(gè)分類器。
圖3 非線性SVM分類器特征映射Fig.3 Feature mapping for non-linear SVM classifier
(6)
(6)式中:Ns為非零拉格朗日乘子個(gè)數(shù),即支持矢量個(gè)數(shù);K(·)為核函數(shù),本文采用高斯核函數(shù);yi∈{-1,1}為輸入樣本xi的標(biāo)注類別;αi為訓(xùn)練產(chǎn)生的非零拉格朗日乘子。本文采用便捷、高效的MSMO訓(xùn)練算法對(duì)癲癇EEG信號(hào)進(jìn)行訓(xùn)練,產(chǎn)生圖2中BT算法的2個(gè)分類器模型。
多分類EEG信號(hào)識(shí)別系統(tǒng)分為2個(gè)階段:訓(xùn)練階段和測(cè)試階段。圖4為癲癇EEG信號(hào)分類系統(tǒng)的訓(xùn)練和測(cè)試流程。采用4級(jí)小波變換將EEG分解為近似和細(xì)節(jié)小波系數(shù),計(jì)算各小波系數(shù)的特征值構(gòu)成高維特征向量,將標(biāo)記類別的高維特征向量輸入到MSMO中進(jìn)行訓(xùn)練產(chǎn)生多分類器模型。訓(xùn)練結(jié)束后,未標(biāo)記的EEG信號(hào)同樣經(jīng)過(guò)4級(jí)小波變換,并提取特征構(gòu)成高維特征向量,通過(guò)多分類SVM自動(dòng)識(shí)別為正常、癲癇發(fā)作或發(fā)作間期的EEG信號(hào)。
圖4 三分類EEG信號(hào)分類流程圖Fig.4 Workflow of the three-class EEG classification
本文實(shí)驗(yàn)數(shù)據(jù)采用德國(guó)波恩大學(xué)公開發(fā)布的癲癇EEG信號(hào)數(shù)據(jù)庫(kù)[14,28]。該EEG數(shù)據(jù)集共包含A、B、C、D、E 5類EEG信號(hào)子集,采樣頻率為173.6 Hz,每類信號(hào)子集包含100段EEG信號(hào),每段信號(hào)包括4 096個(gè)采樣數(shù)據(jù)點(diǎn),每個(gè)數(shù)據(jù)段的時(shí)間長(zhǎng)度都為23.6 s。數(shù)據(jù)子集A和B分別來(lái)自于5個(gè)正常人睜眼和閉眼狀態(tài);數(shù)據(jù)子集C和D來(lái)自于癲癇發(fā)作間期狀態(tài),其中C在癲癇病灶外區(qū)域采集,D在癲癇病灶內(nèi)區(qū)域采集;數(shù)據(jù)子集E來(lái)自癲癇病人發(fā)作時(shí)狀態(tài)。
一個(gè)好的分類器,如果沒有較好的特征提取方法,也難取得良好的分類性能,本文從不同視角提取EEG信號(hào)特征。
為了尋找ACF(n)中n為何值時(shí)分類性能較好,本文計(jì)算原始信號(hào)的自相關(guān)系數(shù)的前幾項(xiàng)進(jìn)行統(tǒng)計(jì),正常人與患者EEG的ACF如圖5所示,其中藍(lán)色線段數(shù)據(jù)取自患者,綠色線段數(shù)據(jù)取自正常人。
圖5 正常人與患者EEG的ACFFig.5 ACF values between healthy and epilepsy EEG
從圖5可以看出,自相關(guān)系數(shù)的第5項(xiàng)分辨效果最強(qiáng),也就是正常人與患者的ACF(5)值具有顯著差異,因此選擇這一項(xiàng)作為特征值之一,并作正常人與患者ACF(5)直方分布圖如圖6所示。圖6中,藍(lán)色取自患者,綠色取自正常人,可以看出兩類數(shù)據(jù)具有顯著的分辨效果。
圖6 正常人與患者EEG的ACF(5)分布Fig.6 Histogram of ACF(5) between healthy and epilepsy EEG
圖7是logRS(n)隨log(n)變化圖。圖7中,藍(lán)色曲線由患者數(shù)據(jù)計(jì)算得到,綠色曲線由正常人數(shù)據(jù)計(jì)算得到。在log(n)=1.9附近,兩類數(shù)據(jù)的log(n)交疊部分很少,具有較高的區(qū)分度。圖8所示為兩類數(shù)據(jù)的logRS(60)直方分布圖,可以看出兩類數(shù)據(jù)的logRS(60)值分布差異顯著,交疊區(qū)域小,具有較高的區(qū)分度,因此,將logRS(60)選作特征值之一。
圖7 logRS(n)隨log(n)變化Fig.7 logRS(n) versus log(n)
圖8 正常人與患者EEG的logRS(60)分布Fig.8 Histogram of logRS(60) between healthy and epilepsy EEG
本文采用了隨機(jī)效應(yīng)模型中的Fisher得分法,篩選具有較高區(qū)分度的特征量[29]。設(shè)k是某一個(gè)待評(píng)估的特征值,現(xiàn)有兩類數(shù)據(jù)A、B,每類數(shù)據(jù)有若干數(shù)據(jù)樣本。先對(duì)A組數(shù)據(jù)的若干樣本求特征值k,然后求k的平均值和方差,記為μA和σA。同理得到B組數(shù)據(jù)的μB,σB。于是A、B兩組數(shù)據(jù)特征值k的Fisher得分記為IA,B,k,表示為
(7)
Fisher得分IA,B,k值越大,意味著特征值k的分辨效果越好。以近似熵為例,表1描述了各個(gè)信號(hào)近似熵的Fisher得分,得分越高表明這個(gè)特征值的區(qū)分度越高。根據(jù)計(jì)算結(jié)果,選取A1、A2、D1、D2的近似熵作為特征值。
表1 ApEn的Fisher得分Tab.1 Fisher scores of ApEn
根據(jù)上述方法,計(jì)算全部特征的Fisher得分,并選取得分值較高的幾個(gè)特征。由于部分特征之間具有強(qiáng)相關(guān)性,而選擇具有強(qiáng)相關(guān)性的特征對(duì)提高分類精確度沒有顯著貢獻(xiàn)。因此,根據(jù)各個(gè)特征之間的相關(guān)性對(duì)特征組合進(jìn)行微調(diào)和精簡(jiǎn),篩選結(jié)果如表2所示。采用這些特征進(jìn)行特征提取,構(gòu)成高維特征向量作為三分類SVM的輸入。
表2 特征篩選結(jié)果Tab.2 Results of the feature selection
對(duì)于區(qū)分正常、癲癇發(fā)作和發(fā)作間期3類問題,實(shí)驗(yàn)性能采用如下3個(gè)指標(biāo)進(jìn)行評(píng)價(jià):敏感度(Sensitivity)、特異性(Specificity)、精度(Accuracy)。表3給出了三分類性能指標(biāo)的詳細(xì)定義[14,28]。表3中,SA、SD、SE分別表示A、D、E的epoch數(shù);SAA表示從數(shù)據(jù)子集A中被分為A的epoch總個(gè)數(shù);SAD表示從數(shù)據(jù)子集D中被分為A的epoch總個(gè)數(shù);其他相應(yīng)的參數(shù)可以通過(guò)類似方法解釋。
表3 三分類性能定義Tab.3 Performance definition of three-class classification
本文采用德國(guó)波恩大學(xué)癲癇EEG的A、D、E這3類數(shù)據(jù)對(duì)所設(shè)計(jì)的分類器進(jìn)行性能測(cè)試。在EEG數(shù)據(jù)的預(yù)處理中,每1 024個(gè)數(shù)據(jù)點(diǎn)的時(shí)間窗構(gòu)成一個(gè)epoch,為了彌補(bǔ)數(shù)據(jù)截?cái)鄬?duì)EEG信號(hào)的連續(xù)性信息影響,在計(jì)算時(shí)將每個(gè)epoch數(shù)據(jù)進(jìn)行50%交疊。為了驗(yàn)證將數(shù)據(jù)分割成epoch后對(duì)分類精度的影響,選擇不同長(zhǎng)度的epoch(1.47 s、2 s、2.94 s、4 s、5.1 s、5.9 s、23.6 s)對(duì)其產(chǎn)生的影響進(jìn)行分析,隨著epoch長(zhǎng)度的增加,分類精度在不斷提高。選擇過(guò)長(zhǎng)的epoch需要較長(zhǎng)的時(shí)間檢測(cè)出癲癇疾病,本文選擇每個(gè)epoch的時(shí)間長(zhǎng)度為5.9 s。每個(gè)數(shù)據(jù)段(Segment)被分為8個(gè)epoch,每一個(gè)數(shù)據(jù)子集共有800個(gè)epoch,A、D、E 3個(gè)數(shù)據(jù)子集共有2 400個(gè)。實(shí)驗(yàn)采用4-fold交叉驗(yàn)證對(duì)三分類系統(tǒng)進(jìn)行性能測(cè)試。
為了分析4-fold交叉驗(yàn)證對(duì)特征篩選結(jié)果的影響,將交叉驗(yàn)證的4個(gè)訓(xùn)練集分別采用Fisher得分法進(jìn)行特征篩選,結(jié)果基本一致。本文根據(jù)各個(gè)特征之間的相關(guān)性對(duì)特征組合進(jìn)行微調(diào)和精簡(jiǎn),實(shí)驗(yàn)采用表2的特征進(jìn)行特征提取。
表4為樣本長(zhǎng)度為5.9 s時(shí),三分類系統(tǒng)的精度、特異性和敏感度結(jié)果。表5為樣本長(zhǎng)度為23.6 s的分類性能。從表5的結(jié)果看出,系統(tǒng)的各項(xiàng)指標(biāo)均為100%。
表4 樣本長(zhǎng)度為5.9 s時(shí)系統(tǒng)實(shí)驗(yàn)結(jié)果Tab.4 Rsults of the system when epoch length is 5.9 s %
表5 樣本長(zhǎng)度23.6 s時(shí)系統(tǒng)實(shí)驗(yàn)結(jié)果Tab.5 Results of the system when epoch length is 23.6 s %
為了驗(yàn)證訓(xùn)練集和測(cè)試集在數(shù)據(jù)獨(dú)立狀態(tài)下系統(tǒng)的性能,將實(shí)驗(yàn)數(shù)據(jù)先隨機(jī)劃分成訓(xùn)練集和測(cè)試集,然后再對(duì)訓(xùn)練集和測(cè)試集中的數(shù)據(jù)段截?cái)喑蒭poch,其長(zhǎng)度分別為5.9 s和23.6 s,分別測(cè)試其精度。表6給出訓(xùn)練集和測(cè)試集數(shù)據(jù)在3種不同隨機(jī)組合(Group 1、Group 2、Group 3)時(shí)的分類精度。
表6 隨機(jī)數(shù)據(jù)組合時(shí)系統(tǒng)精度Tab.6 Accuracy of the system using randomized data
從表6可見,樣本長(zhǎng)度為23.6 s的分類精度也可高達(dá)100%。
表7給出了本文與其他部分文獻(xiàn)在分類精度,二分類及三分類類型,研究方法方面的對(duì)比。從表7看出,本文實(shí)驗(yàn)結(jié)果優(yōu)于現(xiàn)有其他文獻(xiàn)性能。文獻(xiàn)[7]采用遺傳算法及SVM,其精度、特異性、敏感度也可高達(dá)100%,但僅用于正常與癲癇發(fā)作EEG信號(hào)分類識(shí)別。本文研究方法可用于正常、癲癇發(fā)作及發(fā)作間期EEG信號(hào)自動(dòng)檢測(cè),具有高性能特點(diǎn),為癲癇及癲癇發(fā)作的臨床檢測(cè)提供了較好的參考價(jià)值。
表7 本文與其他文獻(xiàn)的對(duì)比Tab.7 Comparison with previous works
本文提出了一種基于二叉樹多分類SVM的癲癇及癲癇發(fā)作的高性能自動(dòng)檢測(cè)系統(tǒng)。該系統(tǒng)能實(shí)現(xiàn)自動(dòng)檢測(cè)正常、癲癇發(fā)作和發(fā)作間期EEG信號(hào);采用多級(jí)提升式小波變換將EEG信號(hào)分解為不同幅頻特性的子帶信號(hào),求得不同子帶信號(hào)的特征量;為了減小特征維度,采用Fisher得分法對(duì)特征量進(jìn)行排序并篩選具有較高分類精度的特征量,利用基于MSMO的二叉樹多分類SVM算法對(duì)3種類別EEG樣本數(shù)據(jù)進(jìn)行分類識(shí)別。實(shí)驗(yàn)結(jié)果表明,針對(duì)德國(guó)波恩大學(xué)的正常、癲癇發(fā)作和發(fā)作間期EEG信號(hào)數(shù)據(jù)集,該系統(tǒng)的精度、敏感度和特異性均可達(dá)100%,優(yōu)于現(xiàn)有的分類識(shí)別方法,可為醫(yī)生對(duì)癲癇患者的臨床檢測(cè)提供較大的幫助。