运动想象 (MI) 分类学习系列 (8) :IFNet

2024-04-18 14:12

本文主要是介绍运动想象 (MI) 分类学习系列 (8) :IFNet,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

运动想象分类学习系列:IFNet

  • 0. 引言
  • 1. 主要贡献
  • 2. 提出的方法
    • 2.1 交互式频率卷积神经网络
      • 2.1.1 光谱空间特征表示
      • 2.1.2 跨频交互
      • 2.1.3 分类(一个池化+分类层)
    • 2.2 重复试验增强
  • 3. 实验
    • 3.1 基线比较
    • 3.2 消融实验
      • 3.2.1 数据增强消融
      • 3.2.2 条带分割消融
      • 3.2.3 交互算子的烧蚀
  • 4. 总结
  • 欢迎来稿

论文地址:https://ieeexplore.ieee.org/abstract/document/10070810
论文题目:IFNet: An Interactive Frequency Convolutional Neural Network for Enhancing Motor Imagery Decoding from EEG
论文代码:https://github.com/Jiaheng-Wang/IFNet

0. 引言

基于脑电图(EEG)的脑机接口(BCI)的运动意象(MI)解码的关键原理是联合高效地从频谱、空间和时间域中提取任务判别特征,而有限、噪声和非平稳的脑电图样本对解码算法的先进设计提出了挑战。方法:受跨频耦合概念及其与不同行为任务的相关性的启发,该文提出一种轻量级交互式频率卷积神经网络(IFNet) 来探索跨频交互以增强MI特征的表示。IFNet首先分别提取低频段高频段的光谱空间特征。然后,使用逐个元素加法操作学习两个波段之间的相互作用,然后进行时间平均池化。结合作为正则化器的重复试验增强,IFNet为最终的MI分类提供了光谱-时空-鲁棒的特征。

总得来说,有一定的借鉴价值,包括频带分成了两个而不是如FBCSP那样区分,另外特征增强方法有点意思,基础框架还是EEGNet! 所以EEGNet永远的神!!!

另外,对于模型这里频带的选择可能是参考FBCSP的,但是又跟节律扯上关系,我是觉得有点难以理解的,mu节律beta节律被分割开了,所以很难解释清楚,有兴趣的同学可以按照节律的思路测试一下。。。。

1. 主要贡献

  1. 我们提出了一种轻量级交互式频率卷积神经网络 (IFNet) 来探索跨频相互作用,以增强 MI 任务的频谱-时空鲁棒表示。
  2. 我们引入了重复试验增强作为正则化器,以缓解网络训练期间由有限和嘈杂的脑电图样本引起的过拟合
  3. 我们在两个基准数据集上对最先进的MI解码算法进行了广泛的实验,证明了所提出的IFNet的有效性和优越性。此外,它在解码速度准确性之间实现了最佳权衡。最后但并非最不重要的一点是,我们验证了IFNet学习神经生理学上可解释的特征。

2. 提出的方法

2.1 交互式频率卷积神经网络

跨频耦合(CFC)概念EEGNet高效设计的启发,我们提出了IFNet来有效和高效地捕获光谱-时空-时间判别特征。IFNet由三个阶段组成:光谱空间特征表示跨频交互分类。IFNet的架构如下图所示。
在这里插入图片描述
具体参数如下:
在这里插入图片描述
注意:这里平均池化层的stride也设置为125。

2.1.1 光谱空间特征表示

为了实现显式频带相互作用,我们将脑电图信号分为两个特征频带。由于脑振荡通常被归类为特定频段(delta:<4 Hz、θ:4-7 Hz、alpha:8-12 Hz、beta:12-30 Hz、γ:>30 Hz),脑电信号首先分别滤波为低频(4-16 Hz)高频(16-40 Hz)频段。这两个波段的选择涵盖了与 MI 特征最相关的 mu 和 beta 节奏。我们采用空间滤波,然后采用时间滤波来学习光谱空间判别模式。具体来说,在我们的实现中,X 被视为具有多通道的时间维度的一维图像。然后,通过以下方式产生光谱空间特征:
U l = F t ^ ( F s ^ ( X l ) ) U h = F t ~ ( F s ~ ( X h ) ) \begin{align*} U_{l} &= \widehat { \mathcal {F}_{t} } \left ({ \widehat { \mathcal {F}_{s} } (X_{l}) }\right ) \\ U_{h} &= \widetilde { \mathcal {F}_{t} } \left ({ \widetilde { \mathcal {F}_{s} } (X_{h}) }\right ) \tag{1}\end{align*} UlUh=Ft (Fs (Xl))=Ft (Fs (Xh))(1)
其中, X l X_{l} Xl表示低频信号, X h X_{h} Xh表示高频信号, F s ^ \widehat {\mathcal {F}_{s}} Fs F t ^ \widehat {\mathcal {F}_{t}} Ft 分别表示一维逐点空间卷积一维深度时间卷积。它们之后都跟着批量归一化 (BN) 层

