田 青, 趙作琴, 虞致國, 顧曉峰, 魏敬和
(1.中國電子科技集團(tuán)公司第五十八研究所,江蘇 無錫 214035;2.物聯(lián)網(wǎng)技術(shù)應(yīng)用教育部工程研究中心 江南大學(xué) 電子工程系,江蘇 無錫 214122)
癲癇是由大腦中異常的電活動引起急性反復(fù)發(fā)作的一種嚴(yán)重的慢性神經(jīng)系統(tǒng)疾病,可導(dǎo)致患者抽搐、躁亂和意識喪失,目前全球約有6 500萬人深受其擾[1]。抗癲癇藥物治療是控制或減少癲癇發(fā)作的標(biāo)準(zhǔn)方法,但對大約30 %的患者并無效果[2,3]。對于這些患者,深腦部刺激治療是一種有效的外科方法,但這種方法面臨著植入式電路的功耗、面積和檢測率等問題的限制[4~7]。頻繁更換電池會增大患者的感染率,因此其功耗問題尤為棘手。
近10年來,國內(nèi)外癲癇檢測技術(shù)的研究大多通過PC端進(jìn)行算法級別的仿真[8~10],少數(shù)實(shí)現(xiàn)了片上系統(tǒng)(system on chip,SoC)和超大規(guī)模集成電路。例如,Muhammad A等人基于高斯支持向量機(jī)(support vector machine,SVM)提出了一種8通道的癲癇檢測定制SoC,其平均敏感性、平均特異性和延時分別為95 %,94 %和2 s,但功耗高達(dá)19.625 μW[11]。Mohanmad S H等人設(shè)計了一種可植入的低功耗癲癇檢測模擬電路,集成了前置放大器、電壓電平檢測器、電路解調(diào)器和高頻檢測器,對顱內(nèi)電極腦電圖(icEEG)進(jìn)行檢測發(fā)現(xiàn)其敏感度、延時分別為為100 %,13.5 s[12]。Jerald Y等人利用7個帶通濾波器提取腦電信號(electroencephalogram,EEG)的頻域特征,再基于線性SVM進(jìn)行檢測,單次檢測能耗低至1.49 μJ,但僅具有84.4 %的敏感性和75.4 %的特異性[13]。上述多數(shù)工作為追求更高的檢測性能而使用了復(fù)雜的算法和特征提取方法,造成了較大的功耗;或者使用線性SVM等簡單的檢測算法,但極大地降低了檢測性能。
本文提出了一種基于主從SVM的實(shí)時癲癇檢測電路,對檢測性能和電路功耗進(jìn)行平衡,以更好地滿足實(shí)際應(yīng)用的需求。
本文使用波士頓醫(yī)院的開源數(shù)據(jù)庫CHB-MIT Scalp EEG Database來評估系統(tǒng)性能,該數(shù)據(jù)庫由23組癲癇記錄數(shù)據(jù)組成,包括5個男性患者,年齡為3~22歲;17個女性患者,年齡為1.5~19歲。每個患者通過國際標(biāo)準(zhǔn)10~20系統(tǒng)通道,利用分辨率為256 Hz的16位模數(shù)轉(zhuǎn)換器(ADC)連續(xù)采集9~42 h的EEG。腦科專家在數(shù)據(jù)終端觀測所有患者的EEG,同時標(biāo)記了所有癲癇發(fā)作的起始時間[14]。在本工作中,基于數(shù)據(jù)量不能過少(小于5次)和不考慮10歲以下兒童的原則,選取了1號患者作為研究對象。另外,由于C3—P3通道能代表該區(qū)域的局灶性發(fā)作和全身性癲病發(fā)作全腦傳播[14],因此,采用1號患者的C3—P3通道作為數(shù)據(jù)來源。
在文獻(xiàn)[11,13]中,使用帶通濾波器提取頻譜特征,檢測效果較好,但具有很高的運(yùn)算復(fù)雜度。本文通過簡化小波算法,只實(shí)現(xiàn)部分分解過程,計算近似絕對能量值作為EEG特征。
數(shù)據(jù)庫中EEG采樣頻率為256 Hz,對其進(jìn)行4層小波分解。由小波變換原理可得,高頻系數(shù)和近似系數(shù)ca4,cd4,cd3和cd2分別對應(yīng)0~8,8~16,16~32 Hz和32~64 Hz,這與腦電信號的節(jié)律delta “δ”(0~4 Hz),theta “θ”(4~8 Hz),alpha “α”(8~15 Hz),beta “β”(15~30 Hz)和gamma “γ”(30 Hz以上)基本吻合。另外,在信號處理中,如果小波基函數(shù)是一組正交基函數(shù),那么小波變換具有能量守恒的性質(zhì)。因此,癲癇發(fā)作前后的EEG能量變化相應(yīng)地也會在小波變換后的頻譜中體現(xiàn)。本文并不重構(gòu)原始信號,定義尺度j(分解層數(shù))下的小波絕對能量值由該尺度下的細(xì)節(jié)系數(shù)d(k)表示
(1)
為了滿足低功耗設(shè)計的特點(diǎn),把式(1)中所有的平方運(yùn)算轉(zhuǎn)化成取絕對值運(yùn)算,并不丟失信號特征,即近似小波能量為
(2)
使用4層小波變換計算,最后生成3維特征向量Z=(R2,R3,R4),其中,R2,R3和R4分別表示小波變換的第二、三和四層的近似小波能量值。
對EEG特征進(jìn)行分類檢測,目前比較常用的是SVM。其中,非線性SVM表現(xiàn)出了良好的癲癇檢測性能,檢測率達(dá)95 %[11],但是運(yùn)算復(fù)雜,尤其是高斯核中的指數(shù)運(yùn)算。另一方面,線性SVM需要的運(yùn)算更少,但其檢測性能明顯降低,文獻(xiàn)[13]中癲癇檢測的敏感性和特異性分別僅為84.4 %和75.4 %。
本文同樣使用線性SVM對數(shù)據(jù)進(jìn)行訓(xùn)練和檢測,最終結(jié)果顯示敏感性為93.2 %,特異性74.5 %??梢姡€性SVM的特異性比較差,意味著檢測結(jié)果存在大量的假陽性。打開檢測的標(biāo)簽發(fā)現(xiàn),使用線性SVM可以準(zhǔn)確檢測癲癇發(fā)作的開始,但其結(jié)束時間和專家標(biāo)簽相差很大,如圖1所示。這是因?yàn)榘d癇的發(fā)作是急性的,腦電驟增且有較清晰的分界。而發(fā)作結(jié)束后,大腦神經(jīng)元恢復(fù)至正常狀態(tài),能量的回歸關(guān)系較復(fù)雜,并不滿足簡單的線性關(guān)系。
圖1 線性SVM的癲癇實(shí)時檢測
由此得到啟示,提出了一種基于主從SVM的低復(fù)雜度實(shí)時癲癇檢測算法,如圖2所示。把實(shí)時EEG劃分為發(fā)作前期、發(fā)作期和發(fā)作后期3個階段,使用線性SVM分類發(fā)作期和未發(fā)作期;當(dāng)檢測到發(fā)作期時,啟動一個相對復(fù)雜的非線性SVM分類發(fā)作期和發(fā)作后期,確定癲癇發(fā)作的終止。在檢測過程中,主從SVM的結(jié)果進(jìn)行邏輯與,主從SVM初始狀態(tài)分別為0和1,每完成一組即恢復(fù)初始狀態(tài)。由于在實(shí)時EEG中,癲癇發(fā)作狀態(tài)畢竟數(shù)目較少,即大多數(shù)時間非線性SVM處于關(guān)閉狀態(tài),因此,定義非線性SVM為從SVM,線性SVM為主SVM,從而把算法復(fù)雜度進(jìn)行了合理分配。為了降低實(shí)時EEG中離散噪聲的影響,對上述結(jié)果進(jìn)行連續(xù)序列檢測,當(dāng)連續(xù)k個1時,才記為一次發(fā)作,輸出最終結(jié)果。
圖2 主從SVM的癲癇檢測算法
根據(jù)以上算法對患者20 h的EEG信號數(shù)據(jù)集訓(xùn)練和實(shí)時檢測,其中4 s為一個檢測窗口;發(fā)作期定義為專家標(biāo)記數(shù)據(jù),共120組發(fā)作數(shù)據(jù);發(fā)作后期定義發(fā)作組后連續(xù)10 min的數(shù)據(jù),隨機(jī)選取120組,發(fā)作前期為其他,隨機(jī)選取300組。按照上述流程獲得測試集和訓(xùn)練集后,進(jìn)行訓(xùn)練獲得主從SVM的模型,最后針對不同的主從SVM組合進(jìn)行實(shí)時檢測。
圖3給出了不同組合主從SVM實(shí)時檢測的性能。定義主SVM為線性SVM,從SVM的標(biāo)號1,2,3和4別對應(yīng)高斯SVM,2階多項(xiàng)式SVM,3階多項(xiàng)式SVM和4階多項(xiàng)式SVM;而在連續(xù)序列檢測中,根據(jù)經(jīng)驗(yàn)值選取5個連續(xù)的1的“11111”序列。4個組合的各項(xiàng)指標(biāo)均超過90%,可以發(fā)現(xiàn),帶有高斯SVM的組合由于復(fù)雜的核函數(shù)各項(xiàng)指標(biāo)最好,帶有多項(xiàng)式SVM組合的各項(xiàng)指標(biāo)則并未按預(yù)期隨著階數(shù)的增長而增長,3階反而比2階性能更差。同時可以發(fā)現(xiàn),連續(xù)序列檢測可顯著減少誤報率。因此,綜合考慮性能和復(fù)雜度,硬件部分采取主+從2+連續(xù)序列檢測組合,此組合在算法仿真時敏感性為94.5 %,特異性為99.1 %,誤報率為0.36/h。
圖3 不同組合主從SVM的實(shí)時檢測性能
圖4給出了基于主從SVM的低功耗癲癇檢測電路的整體架構(gòu),主要包括時鐘產(chǎn)生模塊、特征提取模塊、主從SVM模塊和決策模塊4個部分,最終結(jié)果通過決策模塊中一個“11111”序列檢測產(chǎn)生。
圖4 低功耗癲癇檢測電路的整體架構(gòu)
主從SVM模塊是本電路的關(guān)鍵部分,包括2個SVM,其中,主SVM對EEG信號進(jìn)行發(fā)作期和未發(fā)作期的初次識別;當(dāng)識別到發(fā)作期時,啟動復(fù)雜的從SVM識別發(fā)作期和發(fā)作后期,實(shí)現(xiàn)算法復(fù)雜度的合理分配。在硬件實(shí)現(xiàn)中,高耗時高能耗訓(xùn)練部分在PC端實(shí)現(xiàn),此模塊實(shí)現(xiàn)推論部分,其中SVM的推論表達(dá)式為
(3)
線性核函數(shù)為
(4)
本文使用的多項(xiàng)式核函數(shù)為
(5)
把式(4)、式(5)中的核函數(shù)分別代入推論表達(dá)式(3),并根據(jù)主從SVM已知的模型參數(shù)對其化簡可得
(6)
(7)
(8)
cj=yj·αj
(9)
圖5 主從SVM模塊的硬件結(jié)構(gòu)
癲癇檢測電路的性能評估一般使用敏感性(sensitivity)、特異性(specificity)、誤報率(false alarm rate)3個指標(biāo),定義如下
(10)
式中TP為被模型檢測為陽性的陽性樣本個數(shù),即真陽;TN為被模型檢測為陰性的陰性樣本個數(shù),即真陰;FP為被模型檢測為陽性的陰性樣本個數(shù),即假陽;FN為被模型檢測為陰性的陽性樣本個數(shù),即假陰;T為總時間,h。由于個體和環(huán)境的原因,使用從時間11∶42∶54到第三日12∶59∶51不完全連續(xù)的40 h的EEG進(jìn)行實(shí)時檢測,其中患者連續(xù)發(fā)作了7次,時長從24 s到100 s不等。以4 s為一個檢測窗口,發(fā)作期定義為專家標(biāo)記數(shù)據(jù),共120組發(fā)作數(shù)據(jù),未發(fā)作組為35 880組。為了驗(yàn)證所提出電路的可行性和正確性,整個設(shè)計使用Verilog實(shí)現(xiàn)并對EEG仿真。在檢測之前對EEG數(shù)據(jù)向零近似取整處理,進(jìn)行補(bǔ)碼轉(zhuǎn)化得到12位二進(jìn)制有符號數(shù)據(jù)。檢測結(jié)果如表1所示,可以分析,該檢測電路的平均敏感性SE、特異性SP和誤報率FAR分別為93.3 %,99.9 %和0.27/h。
表1 檢測結(jié)果
對提出的癲癇檢測電路使用SMIC 65 nm 2P6M工藝進(jìn)行實(shí)現(xiàn),內(nèi)核版圖面積為185 μm×222 μm,如圖6所示。其中,白色數(shù)字標(biāo)簽依次表示時鐘、特征提取、主從SVM和決策四個模塊的位置。
圖6 本文設(shè)計的癲癇檢測電路的版圖
在內(nèi)核為1.2 V,主頻使用400 kHz進(jìn)行仿真,版圖功耗的仿真結(jié)果為4.23 μW;對于每次檢測,電路的平均功耗為21.15 nJ。表2給出了本文設(shè)計的癲癇檢測電路和相關(guān)報道的對比。和使用線性SVM的文獻(xiàn)[13]相比,本電路的檢測敏感性和特異性更好,這是因?yàn)榫€性SVM不能很好地識別不同階段癲癇EEG的特征。和使用高斯SVM的文獻(xiàn)[11]相比,本電路的檢測敏感性和特異性略差,但其功耗卻遠(yuǎn)低。由于本工作中的電路是模塊級設(shè)計,所以沒有配置IO cell,盡管如此,假設(shè)IO cell功耗占30 %,電路功耗也僅為5.49 μW,與高斯SVM檢測電路相比每通道降低了78.4 %。因此,本文設(shè)計的電路具有良好的綜合檢測性能。
表2 本工作和其他電路的性能對比
本文提出了一種新型的基于主從SVM的定制低功耗癲癇檢測電路,利用簡單的主SVM檢測癲癇發(fā)作的開始,利用相對復(fù)雜的從SVM精準(zhǔn)檢測癲癇發(fā)作的結(jié)束,利用序列檢測算法去除離散噪聲的影響。提出的算法通過了MIT數(shù)據(jù)庫驗(yàn)證且實(shí)現(xiàn)了電路的物理設(shè)計,具有良好的綜合檢測性能。