基于深度卷积网络的运动想象脑电信号模式识别文档格式.docx
《基于深度卷积网络的运动想象脑电信号模式识别文档格式.docx》由会员分享,可在线阅读,更多相关《基于深度卷积网络的运动想象脑电信号模式识别文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
![基于深度卷积网络的运动想象脑电信号模式识别文档格式.docx](https://file1.bdocx.com/fileroot1/2023-1/9/293e5b5c-a830-4667-b0da-bfcd2a015d7a/293e5b5c-a830-4667-b0da-bfcd2a015d7a1.gif)
头皮脑电信号(ElectroEncephaloGram,EEG)因其具有较高的时间分辨率、较好的便携性以及非侵入式的优势,现已成为解码大脑认知活动最有效的数据来源之一。
基于EEG的运动想象脑机接口(MotorImageryBrain-ComputerInterface,MI-BCI)属于自发型脑机接口类别,其目的在于准确地辨认出用户的肢体运动意图,常见的包括左手、右手、双脚以及舌头运动的想象[1-2],这对于医疗康复[3]、休闲娱乐等领域具有重要意义。
运动想象脑电信号识别任务的传统研究方法首先需要对EEG信号进行预处理,随后选择合适的方法提取不同认知状态下的脑电特征并挑选出最具识别性的特征子集,最后通过机器学习方法完成对运动想象脑电信号的识别工作。
比如Kevric等利用小波包分解子带中提取的高阶统计特征结合多尺度主成成分分析(MultiscalePrincipalComponentAnalysis,MSPCA)的降噪方法,在BCICompetitionⅢdatasetⅣa数据集上得到了92.8%的平均识别准确率。
Baig等首先利用公共空间模式(CommonSpatialPattern,CSP)算法提取出左右手运动想象状态下的特征集合,然后使用差分进化的优化算法提取各个被试的最优特征子集,最后送入支持向量机(SupportVectorMachine,SVM)中构建分类模型,在BCICompetitionⅢdatasetⅣa数据集上得到了95%以上的平均分类准确率。
传统的机器学习和统计方法面对复杂且往往是非结构化的数据时常常要求一定的特征工程能力,以提取更为有效的特征或者选择更加合适的模型参数,而深度学习可以训练出更抽象也更有效的特征来完成端到端[9]的学习任务。
近年来深度学习方法在机器视觉[10-11]和语音识别[12-13]等领域取得了巨大成功,证明深度学习方法可以很好地找出高维数据中隐藏的复杂结构。
Tabar等[14]利用短时傅里叶变换(Short-TimeFourierTransform,STFT)提取出各通道中μ和β节律的时频信息,并将它们组合成2D信息作为网络的输入,该网络是由卷积神经网络(ConvolutionalNeuralNetwork,CNN)和堆栈自编码器(StackedAutoEncoder,SAE)相结合形成的深层网络,并通过SAE对CNN提取到的特征进行分类,所提出的方法在BCICompetitionⅣdataset2b数据集上的Kappa值为0.547,相较于竞赛第一名有9%的改进。
Tang等[15]提出了一种新型卷积神经网络用于运动想象EEG的模式识别,该网络设置了2层卷积层分别负责提取信号序列中的空间域特征和时间域特征。
该文中使用的数据源自浙江大学自行设计的运动想象实验,每个被试执行左、右手运动想象任务各230次,实验结果表明使用本文提出的新型CNN方法可以获得比传统方法更高的分类精度。
综上所述:
1)卷积神经网络避免了复杂的特征提取过程,且因其具有权值共享和稀疏连接等特性[16],有效地降低了模型的复杂程度,因此,本文考虑将卷积神经网络引入到运动想象脑电信号的识别任务当中。
2)以经验风险最小化原则[17](EmpiricalRiskMinimization,ERM)作为学习规则的网络模型,鼓励网络记忆而不是泛化训练数据,特别是当网络在处理小样本问题时,仅从模型结构上做调整来避免过拟合往往是不够的,还需要在数据层面作进一步处理。
3)深层的网络模型会构成一个庞大的超参数集合,一直以来由于缺乏求解超参集最优组合的理论支撑以及足够穷举所有组合的计算资源,因此需要根据训练样本的特性从不同的角度对超参数的组合进行尝试,以求达到最优的泛化效果。
1数据准备和分类方法
1.1数据集
本文选用BCICompetitionⅡdatasetⅢ运动想象数据集,该数据集记录了一位正常女性被试共280次随机的左右手运动想象实验,以随机的方式挑选出140次实验作为训练集,剩余的140次实验作为测试集,其中训练集包括70次左手想象和70次右手想象。
整个采集过程以128Hz采样频率记录脑电信号,并进行0.5~30Hz带通滤波。
数据采集过程中每单次实验的时间流程如图1所示。
图1单次运动想象任务时序图
Fig.1Sequencediagramofsinglemotorimagerytask
每次实验持续时间共9s,实验开始之后会有2s准备时间,在第3秒开始时会有短暂的声音提示被试即将执行运动想象任务,同时屏幕显示一个交叉十字“+”持续时间为1s,从第4秒开始屏幕会出现一个箭头,被试通过运动想象拖动反馈条向箭头指示方向移动,并保持至第9秒结束。
1.2数据预处理
人在进行肢体运动想象时大脑的运动感觉皮层中的特定位置会发生规律性的电位变化[18],当被试进行单侧肢体运动想象时,大脑对侧皮层中μ节律(8~12Hz)的强度减小,同侧皮层中β节律(12~25Hz)的强度增加,称为事件相关去同步(EventRelatedDesynchronization,ERD)和事件相关同步(EventRelatedSynchronization,ERS)现象[19]。
这两种现象是判别不同类型脑电信号的重要依据,其中时频域分析法是最为高效的分析方法之一[20]。
1.2.1短时距傅里叶变换
短时距傅里叶变换先将整段时间序列切分成若干等长的时间片段,再通过傅里叶变换计算出各个时间片段当中的频谱信息,从而获得各频率成分关于时间的变化。
其计算公式如下:
其中:
S(n)代表脑电信号的时间序列;
W(n)表窗口函数;
N
代表记录的时间点总数;
k表示不同时间窗的索引;
f代表信号中的频率成分;
n
代表时间点。
公式中要求划分的时间窗口长度相同,决定了该算法在测量高频成分时表现良好,而在测量低频成分时往往会伴有失真现象。
为有效测量信号中μ节律和β节律的变化趋势,本文选用长度为0.5s的时间窗口配合Hamming窗口函数得到的时频矩阵如图2所示。
最后将C3、C4两个通道上的时频矩阵进行组合,得到33×
35×
2大小的三维张量作为后续卷积神经网络的输入。
1.2.2连续Morlet小波变换
Morlet小波变换属于连续型小波变换(ContinuousWaveletTransform,CWT),它以有限长度且会衰减的小波作为基底来测量信号中各个频率成分强度随时间的变化,其公式如下:
x(t)代表信号序列;
ψ(t)代表小波基底;
t代表时间点;
参数a
控制小波函数的伸缩,当a
从小到大取值时,小波函数逐渐变宽,于是可以更好地对低频成分作出测量,并且通过对参数b
的调整控制小波函数的平移进而得到不同时域位置上各个频带的强度信息。
Morlet小波中心时间和时域跨度的计算公式如下:
Ψ(ω)是ψ(t)经过傅里叶变换以后得到的频率成分信息。
由式(3)~(7)可知,小波变换在测量高频成分时,由于使用的小波较窄,可以获得较小的时域跨度,但相应地会使频域跨度变大,因此在输出的时频矩阵中,高频部分频率维度的解析度相对偏低,低频部分则正好相反。
本文使用Morlet小波变换得到的结果如图3所示。
同样地,将C3、C4通道位置信息进行整合,得到大小为35×
1152×
2的样本矩阵作为神经网络的输入。
图2STFT运动想象时频图
Fig.2STFTmotorimagerytime-frequencymap
图3CWT运动想象时频图
Fig.3CWTmotorimagerytime-frequencymap
2卷积神经网络的构建
2.1网络拓扑结构
为了能够训练出同时间、频率和空间三个维度均相关的高阶特征,构建出的CNN模型如图4所示。
为方便后续讨论称该网络为MixedCNN。
具体的拓扑描述如下:
Input输入层接收的样本尺寸为F×
T×
C。
C1卷积层使用的卷积核大小为3×
3×
2,经该层卷积运算后共向外输出64个特征矩阵。
C2卷积层使用的卷积核大小为3×
64,并向后输出64个特征矩阵。
Pool池化层用于对C2层的输出进行降采样操作以缩减模型的计算规模,池化窗口大小为2×
2。
FC1和FC2全连接层分别包含600和300个神经元,为避免出现过拟合现象,引入50%的Dropout策略,使用的激活函数为ReLu。
Output层仅共包含2个神经元,代表网络的2类输出结果(左手运动想象、右手运动想象)。
为了避免在同一个卷积核内混入不同维度的信息,本文另外设计了一套可以依次对空、时、频三个维度的特征进行提取的网络模型如图5所示。
为方便后续讨论将该网络记作StepByStepCNN。
具体的网络拓扑描述如下:
C1卷积层使用大小为1×
1×
2的卷积核对C3、C4通道的空间信息进行整合,并向后层输出4个特征矩阵。
C2卷积层针对C1层输出的每一个特征矩阵设计了16个大小为F×
1的卷积核以提取其频域特征,
共得到64个1×
T大小的特征矩阵。
C3卷积层使用16个大小为1×
6的卷积核对输入的每张特征矩阵进行时域上的特征提取。
FC1和FC2分别包含500个和200个神经元,激活函数选用ReLU,且引入了50%的Dropout机制并最终配合输出层完成对样本的识别工作。
图4MixedCNN拓扑结构
Fig.4MixedCNNtopologystructure
图5StepByStepCNN拓扑结构
Fig.5StepByStepCNNtopologystructure
2.2CNN的学习过程
在MixingCNN网络中将F×
C
的输入张量记作a(0),网络中各层的计算描述如下:
Convolution1:
对输入张量执行卷积操作。
上标代表层数;
下标s
和i
分别代表该卷积层内卷积核的个数和卷积操作执行的次数
分别表示第s
个卷积核的权重和偏置
均为3×
2大小的矩阵;
f(x)选择ReLU激活函数,输出的每个
特征矩阵的维度为F×
T。
Convolution2:
对C1层的输出数据进行卷积计算:
与C1卷积层的学习过程类似
分别代表3×
64大小卷积核的权重和偏置。
Pool1:
对C2的输出执行最大池化操作,最大子采样函数取区域内所有输出的最大值(max-pooling),输出矩阵的大小npool可以由式(12)计算:
为特征矩阵的原始尺寸;
p
为边缘填充数量;
f
为池化窗口的大小;
s代表步长;
池化层的输出记为a(3)。
FC1:
该层中每一个神经元均与前一层所有神经元相连接,负责对训练得到的特征进行分类。
p(4)为Dropout比例,且该操作仅在训练过程中执行[21];
分别代表输入权重和偏置。
FC2:
由于深层结构的网络比相同神经元数量的浅层网络具有更好的表达非线性关系的能力,为此增加了FC2全连接层,其计算过程和FC1完全相同:
同样地,在StepByStepCNN网络中将输入张量记作a(0),网络中各层的计算描述如下:
对输入张量做空间域卷积,
为确保上述两种网络可以得到有效的训练,采用在期望为0,方差为2/nl正态分布中随机采样的方式对各层神经元的权重进行初始化,其中nl
为第l
层神经元的个数,以避免损失函数全程不下降问题。
网络采用带有动量的梯度下降算法对损失函数进行优化,学习率设置为0.001,最大迭代次数设置为300。
2.3分类
本文根据EEG信号的时-频-空特性,设计了两种不同卷积策略的网络模型;
然后将STFT和CWT预处理得到的样本分别放入MixedCNN和StepByStepCNN进行训练,最终得到四组模型;
接着,使用准确率、精确率、灵敏度、特异性以及ROC曲线下面积(AreaUnderCurve,AUC)对其进行评估,并同时与CSP+SVM[22]、自适应自回归模型(AdaptiveAutoregressiveModeling,AAR)+LDA[23]、离散小波变换(DiscreteWaveletTransform,DWT)+长短时记忆网络(LongShort-TermMemory,LSTM[24])和STFT+SAE[14]四种方法相比较;
最后,挑选出识别性能最佳的模型并以此作为baseline探讨mixup数据增强对模型泛化性能的影响。
3mixup数据增强
不同于翻转、平移、高斯噪声等通用数据增强方法,mixup[25]采用对不同类别之间进行建模的方式实现数据增强。
mixup数据增强受邻域风险最小化策略[26]启发构建出一种通用的邻域分布来近似真实分布,不同于Chapelle等[26]提出的高斯邻域,mixup邻域的数学表示如下:
λ~Beta(α,α),α
∈(0,∞);
mixup使用从该邻域采样得到的虚拟样本-标签对构成新的训练数据,并以最小化式(28)对网络参数进行调整。
f()表示模型函数;
ℓ()表示损失函数;
m表示虚拟样本的数量。
Zhang等[25]指出当α
在区间[0.1,0.4]内取值时可以获得比ERM学习规则更好的泛化性能。
在实验中将超参数α分别设置为0.1、0.2、0.3、0.4并在每个batch范围内将训练数据和标签分别做加权求和组成新的虚拟样本集合。
在损失函数构建方面,需要将输出的预测值分别与两组标签求出损失,并与之前真实样本分配的权重进行加权求和。
4实验与结果分析
4.1模型分析及对比
本文提出的4种分类模型:
CWT+MixedCNN、CWT+StepByStepCNN、STFT+MixedCNN、STFT+StepByStepCNN在测试集上计算出的评价指标如表1所示。
表1实验组模型的评价指标
Tab.1Evaluationindecesofmodelsinexperimentalgroup
对于当前被试的运动想象脑电数据,在相同预处理方式下,选择MixedCNN比选择StepByStepCNN训练出的分类模型具有更好的识别准确率,且使用CWT预处理方法配合MixedCNN训练得到的模型准确率最高,达到了92.14%。
另一方面,相较于CWT,STFT预处理方法得到的样本在StepByStepCNN上训练出的模型在准确率指标上更好。
在使用相同卷积网络模型的前提下,采用STFT预处理方式得到的模型在精确率指标上表现更加突出。
STFT+MixedCNN和CWT+StepByStepCNN两种方案在灵敏度指标上保持一致,CWT配合MixedCNN方法在灵敏度指标上相较于其他3种方法至少提升了超过4个百分点。
在采用相同卷积策略的条件下,预处理方式选择STFT相较于CWT训练出的模型在特异性指标上表现更好,其中采用STFT+StepByStepCNN方案所得到的特异性指标最高,达到了95.71%。
最后,采用MixedCNN结构的网络训练出的模型在AUC指标上略优于StepByStepCNN训练出的模型。
为与以上方法相比较,本文在BCICompetitionⅡdatasetⅢ数据集合上复现了另外4种分析方法(CSP+SVM、AAR+LDA、DWT+LSTM、STFT+SAE),并在测试集上得到其评价指标如表2所示。
其中STFT+SVM方法在准确率指标上高于本文提出的CWT+StepByStepCNN、STFT+MixedCNN、STFT+StepByStepCNN方法,以及另外3种对比方法。
在特异性指标上STFT+SAE方法和STFT+StepByStepCNN方法保持一致,且在精确率指标上高于STFT+StepByStepCNN方法。
CWT+MixedCNN方法在准确率、灵敏度和AUC三种指标上分别高出STFT+SAE方法0.71个百分点,4.29个百分点和0.69个百分点。
表2对照组模型的评价指标
Tab.2Evaluationindecesofmodelsincontrolgroup
4.2mixup数据增强分析
本文选用准确率最高的CWT+MixedCNN方法作为mixup数据增强策略的baseline,其训练损失和测试损失如图6所示,当迭代训练达到500次左右时模型基本处于收敛状态,此后验证损失保持在0.6左右上下浮动。
图6CWT+MixingCNN损失曲线
Fig.6LosscurvesofCWT+MixedCNN
样本经mixup数据增强处理之后,送入MixedCNN训练过程中模型在测试集上的损失曲线如图7所示。
当α=0.1、0.2、0.4时其测试损失相较于baseline均无明显改善;
当α=0.3,且模型处收敛状态时,测试损失稳定在0.5上下,相较于baseline降低了0.1左右。
图7四种α取值下的模型测试损失
Fig.7Modeltestlossunderfour
α
values
取值对模型准确率的影响如表3所示,当α=0.1、0.2时,相较于baseline方法准确率降低了0.71个百分点;
当α=0.3、0.4时,模型的准确率分别提高了1.43个百分点和0.71个百分点。
表3
α对模型准确率的影响
Tab.3Influenceof
onaccuracy
5结语
本文创新性地将深度学习框架引入对运动想象EEG信号的识别任务当中。
首先,利用STFT和CWT获得EEG信号的时频信息,并将其与电极通道的位置信息相结合构成样本数据,然后针对所构建样本数据的特性分别设计了两种基于不同卷积策略的CNN,并在10折交叉验证过程中完成最优超参数的选择。
其次,在CompetitionⅡdatasetⅢ数据集上分别建立了4组实验组分类模型和4组对照组分类模型,测试结果表明,本文所提出的所有方法相较于CSP+SVM、AAR+LDA、DWT+LSTM有了明显的改善,且CWT+MixedCNN方法在准确率、灵敏度、AUC指标上均高于STFT+SAE,体现了更好的分类性能。
最后,为进一步提高模型的泛化能力,在CWT+MixedCNN方法上引入了mixup数据增强策略,通过对比实验发现,当α
取值为0.3时mixup策略显著降低了模型的测试损失并将模型的准确率指标提升了1.43个百分点。
本文所做工作验证了深度卷积神经网络和mixup数据增强策略在运动想象脑电信号识别任务当中的有效性,可为运动想象脑机接口的应用提供方法和思路上的参考。