基于深度卷积网络的脑电运动想象分类方法

2019-08-20 01:57陈娇
中国医疗设备 2019年8期
关键词:电信号节律权值

陈娇

南京医科大学附属儿童医院 招标采购中心,江苏 南京 210008

引言

脑机接口是一个多学科交叉的领域,其关键点在于如何准确地对脑电信号进行分类[1-4]。常规的方法是将原始的脑电信号进行特征提取,如AAR 模型、公共空间模式、主成分分析、小波分解和功率谱估计等方法,再将特征值送入分类器进行分类,常见的分类器包括线性判别、支持向量机、贝叶斯分类和神经网络等[5]。

随着深度学习的兴起,卷积神经网络受到研究者的广泛关注,并在图像识别、视频识别和语音识别等领域取得了非常好的效果。而对于生理信号,目前还很少有在卷积神经网络的运用。脑电信号是一种非平稳的信号,同时还具有较强的随机性,这一特点和语音信号有相似的结构,所以卷积神经网络在理论上有运用于脑电信号分类的基础[6-7]。同时传统的神经网络运用于脑电信号分类的主要问题是权值过多,当网络层数较多的情况下,计算量会呈几何级数的增加,极大地影响了收敛速度。而卷积神经网络使用了共享权值的结构,使得计算量大大减少,降低了网络的复杂程度,同时卷积层可以看作是一个特征抽取器,这样就可以省略了特征提取的步骤,将信号直接送入网络。所以卷积神经网络非常适合运用于脑电信号的分类[8]。

使用脑电信号进行左右手运动想象的识别一直是研究的热点问题,尽管相关研究者已经提出了非常多的特征提取算法和分类器,但是更优秀的分类算法可以更好地解码脑电信号,提高运动想象预测的鲁棒性和准确率。在一些相关的文献中,已经有一些将深度学习运用于运动想象分类的研究,但是大多是基于二维的输入组合,同时训练数据不足的问题也影响了分类的训练性能[9-10]。在本文中,我们对左手和右手两种运动想象进行分类,比较不同的分类器的结果,包括了线性分类器、反向传播神经网络和卷积神经网络,同时提出了运用数据增强的方法增加训练数据量,从而解决了训练器泛化能力不足的问题。

1 材料与方法

1.1 信号采集

本文使用了国际的脑机接口竞赛数据(BCI Competition III)的Data Set III 组数据。该数据由脑机接口的权威研究机构格拉茨大学提供[11],电极图和实验流程如图1 所示。电极采用氯化银电极,基于国际通用的10~20 分布系统,放置于C3 和C4 位置,C3 和C4 位于大脑皮层的运动感觉区域,是和运动功能最为相关的大脑区域。实验的一次流程如下所述:① 首先两秒是空白屏幕,被试者保持平静状态;② 从第二秒开始屏幕正中出现一个十字标记,提示被试者准备开始;③ 从第三秒开始屏幕上出现一个向左或者向右的箭头,被试者根据箭头的朝向,想象右手或者左手的运动,这个动作一直持续到九秒。

图1 实验范式

整个实验一共重复280 次,其中140 次是有标记数据,另外140 次是测试数据,没有标记。脑电记录的设备采样率是128 Hz。

1.2 数据预处理

根据神经生理学的研究,人的大脑可以分成四个频率带,在人类进行运动或者运动想象的时候,大脑的对侧运动区域的Mu 节律(8~12 Hz)和Beta 节律(14~30 Hz)的能量显著的减弱,同时同侧运动区域的Mu 节律和Beta 节律能量明显的增强。这种生理现象被人们称为事件相关去同步(Event-Related Desynchronization,ERD)和事件相关同步(Event-Related Synchronization,ERS)。这个生理现象是用来预测左右手运动的根本依据。举个例子,当被试者想象右手运动时候,C3 位置的Mu 节律和Beta 节律会显著的降低,同时C4 位置的Mu 节律和Beta 节律会显著的增加。当被试者进行左手运动想象的时候,C3 和C4 的情况会正好反过来。

