本发明涉及脑电信号的分类方法,特别涉及一种基于改进的脉冲神经网络的ssvep脑电信号识别方法。
背景技术:
1、随着脑机接口(brain computer interface,bci)的发展,通过脑机接口能够识别人类大脑意图的一种方法。对于脑机接口可分为侵入式、非半侵入式及侵入式,其三者放入大脑位置不同,侵入式为植入大脑皮层直接获取脑电信号,可获得高质量的脑电信号,但存在着高风险及成本;半侵入式为获取大脑皮层之外的脑电信号,主要基于皮层脑电图进行脑电信号分析,信号特点介于其它二者之间;非侵入式为获取大脑头皮脑电信号,由于神经元发出电磁波分散性和模糊性,导致采集脑电信号较弱。
2、脑机接口中脑神经信号研究可分为诱发电位和自发脑电,典型的诱发电位有p300和稳态视觉诱发电位两种;自发脑电在大脑不同知觉情况下,脑电信号呈现不同的变化,按照频段可分为δ波、θ波、α波、β波和γ波,其频率依次为0.2hz~3hz、3hz~8hz、8hz~12hz、12hz~27hz、27hz以上;delta波是处于深层次放松和深层次睡眠情况下产生,是一种慢节奏脑电波;theta波存在于人处于恍惚或是催眠情况下的脑电波,会使人处于更放松、开心情况下;alpha波是有意识的思维和潜在意识之间的频段,它能够使人平静,促进更深层次的满足感及放松;beta波是在清醒中最常见的脑电波,能够促进认知推理、计算、阅读、沟通、思考等有意识的状态下发挥作用;gamma波是神经动力科学领域中研究发现较新的波段。
3、本发明研究一种稳态视觉诱发电位(steady-statevisual evoked potential,ssvep)脑电信号识别方法,是采用非接触式及诱发性脑电信号的研究,其原理通过不同频率闪烁设备刺激视觉,例如led灯闪烁、屏幕照片闪烁等刺激,在大脑皮层中产生对应频段的脑电信号,其可通过bci设备采集脑电信息。其影响ssvep的因素由刺激呈现、目标编码、目标识别三方面,本发明采用计算机多图片不同频率刺激,研究通过脉冲神经网络识别脑电信号的方法。
技术实现思路
1、本发明的目的是为了解决采集脑电信号时,非侵入式存在的信号识别质量低,或者侵入式获得高质量的脑电信号存在的高风险及高成本的问题,而提出一种基于改进的脉冲神经网络的ssvep脑电信号识别方法。
2、一种基于改进的脉冲神经网络的ssvep脑电信号识别方法,所述方法通过以下步骤实现:
3、步骤一、采集8路ssvep脑电信号,将采集的每路脑电信号以二维图片存储,并将采集的ssvep脑电信号切分成多段数据,进行数据增强处理,作为改进的脉冲神经网络的数据输入;
4、其中,8路采集作为输入8个通道,其数据结构为80*160*8;
5、步骤二、利用上一步骤处理后的ssvep脑电信号建立训练数据集和测试数据集;其中,训练数据集和测试数据集是按照9:1的比例进行随机分组建立;
6、步骤三、将训练数据集作为输入层送入改进的脉冲神经网络;其中,所述的改进的脉冲神经网络的参数是采用梯度替代方法进行参数训练;
7、步骤四、通过编码层对处理后的ssvep脑电信号进行泊松编码,以将脑电信号转换成脉冲信号;
8、步骤五、通过改进的脉冲神经网络的卷积层进行卷积处理,并在每一次卷积处理后经过脉冲神经网络层进行脉冲信号信息处理;其中,卷积层作为脉冲卷积形式,通道数扩大一倍;
9、步骤六、采用脉冲残差网络设计脑电信号处理网络结构,通过连接层连接后的脉冲信号信息进行脉冲神经元处理;处理后进入池化层进行池化处理,变换数据结构;
10、步骤七、根据前一次残差网络结构,再进行一次残差处理,且仅进行输入、输出尺寸大小的变换;
11、步骤八、经过两次残差后,残差网络处理后进入池化层进行池化处理;之后再进行卷积处理和脉冲处理;之后再通过全连接层的处理,将神经元平铺;
12、步骤九、将全连接层处理后的数据作为输入数据,输入至输出层,通过输出层输出分类后的ssvep脑电信号;
13、步骤十、将各分类的脉冲信号进行解码,得到与各脉冲信号对应的脑电信号;至此,完成脑电信号的分类。
14、进一步地,步骤三所述的改进的脉冲神经网络是通过pytorch和spaic库完成脉冲神经网络搭建的,所述的脉冲神经网络是采用stac学习算法进行训练的,训练次数为200-500轮以上。
15、进一步地,步骤三所述的改进的脉冲神经网络是采用全连接的方式将每个神经元相连接。
16、进一步地,步骤一所述的采集ssvep脑电信号的步骤中,所述的采集操作的时间是6秒钟,所述的ssvep脑电信号是6秒钟内采集的有效脑电数据。
17、进一步地,步骤五所述的在每一次卷积处理后经过脉冲神经网络层进行脉冲神经元信息处理的过程中,共经历2次卷积处理。
18、本发明的有益效果为:
19、本发明采用不同于卷积神经网络的脉冲神经网络,能够使用类脑脉冲神经网络能够减少功耗,脉冲的发放减少运算时间,同样解决小样本的训练泛化能力,训练结果鲁棒性高,使得脑电信号识别能力变强。针对脉冲信息的传递方式,因其反向传播不能做链式偏微分,故无法以这种方式梯度回传,基于诸多研究者研究的多种分类方式,例如无监督学习和有监督学,基于bp训练算法、基于stdp学习规则、ann-to-snn以及其他学习算法,本发明采用stac学习算法,并通过pytorch和spaic库完成脉冲神经网络搭建,通过tensorboard显示测试集损失曲线,进行200轮以上训练,如图5的测试集损失曲线所示,损失曲线在开始阶段出现微浮动上升,最后逐渐下降形成一条光滑的曲线,符合脑电信号分类的趋势,最后训练的结构能够满足其ssvep脑电信号分类。
1.一种基于改进的脉冲神经网络的ssvep脑电信号识别方法,其特征在于:所述方法通过以下步骤实现:
2.根据权利要求1所述的一种基于改进的脉冲神经网络的ssvep脑电信号识别方法,其特征在于:步骤三所述的改进的脉冲神经网络是通过pytorch和spaic库完成脉冲神经网络搭建的,所述的脉冲神经网络是采用stac学习算法进行训练的,训练次数为200-500轮以上。
3.根据权利要求1或2所述的一种基于改进的脉冲神经网络的ssvep脑电信号识别方法,其特征在于:步骤三所述的改进的脉冲神经网络是采用全连接的方式将每个神经元相连接。
4.根据权利要求3所述的一种基于改进的脉冲神经网络的ssvep脑电信号识别方法,其特征在于:步骤一所述的采集ssvep脑电信号的步骤中,所述的采集操作的时间是6秒钟,所述的ssvep脑电信号是6秒钟内采集的有效脑电数据。
5.根据权利要求4所述的一种基于改进的脉冲神经网络的ssvep脑电信号识别方法,其特征在于:步骤五所述的在每一次卷积处理后经过脉冲神经网络层进行脉冲神经元信息处理的过程中,共经历2次卷积处理。