2.1.2 跨频交互

为了增强光谱空间特征的表示能力,我们对不同频段之间的相互作用进行了建模。具体来说,我们研究了各种交互算子

  • Summation(求和): I ( U l , U h ) = U l + U h I(U_l,U_h)=U_l+U_h I(Ul,Uh)=Ul+Uh
  • Concatenation(串联): I ( U l , U h ) = [ U l , U h ] I(U_l,U_h)=[U_l,U_h] I(Ul,Uh)=[Ul,Uh]
  • Hadamard product(Hadamard 算子): I ( U l , U h ) = U l ⊙ U h I(U_l,U_h)=U_l⊙U_h I(Ul,Uh)=UlUh
  • Linear projection(线性投影): I ( U l , U h ) = W l U l + W h U h I(U_l,U_h)=W_lU_l+W_hU_h I(Ul,Uh)=WlUl+WhUh
  • Split attention(分散注意力):采用 Fuse 和 Select 算子。

2.1.3 分类(一个池化+分类层)

虽然传统的 MI 解码方法通常使用方差作为时间特征,但池化广泛用于 CNN 中的信息聚合。因此,我们采用非重叠窗口大小W 以提取稳健的时间表示。由于脑电图的振荡节律可以在短时间内假设为静止信号,因此在这项工作中,W 在 250 Hz 采样率下设置为 125,表示 0.5 秒长的 EEG 特征。
注意:这里池化层的stride也设置为125。

2.2 重复试验增强

我们引入了由随机裁剪随机擦除组成的重复试验增强作为正则化器,以稳定训练并增强神经网络在脑电图解码中的泛化。简而言之,它通过多个数据转换在小批量中生成多个样本实例。重复试验增强的图示如图 2 所示。

在这里插入图片描述

3. 实验

3.1 基线比较

下图展示了在BCIC-IV-2a数据集上的结果。IFNet 始终优于其他方法,并且 IFNet 与所有其他方法之间的平均分类准确度差异在统计学上是显著的
在这里插入图片描述

下图展示了在OpenBMI数据集上跨会话会话内性能。IFNet 在两种评估设置中都实现了最高的平均分类准确率
在这里插入图片描述

3.2 消融实验

3.2.1 数据增强消融

BCIC-IV-2a数据集不同数据增强策略组合的深度学习模型的平均准确率
在这里插入图片描述

3.2.2 条带分割消融

BCIC-IV-2a数据集上不同波段分割选项的IFNet结果
在这里插入图片描述

3.2.3 交互算子的烧蚀

不同交互算子在BCIC-IV-2a数据集上的IFNet结果
在这里插入图片描述

4. 总结

到此,使用 运动想象 (MI) 分类学习系列 (8) :IFNet 已经介绍完毕了!!! 如果有什么疑问欢迎在评论区提出,对于共性问题可能会后续添加到文章介绍中。

如果觉得这篇文章对你有用,记得点赞、收藏并分享给你的小伙伴们哦😄。

欢迎来稿

欢迎投稿合作,投稿请遵循科学严谨、内容清晰明了的原则!!!! 有意者可以后台私信!!

这篇关于运动想象 (MI) 分类学习系列 (8) :IFNet的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/915009

相关文章

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

基于人工智能的图像分类系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像分类是计算机视觉中的一个重要任务,目标是自动识别图像中的对象类别。通过卷积神经网络(CNN)等深度学习技术,我们可以构建高效的图像分类系统,广泛应用于自动驾驶、医疗影像诊断、监控分析等领域。本文将介绍如何构建一个基于人工智能的图像分类系统,包括环境

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

认识、理解、分类——acm之搜索

普通搜索方法有两种:1、广度优先搜索;2、深度优先搜索; 更多搜索方法: 3、双向广度优先搜索; 4、启发式搜索(包括A*算法等); 搜索通常会用到的知识点:状态压缩(位压缩,利用hash思想压缩)。

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]