(論文加源碼)基于DEAP數(shù)據(jù)集的腦電情緒識別(基于FFT和CWT的CNN模型)
論文和源碼見個人主頁:
摘要
? ? ? ? 傳統(tǒng)上,腦電圖(EEG)信號需要大量的技巧和訓(xùn)練才能破譯和分類。然而,隨著機器學(xué)習(xí)(ML)方法的興起,通過應(yīng)用快速傅立葉變換(FFT)和連續(xù)小波變換(CWT)等特征提取技術(shù),ML模型可以幫助腦電信號的分類。因此,本項目旨在研究不同的ML方法和信號處理技術(shù),以建立用于腦電信號分類的ML模型,以及用于情緒分類的ML模型的實現(xiàn)。
? ? ? ? 近十年來,機器學(xué)習(xí)已成功地應(yīng)用于若干神經(jīng)生理信號分類問題,從運動想象(MI)任務(wù)到情緒分類問題。這一領(lǐng)域的發(fā)展可以為更有效的腦電圖分析和更好的人機通信鋪平道路,在這一領(lǐng)域,機器和軟件可以通過腦機接口(BCI)通過個人的想法進(jìn)行遠(yuǎn)程控制。
內(nèi)容
本文主要講述了:
1. 模擬和實驗?zāi)P驮O(shè)置的細(xì)節(jié),以及使用的超參數(shù)。
2. 介紹并討論從運行FFT和CWT特征提取算法的模型中獲得的結(jié)果,以及與其他最先進(jìn)(SOTA)模型的比較。
3. 總結(jié)報告,并討論了未來在腦電信號處理領(lǐng)域中使用深度學(xué)習(xí)技術(shù)來緩解數(shù)據(jù)非平穩(wěn)性的工作。還將討論處理EEG信號的其他方法。
問題陳述
? ? ? ? EEG信號在用戶內(nèi)部或用戶之間表現(xiàn)出顯著的非平穩(wěn)性和可變性,因為每個人的EEG信號之間存在顯著差異。此外,機器學(xué)習(xí)(ML)模型缺乏足夠的訓(xùn)練數(shù)據(jù)來學(xué)習(xí),這對ML分類提出了重大挑戰(zhàn)。因此,本項目旨在通過使用DEAP數(shù)據(jù)集對喚醒、效價、喜歡/不喜歡和支配4個類別的情緒進(jìn)行分類,研究開發(fā)EEG情緒分類模型的可行性。
目標(biāo)
? ? ? ? 本項目旨在研究開發(fā)用于腦電情緒分類的機器學(xué)習(xí)模型的可行性,該模型結(jié)合了深度學(xué)習(xí)技術(shù),以緩解腦電信號的低資源性質(zhì),并探索和實現(xiàn)處理和預(yù)處理腦電數(shù)據(jù)的方法。
主要工作
? ? ? ? 作為研究項目的一部分,運行了幾個機器學(xué)習(xí)模型,根據(jù)DEAP數(shù)據(jù)集對4種不同類型的情緒進(jìn)行分類:喚醒、效價、喜歡/不喜歡和支配。使用了兩種類型的特征提取工具:快速傅立葉變換(FFT)和連續(xù)小波變換(CWT),并比較了它們在情緒分類任務(wù)中的結(jié)果。
? ? ? ? 近年來,研究人員使用了幾種類型的模型來處理EEG數(shù)據(jù),例如卷積神經(jīng)網(wǎng)絡(luò)(CNN)和遞歸神經(jīng)網(wǎng)絡(luò)(RNN)。CNN在腦電分類中的應(yīng)用可以追溯到其在計算機視覺任務(wù)中的有效使用,因此也被用于腦電任務(wù)。腦電圖(EEG)是用于監(jiān)測大腦活動的最常用工具之一,通過測量大腦中神經(jīng)元啟動時的電信號。在整個項目中應(yīng)用了幾種技術(shù):
原始腦電信號→ 預(yù)處理→ 通過FFT或CWT進(jìn)行特征提取→ 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)→ 神經(jīng)網(wǎng)絡(luò)訓(xùn)練→ 分類
原始腦電信號預(yù)處理
? ? ? ? 采集原始EEG數(shù)據(jù)后,需要濾除直流偏移和漂移等信號偽影,以及電磁噪聲。這些通常涉及帶通濾波器的應(yīng)用,例如高通或低通濾波器。這些濾波器根據(jù)信號的頻率和相關(guān)漂移去除信號的特定成分。例如,90 Hz以上的大多數(shù)EEG信號通常與數(shù)據(jù)分析無關(guān),可以使用高通濾波器過濾掉。高通濾波器的實現(xiàn)如圖所示。
? ? ? ? 該研究項目的目的是探索EEG ML分類的不同階段,以及可以使用的各種工具和過程。該項目的實施過程中使用了大量的庫,從機器學(xué)習(xí)目的到數(shù)據(jù)操作和數(shù)據(jù)可視化。也就是說,使用諸如MNE庫和PyPI Scaleogram包等軟件對數(shù)據(jù)集進(jìn)行預(yù)處理,并生成本部分和前一部分所示的可視化效果。此外,還采用了K-fold交叉驗證等有效技術(shù)?;€模型使用默認(rèn)的Adam優(yōu)化器,以及默認(rèn)的分類交叉熵?fù)p失函數(shù)。
基于FFT特征提取的CNN模型
? ? ? ? FFT特征提取模型基于Tensorflow的CNN模型,Keras庫用于一種one-hot編碼,而scikit-learn的KFold用于實現(xiàn)k-折疊交叉驗證。DEAP數(shù)據(jù)集的一個子集用于培訓(xùn)和測試,鑒于有限的計算資源以及時間原因,在實施過程中僅使用了3名受試者的原始EEG數(shù)據(jù)(受試者01、02和03),下面列出了使用的超參數(shù)列表:
FFT CNN的示意圖如圖所示:
基于CWT特征提取的CNN模型
? ? ? ? CWT模型使用PyWavelets中的CWT算法。 該方法將信號、要使用的母小波和一系列應(yīng)檢查信號的尺度作為輸入。該項目使用的母小波是“Morlet”小波,如圖:
? ? ? ? 與FFT模型類似,CWT模型是通過一次one-hot編碼、標(biāo)準(zhǔn)標(biāo)量歸一化和k倍交叉驗證等方法實現(xiàn)的,這些方法在前面有詳細(xì)介紹,但略有變化。超參數(shù)也與FFT模型相似,只是由于CWT算法輸出了一個標(biāo)度圖,輸入張量維度已更改為(96,69,69,3)。batch size也減少到32。所實施的CWT模型架構(gòu)的示意圖如圖所示。
? ? ? ? ?模型架構(gòu)已被重新設(shè)計,以更好地適應(yīng)DEAP數(shù)據(jù)集并產(chǎn)生更好的結(jié)果。也就是說,減少了dropout的數(shù)量,以及Batch Normalisation層,以防止驗證丟失中出現(xiàn)大的峰值和波動。CWT算法的實現(xiàn)基于一個開源的Github存儲庫
結(jié)果分析
? ? ? ? 這一部分描述了FFT CNN模型和改進(jìn)模型的結(jié)果,以及通過CWT實現(xiàn)的特征提取,對喚醒、配價和喜歡/不喜歡類進(jìn)行分類。
FFT-CNN模型分析
? ? ? ? 對具有FFT特征提取的CNN模型進(jìn)行了200個epoch的訓(xùn)練,并進(jìn)行了k倍交叉驗證(k=5),確認(rèn)模型收斂。表5-2描述了將價級分類時模型的性能,超過5倍,對應(yīng)的價級混淆矩陣如圖5-16所示。此外,圖5-15顯示了其中一個褶皺期間模型的一對訓(xùn)練和測試精度及損失曲線。附錄中補充了每個折疊和類別的訓(xùn)練和損失曲線,以及相應(yīng)的混淆矩陣。
?
? ? ? ? 從結(jié)果可以看出,F(xiàn)FT模型產(chǎn)生了不錯的結(jié)果,精度值顯著高于機會水平,損失值低于1。這表明FFT模型也能很好地推廣到unseen數(shù)據(jù),因為訓(xùn)練和測試結(jié)果在質(zhì)量上是可比的。在這四個類別中,F(xiàn)FT模型的性能相當(dāng)穩(wěn)定,其中“喜歡/不喜歡”類別的測試精度最高,為80.7%。
? ? ? ? 從表2可以看出,F(xiàn)FT算法在應(yīng)用于EEG信號處理領(lǐng)域時產(chǎn)生了不錯的結(jié)果,因為該模型在訓(xùn)練集和測試集上都表現(xiàn)得相當(dāng)好,精度顯著高于偶然水平。這表明該模型對數(shù)據(jù)具有良好的泛化能力。此外,從圖5-15中的損失圖來看,隨著訓(xùn)練和測試驗證損失曲線的收斂,模型中幾乎沒有過擬合。這可能是由于模型設(shè)置中存在dropout層,以及超參數(shù)調(diào)整過程。
? ? ? ? 從混淆矩陣可以看出,F(xiàn)FT模型在分類方面也表現(xiàn)良好,大多數(shù)EEG信號都被正確分類,如對角線所示。有一些假陽性和假陰性,但它們是少數(shù),這也可以通過對角線外相對較淺的陰影看到。
CWT-CNN模型分析
? ? ? ? 與FFT CNN模型類似,帶有CWT特征提取的CNN模型也在200個epoch上進(jìn)行了訓(xùn)練。同樣,表5-4描述了模型的性能,超過5倍,圖5-17顯示了一對訓(xùn)練和測試精度以及模型的損失曲線。由于時間限制,CWT模型無法進(jìn)行k倍交叉驗證。
? ? ? ? 可以看出,CWT模型通常會產(chǎn)生良好的結(jié)果,訓(xùn)練和測試精度都高于隨機水平,以及令人印象深刻的訓(xùn)練精度和損失?!跋矚g/不喜歡”級別的測試結(jié)果最好,測試準(zhǔn)確率為66.5%,訓(xùn)練準(zhǔn)確率為95.6%,令人印象深刻。
? ? ? ? 然而,值得注意的是,該模型顯示出高水平的驗證loss,這表明CWT模型在訓(xùn)練數(shù)據(jù)上發(fā)生過擬合。損失圖證實了這一發(fā)現(xiàn),隨著時間的推移,驗證損失與訓(xùn)練損失有所不同。
FFT和CWT模型的比較
? ? ? ? FFT和CWT模型的結(jié)果如表5-5所示。如圖所示,F(xiàn)FT模型在DEAP數(shù)據(jù)集的每個情感類別上都比CWT模型表現(xiàn)更好,平均測試準(zhǔn)確率為78%,而CWT模型的平均測試準(zhǔn)確率為65%。
? ? ? ? 在這三種不同的情緒類別中,值得注意的是,F(xiàn)FT和CWT模型在喜歡/不喜歡類別上都有最好的結(jié)果,其次是喚醒和配價類別。這可能表明,與喚醒等其他類型的情緒相比,喜歡和不喜歡的情緒與個體的腦電圖信號頻率之間存在更高的相關(guān)性。
與SOTA模型的比較
? ? ? ? 對FFT和CWT模型與SOTA模型進(jìn)行了比較。也就是說,S Alhagry等人的LSTM遞歸神經(jīng)網(wǎng)絡(luò),Choi等人的LSTM模型,以及Naser等人使用雙樹復(fù)小波包變換(DT-CWPT)的模型。所有數(shù)據(jù)集均使用DEAP數(shù)據(jù)集。結(jié)果總結(jié)見表5-6。
? ? ? ? 可以看出,雖然CWT CNN模型與其他SOTA模型相比表現(xiàn)不佳,但它仍然與Naser等人的LSTM模型相對可比。另一方面,F(xiàn)FT CNN模型與其他SOTA模型相比更為有利,甚至在價態(tài)等類別上超過了Naser等人的模型等幾個基準(zhǔn)。這表明FFT模型確實很好地推廣到了EEG數(shù)據(jù)。
結(jié)論和建議
? ? ? ? 首先,可以看出,與FFT CNN模型相比,CWT CNN模型產(chǎn)生的結(jié)果較差,平均測試準(zhǔn)確率為65%,F(xiàn)FT CNN模型在測試數(shù)據(jù)集上的平均準(zhǔn)確率始終在70%左右。然而,這在幾個方面仍然令人鼓舞,即使用特征提取算法處理用于情緒分類的EEG信號的有效性,以及產(chǎn)生的結(jié)果與其他SOTA模型相當(dāng),如表X所示。
? ? ? ? 值得注意的是,根據(jù)EEG信號在時間和頻率上的變化,CWT特征提取算法在理論上更適合此類任務(wù),因為我們需要一種在頻域和時域都具有高分辨率的工具,它允許我們知道信號在哪個頻率振蕩,以及這些振蕩發(fā)生的時間,CWT滿足的條件。然而,該項目的實驗結(jié)果表明,F(xiàn)FT特征提取算法更適合于情緒分類任務(wù),而CWT算法可能在其他領(lǐng)域更有用,例如心電圖分類或癲癇檢測。
? ? ? ? 事后來看,考慮到更多的數(shù)據(jù)集和更多的超參數(shù)調(diào)整,結(jié)果和映射肯定會有很大的改善。由于時間和環(huán)境的限制,此類模型和流程未在本項目中實施和調(diào)查,但它仍顯示出改善結(jié)果的潛力。
? ? ? ? 展望未來,可以進(jìn)一步研究如何利用FFT和CWT等不同的信號處理和特征提取方法來緩解數(shù)據(jù)非平穩(wěn)性問題。還可以實施和研究轉(zhuǎn)移學(xué)習(xí)和聯(lián)合學(xué)習(xí)等技術(shù)。
論文和源碼見個人主頁.