25、新加坡南洋理工、新加坡国立大学提出FBCNet:完美融合FBCSP的CNN,EEG解码SOTA水准![抱歉老师,我太想进步了!]

本文主要是介绍25、新加坡南洋理工、新加坡国立大学提出FBCNet:完美融合FBCSP的CNN,EEG解码SOTA水准![抱歉老师,我太想进步了!],希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言:

阴阳差错,因工作需要,需要查阅有关如何将FBCSP融入CNN中的文献,查阅全网,发现只此一篇文章,心中大喜,心想作者哪家单位,读之,原来是自己大导(新加坡工程院院士)目前任职的高校,心里斐然,平台在那,这实验室别人喝漏的矿泉水拿过来都能发个CVPR。院士资源,高山仰止。

论文:

《FBCNet: A Multi-view Convolutional Neural Network for Brain-Computer Interface》

2021年3月17日arXiv<Computer Science>

代码:

https://github.com/ravikiran-mane/FBCNet.

本文完美的将机器学习FBCSP与深度学习CNN相结合,性能超越了FBCSP达到了脑电解码的SOTA水准!

0、Abstract:

缺乏足够的训练样本和噪声高维特征是基于脑机接口(BCI)的运动图像(MI)解码算法面临的主要挑战。为了解决这些挑战,受脑梗死神经生理特征的启发,本文提出了一种新的用于脑梗死分类的Filter-Bank卷积网络(FBCNet)。FBCNet采用多视图数据表示和空间滤波来提取光谱空间判别特征。这种多阶段方法可以在训练数据有限的情况下有效地训练网络。更重要的是,在FBCNet中,我们提出了一种新的方差层,可以有效地聚合脑电时域信息。通过这种设计,我们将FBCNet与最先进的(SOTA) BCI算法在四个MI数据集上进行比较:BCI竞赛IV数据集2a (bbic -IV-2a)、OpenBMI数据集和两个来自慢性卒中患者的大型数据集。结果表明,FBCNet为bbic - iv -2a数据集建立了新的SOTA, 4类分类准确率达到76.20%。在其他三个数据集上,FBCNet的二值分类准确率提高了8%。此外,使用可解释的人工智能技术,我们提出了关于健康受试者和中风患者之间判别性脑电图特征差异的首批报告之一。

1、Introduction:

本文的主要贡献如下:

1.提出了一种紧凑且受神经生理学启发的CNN架构FBCNet,用于MI分类

2.为有效提取脑电图时间信息和减少参数,提出了一种新颖的方差层。

3.在慢性中风患者心肌梗死解码中首次将经典机器学习算法和深度学习构架进行了比较

4..我们的研究表明,对于中风患者,经典的机器学习方法可能优于通用的深度学习架构,但在FBCNet中所做的那样,仔细融合深度学习方法和MI的神经生理学知识,可以对健康受试者和中风患者实现最佳的分类精度。

2、Related Works:

许多经典的机器学习技术已经被提出用于EEG-MI分类,在[12]中可以找到它们的广泛总结。其中,FBCSP是最成功的算法之一[6],其设计理念与FBCNet相似。因此,我们直接比较FBCNet和FBCSP的结果。

近年来,许多深度学习架构也被提出用于EEG-BCI领域[7]-[10],[21]。其中,Deep ConvNet[7]和EEGNet[9]是在EEG社区中得到广泛应用的两种架构,并提供了开源代码实现。因此,我们使用这两种架构与FBCNet在所有评估数据集中进行比较。最后,我们根据BCI竞争IV-2a数据集上报告的准确性,将FBCNet与许多最新架构的性能进行了比较。

3、Method:

FBCNet的设计目的是有效地提取MI特征的光谱空间判别信息,同时避免小数据集存在的过拟合问题。FBCNet架构的核心由以下四个阶段组成:

1.多视角数据表示:通过多个窄的带通滤波器对原始脑电图进行频谱滤波,得到脑电数据的多视图表示。

2.空间转换学习:然使用深度卷积层学习每个视图的空间判别模式。

3.时间特征提取:在空间变换的基础上,采用一种新的方差层来有效地提取时间信息

FBCNet模型图

模型解析:

3.1 Spectral Localization by Multi-view Data Representation

其中,输入数据 Raw EEG:

标签y:

C:通道数;T:时间点,Nc:不同类别总数

脑电数据中与心肌梗死相关的信息存在于mu (8- 12hz)和beta (12-32Hz)频段,所以为了定位到这种判别信息,使用多视角数据表示:其中每一个视图代表一个不同频段的滤波器。

多视图表示为:

其中,原始EEG信号=x(上面已提到),滤波器组为:

滤波器组F由Nb个时间滤波器构成,对原始脑电信号x进行滤波操作,沿着XFB的第三维度——时间序列变化进行频谱局域化,即:

