精读+复现:V2IED: Dual-view learning framework for detecting events of interictal epileptiform discharges

总述

业界大多数的癫痫棘波检测算法往往是基于MEG信号或EEG信号的时序特点的,但大多数癫痫发作往往是局灶的,即表现在局部位置上的。这意味着EEG数据和MEG数据其中的相邻传感器会存在着较多的空间位置信息。从这出发,则为棘波检测算法提供了更多的思路。

而V2IED则是从时序数据本身出发,结合了各传感器的拓扑位置,进行癫痫的棘波检测分析。

从文章提到的结果来看,这篇文章所提出的2角度提取特征的方法是有效的。因为文章本身没有公开代码,所以我按照文章所述,对方法进行了复现。按我的思路来说,先从一般的concate方法出发,在未使用论文在3.3.1节所用到的Anchoring IED peak算法的前提下,并未达到Table 9中消融实验的效果。所以复现工作就此终止。

另外,因为V2IED论文本身所用到的公开数据集Dyrad很小,所以,我应用该思路使用到TUEV数据集进行了再实验,实验结果也不是很理想。

以上所述,仅是我的一家之言, 在文末,我会公开我所写的部分代码,欢迎志同道合的朋友一起讨论,如果发现本博客或代码中存在明显问题,还望不吝指正。谢谢!

本文主要针对论文的想法和思路进行分析,复现和实验部分是按照思路进行的,如有纰漏,还望指正。好了,话不多说,开始进入正文。

文章精读

既然是精读,就需要对文章进行仔细阅读,但在这里我就不浪费大家的时间了,直接讲方法。

这篇文章发表在中科院1区Neural Network期刊上,其参考意义不言而喻。文章提出了从两方面去学习EEG棘波数据的特征,即形态学上的(其实就是时序信号的特点,如图1所示)和空间上的(在这里使用的是拓扑位置嵌入矩阵,如图2所示)。通过多模融合(concate等)融合时间上和空间上的信息,达到改善一般时序模型的效果。
棘波形态学特点

图1. 棘波形态学特点

在这里插入图片描述
图2 拓扑位置嵌入矩阵

时序(形态学)信息

因为所用公开数据集数据量较小的原因(Dyrad数据集仅仅有100例数据,论文经过数据扩张到了800例),这篇文章仅使用了一个较浅层的网络模型,总共8层卷积神经网络,在结构上参考了ResNet的残差连接的架构,如图3所示。
在这里插入图片描述

图3 时序模块

而基于EEG或MEG信号多元时间序列的特点,在棘波检测领域本就存在很多的方法,而这些方法大都只关注各时间序列和各时间序列之间的关系,并没有考虑棘波本身具备的空间位置信息。

空间位置信息

从我个人主观评价来说,V2IED论文最大的亮点即是利用了空间拓扑位置信息,提升了棘波检测的准确性。

棘波这类生理特征往往会具有局灶性的特点,即棘波出现仅会在某个局部区域中。正如论文中提到的,如图4所示,棘波在拓扑图上会表现出正负电性相反的偶极子性状。
在这里插入图片描述

图4 棘波拓扑图表现

可能是处于图片信息冗余更大的缘故,作者将数据转换成了如图2的位置嵌入矩阵。并在嵌入前进行了 re-referenceAnchoring IED peak操作。下面我们简单讲一讲这两个方法是怎么进行的。

re-reference

从EEG数据的成像原理上来说,EEG数据是大脑皮层椎体神经元细胞径向放电产生的,但径向放电的来源不知会有大脑的生理活动,例如眼动等其它因素都会影响EEG的成像。再者而言,EEG信号接收到的是电信号,这会因大脑的结构不同(大脑里其实是有导电质的,如颅骨,脑脊液等),会有不同程度的衰减,因此,各传感器采样的电信号可能会差距很大。

