APP下载

基于混合神经网络的脑电情感识别

2021-03-09蔡冬丽钟清华朱永升

关键词:脑电电信号准确率

蔡冬丽,钟清华,朱永升,张 涵

(华南师范大学物理与电信工程学院,广州 510006)

近年来,情感识别越来越受到学者的关注. 目前,情感识别的方法主要是采用面部表情、文本、语音以及生理信号等. 面部表情、文本和语音等易受人们主观因素的影响,而生理信号不易受主观所控制,更能客观地反映人们真实的情感状态. 因此,越来越多学者使用生理信号尤其是脑电信号来进行情感识别.

随着计算机计算能力的不断提高,深度学习开始不断凸显其强大的学习能力和优势,学者们逐渐使用深度学习的方法来代替传统的机器学习. 其中,卷积神经网络(CNN)是深度学习方法中最为常见的网络,已广泛运用于各大领域,在脑电情感识别中也取得了很多成果. 如:首先使用皮尔逊相关系数(PCC)计算不同脑电通道之间的相关性并构造成相关矩阵,然后使用CNN提取脑电通道之间的相关性信息[1];提取多种脑电信号时域特征并组合成特征向量,然后输入到深度神经网络进行情感识别[2];提取脑电信号连通性特征,并将其转化为连通性矩阵输入到CNN进行情感分类[3];使用CNN提取脑电特征,并结合了皮肤电反应信号提高分类准确率[4]. 情绪是一种随时间变化的情感现象,而脑电信号的时序变化能反映情绪的变化. 因此,充分考虑脑电信号的时序信息能有效提高情感识别的准确率. 如:在DEAP数据集[5]上,使用了三维卷积神经网络(3D-CNN)进行情感分类,并使用数据增强方法提高3D-CNN的性能,在效价和唤醒度2个维度上均获得了不错的分类准确率[6].

目前,长短期记忆神经网络(LSTM)和双向长短期记忆神经网络(BLSTM)在脑电情感识别中呈现了良好的分类性能. 如:ALHAGRY等[7]使用LSTM提取脑电特征,在DEAP数据集中进行二分类实验,在唤醒度和效价2个维度上分别获得85.65%和85.45%的准确率;XING等[8]使用堆栈自动编码器(SAE)构建和求解线性脑电图混合模型,并使用LSTM对基于SAE分解的脑电信号进行情感识别,在效价和唤醒度上的平均准确率分别为81.10%和74.38%;WANG等[9]使用BLSTM在SEED数据集上进行情感识别,平均准确率为94.62%. 但是,在文献[7-9]中,只是使用LSTM或BLSTM提取脑电信号的时间特征,并没有考虑脑电信号的空间信息. 随着对CNN和RNN的不断深入研究,学者们开始考虑结合CNN和RNN,将一维脑电信息转化为二维矩阵,即利用CNN提取脑电信号的空间信息,同时使用RNN提取脑电信号的上下文信息. 如:YANG等[10]使用了混合神经网络,即使用CNN提取脑电信号的空间信息、使用LSTM提取脑电信号的时间信息;SHEN等[11]将来自不同通道的微分熵特征转换为四维结构,并输入到由CNN和LSTM组成的四维卷积循环神经网络进行情感识别;SHEYKHIVAND等[12]记录了14名受音乐刺激的被试的脑电信号,将未进行特征提取的原始脑电信号直接应用于由CNN和LSTM组成的神经网络(CNN-LSTM)进行情感分类. 在已有的脑电情感识别领域使用CNN和RNN的研究中,仍存在许多待改进的地方. 如:使用未经过特征提取的脑电信号作为神经网络的输入,导致网络训练时间非常长;使用LSTM只考虑了前向时序信息,并未利用反向时序信息.

