A Generalised Seizure Prediction with Convolutional Neural Networks for Intracranial and Scalp Electroencephalogram Data Analysis

为了改善耐药癫痫和强直性癫痫患者的生活,癫痫预测作为最具挑战性的预测数据分析工作之一已引起越来越多的关注。许多杰出的工作报告了在提供敏感的间接(警告系统)或直接(交互式神经刺激)控制难治性癫痫方面的巨大成果,其中一些取得了很高的性能。然而,许多工作对每个患者进行大量手工特征提取和/或精心定制的特征工程,以实现对特定数据集的极高灵敏度和低错误预测率。如果使用不同的数据集,这限制了他们的方法的优势。在本文中,我们将卷积神经网络(cnn)应用于不同的颅内和头皮脑电图(EEG)数据集,并提出了一种广义的回顾性和患者特异性癫痫预测方法。我们利用短时傅里叶变换(STFT)对30秒脑电图窗口进行频域和时域信息提取。然后对整个频率范围内的STFT组件应用标准化步骤,以防止高频特征受到低频特征的影响。采用卷积神经网络模型进行特征提取和分类,分离发作前段和发作间段。该方法在弗莱堡医院颅内脑电图(iEEG)数据集、波士顿儿童医院-麻省理工学院头皮脑电图(sEEG)数据集和Kaggle美国癫痫学会发作预测挑战数据集上分别实现了81.4%、81.2%、82.3%的灵敏度和0.06、0.16、0.22/h的假预测率(FPR)。对于所有三个数据集中的大多数患者,我们的预测方法在统计学上也优于非特异性随机预测器。

1 introduction

我们正在寻找一种可以应用于所有具有最小特征工程的患者的方法。众所周知,神经网络具有从原始输入数据中提取特征以执行分类任务的能力。在这项工作中,我们将部署一个卷积神经网络来预测癫痫发作。

本工作的主要贡献是:(1)提出了一种合适的方法将原始脑电图数据预处理成适合卷积神经网络的形式;(2)提出了一种利用最小特征工程帮助卷积神经网络更好地完成癫痫预测任务的指导方针。为了证明我们方法的优势,我们将对来自两个不同数据集的所有患者使用相同的预处理技术和卷积神经网络配置:弗赖堡医院颅内脑电图(iEEG)数据集和波士顿-麻省理工学院儿童医院(CHB-MIT)头皮脑电图(sEEG)数据集。

2 方法

A.数据集

在这项工作中使用了三个数据集:弗赖堡医院数据集[11],CHB-MIT数据集[20]和Kaggle美国癫痫学会癫痫预测挑战数据集[21]

Freiburg数据集包括21例难治性癫痫患者的颅内脑电图(iEEG)记录。由于数据集缺乏可用性,我们只能使用来自13名患者的数据。使用256hz的采样率记录这13例患者的iEEG信号。在该数据集中,有来自6个选定接触者的6个录音通道,其中3个来自发病地区,另外3个来自偏远地区。对于每个患者,至少有50分钟的产前数据和24小时的间歇期。关于Freiburg数据集的更多详细信息可以在[6]中找到。

CHB-MIT数据集包含23例儿童头皮脑电图(sEEG)数据,连续记录844小时,163例癫痫发作。采用22个电极以256hz[20]的采样率采集头皮脑电信号。我们将发作间隔期定义为发作前和发作结束后至少4小时。在这个数据集中,有多次癫痫发作发生在彼此附近的情况。对于癫痫发作预测任务,我们感兴趣的是预测主要的癫痫发作。因此,对于距离上一次发作30分钟以内的癫痫发作,我们将其视为仅一次发作,并将前一次发作的发作作为联合发作的发作。此外,我们只考虑每天发作少于10次的患者进行预测任务,因为对于平均每2小时发作一次的患者来说,执行预测任务并不是很关键。根据上述定义和考虑,有13例患者有足够的数据(至少3次前驱癫痫发作和3个间歇小时)。