经典的ERD/ERS 计算方法是将事件发生前数秒作为基线,在相关频段内计算脑电能量的相对变化。我们先对记录的数据进行处理,将C3 和C4 的信号分别经过8~12 Hz的带通滤波器和14~30 Hz 的带通滤波器,得到4 组数据。同时我们要提取出4 组数据的能量信息,并通过一个ERD/ERS 计算公式来求出平均的ERD/ERS 数据[12-13]。ERD 的公式如下:

公式(1)中x 为信号数据,i 为实验次数,j 为单次实验中的数据序号,N 为重复次数,这里是70。公式(2)求出前k 个数据的平均值做为参考值。公式(3)计算出k 之后的数据和参考值之间的比例,即为ERD/ERS 数据。这样求出来的数据有很多毛刺,我们通过一个平滑滤波器将数据进行平滑,这样可以得到较为平滑的数据。我们提取C3 和C4 的Mu 节律的数据,并计算ERD/ERS 数据,如图2 和图3 所示。

图2 C3电极的Mu节律能量分布

图3 C4电极的Mu节律能量分布

图2 和图3 为ERD/ERS 的计算结果,在右手的运动想象时,C3 处有能量减小的现象,同时在左手运动想象的时候,C4 处有显著的能量减小。同样的在Beta 节律上也有相同的结果。

所以我们保留C3 和C4 两个通道的数据,并分别通过8~12 Hz 的带通滤波器和14~30 Hz 的带通滤波器,这样我们就得到四组数据,每组数据是128 的采样率,持续9 s,一共是1152 个采样点,我们保留中间的1024 个点,并转变它的结构,成为一个32×32 的方阵形式。这样我们就得到了一次实验的数据为4×32×32 的三维矩阵,4 是两个电极的两个带通滤波,32×32 是一次实验的采样点的重构。我们再将实验次数作为最后一个维度,一共是140 次数据。这样就构成了140×4×32×32 的四维数据结构,这就是我们将要送入网络训练的数据结构。

1.3 数据归一化和数据增强

线性判别和支持向量机这两种分类器是寻找数据在低纬度的投影距离,所以并不用考虑数据的归一化问题,但是神经网络不一样,神经网络需要激活函数来激活节点,无论是传统的Sigmoid、Tanh 还是现在流行的ReLU,都需要对数据进行归一化,主要的原因是这些激活函数在节点数据接近于零的时候就等于0,如果输入的数据的绝对值非常接近于0,那么每一个节点的数据激活后就会也接近于0,这种情况下反向传递误差就会接近于0,没有办法有效的修改权重参数,也就是说这个神经网络就无法收敛[14]。

常用的归一化方法有线性归一化、标准差归一化等。这里我们使用标准差归一化的方法,标准差归一化的公式如公式(4)所示。

每一变量值与其平均值之差除以该变量的标准差。虽然该方法在无量纲化过程中利用了所有的数据信息,但是该方法在无量纲化后不仅使得转换后的各变量均值相同,且标准差也相同,即无量纲化的同时还消除了各变量在变异程度上的差异,从而转换后的各变量在聚类分析中的重要性程度是同等看待的。而实际分析中,经常根据各变量在不同单位间取值的差异程度大小来决定其在分析中的重要性程度,差异程度大的其分析权重也相对较大。经过处理的数据符合标准正态分布,即均值为0,标准差为1。

除了使用了标准差归一化的方法,我们还使用批数据标准化技术(Batch Normalization),即对于数据进行分批送入神经网络训练,对于分批的数据独立进行归一化。

在利用卷积神经网络进行训练的时候,我们可以看到训练数据一共有140 组,数据集过小容易造成模型的过拟合,因此我们可以使用数据增强的方式增加数据量,这样可以有效的解决模型过拟合的问题。数据增强方式经常运用于图像的处理中,尤其是图像识别[15],因为图像识别的目的是识别图像的类别,比如图中是猫或者狗或者汽车,所以图像处理中的数据增强一般使用的方法有,水平/竖直翻转、颜色改变、旋转变化、加噪声和随机改变大小等等。我们可以想象,一个图像经过翻转或者改变颜色,扭曲并不会影响它是什么,而脑电信号却比较特殊,因为脑电信号在本质上是一个时间序列,所以不能使用翻转或者扭曲的方法。从另一个角度来考虑,脑电信号是一种非平稳的信号,信号中有大量的噪声,信噪比较低,我们需要从很多噪声的信号中提取有用的信息。同时我们可以从图2 和图3 中看到,经过多次数据的叠加平均,信号特征越来越清晰。所以我们可以认为,为原始信号添加白噪声是一种有效的数据增强方式。本文中我们添加一个10 dB 的高斯白噪声,这个噪声叠加在原信号中,最后我们产生了更多的训练数据。

