中中国国研研究究生生创创新新实实践践系系列列大大赛赛
““华华为为杯杯””第第十十七七届届中中国国研研究究生生
数数学学建建模模竞竞赛赛
题 目 面向康复工程的脑电信号分析和判别模型
摘 要:
随着世界医疗卫生行业和科技的不断发展,我国医疗大数据发展迅速,康复工程日趋
成熟,脑电信号分析和判别是面向康复工程的重要研究方向之一。大脑是人体中高级神经
活动的中枢,拥有着数以亿计的神经元,信息由神经元负责处理,通过突触连接来传递,
突触连接产生脑电信号。因此脑电信号的分析和判别具有深远意义。本文针对特定脑电接
口实验数据,从诱发脑电信号(P300 脑-机接口),从发脑电信号(睡眠脑电)两个角度
对该问题进行了探究。
对于问题一:通过对 P300 脑-机接口数据的分析,我们将寻找目标字符的问题转化为
判断 P300 电位是否存在的问题来求解,即将此问题转化为了一个二分类问题。P300 脑-
机接口实验数据为一个时间序列,通过事件标签确定 P300 电位在数据集中的分布,分别
使用机器学习的分类方法随机森林模型、SVM 模型和 XGBoost 模型,多次判断测试集中
是否有 P300 电位存在,将检测到的 P300 电位与测试标签进行比对,确定事件标签在行列
位置表中出现的位置,最后通过比对的方式确定目标字符。整个模型训练过程中,机器学
习模型中随机森林的各项性能指标表现良好,准确率为 91%、正负样本的平均召回率是
89%;各项性能指标明显高于 SVM 模型和 XGBoost 模型。所以在该问题的处理上选择随
机森林模型可以更好的学习到 P300 电位的各个特征,对预测未知样本有较高的正确率。
针对问题二:在解决问题一时选择了 20 个通道作为数据的训练特征,在此基础上,为
了提高模型预测的准确度,对数据集进行特征选择。特征选择分成两部分进行,首先采用
主成分分析法,对数据集进行降维,使数据集从原有的 20 维下降到 10 维,然后在此基础
上,结合随机森林模型在训练结束后给出的特征重要性程度排序,统计各个特征在重要性
分布配合特征热力图,选择性的删除重要程度靠后的特征通道,经过多次重复操作,选择
出最佳的 10 个特征通道作为数据集训练特征。使用通道选择后的数据训练模型并测试,
随机森林模型准确率为 94%,平均召回率为 93%,性能相对于通道选择之前有所提升。综
合问题一的结果,数据降维后的模型性能略高于高维数据的结果,泛化性能与之前相比有
较大的提升。
针对问题三:在问题二最优通道组合的基础上采用监督学习的方法,训练时使用一部
分有标签样本,建立模型 1 时采用有标签数据量作为训练集,无标签数据作为测试集,两
者数据量比值为 9:1。模型预测后,为无标签样本预测标签并标记,然后将这两部分数据
组合在一块统一作为训练数据对模型 2 进行训练,可以通过已知测试结果的 char13-char17
数据训练来判断模型 2 的有效性。当模型 2 有效性强时,可以将 char18-char22 数据送入模
型 2 进行预测,否则对模型 2 再次进行修改优化。当模型 2 有效性提升后继续对
char18-char22 进行目标字符的预测。经验证,模型准确率为 80%,平均召回率为 71%。
针对问题四:睡眠数据中使用四种脑电波信号做一个多分类的睡眠预测模型。由于数
1
据量的限制采用神经网络和机器学习的方法对数据进行建模,将睡眠分期预测问题转化为
一个五分类问题来解决,通过预测效果对分类性能进行分析。对数据集进行训练集和测试
集的划分,具体采用随机的方式,对数据集进行多次随机打散,以 8:2 的比例首次划分训
练集和测试集,分别使用 XGBoost 和 MLP 训练模型,由于数据量过小,多次训练使用的
数据在前一次划分的基础上再次打散随机划分。在不断重复的情况下按比例划分训练集和
测试集,机器学习模型和神经网络模型两个的训练结果在测试集上预测的准确率分别为
76%和 72%。在训练数据过少的情况下进行多分类任务,机器学习模型和神经网络模型均
表现出较好的效果,但是神经网络模型在效率上略差于机器学习模型。
关键字:脑电信号;随机森林;特征选择;XGBoost
2
目录
目录 ................................................................................................................................................. 3
一.问题重述 ................................................................................................................................. 4
二.问题的分析 ................................................................................................................................ 6
2.1 对问题一的分析 .............................................................................................................. 6
2.2 对问题二的分析 .............................................................................................................. 6
2.3 对问题三的分析 .............................................................................................................. 6
2.4 对问题四的分析 .............................................................................................................. 7
三.模型的假设和符号说明 ......................................................................................................... 7
3.1 模型的假设 ...................................................................................................................... 7
3.2 符号说明 .......................................................................................................................... 7
四.数据处理 ................................................................................................................................. 7
4.1 P300 数据 .......................................................................................................................... 7
4.2 睡眠数据 .......................................................................................................................... 8
五.模型的建立和求解 ................................................................................................................. 9
5.1 问题一模型的建立和求解 .............................................................................................. 9
5.1.1 问题一模型的建立 ............................................................................................... 9
5.1.2 问题一模型的求解 ............................................................................................. 11
5.2 问题二模型的建立和求解 ............................................................................................ 13
5.2.1 问题二模型的建立 ............................................................................................. 13
5.2.2 问题二模型的求解 ............................................................................................. 15
5.3 问题三模型的建立和求解 ............................................................................................ 16
5.3.1 问题三模型的建立 ............................................................................................. 16
5.3.2 问题三模型的求解 ............................................................................................. 17
5.4 问题四模型的建立和求解 ............................................................................................ 19
5.4.1 问题四模型的建立 ............................................................................................. 19
5.4.2 问题四模型的求解 ............................................................................................. 21
六.模型的改进和推广方向 ....................................................................................................... 22
6.1 模型的改进 .................................................................................................................... 22
6.2 模型的推广 .................................................................................................................... 22
七.模型的优缺点 ....................................................................................................................... 23
7.1 模型优点 ......................................................................................................................... 23
7.2 模型缺点 ......................................................................................................................... 23
八.参考文献 ............................................................................................................................... 24
3
一.问题重述
1.1 背景介绍
大脑是人体中高级神经活动的中枢,拥有着数以亿计的神经元,并通过相互连接来传
递和处理人体信息。脑电信号按其产生的方式可分为诱发脑电信号和自发脑电信号。诱发
脑电信号是通过某种外界刺激使大脑产生电位变化从而形成的脑电活动;自发脑电信号是
指在没有外界特殊刺激下,大脑自发产生的脑电活动。
(1)诱发脑电信号(P300 脑-机接口)
在日常生活中,人的大脑控制着感知、思维、运动及语言等功能,且以外围神经为媒
介向身体各部分发出指令。因此,当外围神经受损或肌肉受损时,大脑发出指令的传输通
路便会受阻,人体将无法正常完成大脑指令的输出,也就失去了与外界交流和控制的能力。
研究发现,在外围神经失去作用的情况下,人的大脑依旧可以正常运行,而且其发出指令
的部分信息可以通过一些路径表征出来。脑-机接口技术旨在不依赖正常的由外围神经或肌
肉组织组成的输出通路的通讯系统,实现大脑与外部辅助设备之间的交流沟通。
P300 事件相关电位是诱发脑电信号的一种,在小概率刺激发生后 300 毫秒范围左右出
现的一个正向波峰(相对基线来说呈现向上趋势的波)。由于个体间的差异性,P300 的发
生时间也有所不同,图 1 表示的是在刺激发生后 450 毫秒左右的 P300 波形。P300 电位作
为一种内源性成分,它不受刺激物理特性影响,与知觉或认知心理活动有关,与注意、记
忆、智能等加工过程密切相关。基于 P300 的脑-机接口优点是使用者无需通过复杂训练就
可以获得较高的识别准确率,具有稳定的锁时性和高时间精度特性。
图 1 P300 波形示意图
(2)自发脑电信号(睡眠脑电)
睡眠是身体休整积蓄能量的重要环节,睡眠质量对人的身心状态也有着重大影响。如
何提高睡眠质量,减少睡眠相关疾病对健康的影响,日益受到广泛关注。睡眠过程中采集
的脑电信号,属于自发型的脑电信号。自发型的睡眠脑电信号能够反映身体状态的自身变
化,也是用来诊断和治疗相关疾病的重要依据。
睡眠过程是一个动态变化的复杂过程。在国际睡眠分期的判读标准 R&K 中,对睡眠过
程中的不同状态给出了划分:除去清醒期以外,睡眠周期是由两种睡眠状态交替循环,分
别是非快速眼动期和快速眼动期;在非快速眼动期中,根据睡眠状态由浅入深的逐步变化,
又进一步分为睡眠 I 期,睡眠 II 期,睡眠 III 期和睡眠 IV 期;睡眠 III 期和睡眠 IV 期又可
合并为深睡眠期。图 2 给出了不同睡眠分期对应的脑电信号时序列,自上而下依次为清醒
期、睡眠 I 期、睡眠 II 期、深睡眠和快速眼动期。从图 2 中可以观察到,脑电信号在不同
4
200400600时间(ms)刺激发生-+P300电位幅值(μV)
睡眠分期所呈现的特点有所不同。基于脑电信号进行自动分期,能够减轻专家医师的人工
负担,也是评估睡眠质量、诊断和治疗睡眠相关疾病的重要辅助工具。
(a) 清醒期
(b) 睡眠 I 期
(c) 睡眠 II 期
(d) 深睡眠期
(e) 快速眼动期
图 2 各睡眠分期的睡眠脑电信号时序列
1.2 需解决的问题
(1)根据 P300 脑-机接口实验数据设计或者使用一个方法,在尽可能使用较少轮次的
测试数据的情况下,找到 5 个被试测试集中的 10 个待识别目标,并给出具体的分类识别
过程,可与几种方法进行对比并且说明设计方法的合理性,在考虑目标分类准确率的同时
又要保证一定的信息传输速率。
(2)根据 P300 脑-机接口实验数据设计一个通道选择算法,给出针对每个被试的、更
有利于分类的通道名称组合(通道组合的数量小于 20 大于等于 10,每个被试所选的通道
可以不相同)。基于通道选择的结果,进一步分析对于所有被试都较适用的一组最优通道
名称组合,并给出具体分析过程。
(3)根据 P300 脑-机接口实验数据,选择适量的样本作为有标签样本,其余训练样本
作为无标签样本,在问题二所得一组最优通道组合的基础上,设计一种学习的方法,并利
用问题二的测试数据(char13-char17)检验方法的有效性,同时利用所设计的学习方法找
出测试集中的其余待识别目标(char18-char22)。
(4)根据睡眠脑电数据中所给出的特征样本,设计一个睡眠分期预测模型,在尽可能
少的训练样本的基础上,得到相对较高的预测准确率,给出训练数据和测试数据的选取方
式和分配比例,说明具体的分类识别过程,并结合分类性能指标对预测的效果进行分析。
5
二.问题的分析
本文要解决的是建立面向康复工程的脑电信号分析和判别模型问题。问题一、二、三
要基于 P300 脑-机接口实验数据设计给出合理的分类识别方法并且找到一组最优通道名称
组合,在前两者基础上利用所设计的学习方法找到测试集中的其余待识别目标。而问题四
是基于睡眠脑电数据设计一个睡眠分期预测模型,并且结合分类性能指标对预测的效果进
行分析。
2.1 对问题一的分析
问题一中要求基于 P300 脑-机接口实验数据设计一种方法,在尽可能使用较少轮次的
测试数据的情况下,找到被试测试集的 10 个待识别的目标。这就要求我们对数据有很深
的理解,采用的是五个注意力集中的成年受试者观察一个由 6 行 6 列组成的字符矩阵时的
脑电信号作为实验数据,矩阵中的 1 行或者 1 列以随机的顺序闪烁字符,当所有行和列闪
烁一次后,结束一轮实验,共重复 5 轮,当这一行或者一列出现目标字符后,脑电信号中
会出现 P300 电位。
我们首先将目标字符参照训练数据的事件标签锁定 P300 电位出现的行列位置,进而
确定 P300 电位出现的时间,使用机器学习的方法对训练集中的数据进行训练,达到可以
辨别 P300 电位的目的。在测试过程中利用建立好的模型可以确定 P300 电位的位置,参考
测试数据的事件标签锁定目标字符对应的行和列位置,参考行/列标识符进而找到被试测试
集的 10 个待识别的目标。
2.2 对问题二的分析
问题二中要求基于 P300 脑-机接口实验数据设计一个通道选择算法,给出针对每个被
试的、更有利于分类的通道名称组合。基于通道选择的结果,进一步分析对于所有被试者
都较适用的一组最优通道名称组合,并给出具体分析过程。其目的是为了减少信号中的冗
余或者无关通道,提升分类识别的准确率和性能。
在第一题的基础上我们可以使用主成分分析法的方式找到最优的通道名称组合,当然
也可以通过查看结果中各通道的影响权重,选择影响权重较高的通道。当然两种方法可以
结合在一起,先对数据进行主成分分析,得出结果后选择影响权重高的通道,对选取的通
道和通道个数进行排列组合,找到对于被试都较适用的一组最优通道名称组合。
2.3 对问题三的分析
问题三中要求基于 P300 脑-机接口实验数据,选择适量的样本作为有标签样本,其余
训练样本作为无标签样本,在问题二所得一组最优通道组合的基础上,设计一种学习的方
法,并利用问题二的测试数据(char13-char17)检验方法的有效性,同时利用所设计的学
习方法找出测试集中的其余待确定目标(char18-char22)。
在问题二最优通道组合的基础上采用迭代监督学习的方法,训练时使用一部分有标签
样本,其余部分为无标签样本的数据。通过训练来找到测试数据(char13-char22),其中
char13-char17 为已知测试结果,char18-char22 为待识别目标。
6
2.4 对问题四的分析
问题四中要求基于睡眠脑电数据,设计一个睡眠分期预测模型,得到较高的预测准确
率,说明具体的分类识别过程,并且对训练样本和测试样本选取方式和分配比例进行说明,
结合分类性能对预测的效果进行分析。
问题四给出的数据量较少,采用深度学习的方式对睡眠脑电数据进行建模,将睡眠分
期预测问题转化为一个五分类问题来解决,通过预测的效果对分类性能进行分析。
三.模型的假设和符号说明
3.1 模型的假设
(1)假设一:被测试者在实验过程中集中注意力且不受外界干扰。
(2)假设二:题目给出的数据真实可靠。
(3)假设三:P300 电位只在受试者看到目标字符后才产生。
(4)假设四:半监督学习时无类标签的数据不带有噪声。
3.2 符号说明
四.数据处理
4.1 P300 数据
原始数据采样频率为 250Hz,即每秒有 250 个采样点,每个人每个字符实验 5 个轮次,
每个轮次出现 2 次 P300 波形,共 12 个字符,那么正样本数为 12x2x5=120,负样本数为:
12x10x5=600,训练数据正负样本比为 1:5。为提高实验精度,实验前先对数据做以下预处
理:
滤波:为尽可能使得实验数据纯净,我们使用带通滤波器,提取 0.1~25Hz 范围内的
信号,因为此范围也是 P300 波形的频率范围[1]。
7
符号含义单位f频率赫兹T时间间隔秒n采样点数个N序列号个P(p)观测变量个TP样本标签真实为阳性,模型预测结果也为阳性个TN样本标签真实为阳性,模型预测结果也为阴性个FP样本标签真实为阴性,模型预测结果也为阳性个FN样本标签真实为阴性,模型预测结果也为阴性个