为了更加充分地提取脑电信号中的信息,本文提出基于3D-CNN和BLSTM的混合神经网络(3DCNN-BLSTM):(1)首先,将脑电信号进行分频,对每一秒每个频带的脑电信号提取特征;然后,去基线并将一维的脑电特征向量按照电极分布转化为二维特征矩阵,再将同一时刻不同频带的二维特征矩阵进行叠加,从而将其构造成三维矩阵;最后,使用滑动窗口对不同时刻的三维脑电序列进行分段,并将序列输入到3D-CNN,从而提取脑电信号的时空信息. (2)将一维的脑电特征向量输入到BLSTM,提取脑电信号的前向、反向时序信息. (3)将3D-CNN和BLSTM提取的信息结合,并进行脑电情感分类.

1 实验数据

1.1 DEAP数据集

DEAP数据集[5]包含32个被试的32通道脑电信号以及8通道的外围生理信号. 本文只采用32通道的脑电信号作为实验数据:该脑电信号先以512 Hz进行采样,然后将采样率降至128 Hz,并经过4.0~45.0 Hz的带通频率滤波以及去除了EOG伪像. 每个被试观看40个情绪音乐视频,每个视频时长为1 min. 被试观看每个视频后,对唤醒度、效价、喜好和主导程度进行评分. 在本文实验中,仅选择在唤醒度和效价2个维度上进行测试. 在每个维度上,以5作为评分阈值,将标签类型分为2类:评分大于5的标签标记为“高”,小于或等于5的则标记为“低”. 即二分类实验中,在唤醒度维度上可将标签分为HA(高唤醒度)和LA(低唤醒度);在效价维度上可将标签分为HV(高效价)、LV(低效价). 此外,本文还进行了四分类实验. 对应标签分别为高唤醒度-高效价(HAHV)、高唤醒度-低效价(HALV)、低唤醒度-高效价(LAHV)、低唤醒度-低效价(LALV)[13].

1.2 SEED数据集

SEED数据集[14]包含15个被试的62通道脑电信号. 每个被试观看15个中文电影片段,每段电影时长约为4 min. 电影片段包含的情绪分为积极、中立和消极3种类型,每个情绪的电影片段为5个. 每个被试参加3次实验,每次参加的时间间隔约为1周. 脑电数据采样率降至200 Hz,并去除了噪声和伪影.

2 方法

2.1 双向LSTM

2.1.1 LSTM单元 循环神经网络(Recurrent Neural Networks,RNN)是一种适用于序列数据的神经网络,长短期记忆神经网络(Long Short-Term Memory Neural Networks,LSTM)[15]是一种时间循环神经网络,能避免普通RNN存在的长期依赖问题,目前已成功应用于语音识别和情感分析等领域. LSTM单元由遗忘门、输入门和输出门组成,控制丢弃的信息以及传递给下一时间步长的信息的比例.

在t时刻更新LSTM单元遗忘门的输出ft、输入门的输出it、输出门的输出ot、细胞状态Ct、隐藏状态ht,具体计算公式如下:

ft=σ(Wf·[ht-1,xt]+bf),

it=σ(Wi·[ht-1,xt]+bi),

ot=σ(Wo·[ht-1,xt]+bo),

Ct=ft*Ct-1+it*tanh(WC·[ht-1,xt]+bC),

ht=ot*tanh(Ct),

其中,xt是在t时刻的输入,Wf、Wi、Wo、WC分别是遗忘门、输入门、输出门、细胞状态的权重,bf、bi、bo、bC分别是遗忘门、输入门、输出门、细胞状态的偏置.

2.2 三维卷积神经网络

三维卷积神经网络(3-Dimensional Convolutional Neural Networks,3D-CNN)[17]是传统卷积神经网络的一种扩展,是在传统卷积神经网络的基础上对卷积和池化操作进行了改进. 目前,3D-CNN主要应用在医学图像和视频处理等领域. 3D-CNN中的3D卷积运算既能对不同EEG通道位置的空间相关性进行建模,又能对时间相关性进行建模. 语音和脑电信号等持续时间较长的信号具有时间相关性,充分考虑时间相关性能提高系统性能. 因此,3D-CNN非常适用于提取脑电信号的时空特征.

2.3 混合神经网络

3DCNN-BLSTM模型由2个特征提取器(3D-CNN、BLSTM)和1个分类器组成(图1):首先,将经过处理的脑电特征数据输入到3D-CNN特征提取器和BLSTM特征提取器中,以提取深度特征;然后,将2个特征提取器提取的深度特征输入到分类器进行情感状态预测.