Kaggle癫痫发作预测挑战的数据集有5只犬和2名患者的48次癫痫发作和627.7小时间歇记录[21]的iEEG数据。以400hz采样率记录16个植入电极的犬脑电信号。记录的两名患者的iEEG数据来自15个深度电极(患者1)和24个硬膜下电极(患者2),采样率为5khz。挑战组织者提取了赛前和间歇10分钟的片段。具体来说,对于每一次引线癫痫发作,在癫痫发作前66分钟至5分钟提取6个前突节段,间隔时间为10秒。间隔段随机选择至少一周后任何癫痫发作。

B.预处理

由于我们的工作将使用二维卷积神经网络,因此需要将原始EEG数据转换为矩阵,即。类似影像格式。转换必须能够保留脑电信号中最重要的信息。小波变换和傅立叶变换是将时间序列脑电图信号转换成图像的常用方法。

它们也被用作癫痫发作检测和预测的有效特征提取方法。本文利用短时傅里叶变换将原始脑电图信号转换为由频率轴和时间轴组成的二维矩阵。我们使用30秒的脑电图窗长。Freiburg数据集和CHB-MIT数据集的大部分EEG记录受到50 Hz电力线噪声的污染(见图1a)。

在频域,如果工频为50hz,则排除频率范围为47 ~ 53hz和97 ~ 103hz的部件,如果工频为60hz,则排除频率范围为57 ~ 63hz和117 ~ 123hz的部件,可以方便有效地去除工频噪声。直流元件(0hz)也被移除。

图1b为去除电源线噪声后30秒窗口的STFT。

卷积神经网络的一个挑战是数据集的不平衡,即间隔记录比前记录多得多。例如,在Freiburg数据集中,每名患者的发作期与发作前比率为9.5:1至15.9:1。为了克服这一问题,我们在训练阶段采用重叠技术生成更多的前突节段。特别是,我们通过沿着时间轴在每一步S上滑动一个30秒的窗口来创建额外的preictal样本用于训练(见图2)。

每个受试者都选择S,以便我们在训练集中的每个类(preictal或interictal)中有相似数量的样本。请注意,可能会有一些额外的发作前段与原始节段相同,但这不会有问题。

C. 卷积神经网络

近年来,卷积神经网络(CNN)被广泛用于计算机视觉和自然语言处理。在本文中,我们使用一个具有三个卷积块的CNN,如图3所述。

每个卷积块包括一个批处理规范化,一个带有整流线性单元(ReLU)激活函数的卷积层,以及一个最大池化层。批量归一化以确保进入卷积层的输入具有零平均数和单位方差。第一个卷积层有16个3维内核,大小为n×5×5,其中n为EEG通道数,使用的步长为1×2×2。

接下来的两个卷积块分别有32和64个卷积核,核大小为3×3,跨度为1×1,最大集合大小为2×2。在这三个卷积块之后是两个全连接层,其sigmoid激活和输出大小分别为256和2。在两个全连接层之前放置了丢弃层,丢弃率为0.5。

由于用于训练CNN的数据集非常有限,防止CNN过度拟合非常重要。首先,如上所述,我们保持CNN架构的简单和浅层。其次,我们提出了一个准则,以防止在训练神经网络时出现过度拟合。一个常见的做法是,随机分割20%的训练集作为验证集。在每个训练周期后,计算与验证有关的损失和/或准确性,以检查网络是否开始过度拟合训练集。这种方法对没有时间信息的数据集很有效,例如分类任务的图像。

对于癫痫预测,使用与训练期间不同时间段的样本来监测模型是否开始过度拟合是合理的。在本文中,我们从发作前和发作间期的样本中精心挑选了25%的样本用于验证,其余的用于训练(图4)。

D. 后期处理

在发作间期出现孤立的假阳性是很常见的。这些孤立的错误预测可以通过使用离散时间卡尔曼滤波器来有效减少[10]。在这项工作中,我们采用了一种非常简单的方法,即k-of-n分析,以符合本文的主题--简单。特别是,对于每一个n个预测,只有在至少有k个正面预测的情况下,警报才会上升。由于我们使用30秒的窗口,CNN每30秒产生一次预测。在这项工作中,我们选择k=8,n=10。

E. 系统评价

提醒应该如何评价癫痫发作预测系统是不简单的在估计灵敏度和错误预测率等性能指标之前,需要定义癫痫预测范围(SPH)和癫痫发生期(SOP)。在本文中,我们遵循[6]中提出的SOP和SPH的定义,如图5所示。