1.4 分类器

我们分别使用四种分类器进行计算,并对其性能进行对比。四个分类器分别是线性分类器、反向传播神经网络、LeNet 和AlexNet 神经网络。其中LeNet 和AlexNet 是基于卷积神经网络的经典算法,我们根据本文中的数据类型进行一些改动,使其能够适应脑电数据。

1.4.1 线性分类器

线性分类器是一种监督学习,原理是将带标签的数据,通过投影的方法投影到低维的空间形成分类[16]。通常情况下,相同类别的点会靠近,形成一簇。在本文中,我们就是要将左手和右手的数据分别投影到低维空间,左手和右手数据的投影分在两簇。通过两组训练数据,我们求得判别式的ω 和判别阈值ω0。当我们需要计算测试数据属于哪一类的时候,通过公式(5)计算y 值。再比较y 与ω0的大小来决定测试数据属于哪一类。

1.4.2 反向传播神经网络

神经网络是由输入输出,权值阈值和感知器组成的网络,他通过反向传播的算法对权值进行更新,从而有了自适应和自我学习的功能[17]。首先将训练数据送入网络以获得激励响应,然后将激励响应同训练数据的标记计算误差,再通过误差计算出权重梯度,最后将这个梯度乘以一个比例加到权重上进行权重更新。以上步骤反复进行最后得到合适的网络权重。神经网络的结构如图4 所示,输入层一共是32×32=1024 个,隐藏层一共有三层。假设我们的隐藏层也是1024 个单元,那么我们可以计算出来整个网络的权重值一共是3×1024×1024+1024×2 个,每次迭代计算误差后所有的权重值都要进行更新,计算量很大,但这仅仅是一个很简单的网络结构。

图4 反向传播神经网络的结构

1.4.3 LeNet和AlexNet神经网络

我们可以看到反向传播神经网络的计算量非常大,每次更新权值需要消耗大量的时间,这也限制了网络的规模。我们使用了LeNet 和AlexNet 两种新的神经网络结构,可以大大减少计算量,有效地节约计算时间。这两种结构是通过卷积的方法实现了权值共享,这样只需要更新卷积核的权值即可,无需更新所有权值。下面我们来根据我们的脑电数据来设计具体的LeNet 和AlexNet 结构。首先是LeNet 结构,这个结构是Lecun 在解决手写数字问题是设计的网络结构,我们经过一些改进运用于脑电数据的分类,结构如图5 所示。首先最左边是输入,我们的原始数据是一个32×32 的二维矩阵结构,同时它有4 个通道的数据,是一个4×32×32 的结构体。首先经过一次卷积,卷积核是5,边界处理是2,卷积步长是1,这样可以得到一个同样尺寸但是有16 层的卷积结果。然后经过激活函数Sigmoid 和池化降采样,得到一个16×16×16 的数据结构。然后再经过一次卷积,卷积核是5,边界处理是2,卷积步长是1,可以得到一个32×16×16 的数据结构。再经过激活函数Sigmoid 和池化降采样,得到一个32×8×8 的数据结构。最后经过一个全连接层,将数据结构体全展开,最后输入一个线性层得到最终的概率结果。根据这个概率结果就可以分类出是左手还是右手运动想象[18]。

图5 LeNet的卷积网络的结构

由于我们使用了卷积的方法,并且是共用卷积权值,那么数据的计算量就少了很多,每次需要更新的权值也少了。这就是使用LeNet 的意义所在。同时使用了池化降采样的方法,这样可降低网络训练的参数以及解决模型过拟合的问题。