图1 混合神经网络结构图

2.3.1 3D-CNN特征提取器 混合神经网络中的3D-CNN特征提取器一共有4个三维卷积层,卷积层的特征图数依次为16、32、64、16. 第1个卷积层的卷积核大小为5×5×5;第2、3个卷积层的卷积核大小均为3×3×3;为了降低计算成本,最后1个卷积层的卷积核大小设置为1×1×1. 在所有卷积层中,步长设置为1,并使用零填充以防止丢失输入数据的边缘信息. 本文使用的激活函数为RELU激活函数. 由于实验的数据量相对较小,为了尽可能地保留信息,在模型中不使用池化操作. 卷积后应用批归一化运算以加速模型训练,最后把卷积后所得的特征输入到全连接层. 为了防止过拟合,在全连接层后加入了dropout操作.

3D-CNN特征提取器的输入数据是经过三维转化的预处理数据段,其第j个输入数据段表示为Sj. 数据段输入到三维卷积层,可得:

Qj=Conv 3D(Sj),

其中,Conv 3D(·)表示三维卷积层运算. 将卷积层输出的特征输入到全连接层,得到时空特征向量:

Gj=FC(Qj),

其中,FC(·)表示全连接层运算.

2.3.2 BLSTM特征提取器 BLSTM特征提取器由2个堆叠的BLSTM层组成,隐藏层单元数等于窗口大小U. 在t时刻,第2个BLSTM层的输入序列是第1个BLSTM层的隐藏状态序列. BLSTM模块的输入数据不需要将一维脑电向量转换为二维矩阵,第j个输入数据片段表示为:

Rj=[at,at+1,…,at+U-1],

其中,at是在t时刻由不同频带拼接所得的一维脑电特征向量. 首先,将Rj输入到全连接层,可得:

Kj=FC(Rj).

再将Kj输入到BLSTM层,可得:

其中,Zj表示2个BLSTM层的输出,BLSTM(·)表示BLSTM层运算. 将Zj输入到全连接层,可得片段Rj的最后时间特征向量:

Yj=FC(Zj).

2.3.3 分类器 本文的分类器主要由一个全连接层和softmax分类器组成. 首先,将3D-CNN特征提取器和BLSTM特征提取器的输出结果进行拼接:

Vj=cat(Gj,Yj),

其中,cat(·)表示拼接操作. 然后,将拼接后的特征向量输入到全连接层:

Mj=FC(Vj).

最后,将Mj输入到softmax分类器进行情感分类:

Pj=softmax(Mj).

为了提高网络的泛化能力,在全连接层后加入dropout操作,并在损失函数中加入了L2正则项.

3 实验步骤及结果分析

3.1 脑电信号预处理

对于DEAP数据集,参照文献[18]的数据处理方法,首先使用带通滤波器将脑电信号分为4个频带:theta(4~7 Hz)、alpha(8~13 Hz)、beta(14~30 Hz)和gamma(31~45 Hz);然后,将63 s的脑电信号平均分割成63段长度为1 s的片段,其中前3 s为基线信号,计算出每个片段每个频带的特征值(图2). 在实验中,为了提高实验准确率,使用被试在刺激下记录的脑电信号特征值与基线信号特征平均值的差值作为实验数据,在t时刻的差值记为EEG_removedt,计算公式如下:

EEG_removedt=

其中,featuret表示在t时刻提取的脑电信号特征值,base_featurei(i=1,2,3)表示在i时刻提取的基线信号特征值.

将同一时刻不同频带的二维特征矩阵进行叠加,从而得到一个h×w×a的三维矩阵dt,其中a为不同频带的数量. 通过以上的数据变换,将一维的脑电序列[xt,xt+1,…,xt+L]转换为三维脑电序列[dt,dt+1,…,dt+L].

最后,使用滑动窗口将三维脑电序列分割成具有固定长度的片段,并确保连续相邻片段之间没有重叠. 第j个三维脑电数据段表示为:

Sj=[dt,dt+1,…,dt+U-1],