SOP是指预计发作的时间间隔。警报和SOP开始之间的时间段被称为SPH。为了进行正确的预测,癫痫发作必须是在SPH之后和SOP之内。同样,当预测系统返回阳性但在SOP期间没有发作时,就会出现假警报。当警报上升时,它将持续到SOP的结束。关于临床使用,SPH必须足够长,以允许有足够的干预或预防措施。SPH也被称为干预时间[3]。相反,SOP不应该太长,以减少病人的焦虑。一些作品未能正确提及SPH和SOP。在[10]中,作者报告使用了30分钟的SPH,但根据他们的解释,他们隐含使用的是0分钟的SPH和30分钟的SOP,即如果报警发生在发作前30分钟内的任何一点,就被认为是成功预测。同样,[12]中的作者提供了一个不同的SPH定义,即报警和癫痫发作之间的时间间隔。对SPH和SOP的定义不一致,使各方法之间的基准难以确定,令人困惑。

用于测试所提出的方法的指标是灵敏度,在5分钟的SPH和30分钟的SOP下的错误预测率。为了进行稳健的评估,我们对每个受试者采取了留一法交叉验证的方法。如果一个受试者有N次发作,(N-1)次发作将被用于训练,扣留的发作将被用于验证。这一轮重复了N次,所以所有的发作都将被用于验证,正好一次。发作间歇段被随机分成N个部分。(N-1)部分用于训练,其余部分用于验证。

III. 结果

在本节中,我们用三个数据集来测试我们的方法:(1)弗莱堡iEEG数据集,(2)CHB-MIT sEEG,和(3)Kaggle iEEG数据集。本文在计算所有指标时都使用了SOP=30分钟和SPH=5分钟我们的模型在Python 2.7中使用Keras 2.0和T ensorflow 1.4.0后端实现。该模型在4个NVIDIA K80显卡上并行运行。每个留一交叉验证的褶皱都执行了两次,并报告了平均结果。表一总结了弗赖堡iEEG数据集的发作预测结果,SOP为30分钟,SPH为5分钟。仅仅应用电源线噪声去除,预测灵敏度为81.4%,即59次发作中的48次被成功预测错误预测率(FPR)非常低,为0.06/h

我们的方法在MITsEEG数据集上实现了类似的81.2%的灵敏度,但FPR较高,为0.16/h(见表二)。这是合理的,因为头皮脑电图记录往往比颅内记录更嘈杂。

对于Kaggle数据集,总体灵敏度为75%,FPR为0.21/h。值得注意的是,我们的方法对颅内脑电图和头皮脑电图的记录都有可比性,除了去除电源线噪声外,没有任何去噪技术。

第四部分展示了最近的癫痫预测方法和这项工作的基准。要知道哪种方法是最好的是很复杂的,因为每种方法通常是用一个数据集来测试的,而这个数据集的数据量是有限的。换句话说,一种方法可以在这个数据集上运行良好,但在另一个数据集上可能表现很差。因此,我们增加了一个额外的指标,即同一特征工程或特征集是否应用于所有患者,以评估每种方法的通用性。从临床角度来看,最好是有足够长的SPH,以便进行有效的治疗干预和/或预防措施。另一方面,SOP应该很短,以减少病人的焦虑[6]。一些隐含使用零SPH的工作忽略了临床注意事项,因此,可能被高估了。[10]提出的方法取得了98.3%的高灵敏度和0.29/h的FPR,测试对象为弗莱堡数据集的18名患者。我们的方法的灵敏度较低,为89.8%,但FPR更好,为0.17/h。值得注意的是,SPH被隐含地设置为,这意味着在接近癫痫发作的时间或事件的预测可以被算作成功的预测。同样,在[9,12]中进行的研究也隐含了使用零SPH,不会与我们的结果直接比较。

在Table IV中列出的其他作品中,[15]在SOP=20分钟和SPH=10分钟的情况下,预测灵敏度非常好,达到90.95%,FPR低至0.06/h。作者在[15]中巧妙地对每个病人的特征提取进行了微调。然而,这导致需要足够的专业知识和时间来执行新数据集的特征工程。[16]中作者对所有病人应用相同的特征提取技术,并使用SVM进行分类。这种方法取得了91.8-96.6%的高灵敏度和0.05-0.08的低FPR,对弗赖堡颅内EEG数据集进行了测试。然而,还没有作品报道在头皮EEG信号上成功使用类似的方法。