其中,

是带通滤波

问题:对于每个滤波器截止频段的设计,论文指出:

1.滤波器组F本可以由任意数量的截止频率不同的滤波器组成

2.但本模型使用Nb=9个滤波器组成滤波器组,每个频带4hz,从4-40hz,每4hz一段(4- 8,8 -12,…), 36-40赫兹)

3.滤波使用切比雪夫II型滤波器过渡带宽为=2Hz阻带纹波为=-30dB

以上这种滤波器组的选择源于FBCSP算法中提出的传统脑电图神经学显著谱带划分,该划分方法已被证明实现了良好的分类精度。

3.2 Spatial Localization by CNN

使用空间卷积块实现EEG信号的空间定位:

Spatial Convolution Block(SCB) = Depth_Conv2d+BN+Swish,kernel_size=(C,1)

注意:

1.深度卷积的使用导致每个滤波器只与一个频带EEG相关联,深度参数m控制每个频带的空间滤波器的数量。

2.卷积核(C,1)可以跨越所有通道,有效地充当空间过滤器

3.在每个卷积核的权重上使用最大范数=2来正则化每个卷积核

此时,之前滤波器组输出为

SCB输出:

所以,SCB输出的时间序列为:

其中,m=32

3.3 Temporal Feature Extraction by Variance Layer

原始EEG数据通常沿时间维度包含大量特征,这些特征表现出最大的类内方差和高噪声含量。因此,为了避免分类模型的过拟合,有必要通过有效提取最相关的时间信息来降低时间维特征。最大池化或平均池化策略是用于降低特征维数的最常用技术。然而,考虑到不同类型的MI的频谱功率(ERD/ERS)不同,方差运算代表给定时间序列的频谱功率成为EEG时间表征更合适的选择。因此,为了有效地提取时间判别信息,我们提出了一种新的方差层,该层通过计算时间序列的方差来表征时间序列。在正向传递中,对于任意时变信号g(t)方差层的输出为:

其中,T=时间总点数;u是g(t)的平均值

在神经网络学习阶段(反向传播阶段),方差层对脑电数据的影响更为显著。对于任意一个神经网络,如果:

方差层的输入损失,那么这一层对输入g(t)的反向传播损失Lg(t):

看出:

方差层的反向传播损耗ug(t)以及信号均值的偏差成正比。

所以:

方差层通过为这些点分配更高比例的输入梯度,为远离均值的信号点提供了更多的重要性。

并且:

这也与脑电图的特征相一致,其中以ERD或ERS的形式偏离平均值是心肌梗死的明显特征。

最后:

SCB的输出被传递到方差层,它计算大小为w的非重叠窗口中单个时间序列的时间方差,整个时间范围内应用方差层将特征的数量从:

减少到:

从而实现了高度的特征减少。窗口长度w=15

3.4 Classification

方差层提取的特征通激活,然后送给FC层。然后将FC的输出传递给softmax层,以获得每个类的输出概率。使用最大范数=0.5对FC层权值进行正则化:

4、Datasets

  1. BCIC-IV-2A Data: A 4 class MI data from BCI Competition IV Dataset 2A [26].

  2. OpenMBI Data: A 2 class MI data from Korea University EEG dataset [27].

  3. Stroke Data: A: A 2 class MI vs rest dataset [4].

  4. Stroke Data: B: A 2 class MI vs rest dataset [28].

5、 Experiments

10折交叉验证:9训练,1测试

Adam,Lr=0.001,betas=0.9,0.999

对数交叉熵损失

早停法,连续epoch=200停

6、Results

FBCNet在2a数据中Average_acc= 79%

7、Academician Dog Egg Black

不是,咱就是说你每天别光睡觉,睡起来就玩小球和逗猫棒,有点远大的抱负好不,比如通过你自己的努力,选上了工程院院士,我也好沾沾狗蛋你的光!

狗蛋:我就是一只小猫咪,我睡会觉咋了?

这篇关于25、新加坡南洋理工、新加坡国立大学提出FBCNet:完美融合FBCSP的CNN,EEG解码SOTA水准![抱歉老师,我太想进步了!]的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

韦季李输入法_输入法和鼠标的深度融合

在数字化输入的新纪元,传统键盘输入方式正悄然进化。以往,面对实体键盘,我们常需目光游离于屏幕与键盘之间,以确认指尖下的精准位置。而屏幕键盘虽直观可见,却常因占据屏幕空间,迫使我们在操作与视野间做出妥协,频繁调整布局以兼顾输入与界面浏览。 幸而,韦季李输入法的横空出世,彻底颠覆了这一现状。它不仅对输入界面进行了革命性的重构,更巧妙地将鼠标这一传统外设融入其中,开创了一种前所未有的交互体验。 想象

【JavaScript】LeetCode:21-25

