深度学习基于DEAP的脑电情绪识别情感分类(附代码)

DEAP数据集:

DEAP数据集来源:

DEAP: A Dataset for Emotion Analysis using Physiological and Audiovisual Signals (qmul.ac.uk)

DEAP数据集介绍:

DEAP数据集介绍

脑电情绪识别:

主要分为三步骤:数据预处理,特征提取,构建模型。

数据预处理部分建议自己处理。其中一定要做的就是去掉63s的前三秒的基线时间。

       可以考虑的地方特别多,例如选取哪几个通道,并不是一定把32个脑电通道全部选择。选择哪几个频段分析或者选择单个维度还是多个维度融合。

特征提取部分:

       首先必须清楚特征分为几类:频域、时域、时频域、空间域。

       时域特征包含基本的事件相关电位、功率 Hjorth 参数特征 、高阶过零分析等等

       频域特征包含功率、功率谱密度、事件相关同步化、事件相关去同步化、高阶谱、微分

熵等特征

       在刚开始做的时候,先做的时域特征的提取:最简单的就是直接将60s的脑电信号处理。或者提取其中一些比较有意义的相关特征。但是准确率并不高,只有60多。

深度学习基于DEAP的脑电情绪识别情感分类(附代码)_第1张图片

       之后参考了一些网上的思路,采用了频域上的特征提取。主要参考了github上的Preprocess_deap的处理。首先选择了1,2,3,4,6,11,13,17,19,20,21,25,29,31共14个通道,分别对应于

  • 1 : AF3; 2: F3; 3: F7; 4: FC5; 7: T7; 11: P7; 13: O1
  • 17: AF4; 19: F4; 20: F8; 21: FC6; 25: T8; 29: P8; 31: O2 

       之后对这14个通道的数据进行频域分段,其中调用了pyeeg的bin_power函数进行傅里叶变换处理。其中频段选择为:

  • [4-8]: theta band
  • [8-12]: alpha band
  • [12-16]: low beta band
  • [16-25]: high beta band
  • [25-45]: gamma band

        选择了微分熵作为频域特征。部分代码如下:

深度学习基于DEAP的脑电情绪识别情感分类(附代码)_第2张图片

 构建模型部分:

       构建了多个模型进行对比:包括DNN模型LSTM模型RNN模型以及卷积神经网络结合LSTM模型,最终准确率有了比较大的提高,达到95%左右。

 源码见:深度学习基于deap的脑电情绪识别

你可能感兴趣的:(脑电情绪识别,python,机器学习,人工智能,深度学习,神经网络)