IV. 讨论

从EEG信号中提取的频率和时间(同步)域的信息已被广泛用于预测癫痫发作。从表IV中可以看出,随着时间的推移,敏感性和错误预测都有所提高。本文提出了一种新的方法来利用脑电信号的频率和时间两个方面,而不需要手工制作特征工程。脑电图窗口的短时傅里叶变换有频率和时间两个轴。一个二维卷积滤波器在整个短时傅里叶变换中被滑动,以收集脑电信号的频率和时间的变化。这就是卷积神经网络的魅力所在。滤波器的权重在训练阶段被自动调整,CNN就像一个自动的特征提取方法。

我们还将我们的方法的预测性能与一个不特定的随机预测器进行了比较。给定一个FPR,在一个SOP中发出警报的概率可以近似为[22] 。

因此,预测 K 个独立发作中至少有 k 个发作的概率由以下公式给出

我们通过使用该病人的FPR和我们的方法预测的发作次数(k)来计算每个病人的p值。如果p值小于0.05,我们可以得出结论,我们的预测方法在0.05的显著水平上明显优于随机预测器。表一和表二显示,除了弗莱堡数据集的Pat14和CHB-MIT数据集的Pat9之外,我们的预测方法对所有患者都实现了明显优于非特异性随机预测器。值得提醒的是,Freiburg数据集是颅内EEG,而CHB-MIT数据集是头皮EEG。换句话说,我们的方法对这两种类型的EEG信号都很有效。关于Kaggle数据集,与随机预测器相比,我们的方法在5只犬类中的4只(见表三)和Pat1的表现明显更好。

由于癫痫发作的特征可能会随着时间的推移而改变,因此有必要对癫痫预测算法进行校准。

最小特征工程带来了巨大的优势,它不需要专家为预测任务仔细提取和选择最佳特征。因此,它允许更快和更频繁的更新,使患者能够从癫痫预测算法中获得最大的利益。另外,最小化的特征工程也使更多的患者能够获得癫痫预测。由于特征提取任务由CNN承担,神经生理学家和临床工作人员可以花更多的时间监测和记录脑电信号,用于诊断和/或培训数据收集。

我们的方法可以通过非EEG数据,如癫痫发作的时间信息来进一步改进。癫痫发作已被证明在不同的时间间隔内有分布上的偏差,这些间隔可以长至一年,也可以短至一小时[23]。重要的是,[23]中的作者表明,在他们的101名患者的数据集中,日出、中午和午夜的癫痫发作次数较多,共39,929次。然而,这种模式是针对病人的,不同的病人可能有很大不同。采用同样的观察结果,[24]中的作者利用这种模式来显著改善他们的发作预测系统。不幸的是,本文调查的三个数据集不够长,无法评估一天中的时间信息是否有用,因为每个病人的最长记录期是3天。尽管如此,我们仍然值得看看CHB-MIT数据集中患者的癫痫发作率在一天中是如何分布的,这也是我们能够获得癫痫发作时间的唯一数据集。

图6显示清晨的发病率最高,下午4点和凌晨2点左右出现两个较低的峰值。

V. 结论

在过去的四十年里,对癫痫发作的预测能力进行了研究和改进。目前还没有一个完美的预测,但就目前的预测性能而言,为病人提供警告信息是非常有用的,这样他们就可以为自己的安全采取一些预防措施。本文提出了一种使用最小特征工程的卷积神经网络的新方法。所提出的方法在颅内脑电图和头皮脑电图上都有良好的通用性。这给更多的病人带来了机会,使他们能够拥有一个可以帮助他们更容易管理的生活的癫痫预测装置。

