文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.181383
中文引用格式: 趙東東,宋洪軍,許玉虎,等. 基于LM算法的腦電信號分類研究[J].電子技術應用,2018,44(12):20-24.
英文引用格式: Zhao Dongdong,Song Hongjun,Xu Yuhu,et al. Research on the classification of EEG signals based on LM algorithm[J]. Application of Electronic Technique,2018,44(12):20-24.
0 引言
腦機接口(Brain Computer Interface,BCI)是一種不依賴于外部神經和肌肉,直接將腦電信號(Electroencephalogram,EEG)轉化為控制指令控制外部設備運行的通信系統(tǒng)。世界上由于各種事故導致身體失去運動能力的人很多,大多數殘疾人活動空間有限,通常只能在病床和輪椅上活動,BCI的誕生為他們實現與外部的交流提供了可替代手段。此外,BCI在軍事、娛樂等領域應用廣泛,取得了較大的成就[1]。2014年召開的騰訊WE大會上眾多著名專家學者提出了BCI與人工智能等將成為未來最具前沿性的科研項目,當前已成為研究的熱點,具有廣闊的市場范圍和極大的社會價值。
目前國內外腦機接口主流研究方向有穩(wěn)態(tài)視覺誘發(fā)電位、P300電位、慢皮層電位、運動想象等方式,其中前三種是通過外界刺激產生腦電信號。諸如視覺刺激、體感刺激等誘發(fā)電腦產生一定規(guī)律的信號,然后對誘發(fā)信號進行處理和分類。運動想象則是人體自發(fā)產生有關動作意向的信號,具有實際意義。
BCI由信號采集、信號預處理、特征值提取、信號分類、控制應用五部分構成。其中的核心關鍵在于信號分類。目前腦電信號分類方法主要有線性判別分析、隱馬爾可夫模型、卡爾曼濾波器等[2],線性判別分析使用簡單,容易實現。但腦電信號比較復雜,具有非線性特性,采集的信號線性可分性較弱且識別效率比較低。卡爾曼濾波器對于先驗知識依賴性較大,由于當前腦科學認知有限,很難從信號中獲取先驗知識,在信號分類中效果較差。而BP神經網絡具有較強的非線性映射能力,在解決非線性問題中取得了不錯的效果,在腦電信號分類識別方面效果較好。
雖然標準BP神經網路具有很強的非線性、并行性等特點,但其也存在收斂速度慢、易陷入局部最優(yōu)等局限性[3]。針對此不足,本文提出使用其優(yōu)化算法中的LM算法設計分類器對信號進行分類識別。利用主成分分析提取信號特征值,運用MATLAB 2014B軟件對其進行仿真試驗,結果證明LM算法對比BP神經網絡減少了訓練時間,降低了誤差,提高了分類精度,具有良好的識別效果。
1 試驗材料及信號采集
1.1 儀器設備
本次實驗信號采集設備使用的是Emotive Epoc+,該設備是美國Emotive公司針對腦電信號設計的一款非侵入式信號采集設備。Emotive Epoc+包含16個傳感器(含兩個參考電極),配置了藍牙模塊,不需要連線即可將采集的信號傳輸到PC,使用方便、便攜,導聯如圖1所示。
本文算法驗證平臺所用硬件為基于Arduino的智能小車,核心為最新版本的開發(fā)板Arduino UNO R3。它包含藍牙模塊、WiFi模塊、四驅PCB車盤、車輪、電壓表、打印線等。其資料開源,可用于二次開發(fā)。
1.2 信號采集
本文重點是基于運動想象模式下的腦電信號分類,信號采集模式采用2008年BCI競賽的實驗采集方式[4-5]。實驗前,在一個相對安靜的條件下,安排四位同學保持安靜放松的狀態(tài)下坐在椅子上,按照電腦屏幕出現的箭頭方向做相應的思維任務。每次實驗時間為7 s,在0~2 s內,四位同學保持安靜放松狀態(tài);第2秒,PC會發(fā)出響聲,同時屏幕出現“+”,提示實驗人員集中注意力,信號采集任務即將開始;第3秒時,PC屏幕會出現左右上下類型的箭頭,同時實驗人員根據箭頭方向想象左手、右手、舌、腳的運動,直到第7秒結束,圖2所示為單次信號采集過程。因為本課題最后是要將離線數據導入交互界面,然后控制Arduino小車左右前后方向運動來做算法驗證,所以實驗過程中根據箭頭左右上下想象動作所采集的數據標記為左右前后四個方向數據,以便于后續(xù)信號分類。根據大腦自發(fā)腦電的特點以及產生原理,數據采集好后選擇O1、O2、AF3、F4、F7、P7、FC5、P8共8個通道的數據作為數據研究樣本。本次實驗采集500組數據,其中400組數據為訓練樣本,100組數據作為測試樣本。
2 信號預處理
因為腦電信號中夾雜著眼電信號、肌電信號等干擾信號,不便于下一步對信號的處理和分類,需要對信號進行濾波處理,得到符合運動想象特點的腦電信號。通過分析腦電信號所對應的功率譜可以得知,8~25 Hz頻帶的腦電信號增幅明顯,能夠鮮明反映出腦電活動,所以選擇8~25 Hz頻帶作為研究課題的最佳范圍頻帶對原始腦電數據進行濾波處理。
3 特征值提取
3.1 主成分分析基本原理
主成分分析是將原有變量重新組合成一組新的線性無關的幾個綜合指標,然后根據實際需求選取較少的綜合指標反映原有變量的信息。從數學方面看,它是一種降維處理方法[6]。利用主成分研究復雜問題過程中,在不損失太多原有變量信息的情況下可只考慮少數幾個主成分,這樣可以抓住重點部分,提高分析效率。實際應用中,主成分分析在數據分析、人工智能、智慧農業(yè)等領域得到極大的應用。綜上所述,主成分分析有以下幾個優(yōu)點:
(1)消除原有變量之間的相關性。主成分分析將原有變量組合為新的線性無關的主成分,消除了原有變量對分析問題的復雜性。實踐表明原有變量相關性越高,該方法分析效果越好。
(2)減少選擇指標的工作量。往常情況下,很多變量之間具有一定相關性,利用主成分分析可以消除原有變量之間的相關性,所以在選擇研究指標上相對簡單容易。
(3)降低計算工作量。該方法中各個主成分是根據方差大小來排列的,在研究問題時,可以根據實際需要選擇方差較大的幾個主成分,舍棄一些主成分,從而降低分析問題時的計算工作量。
計算步驟如下:
(1)原始數據標準化,目的在于消除不同量綱以及正逆指標的影響。
將原始矩陣X:
(5)選取前k個累計貢獻率超過85%的主成分。
3.2 基于主城分分析特征值提取
將濾波之后的信號數據進行標準化處理后,對其進行主成分分析。表1為經分析后得出的各個主成分的特征值、方差貢獻率、累計貢獻。
主成分原理中,貢獻率代表所提取主成分包含原始變量的信息量,累計貢獻率代表相應幾個主成分累積包含原始變量的信息量。通過表1可知第一主成分包含原始變量53.5%的信息量,第二主成分包含原始變量37.8%的信息量,第三主成分包含原始變量3.9%的信息量,第四主成分包含原始變量2.1%的信息量。按照累積貢獻率超過85%為原則選取主成分,為避免輸入變量過少引起分類準確度降低,選取前4個主成分作為新的研究變量。
4 LM算法信號識別仿真分析
4.1 BP神經網絡
BP神經網絡于1986年由以McCelland和Rumelhart為首的科研小組提出,它是一種誤差反向傳播算法,是實際應用中最為廣泛的神經網絡之一。其基本原理是通過輸出后誤差估計輸出層直接前導層誤差,然后利用此誤差估計更前一層誤差,以此模式反傳獲得所有層的誤差不斷調整網絡的權值和閾值,使網絡輸出值接近期望值。BP神經網絡由輸入層、隱含層、輸出層構成[7]。其中輸入層神經元負責接收外部數據并傳遞給隱含層神經元。隱含層負責信息變換,是神經網絡的內部信息處理層,其層次設計可以根據實際問題需要設計為單隱含層或多隱含層結構。輸出層負責網絡輸出。在該網絡模型訓練過程中,若實際輸出與期望相差較大,訓練將進入誤差反向傳播階段,誤差會通過輸出層逐一反傳到輸入層并不斷調整各層權值和閾值,直至輸出最佳實際值[8]。
雖然標準BP神經網絡有一定優(yōu)點,但在生活應用中仍存在一些缺陷。首先,網絡訓練對樣本依賴性強,若樣本存在冗余、代表性差、矛盾性強,則該網絡很難達到預期效果。其次,權值和閾值敏感性強,需要多次調參,浪費大量時間。再者,應用中可能會陷入局部最優(yōu)。針對該神經網絡的種種權限,本文提出基于LM算法的BP神經網絡創(chuàng)建分類器對腦電信號進行分類。
4.2 LM算法
基于BP神經網絡的一些不足和缺陷,出現很多改進的算法。改進方式主要包括采用更加有效的優(yōu)化算法和啟發(fā)式學習算法。啟發(fā)式學習算法主要通過對表現函數進行分析而改進BP算法。目前該類型算法主要有自適應lr的梯度法、有動量梯度下降法、有動量和自適應lr的梯度下降法等。另一種優(yōu)化算法是基于數值最優(yōu)化理論的改進方法,主要有共軛梯度法、高斯-牛頓法等[9]。
LM算法是介于高斯-牛頓法與梯度下降法之間的一種非線性優(yōu)化方法,可以說是兩者相結合的一種改進方法,既包含高斯-牛頓法的局部收斂性,又包含梯度下降法的全局性特點,能夠有效抑制神經網絡陷入局部最優(yōu)[10]。基于LM算法的BP神經網絡原理如下。
設wk為網絡訓練中第k次迭代的權值和閾值所組成的向量,w(k+1)表示為新的權值和閾值所組成的向量,按照下面公式可得[11]:
4.3 基于LM算法仿真識別
本次運動想象四類方向為Arduino智能小車左右前后4種動作方向,訓練樣本為400組,測試樣本為100組。特征值分別定義為[1 0 0 0]、[0 1 0 0 ]、[0 0 1 0]、[0 0 0 1]。經過多次訓練,當輸入層、隱含層、輸出層神經元節(jié)點數目設置為4、10、4,各網絡層傳遞函數分別設置為tansig、tansig、purelin,學習步數epoch為1 000,學習速率lr為0.2,誤差為0.000 01時,其訓練效果最好,圖3為其訓練誤差圖示。最后利用標準BP神經網絡訓練識別并進行比較,如圖4所示。
由圖可知,LM算法訓練誤差比標準BP神經網絡誤差小。經計算,前者平均誤差為5.630 6×10-7,分類準確率為86%,后者平均誤差為0.001 4,分類準確率為56%。實驗證明LM算法分類效果切實可行。
5 串口通信界面設計
圖形用戶界面(Graphical User Interface,GUI)是一種由菜單、窗口、光標、對話框、文本、按鍵等圖形對象構成的用戶界面。MATLAB GUI編程與M文件程序編寫相對比,不僅需要寫內部程序,還需要編輯前臺界面[12]。MATLAB GUI前臺界面由眾多交互組件組成,主要有文本標簽、按鈕、編輯文本框、單選按鈕、復選框、框架、下拉菜單、滑動條和列表框等[13]。對組件屬性進行設置,并點擊或通過其他方式對其進行激活后,往往會發(fā)生一些變化。MATLAB GUI中包含鍵盤鍵按下時響應函數KeyPressFcn、關閉窗口時響應函數CloseRequestFcn等,GUI設計中,總體功能的實現關鍵在于回調函數的編寫,所以設計中掌握回調函數至關重要。
本文最終的目標是實現腦電信號分類的控制應用,總體思路為設計一個GUI界面,界面應實現數據的導入、腦電信號顯示、主成分分析提取特征值、LM算法信號分類、文本框動態(tài)顯示分類方向以及藍牙串口傳遞控制指令等,圖5所示為設計的GUI交互界面。
操作順序如下:
(1)點擊“打開訓練數據”按鈕,在計算機中選擇處理好的訓練數據導入。
(2)點擊“BP分類器”按鈕,開始應用LM算法對訓練數據進行分類,并將分類結果轉化為控制指令傳遞給Arduino智能車,為清晰觀察算法驗證效果,每一個分類結果間隔1 s顯示到可編輯文本框中,并觀察Arduino小車動作方向。
(3)點擊“打開測試數據”按鈕,在計算機中選擇處理好的測試數據并將其導入。
(4)點擊“BP分類器”按鈕,對測試數據進行分類并觀察其結果和Arduino小車動作方向。
經實驗,當導入訓練數據和測試數據并對其進行分類后,Arduino小車動作方向以及動作時間與文本框中分類結果和出現時間一致,證明算法驗證成功。
6 結論
信號分類是腦機接口中的關鍵和核心[14],本文針對其提出應用LM算法創(chuàng)建分類器對腦電信號進行分類識別。利用主成分分析對預處理的信號進行降維處理,去除了不同導聯信號的相關性,避免了變量過多導致訓練效率降低的情況,然后分別將LM算法和BP神經網絡訓練分類做對比,實驗證明前者在誤差、分類準確度上優(yōu)于后者,具有較好的分類效果。
參考文獻
[1] 陳豐,吳裕斌,曹丹華.基于STM32和USB虛擬串口的EEG信號采集儀設計[J].儀表技術與傳感器,2016(12):65-68.
[2] 許童羽,馬藝銘,曹英麗,等.基于主成分分析和遺傳優(yōu)化BP神經網絡的光伏輸出功率短期預測[J].電力系統(tǒng)保護與控制,2016,44(22):90-95.
[3] LI C,DAI Y,ZHAO J,et al.Remote sensing monitoring of volcanic ash clouds based on PCA method[J].ACTA Geophysica,2015,63(2):1-19.
[4] SHIN J W,KWON S B,BAK Y,et al.BCI induces apoptosis via generation of reactive oxygen species and activation of intrinsic mitochondrial pathway in H1299 lung cancer cells[J].Science China Life Sciences,2018:1-11.
[5] He Gaiyun,Huang Can,Guo Longzhen,et al.Identification and adjustment of guide rail geometric errors based on BP neural network[J].Measurement Science Review,2017,17(3):135-144.
[6] 陳悅,張少白.LM算法在神經網絡腦電信號分類中的研究[J].計算機技術與發(fā)展,2013(2):119-122.
[7] 馮思維,魏慶國.一種基于穩(wěn)態(tài)視覺誘發(fā)電位的腦-機接口閱讀系統(tǒng)[J].科學技術與工程,2015,15(35):204-207.
[8] 徐竹濤.基于MATLAB GUI的溫室滴灌系統(tǒng)優(yōu)化設計方法研究[D].楊凌:西北農林科技大學,2016.
[9] 徐佳琳,左國坤.基于互信息與主成分分析的運動想象腦電特征選擇算法[J].生物醫(yī)學工程學雜志,2016(2):201-207.
[10] 鄭國正,陳李勝.共同空間模型及其在EEG分類中的應用[J].上饒師范學院學報,2015(6):10-13.
[11] 葉德文,郁蕓,李修寒.基于Visual Studio與Matlab集成的腦電數據庫管理和分析系統(tǒng)[J].生物醫(yī)學工程研究,2015,34(4):238-242.
[12] 孫會文,伏云發(fā),熊馨,等.基于HHT運動想象腦電模式識別研究[J].自動化學報,2015,41(9):1686-1692.
[13] 梁致漢.基于EEG的腦機接口技術研究與實現[D].天津:天津理工大學,2015.
[14] XUE F,YANG Y L,DONG F T.Real-time temperature monitoring system design based on MATLAB GUI[J].Journal of Computer Applications,2014,889-890(1):737-740.
作者信息:
趙東東1,宋洪軍2,許玉虎1,崔東云1,王 帥1,丁筱玲1
(1.山東農業(yè)大學 機械與電子工程學院,山東 泰安271018;2.國投創(chuàng)新投資管理有限公司,北京100000)