一种基于深度学习的运动想象脑电信号分类方法与流程

文档序号:17725774发布日期:2019-05-22 02:30阅读:440来源:国知局
一种基于深度学习的运动想象脑电信号分类方法与流程
本发明属于模式识别和脑-机接口
技术领域
,具体涉及一种基于深度学习的运动想象脑电信号分类方法。
背景技术
:脑-机接口(brain-computerinterface,bci)是一项新兴的技术,为大脑和外部设备建立了沟通的桥梁,使得外部设备能够直接用大脑中的信号来指导外部的活动,比如控制假肢,电动轮椅的移动等。脑-机接口技术应用领域十分广泛,如用于智能家居,智能医疗,智能娱乐等领域。基于运动想象脑电信号的脑-机接口是该技术的主要应用,通过分析大脑进行想象运动的脑电信号,识别大脑状态和活动,来达到控制外部设备的目的。一个典型的脑-机接口系统主要包含信号采集及预处理、特征提取、特征分类、控制命令输出,其中脑电信号分类识别最为关键,包括特征提取与特征分类。由于脑电信号的不平稳性,低信噪比等特点,使得分析脑电信号并识别状态困难重重,所以寻找最适合脑电信号的特征提取与分类的方法是提高脑电信号分类准确率的核心。传统的脑电信号分类方法主要是用功率谱、小波变换等方法提取特征结合支持向量机、人工神经网络对提取到的特征进行分类,但对脑电信号预处理的要求较高,分类准确率还不够高,速度较慢。技术实现要素:为解决现有技术中存在的问题,本发明的目的在于提供一种基于深度学习的运动想象脑电信号分类方法,通过该方法能够提高运动想象的分类准确率和分类速度。为了实现上述目的,本发明采用如下技术方案:一种基于深度学习的运动想象脑电信号分类方法,包括以下步骤:s1:采集原始脑电信号数据集;s2:原始脑电信号在时间指标t时是一维数据,对原始脑电信号数据集做零均值归一化预处理,并将零均值归一化预处理得到的一维数据划分为训练集、验证集和测试集;s3:把s2划分得到的训练集、验证集和测试集按照采集时采集点的位置转为二维的数据,分别得到对应得二维的训练集、验证集和测试集;s4:构建能够对s3得到的二维数据分类的卷积神经网络模型,使用s3得到的二维的训练集和验证集对所述卷积神经网络模型进行训练得到运动想象脑电信号分类模型,使用s3得到的二维的测试集对运动想象脑电信号分类模型进行测试,检验运动想象脑电信号分类模型性能;s5:利用s4得到的运动想象脑电信号分类模型对运动想象脑电信号分类。所述s1中,采用10-10法的eeg放大器采集原始脑电信号数据,并选取所有采集点位置;让每个受试者进行实验,并采集原始脑电信号数据;进行实验时,在受试者面前设置一个屏幕,屏幕上设置一个目标;首先让受试者做睁眼和闭眼的运动,睁眼和闭眼均持续时间为t1;接着进行以下实验,每次实验均持续时间为t2;当目标出现在屏幕的左边或右边时,受试者分别进行左手或右手的运动;当目标出现在屏幕的左边或右边时,受试者分别想象进行左手或右手的运动;当目标出现在屏幕的上边或下边时,受试者分别进行双手或双脚的运动;当目标出现在屏幕的上边或下边时,受试者分别想象双手或双脚的运动。所述s2具体包括以下步骤:s21:选取s1中受试者想象运动过程中采集的采集原始脑电信号数据;s22:对s21选取的数据进行筛选,滤掉严重受损的以及采样频率不是预设值的原始脑电信号数据;s23:对s22筛选得到的原始脑电信号数据进行数值扩大处理,并进行向下取整的操作;s24:对s23得到的数据做零均值归一化的预处理;s25:将s24得到的数据划分为训练集、验证集与测试集。s25中,训练集、验证集与测试集中数据个数的比例为8:1:1。所述s3中,采用以下方式将s2划分得到的训练集、验证集和测试集按照采集时采集点的位置转为二维的数据:其中,e1,64代表时间t时的1d脑电信号,共64列;chx代表每个电极采集的信号大小,x对应于电极的序号;g10,11代表时间t时的2d脑电信号,形状为10×11。所述s4中,所述卷积神经网络模型包括8层,按顺序分布为1层输入层、1层卷积层、1层池化层、3层卷积层、1层全连接层以及1层输出层,其中:按分布顺序,每个卷积层的卷积核数量分别为32、64、128和128,卷积核的大小都为3×3,步长均为1,激活函数为elu函数;在每层卷积层都添加了批归一化,构成conv+bn+elu模式;池化层为最大池化层,卷积核的大小为2×2,步长为2;全连接层的神经元个数为512个,激活函数为elu函数,最后输出层,有5个神经元,激活函数为softmax函数;在连接层之后添加了dropout层,按照设置概率0.5随机屏蔽掉一部分神经元。所述s4中,在训运动想象脑电信号分类模型时,采用adam优化器,并在训练时做梯度裁剪,限制最大的梯度;在训练运动想象脑电信号分类模型时,在每层卷积层的权重初始化中采用he正态分布初始化方法,方法如下:其中,nin为权重张量的扇入,wi,j为每层卷积层的权重参数;将测试集送入训练好的运动想象脑电信号分类模型中,得到运动想象脑电信号的分类正确率。做梯度裁剪时,对超过阈值的梯度值进行规约,规约的公式如下:其中,‖w‖2是张量w的二范式,clip_norm是阈值。相对于现有技术,本发明具有以下有益效果:传统对脑电信号的分类算法要做复杂的预处理与特征提取,而本发明基于深度学习的运动想象脑电信号分类方法摒弃了传统方法,用近乎不做处理的原始数据构建模型,并把采集到的脑电数据模仿实际采集时的排列形状来获得更加实际的空间关系,提高了分类的准确率,同时,本发明采用时间点的数据而不是时间窗口的数据来做分类,降低了数据的冗余,还提高了分类速度。本发明利用深度学习的方法能够降低对脑电信号预处理的要求,提高分类效率,与传统的方法相比,深度学习的方法具有学习速度快,泛化性能好,分类准确率高等优点。附图说明图1是本发明的基于深度学习的运动想象脑电信号分类方法的流程示意图;图2是本发明实施例脑电信号采集时电极的放置排列形状,按照国际脑电图协会标定的10-10法采集;图3是本发明设计的用于分类运动想象脑电信号的深度学习模型结构图。具体实施方式下面结合附图和实施例对本发明的具体实施方式作进一步详细描述。以下实施列用于说明本发明,但不用来限制本发明的范围。实施例请参阅图1,本实施例的基于深度学习的运动想象脑电信号的分类方法,包括如下步骤:步骤1:实验数据的采集,即采集原始脑电信号数据集,采集时受试者带上电极帽,原始脑电信号是通过64导国际脑电图协会标定的10-10法的eeg放大器进行采集,并选取所有电极位置,每个受试者会进行14次实验,采集的时候,受试者做到椅子上,在受试者面前有一个屏幕,屏幕上有一个目标:前两次实验是持续1min的基础实验,基础实验包括眼睛的睁开和紧闭,即前两次实验时,眼睛睁开1min,眼睛紧闭1min;然后是循环三次的实验,每次实验是持续8min的4类实验任务,每类实验持续2min。第一类实验任务为:在屏幕的左边和右边分别出现目标,当左边出现目标时,受试者打开或者紧闭左手,直到目标消失;当右边出现目标时,受试者打开或者紧闭右手,直到目标消失;第二类实验任务为:在屏幕的左边或右边分别出现目标,受试者想象打开或者紧闭对应的左右拳头直到目标消失;第三类实验任务为:在屏幕的顶端和底端分别出现目标,受试者打开或者紧闭对应的拳头(目标处于顶端时)和脚(目标处于底端时)直到目标消失;第四类实验任务为:在屏幕的顶端和底端分别出现目标,受试者想象打开或者紧闭对应的拳头(目标处于顶端)和脚(目标处于底端)直到目标消失;第一~第四类任务的操作过程类似,各循环三次。因为采集信号用的是64导国际脑电图协会标定的10-10法的eeg放大器进行采集,所以数据包含64维数据,采样频率是160hz。步骤2:对原始脑电信号进行预处理,预处理包括五个步骤:步骤21,通过109个受试者来采集原始脑电信号数据,每个受试者进行步骤1所述的14次试验,实验情况如表1所示:表1实验名称实验序号基础实验:睁眼、闭眼01、02运动实验:左右手03、07、11想象运动实验:左右手04、08、12运动实验:双拳双脚05、09、13想象运动实验:双拳双脚06、10、14如表1所示,由于感兴趣的是受试者做运动想象时的脑电信号,所以对每个受试者只选择第02、04、06、08、10、12和14次实验来作为原始数据集;步骤22,如果原始数据存在严重受损的数据,以及采样频率不是160hz的数据,为了后续运动想象脑电信号分类模型的性能考虑,滤掉那些严重受损的以及采样频率不是预设值的原始脑电信号数据;步骤23,为了数据便于观察和处理,对原始数据做了数值扩大,数值扩大了106倍,并对数据做了向下取整的操作;且把受试者在做想象运动中的间隔数据去掉,如:左手右手的想象运动,在做完左手后会有一段时间间隔再做右手,把间隔时间的这段数据做了处理,进行去除;每个受试者进行的是5类想象运动:即闭眼休息、左手、右手、双拳、双脚;这5类想象运动的状态标签值分别设置为0、1、2、3、4;受试者在闭眼休息时候状态标签值为0,由于受试者在做想象运动实验的时候也会有休息,因此只采用闭眼休息的数据作为休息的数据,所以把受试者在做想象运动时的休息数据剔除掉;受试者想象运动向左、向右、向上和向下的状态标签值对应分别为1、2、3和4;对受试者的数据进行整合,每个受试者的数据大概是68000个时间数据点,为了实验数据方便,对每个受试者选取了前63000个时间数据点作为输入数据,每个受试者输入数据的形状为63000×64步骤24,对步骤23得到的数据做零均值归一化,即把不同电极的数据归一化到均值为0,标准差为1的分布上,使得后续运动想象脑电信号模型训练时权重在迭代中更新速度变得一致,更容易通过梯度下降法找到最优解;步骤25,对步骤24得到的数据进行训练集、验证集与测试集的划分训练集、测试集和验证集数据个数的比例为8:1:1;步骤3:如图2所示,每个电极(channel)在实际中周围都是有3-4个电极,而在原始数据中是一维的,周围最多只有2个电极,这与实际采集是不相符的,所以把一维的电极转为二维的电极网格的形式去更好的找到电极之间的空间关系,达到更好的分类效果;因此分别把步骤25得到的训练集、验证集和测试集的64个电极数据转为类似脑电图的2d数据(10,11),即把本来是一行排列的64个电极的脑电数据转为采集脑电信号时64个电极排列的形状;转换方式:步骤4:构建能够有效分类运动想象脑电信号的深度卷积神经网络;该深度卷积神经网络一共8层,如图3所示,按顺序分布为1层输入层、1层卷积层、1层池化层、3层卷积层、1层全连接层和1层输出层;每个卷积层的卷积核数量依次分别为32、64、128和128,卷积核的大小都为3×3,步长均为1,激活函数为elu函数;池化层为最大池化层,卷积核的大小为2×2,步长为2;全连接层的神经元个数为512个,激活函数为elu函数;最后输出层,有5个神经元(因为是5分类任务),激活函数为softmax函数;此外,在每层卷积层都添加了批归一化(batchnormalization),构成conv+bn+elu模式,加速网络收敛;在连接层之后添加了dropout层,按照设置概率0.5随机屏蔽掉一部分神经元,防止发生过拟合。此外,在每层卷积层都添加了批归一化(batchnormalization),算法过程如下:假设有一批m个数据x1,x2,……xm,γ和β是两个可学习的参数,输出为y1,y2,……,ym,首先计算当前这批数据的均值μb和方差然后对数据进行归一化:最后对归一化的数据进行缩放和变换:使用批归一化后,每一层网络参数在训练时依旧在不断改变,但每一层网络输入分布的均值和方差不变,降低了前一层网络参数变化对后一层输入分布的影响能力,使得网络参数学习更加独立,网络收敛速度更快。在前两个全连接层之后添加了dropout层,按照设置概率0.5随机屏蔽掉一部分神经元,防止发生过拟合。在每层卷积层中还使用了l2正则化,正则化的参数设为0.001,来防止模型过拟合。步骤5:使用训练集和验证集对卷积神经网络进行训练,得到运动想象脑电信号分类模型,使用测试集对运动想象脑电信号分类模型进行测试,检验网络性能。在训练运动想象脑电信号分类模型的时候,本发明用的优化器为adam优化器,并在训练的时候做了梯度裁剪,限制最大的梯度。使用梯度裁剪主要是为了防止梯度爆炸,对超过阈值的梯度值进行规约,使优化算法相对更加数值稳定,规约的公式如下:其中,‖w‖2是张量w的二范式,也就是对其所有元素的平方值求和后开根号,clip_norm是阈值,当超过一定阈值的时候才会对梯度做相应的收缩。在训练运动想象脑电信号分类模型时候,在每层卷积层的权重初始化中使用he正态分布初始化方法,方法如下:he正态分布初始化方法就是让权重的参数由均值为0,标准差为的正态分布中产生,其中nin为权重张量的扇入。采用训练集和验证集来对构建出的模型训练,得到模型的参数,然后保存模型的参数,在测试集上测试,最后得到的平均准确率在90%左右,能够实现对运动想象脑电信号的有效分类。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1