AlexNet 主要是在LeNet 的基础上使用了新的激活函数ReLu 以及更深的网络和Dropout 技术。与LeNet 相比,AlexNet 多了三层卷积层,并且在最后的全连接层使用了Dropout 方法。Dropout 是以一定的概率对神经元输出设置为零,一般概率为0.5。这样设定的神经元既不参与向前计算误差也不参与反向传递误差。这样就等于每次神经网络的计算都是一个新的结构,但是这些结构是共享权值的。这种方法是暂时的,对于随机梯度下降来说,是随机丢弃的,等于是每次训练都是一个不同的网络,可以有效地防止模型过拟合。因为神经元不能依赖于其他某一个特定的神经元,所以这种技术降低了神经元复杂的互适应关系,正因为如此,训练出来的网络更具有鲁棒性[19]。Dropout 只用于最后的网络全连接层。

2 结果和分析

我们一共使用了四种分类器,分别是线性分类器、反向传播神经网络、LeNet 和AlexNet 卷积神经网络。四种分类器的输入特征都是一致的,分别是70 组训练数据和70 组测试数据。首先我们看四种分类器的正确率,结果如表1 所示。

表1 四种分类器的准确率

可以看到,相比于线性分类器,反向传播的神经网络能够将分类准确率提高13%,而两种神经网络又有大约6%的提高,这是因为神经网络有更复杂的网络结构,可以有效地提高分类能力,同时两种卷积网络有效地增加的网络的泛化能力,相比于反向传播神经网络有更好的性能。当年脑机接口竞赛的最好成绩只是87%,两种卷积网络的准确率高于竞赛的成绩。然后我们再对比两种卷积网络的泛化能力,我们将数据增强后的数据放入网络中训练,依然用原来的测试数据。结果如图6 所示。我们可以看到在测试误差上,AlexNet 的表现好于LeNet,但是在训练误差上是相反的,LeNet 的效果好于AlexNet,这说明了在数量较大的情况下,网络容易训练出过拟合的情况,所谓过拟合就是网络在训练集有着非常良好的表现,但是在测试数据集表现反而不如训练集。这是一种常见的问题,以前经常会用正则化的方式来解决问题,这里AlexNet 使用了Dropout 的方法来解决过拟合问题,结果是训练集的误差上升了一些,但是在测试集中的表现更加良好,这样的网络更具有泛化的特点。从图6 可以看出来,使用了Dropout 的AlexNet 在训练集的误差有所提高,但是测试集的误差反而降低了,这说明有Dropout 的AlexNet 具有更好的泛化能力,这说明AlexNet 能够有效地解决大数据情况下的过拟合问题。

图6 两种卷积网络的误差

3 讨论

本文提出并实现了两种基于LeNet 和AlexNet 的卷积神经网络,用来对运动想象的脑电数据进行分类,同时采用了数据增强的处理方法。在两种卷积神经网络上改进了传统的运用于图像的方法,使其适用于脑电数据。试验结果表明,本文提出的方法获得较好的运动识别率,同时相比于传统的反向传播神经网络,降低了计算的复杂度。相比于传统的线性分类器和反向传播神经网络,新的网络的有更好的分类准确率。同时比较了LeNet 和AlexNet 的性能,在数据增强之后,AlexNet 的Dropout 能够使网络获得更好的泛化能力,解决过拟合问题。总体上来看本文提出的两种卷积神经网络算法有着更好的性能。

深度卷积网络有着强大的学习能力,其更有特色的地方在于多种类的分类问题,比如ImageNet 比赛中,分类情况已经达到了1000 种,所以在以后的研究中,可以尝试更多种类的脑电信号分类,比如左手、右手、舌头和腿的四分类情况,甚至是ECoG 的细分到每根手指的分类情况,这样更有助于脑机接口的精细化使用。

猜你喜欢
电信号节律权值
一种融合时间权值和用户行为序列的电影推荐模型
GmELF3s调控大豆开花时间和生物钟节律的功能分析
基于联合聚类分析的单通道腹部心电信号的胎心率提取
空间里的时间:微重力等环境下的生物节律研究
基于5G MR实现Massive MIMO权值智能寻优的技术方案研究
基于Code Composer Studio3.3完成对心电信号的去噪
强规划的最小期望权值求解算法∗
程序属性的检测与程序属性的分类
基于随机森林的航天器电信号多分类识别方法
运用节律跳绳,提高跳绳教学质量