其中,U表示窗口大小,在本文实验中U设置为6.

图2 脑电信号分频操作示意图

图3 DEAP数据集中二维脑电特征矩阵的构造示意图[18]

对于SEED数据集,首先使用带通滤波器将脑电信号分为5个频带:delta(1~3 Hz)、theta(4~7 Hz)、alpha(8~13 Hz)、beta(14~30 Hz)和gamma(31~50 Hz);然后,将脑电信号平均分割为长度为1 s的片段,并计算出每个片段每个频带的特征值. 类似DEAP数据集的数据处理方法,将一维特征向量转化为二维特征矩阵(图4);接着,将同一时刻不同频带的二维特征矩阵进行叠加,从而构造成三维特征矩阵;最后,使用滑动窗口将三维脑电序列分割成固定长度为6 s的片段,连续相邻片段之间没有重叠.

图4 SEED数据集中二维脑电特征矩阵的构造示意图[18]

3.2 实验细节

实验采用的硬件设备是Intel(R)Core(TM) i7-8750H CPU 和 NVIDIA GeForce GTX 1060 GPU. 软件环境采用的是Python 3.6,同时使用了pytorch框架搭建神经网络模型. 在本文实验中,dropout操作保留率设置为0.5,学习率根据lr=0.01/(1+10p)0.75进行更新,其中p为当前步长除以总步长的值. 本文首先使用DEAP数据集中所有被试的数据分别进行二分类实验和四分类实验,并采用十重交叉验证技术评估模型的分类性能. 即把12 800个样本平均分为10个子集,取1个子集作为测试集,其余9个为训练集. 重复以上操作10次,直至所有的子集都作为测试集进行了实验. 其次,利用SEED数据集进行了三分类(积极、中立和消极)实验,采用五重交叉验证技术评估模型的分类性能.

3.3 DEAP实验结果

为了更加全面地分析3DCNN-BLSTM模型的分类性能,使用DEAP数据集,从不同特征的实验结果、不同模型的实验结果以及其他相关方法所得结果3个方面进行分析.

3.3.1 不同特征的实验结果 使用不同特征对模型的分类能力会有一定的影响,本文除了选取2种在脑电情感识别中常用的特征(微分熵(DE)、功率谱密度(PSD))外,还选择了排列熵(PeEn)、样本熵(SampEn)、奇异值分解熵(SvdEn)以及近似熵(ApEn)4种特征进行二分类实验和四分类实验. 其中,SvdEn、PeEn、DE、SampEn和ApEn属于非线性动力学特征.

由实验结果(表1)可知:(1)使用5种非线性动力学特征的情感识别平均准确率均明显高于使用PSD特征的平均准确率;使用PSD特征时,四分类实验的结果明显低于二分类实验的结果,而分别作用5个非线性动力学特征的二分类、四分类实验的结果差异不算特别大. 这表明了在该模型中使用非线性动力学特征比使用PSD特征更能有效地提取脑电特征. (2)使用ApEn特征的二分类、四分类实验结果最优:在唤醒度和效价2个维度上分别获得了93.56%和93.21%的平均准确率,比使用PSD特征的平均准确率分别提高了16.2%和17.12%,比使用DE特征的平均准确率分别提高了4.94%和5.61%,比使用SampEn特征的平均准确率分别提高了2.96%和3.32%;在四分类实验中,使用ApEn特征的平均准确率达到90.97%,比使用PSD特征的平均准确率提高了27.26%,比使用DE特征的平均准确率提高了6.84%,比使用SampEn特征的平均准确率提高了4.17%.

表1 6种特征的情感识别平均准确率

3.3.2 不同模型的实验结果 此外,选择ApEn为特征,使用2D-CNN、LSTM、3D-CNN、BLSTM和3DCNN-BLSTM模型进行对比实验. 其中,由于2D-CNN模型的输入数据比3D-CNN模型的输入数据少了1个维度,所以,在2D-CNN模型的对比实验中的输入数据并未使用滑动窗口将脑电序列分割成长度为6 s的片段,即使用长度为1 s的脑电数据作为1个实验样本. 对比实验的网络结构与本文模型对应模块的设置相应一致.