文章目录 21 最大子数组和22 合并区间23 轮转数组24 除自身以外数组的乘积25 缺失的第一个正数 21 最大子数组和 贪心 / 动态规划贪心:连续和(count)< 0时,放弃当前起点的连续和,将下一个数作为新起点,这里提供使用贪心算法解决本题的代码。动态规划:dp[i]:以nums[i]为结尾的最长连续子序列(子数组)和。 dp[i] = max(dp[i - 1]

深度学习实战:如何利用CNN实现人脸识别考勤系统

1. 何为CNN及其在人脸识别中的应用 卷积神经网络(CNN)是深度学习中的核心技术之一,擅长处理图像数据。CNN通过卷积层提取图像的局部特征,在人脸识别领域尤其适用。CNN的多个层次可以逐步提取面部的特征,最终实现精确的身份识别。对于考勤系统而言,CNN可以自动从摄像头捕捉的视频流中检测并识别出员工的面部。 我们在该项目中采用了 RetinaFace 模型,它基于CNN的结构实现高效、精准的

FFmpeg系列-视频解码后保存帧图片为ppm

在正常开发中遇到花屏时怎么处理呢?可以把解码后的数据直接保存成帧图片保存起来,然后直接看图片有没有花屏来排除是否是显示的问题,如果花屏,则代表显示无问题,如果图片中没有花屏,则可以往显示的方向去排查了。 void saveFrame(AVFrame* pFrame, int width, int height, int iFrame){FILE *pFile;char szFilename[

AI和新基建赋能智慧工地超融合管理平台解决方案

1. 项目背景与需求 电力行业的工程管理正朝着智慧化发展,但目前仍处于起步阶段。为满足数字化、网络化、智能化的发展需求,需要构建一个高效综合监控平台,实现对电力项目全过程的精益化管控。 2. 综合管理平台的构建 该平台集成了超融合实景监控、安全智能监测、公共安全防范、技术管理、人员管控和绿色施工等多个方面,通过BIM协同优化设计,提升项目质量和进度管理。 3. 安全智能监测的重要性 安全

word转PDF后mathtype公式乱码以及图片分辨率降低等一系列问题|完美解决

word转PDF后mathtype公式乱码以及图片分辨率降低等一系列问题|完美解决 问题描述 最近在投一篇期刊论文,直接提交word文档,当时没有查看提交预览,一审审稿意见全是:公式乱码、公式乱码、乱码啊!!!是我大意了,第二次提交,我就决定将word文档转成PDF后再提交,避免再次出现公式乱码的问题。接着问题又来了,我利用‘文件/导出’或‘文件/另存为’的方式将word转成PDF后,发现公式

超越IP-Adapter!阿里提出UniPortrait,可通过文本定制生成高保真的单人或多人图像。

阿里提出UniPortrait,能根据用户提供的文本描述,快速生成既忠实于原图又能灵活调整的个性化人像,用户甚至可以通过简单的句子来描述多个不同的人物,而不需要一一指定每个人的位置。这种设计大大简化了用户的操作,提升了个性化生成的效率和效果。 UniPortrait以统一的方式定制单 ID 和多 ID 图像,提供高保真身份保存、广泛的面部可编辑性、自由格式的文本描述,并且无需预先确定的布局。

开发高质量的java代码;实现完美的人生

一、代码质量差表现在哪些方面: (1)可读性:函数命名随意,实现逻辑混乱,代码格式不规范。 (2)可靠性:程序运行不稳定,bug太多。 (3)维护性:代码逻辑没有层次,混成一团,很难维护改进。 (4)移植性、重用性:许多人写的代码,只能自己使用,很少有能共享的功能性代码。 (5)高效性:很少从算法、资源占用、执行效率等角度去考虑,经常导致软件性能问题。 二、解决方法(个人角度) (1)要

如何将卷积神经网络(CNN)应用于医学图像分析:从分类到分割和检测的实用指南

引言 在现代医疗领域,医学图像已经成为疾病诊断和治疗规划的重要工具。医学图像的类型繁多,包括但不限于X射线、CT(计算机断层扫描)、MRI(磁共振成像)和超声图像。这些图像提供了对身体内部结构的详细视图,有助于医生在进行准确诊断和制定个性化治疗方案时获取关键的信息。 1. 医学图像分析的挑战 医学图像分析面临诸多挑战,其中包括: 图像数据的复杂性:医学图像通常具有高维度和复杂的结构

SQLException: No Suitable Driver Found - 完美解决方法详解

🚨 SQLException: No Suitable Driver Found - 完美解决方法详解 🚨 **🚨 SQLException: No Suitable Driver Found - 完美解决方法详解 🚨****摘要 📝****引言 🎯****正文 📚****1. 问题概述 ❗****2. JDBC 驱动程序的工作原理 🔧****3. 错误的根本原因 🕵️**