利用机器学习从脑电图数据预测癫痫发作

伦敦大学学院加雷斯·琼斯(Gareth Jones)著


大约20-40%的癫痫发作对抗惊厥药物无效。因此,癫痫患者无法知道当他们开车、游泳或从事其他会使癫痫发作特别危险的活动时是否会发作。

最近的一次Kaggle竞赛解决了这个问题,要求参与者开发可以根据人类颅内脑电图(EEG)记录预测癫痫发作的算法(图1)。

图1.卡格提供的颅内EEG数据。

该竞赛由MathWorks、美国国立卫生研究院(nds)、美国癫痫学会和墨尔本大学赞助,吸引了来自世界各地的478个团队和646名参赛者。

算法是我在MATLAB中开发的®在各个参与者中得分最高,总体上的比赛中的第三高。

脑电图数据的获取与预处理

脑电图数据来自墨尔本大学进行的一项长期研究。

在本研究中,15名癫痫患者的颅内脑电图记录通过16个手术植入电极在400hz下采集,持续数月。在最初的研究中,研究人员无法可靠地预测约50%的测试对象的癫痫发作。

Kaggle竞赛的参与者从三个测试对象那里获得了近100gb的脑电图数据。每个10分钟的片段包含其中任何一个preictal在癫痫发作前记录的数据,或者发作在很长一段时间内没有癫痫发作的记录。我们的工作是开发一种算法,可以将以前看不见的片段分类为发作前或发作间。

Kaggle的参赛者可以免费使用MATLAB,但不要求使用MATLAB。我很早就决定使用MATLAB。比赛数据以MAT文件形式提供,便于在MATLAB中访问。此外,我在所有的研究工作中都使用MATLAB进行数据收集和分析。

首先,我将任何连续的10分钟长的片段连接起来(图2)。然后,我将所有数据划分为epoch或窗口,长度从50秒到400秒不等。尝试各种历元长度是很重要的,因为从数据中并不能明显看出在什么时间尺度上预测特征可能出现在数据中,或者它们随时间变化的速度有多快。

图2。MAT文件中的脑电图数据按时序时间划分。

提取特征和识别最佳机器学习模型

与许多数据分析比赛不同,癫痫发作预测比赛提供了一个使用原始数据而不是现成表格的机会。除了重新引用,所提供的数据没有经过任何额外的预处理。数据的非结构化特性允许我通过执行自己的预处理和特征提取来充分利用这些数据。

我在Matlab中工作,以从我可以用来训练机器学习模型的数据中提取特征。具体而言,我开发了算法,对于每个时代,计算频带功率,每个信道的概述统计(包括均值,标准偏差,均方,歪斜和kurtosis),以及时间和频域中的信道对之间的相关性。我通过使用并行计算工具箱™同时处理训练和测试数据的处理时间几乎成分。

因为我是在业余时间为比赛开发算法,而不是作为主要研究活动,所以我想尽快开发出一个解决方案。我有在其他环境中使用监督机器学习的经验,但选择使用统计学和机器学习工具箱™中的分类学习者应用程序,以快速搜索我所提取的特征的最佳分类模型类型。在短短几分钟内,该应用程序就基于决策树、判别分析、支持向量机、逻辑回归、最近邻和使用增强树的集成方法自动训练和评估了模型。金宝app用Python或R构建和测试所有这些机器学习模型,如果不是几周的开发时间,我可能要花上几天的时间。

提高预测精度

接下来,我着手改进分类学习者应用程序确定的两个最有前途的机器学习模型的性能:二次支持向量机和随机欠采样(RUS)增强树。金宝app我测试了各种特性和时代长度,最终确定80 -第二,160 -第二,和240 -第二时代的长度是最重要的分类(图3)。因为我是使用多个训练集和测试集,我必须管理和名字代表许多表的各种组合特征和时代的长度。我在MATLAB中使用新的String类以编程方式为表生成标签。String类消除了我以前用于生成标签的复杂代码块。

图3。显示特征和时代长度相对重要性的图。

在本地数据上测试机器学习算法后,我将它们提交给Kaggle竞赛网站,该网站将它们与一组未公开的测试数据进行对比。算法通过计算接受者工作特征曲线(AUC)下的面积来打分,AUC是评估二值分类器的常用度量,也是比赛的官方评分指标。评分结果会在经常更新的公共排行榜上公布,这样参赛者就可以看到自己的算法相对于其他算法在比赛中的表现如何。

为了进一步提高算法的准确性,我尝试了其他一些技术,包括超参数优化。我使用的最有效的技术之一是通过结合SVM和RUS增强树模型来实现集成分类器。对这两个模型的预测进行平均,可以显著提高准确率,使集成分类器的得分高于其单独的任何一个组件模型。结果如下:

单独SVM: ~0.65 AUC
RUS单独:~0.72 AUC
SVM和RUS集合:~0.80 AUC C

迈向更好的癫痫管理的早期步骤

大多数参赛者训练了三个独立的机器学习模型,每个癫痫患者一个。我创建了一个适用于所有三名患者的通用模型,因为我觉得在临床实践中,这个解决方案将比需要从每个患者收集脑电图数据的解决方案更有效。在临床上,一个关键的目标(和困难)是创建一个模型,可以在患者之间进行泛化,并对看不见的个体进行预测,而不是为每个患者训练单独的分类器。在竞争中产生的模型在预测新患者方面的有效性还有待观察。作为将竞赛算法纳入临床研究的第一步,墨尔本大学的研究人员正在使用竞赛中没有提供的数据对提交的算法进行进一步评估。

除了该竞赛对癫痫研究的潜在益处外,我个人也从参与该竞赛的机会中受益。对我来说,这场比赛是一种非常有吸引力的学习新技能的方式,同时有可能推动该领域的研究,这将使全球数百万癫痫患者受益。

关于作者

Gareth Jones博士是伦敦大学学院脑科学学院的一名研究员。他的研究重点是利用心理物理学、电生理学和计算建模来探索哺乳动物整合感觉信息能力的皮层机制。

发布于2017 - 93132v00

查看相关功能的文章

查看相关行业的文章