基础2-用卷积神经网络进行颅内和头皮脑电图数据分析的广义癫痫预测相关推荐

  1. 017利用颅内和头皮脑电图进行癫痫预测的卷积神经网络2018

    Convolutional neural networks for seizure prediction using intracranial and scalp electroencephalogr ...

  2. 【AI Studio】飞桨图像分类零基础训练营 - 03 - 卷积神经网络基础

    前言:第三天,老师结合ppt文图详细讲解了线性和卷积网络的构建,由简单到复杂的讲解卷积网络的发展.最后结合几个项目加深理解.愈发感觉老师讲的好了.第二天的课听完后还感觉自己什么都懂了,结果轮到自己动手 ...

  3. 深度学习时间序列预测:卷积神经网络(CNN)算法构建单变量时间序列预测模型预测空气质量(PM2.5)+代码实战

    深度学习时间序列预测:卷积神经网络(CNN)算法构建单变量时间序列预测模型预测空气质量(PM2.5)+代码实战 神经网络(neual networks)是人工智能研究领域的一部分,当前最流行的神经网络 ...

  4. C++ 和 OpenCV 实现卷积神经网络并加载 Keras 训练好的参数进行预测

    C++ 和 OpenCV 实现卷积神经网络并加载 Keras 训练好的参数进行预测 一. 背景 二. Keras 定义神经网络结构 channels_first 与 channels_last cha ...

  5. AI基础:经典卷积神经网络

    导语 卷积神经网络(Convolutional Neural Networks, CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深 ...

  6. 【深度学习基础】经典卷积神经网络

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 导语 卷积神经网络(Convolutional Neural Ne ...

  7. 一维卷积filter_从零开始学Pytorch(七)之卷积神经网络

    卷积神经网络基础 我们介绍卷积神经网络的卷积层和池化层,并解释填充.步幅.输入通道和输出通道的含义. import torch from torch.autograd import Variable ...

  8. 赠书 | 人工智能识万物:卷积神经网络的前世今生

    来源 |<Python人工智能开发从入门到精通> 作者 | 杨柳.郭坦.鲁银芝 责编 | 晋兆雨 深度学习在技术与应用上的突破引发了第三次人工智能浪潮,获得了空前成功.在前述章节的基础上, ...

  9. 深度学习笔记之《解析卷积神经网络》附下载地址

    点击上方"Datawhale",选择"星标"公众号 第一时间获取价值内容 <解析卷积神经网络>是 @魏秀参 博士撰写的深度学习实践手册,主要以卷积神 ...

最新文章

  1. 如何设计可自学习的五子棋AI?
  2. 对话RTP作者Ron Frederick: 我非常期待QUIC的发展
  3. 开学测试代码——需求征集系统
  4. MVVM模式的一个小例子
  5. JavaScript六种继承方式的递进推演
  6. 如何使用粒子氩气进行位置跟踪
  7. 学习笔记(07):MySQL数据库运维与管理-02-用户权限授予演示
  8. myeclipse连接mysql生成数据表时中文字符乱码或问号(解决方法)
  9. 【Advanced控制理论】Robust Control鲁棒控制(附Simulink程序)
  10. 谷歌浏览器,添加手机模拟器
  11. 视觉 注意力机制——通道注意力、空间注意力、自注意力
  12. RNN梯度消失和爆炸的原因
  13. uni-app项目Android离线打包UrlSchemes设置
  14. EasyExcel java实现excel简单读写操作(快速上手,复制粘贴即可)
  15. 【翻译】Chromium 网络栈 disk cache 设计原理
  16. GOTC 2023全球开源技术峰会
  17. 有趣的巴什博弈(Bash Game)
  18. java丐帮_JAVA集合 list set map
  19. springcloud五大神兽之Eureka介绍
  20. Debian 官方下载地址

热门文章

  1. 你误把饥渴当成了爱情
  2. 人机猜拳游戏(修改)
  3. Android”挂逼”修炼之行—微信摇骰子和猜拳作弊器原理解析
  4. 关于类似“石头、剪刀、布”游戏,需要循环判断的,判断条件设计技巧
  5. 中国鼠标行业销售动态及营销形势分析报告(新版)2022-2027年
  6. 访问虚拟服务器403,openresty访问虚拟主机出现403 Forbidden怎么解决?
  7. 积跬步,聚小流------关于手机号,前端应该注意哪些
  8. 06512oracle数据库,记一次ORA-06512、ORA-29283
  9. omapl138移植uboot系列之添加MTD分区(第七篇)
  10. 破解验证码(2)滑动验证码