论文阅读 EEGNet
EEGNet: A Compact Convolutional Neural Network for EEG-based Brain-Computer Interfaces
EEGNET网络结构解析与复现 | 青椒的学习笔记
0. 摘要
传统基于CNN的脑机接口(BCI)研究多针对单一类型的任务(如P300分类、运动想象分类),并针对该任务的特定脑电信号特征设计模型。然而,不同BCI任务(如事件相关电位ERP和振荡节律信号)的脑电特征差异显著(如时域波形与频域节律),因此针对某一任务优化的CNN架构是否能在其他任务中保持良好性能尚未验证。这种局限性导致CNN模型的通用性存疑,即能否设计一个统一架构适应多种BCI范式。
是否可以设计一个单一的CNN架构来准确地分类来自不同BCI范例的EEG信号,同时尽可能紧凑(定义为模型中参数的数量)?在这项工作中,我们介绍EEGNet,一个紧凑的卷积神经网络,用于基于EEG的BCI。
EEGNet首次验证了单一CNN模型在多种BCI任务(P300、ERN、MRCP、SMR)中的泛化能力。
1. 数据和方法
BCI一般分为两种类型:事件相关和振荡。
1.1 事件相关电位(ERP)
- 定义:基于事件相关电位(Event-Related Potentials, ERP)的BCI。这类BCI依赖与特定外部事件(如视觉、听觉或运动刺激)直接相关的、时间锁定的脑电信号。
- 特点:
- 同步性:需要用户根据外部提示或刺激(如闪烁的字母、声音提示)执行任务,信号与事件严格时间同步。
- 高信噪比:ERP通常是低频、高幅值的波形(如P300、ERN、MRCP),由外部刺激诱发,特征明确且易检测。
- 应用场景:拼写器(P300 Speller)、错误反馈系统(ERN)、运动意图检测(MRCP)等。
- 典型例子:
- P300:视觉刺激(如闪烁的字母)后约300ms出现的正电位,用于目标识别。
- ERN(错误相关负波):在用户感知到错误反馈后约50-150ms出现的负向电位。
- MRCP(运动相关皮层电位):与自主运动准备和执行相关的慢电位变化
1.2 振荡型bci
- 定义:基于自发或诱发的脑电节律振荡的BCI。这类BCI依赖特定频段(如μ节律、β节律)的功率变化,通常与内在的神经活动相关。
- 特点:
- 异步性:无需外部事件触发,用户可自主控制(如想象运动),系统持续监测脑电节律。
- 低信噪比:振荡信号(如μ波、β波)幅值低,易受噪声干扰,需长期训练和特征增强(如空间滤波)。
- 应用场景:运动想象(Motor Imagery)、神经反馈训练、连续控制(如光标移动)。
- 典型例子:
- SMR(感觉运动节律):μ节律(8-12Hz)和β节律(18-26Hz)的功率变化,与运动执行或想象相关。
- ERSP(事件相关频谱扰动):特定频段功率在事件后的增强(同步)或减弱(去同步)。
特征 | 事件相关型 | 振荡型 |
---|---|---|
信号类型 | 时间锁定的ERP(低频、高幅值) | 节律振荡(频段功率变化) |
依赖外部刺激 | 是(如视觉/听觉触发) | 否(自主控制) |
时间同步性 | 严格同步(刺激-响应) | 异步(持续监测) |
训练复杂度 | 较低(特征明确) | 较高(需用户适应节律变化) |
典型范式 | P300、ERN、MRCP | 运动想象(SMR)、μ节律反馈 |
1.3 数据集
1.3.1 P300事件相关电位
属于事件相关电位(ERP)的一种。在刺激呈现后约 300毫秒(ms) 左右出现的正向波峰。
- 潜伏期:典型潜伏期为刺激后 250-500ms,峰值在300ms左右。
- 极性:正极性(Positive deflection)。
- 幅值:较高(通常为5-20μV),在顶叶中线区域(如Pz电极)最显著。
- 诱发条件:由注意资源分配和背景更新(Context Updating)的认知过程触发,常见于非预期或具有任务相关性的刺激。
1.3.2 反馈错误相关负波(ERN)
一种与错误监测和认知控制相关的神经电活动信号,属于事件相关电位(ERP)的一种。通常出现在个体感知到自身错误或接收到外部错误反馈后的短暂时间内。
- 潜伏期:ERN通常在错误发生或接收到错误反馈后的 50-150毫秒(ms) 出现。
- 极性:负向波(Negativity),表现为EEG信号的短暂负向偏移。
- 脑区分布:在额叶-中央区(如FCz电极)最显著,与前扣带回皮层(Anterior Cingulate Cortex, ACC)的激活密切相关。
- 幅值:幅值较小(通常为1-5μV),需通过多次试次叠加平均增强信噪比。
1.3.3 运动相关的皮层电位(MRCP)
属于事件相关电位(ERP)的一种,与自主运动准备、执行和恢复密切相关。
- 时间特性:
- 准备电位(Readiness Potential, RP):运动开始前 1-2秒 出现的缓慢负向电位,与运动计划和准备相关。
- 运动电位(Motor Potential, MP):运动执行时(动作起始点附近)出现的快速负向波,与初级运动皮层激活相关。
- 恢复电位:运动结束后逐渐恢复至基线水平的电位变化。
- 极性:主要为负向波(基线以下)。
- 幅值:较低(约1-10μV),需多次试次叠加平均以提高信噪比。
- 脑区分布:
- RP:前额叶、辅助运动区(SMA)、顶叶。
- MP:初级运动皮层(M1)、中央区(Cz电极附近)。
1.3.4 感觉运动节律(SMR)
与感觉加工和运动控制相关的特定频段神经振荡信号,主要表现为μ节律(8-12Hz)和β节律(18-26Hz)。
- 频段划分:
- μ节律(Mu Rhythm):8-12Hz,主要集中在感觉运动皮层(中央区,C3/Cz/C4电极附近)。
- β节律(Beta Rhythm):18-26Hz,与μ节律协同变化,反映精细运动控制及运动后抑制。
- 运动控制:
- 运动执行:实际肢体运动(如握拳)引发对侧感觉运动皮层ERD。
- 运动想象:仅想象运动(无需实际动作)也可诱发类似ERD模式,是BCI的操控基础。
- 运动想象分类:
- 通过解码左右手/脚运动的想象意图,控制虚拟光标、轮椅或机器人假肢(如BCI Competition IV Dataset 2A)。
1.3.5 BCI Competition IV Dataset 2A数据集
-
实验对象:9人参与,每人做 2次实验(不同日期),每次实验包含 6组任务,每组任务有48次尝试(4类运动想象,每类12次)。一轮用于训练,另一轮用于测试。
-
任务内容:
- 想象动左手、右手、双脚、舌头(4类任务)。
- 每次实验开始前,记录 5分钟眼部活动(睁眼、闭眼、眼动),用于排除眨眼干扰。
-
注意项:
- 受试者A04T的眼动数据较短(仅记录了眼动部分),分析时需留意。
总时长8秒:
- 提示音(Beep, 0-1秒) →
- 注视十字(Fixation cross, 1-2秒) →
- 指令提示(Cue, 2-3秒) →
- 运动想象(Motor imagery, 3-6秒) →
- 休息间隔(Break, 6-8秒)
参数 | 数值/描述 |
---|---|
受试者数量 | 9 |
任务类别数 | 4(左手、右手、双脚、舌头) |
每会话运行次数 | 6 |
每运行试验次数 | 48(每类12次) |
每会话总试验次数(样本量) | 288 |
EOG记录总时长 | 5分钟 |
2. 模型架构
2.1 BLOCK1
在block 1中,我们依次执行两个卷积步骤。首先,我们拟合大小(1,64)为F1的2D卷积滤波器,滤波器长度为数据采样率(这里是128Hz)的一半,输出包含不同带通频率脑电图信号的F1特征图。将时间核的长度设置为采样率的一半,允许捕获2hz及以上的频率信息。然后我们使用大小为(C, 1)的深度卷积来学习一个空间滤波器。在计算机视觉的CNN应用中,深度卷积的主要好处是减少了可训练参数的拟合数量,因为这些卷积并没有完全连接到所有以前的特征映射(参见图1)。重要的是,当用于脑电图特定的应用时,该操作提供了一种直接的方法来学习每个时间滤波器的空间滤波器,从而能够有效地提取特定频率的空间滤波器(见图1的中间列)。深度参数D控制每个特征映射要学习的空间滤波器的数量(为了便于说明,图1中显示了D = 1)。这种两步卷积序列的灵感部分来自于滤波器组公共空间模式(FBCSP)算法,并且在本质上类似于另一种分解技术,双线性判别分量分析。我们保持两个卷积都是线性的,因为我们发现在使用非线性激活时没有显着的性能提高。在应用指数线性单元(ELU)非线性之前,我们沿着特征图维度应用批量归一化。为了帮助正则化或建模,我们使用dropout技术。我们设置了被试内分类的dropout概率为0.5,以帮助防止在小样本中训练时过度拟合,设置跨被试分类的dropout概率为0.25,因为训练集规模大得多(参见2.3节获取详情)。我们应用一个平均大小(1,4)的池化层来将信号的采样率降低到32hz。我们还通过对权重使用最大范数约束1来正则化每个空间滤波器。
2.2 BLOCK2
在block 2中,我们使用可分离(separable)卷积,这是一个深度卷积(在这里,大小为(1,16),代表在32 Hz上的500ms的脑电图活动),然后是F2(1,1)点卷积。可分离卷积的主要好处是:(1)减少拟合参数的数量;(2)通过首先学习一个核,分别总结每个特征映射,然后最优地合并输出,解耦合特征映射内部和跨特征映射的关系。当用于EEG特定的应用时,该操作将学习如何及时总结单个特征映射(深度卷积)与如何最佳地组合特征映射(点卷积)分离开来。这种操作对于脑电图信号也特别有用,因为不同的特征图可能代表不同时间尺度的信息数据。在我们的例子中,我们首先学习每个特征图的500ms,然后合并输出。一个平均大小(1,8)的池化层用于降维。
在分类block中,这些特征直接传递给一个N个单元的softmax分类,N是数据中类的数量。在softmax分类层之前,我们省略了使用稠密层进行特征聚合,以减少模型中自由参数的数量。