由实验结果(表2)可知:(1)除了2D-CNN模型外,其他模型的情感识别能力均表现良好,表明本文采用的近似熵特征的有效性. 2D-CNN的分类效果明显差于其他模型的原因可能是2D-CNN模型只提取脑电信号的空间信息,并没有考虑脑电信号的时间信息,而其他的4个模型均考虑了脑电信号的时序信息,这表明充分挖掘脑电信号时序信息能有效提高脑电情感识别准确率. (2)由BLSTM模型和LSTM模型的实验对比可知在脑电情感识别实验中同时挖掘脑电信号的前向、反向时序信息能有效提高分类准确率:在二分类实验中,BLSTM模型在唤醒度和效价2个维度上的平均准确率分别比LSTM模型提高了0.83%和0.81%;在四分类实验中,BLSTM模型的情感分类平均准确率比LSTM模型提高了1.13%. (3)由3DCNN-BLSTM模型与3D-CNN模型、BLSTM模型的实验结果对比可知3DCNN-BLSTM模型能进一步提高脑电情感识别准确率: 在二分类实验中,3DCNN-BLSTM模型的平均准确率在唤醒度和效价2个维度上分别比3D-CNN模型提高了0.82%和0.99%、分别比BLSTM模型提高了1.19%和1.49%;在四分类实验中,3DCNN-BLSTM模型的平均准确率分别比3D-CNN、BLSTM模型提高了1.87%、1.85%.

表2 5种模型的情感识别平均准确率

3.3.3 相关方法结果对比 不少学者使用DEAP数据集在唤醒度和效价2个维度上分别进行二分类情感识别. 如:KOELSTRA等[5]除了从脑电信号中提取功率谱特征外,还提取了左右半球上所有对称电极对的谱功率之间的差异,并使用Gaussian naive Bayes分类器对脑电信号进行情感分类;CHUNG和YOON[19]提出了一种基于Bayes分类器和监督学习的情感分类方法;CHAO等[20]构造了多频带特征矩阵(MFM),并将特征矩阵输入到胶囊网络(CapsNet)进行情绪识别;ZHUANG等[21]通过使用经验模态分解(EMD),将脑电信号分解为IMF序列,利用IMF的多维信息作为特征进行情感识别;XING等[8]提出一个由线性脑电图混合模型和情绪时间模型组成的框架,通过使用堆栈自动编码器(SAE)构建和求解线性脑电图混合模型,并使用长短期记忆递归神经网络(LSTM-RNN)构建情绪时间模型;SALAMA等[6]使用数据增强增加训练样本的数量,并从多通道脑电信号中提取三维数据输入到3D-CNN模型进行情感识别;YANG等[22]为了进一步提高基于CNN模块的准确性,设计了一种多列结构化的模型(Multi-Column CNN),该模型的决策由各个识别模块的决策的加权总和得出.

将3DCNN-BLSTM模型的二分类实验结果与以上分别使用Gaussian naive Bayes、Bayes classifier、CapsNet、EMD+SVM、SAE+LSTM、3D-CNN、Multi-Column CNN的结果进行对比,由对比结果(表3)可知3DCNN-BLSTM模型可以有效提高情感识别准确率:使用Gaussian naive Bayes、Bayes classifier、CapsNet和EMD+SVM进行情感识别取得的准确率都相对较低,使用SAE+LSTM、3D-CNN和Multi-Column CNN进行情感分类所取得的准确率相对较高,表明了SAE+LSTM、3D-CNN和Multi-Column CNN模型具有良好的情感分类性能;3DCNN-BLSTM模型结合了3D-CNN和BLSTM,在唤醒度和效价2个维度上的分类准确率最高.

表3 8种方法在唤醒度和效价维度上的平均准确率