因此,就需要找到一个合适的基准来消除差异,一般来说,EEG信号在采样后会同一减去同一个REF值,将减后的数值作为该传感器位置上的值。而癫痫棘波往往是要关注局部传感器采样的信号的,因此就需要就近传感器做二次参考以突出棘波生理性状。

例如,TUH这一系列的数据集都会在其AAREADME.txt文件中提到一种ACNS TCP的montage(即蒙太奇,参考的样式)。如下所示,

 montage =  0, FP1-F7: EEG FP1-REF --  EEG F7-REF
 montage =  1, F7-T3:  EEG F7-REF  --  EEG T3-REF
 montage =  2, T3-T5:  EEG T3-REF  --  EEG T5-REF
 montage =  3, T5-O1:  EEG T5-REF  --  EEG O1-REF
 montage =  4, FP2-F8: EEG FP2-REF --  EEG F8-REF
 montage =  5, F8-T4 : EEG F8-REF  --  EEG T4-REF
 montage =  6, T4-T6:  EEG T4-REF  --  EEG T6-REF
 montage =  7, T6-O2:  EEG T6-REF  --  EEG O2-REF
 montage =  8, A1-T3:  EEG A1-REF  --  EEG T3-REF
 montage =  9, T3-C3:  EEG T3-REF  --  EEG C3-REF
 montage = 10, C3-CZ:  EEG C3-REF  --  EEG CZ-REF
 montage = 11, CZ-C4:  EEG CZ-REF  --  EEG C4-REF
 montage = 12, C4-T4:  EEG C4-REF  --  EEG T4-REF
 montage = 13, T4-A2:  EEG T4-REF  --  EEG A2-REF
 montage = 14, FP1-F3: EEG FP1-REF --  EEG F3-REF
 montage = 15, F3-C3:  EEG F3-REF  --  EEG C3-REF
 montage = 16, C3-P3:  EEG C3-REF  --  EEG P3-REF
 montage = 17, P3-O1:  EEG P3-REF  --  EEG O1-REF
 montage = 18, FP2-F4: EEG FP2-REF --  EEG F4-REF
 montage = 19, F4-C4:  EEG F4-REF  --  EEG C4-REF
 montage = 20, C4-P4:  EEG C4-REF  --  EEG P4-REF
 montage = 21, P4-O2:  EEG P4-REF  --  EEG O2-REF

从上面就可以看出,re-reference其实就是一种相邻或位置相近的传感器作差值并作为观测值的参考方法。

而在re-referen的基础上,论文作者又提出了一种Anchoring IED peak的算法。

Anchoring IED peak

在这里插入图片描述

图5 Anchoring IED peak算法

这里我们简单来分析一下作者这样做要干啥。

首先,算法第1步:要把信号做纵向和横向的2极参考(bipolar montage,re-reference的一种,这里就是相邻位置做差值)。

我们反过头看一下图2,这里总共有19各电极。我们先从左往右看,即横向来看,如果做bipolar re-reference的话,那么肯定是

F7 - FP1
FP1 - Fz
Fz - FP2
FP2 - F8
F7 - F3
F3 - Fz 
........下面就不重复了。

这样的话,就能得到18个二次参考的值。而纵向的话也是同样的道理了。这样就会有36个montage值。

然后,算法的2,3,4步其实就是基于这36个montage值求方差,把原始19通道的数据的差异去掉就行了。

接下来就是实验部分了。

复现及有关实验

了解了算法的原理,接下来就是编码实现了。我把写的一部分代码公开了,如果大家希望我分析一下实验流程的话,后续我会加班补上。但结果上来说,我没有完全复现出论文的效果。

代码公开

本博客所提到的实验结果来源于笔者的复现,如有需要,可以访问我的GitHub仓库下载:仓库地址

关于论文的一点想法

  1. 论文所用到的数据集仅一个,且数据量很少,并不能证明其鲁棒性。
  2. 欢迎评论区的各位提出,我提太多不太好…
  • 20
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值