此外,除了使用DEAP数据集分别在唤醒度和效价2个维度上进行二分类实验外,学者们还在这2个维度上进行了四分类实验.如:ZUBAIR和YOON[23]提取了一组基于小波系数的特征,并使用mRMR算法进行特征选择,最后使用支持向量机对人类情绪进行四分类实验;JADHAV等[24]提出了灰度共生矩阵(GLCM)特征,并使用KNN分类器进行四分类情感识别;HATAMIKIA和NASRABADI[25]使用了基于近似熵、频谱熵、Katz分形维数和Petrosian分形维数4种特征,并采用Dunn指数和序列前向选择算法(SFS)进行特征选择,最后使用SOM分类器进行情感分类;ZHANG等[26]采用小波变换与时频盲源分离相结合的方法,并使用支持向量机对情感类别进行分类;MARTNEZ-RODRIGO等[27]将二次样本熵(QSE)的非线性方法用于识别不同情感子空间的特性,并使用支持向量机分类器进行情感分类;MEI和XU[1]从脑电图的功能连通性矩阵提取特征,然后输入到CNN进行情感识别.

将3DCNN-BLSTM模型的四分类实验结果与相关文献[1,23-27]的四分类实验结果进行对比,由对比结果(表4)可知:(1)使用CNN为分类器的平均准确率高于DWT+SVM、GLCM+KNN、SOM、TFBSS+SVM和QSE+SVM的,这表明了CNN在情感分类中具有良好的分类性能. (2)3DCNN-BLSTM模型采用了3D-CNN和BLSTM进行结合的方式,在四分类实验中的平均准确率最高,其中,比使用CNN模型的平均准确率提高了17.87%.

表4 7种方法在四分类实验的平均准确率

3.4 SEED实验结果

SEED数据集是另一个常用于情感分析实验的数据集. 学者们使用该数据集进行情感三分类实验,取得了较好的分类效果. 如:ZHENG和LU[14]从多通道EEG数据中提取微分熵特征,并使用深度信念网络(DBN)进行脑电情感识别;LI等[28]根据电极分布,将不同通道的差分熵特征向量转化为二维特征矩阵,并使用分层卷积神经网络(HCNN)进行情绪分类;魏琛等[29]使用小波包变换分解脑电信号并将其转化为二维矩阵,然后输入到CNN,并使用投票法和加权平均法提高情感分类准确率;田莉莉等[30]使用一维卷积神经网络提取脑电特征,并采用随机森林分类器进行情感分类.

3DCNN-BLSTM模型在SEED数据集上选择了微分熵特征进行实验,将其实验结果与其他相关文献[14,28-30]的实验结果进行对比,由对比结果(表5)可知:DBN模型的平均准确率最低,表明了CNN在情感分类中具有良好的分类性能;3DCNN-BLSTM模型的平均准确率最高,其原因可能是3DCNN-BLSTM模型充分提取了脑电信号的时空信息,而其他4种方法都没有同时考虑脑电信号的时空信息.

表5 5种方法在三分类实验的平均准确率

4 总结

为了充分提取脑电信号的信息,提高情感识别准确率,本文提出了用于脑电情感识别的3DCNN-BLSTM模型:首先,根据电极的分布位置将多通道一维特征向量转换为二维特征矩阵,充分考虑了脑电通道的空间位置;并将同一时刻不同频带的二维特征矩阵进行叠加构造成三维矩阵,同时使用滑动窗口将三维脑电序列分割成固定长度的片段,并将其输入到3D-CNN特征提取器,以挖掘脑电时空相关信息,充分考虑了脑电信号的时间相关性. 其次,将固定长度的一维特征片段输入到BLSTM特征提取器,以提取脑电信号的前向、反向时序信息. 最后,将时空相关信息以及前向、反向时序信息输入到分类器进行情感识别. 实验结果表明:在DEAP和SEED数据集实验中,3DCNN-BLSTM模型能有效提高脑电情感识别准确率.

猜你喜欢

脑电电信号准确率
认知控制的层级性:来自任务切换的脑电证据*
工作记忆负荷对反馈加工过程的影响:来自脑电研究的证据*
基于成本最小化信息的社会性意图识别:来自脑电和行为的证据*
基于联合聚类分析的单通道腹部心电信号的胎心率提取
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
趋肤效应在交流电信号的影响的研究
基于Code Composer Studio3.3完成对心电信号的去噪