【论文笔记】Large Brain Model (LaBraM, ICLR 2024)

embedded/2024/11/22 5:49:26/

在这里插入图片描述

Code: https://github.com/935963004/LaBraM
Data: 无


目录

    • Abstract
    • Introduction
    • Method
      • Neural tokenizer training:
      • Pre-training LaBraM:
    • Results
      • Experimental setup:
      • Pre-training result:
      • Comparison with SOTA:
      • Pre-training with/without downstream datasets:
      • Scaling data size:
    • Conclusion
    • Related work
    • Appendix
      • Effectiveness of VQ:
      • LaBraM without pre-training:
    • Discussion


Abstract

本文介绍了一种新型的大型脑电图(EEG)模型,名为Large Brain Model(LaBraM),旨在克服传统基于EEG的深度学习模型在脑机接口(BCI)应用中的局限性,如模型规模有限、感知能力和泛化性不足。LaBraM通过无监督预训练来获得对EEG信号的通用感知能力,然后可以针对不同的下游任务进行微调。

LaBraM面临的挑战包括EEG数据集规模小、格式差异大、电极数量不匹配、数据样本长度不等、任务设计多样以及信噪比低。为了应对这些挑战,LaBraM通过将EEG信号分割成EEG通道片段,使用向量量化神经谱预测技术训练一个语义丰富的神经tokenizer,将连续的原始EEG通道片段编码成紧凑且离散的神经tokens。然后,通过预测掩蔽EEG通道片段的原始神经tokens来预训练神经Transformer。

LaBraM在约2500小时、来自约20个数据集的多种类型的EEG信号 上进行了预训练,并在多种下游任务上进行了验证,包括异常检测、事件类型分类、情感识别和步态预测。实验结果表明,LaBraM在各自领域的表现超过了所有比较的SOTA(State of the Art)方法。


Introduction

  • 背景:当前的EEG模型缺乏跨任务的学习能力,泛化性较差。
  • 动机:大语言模型(LLMs)的成功表明自监督掩码预训练的方式对于大规模数据应用的潜力,将重建思想应用于预训练神经Transformer可能对下游任务是有效的。
  • 挑战
    1. 缺乏足够的EEG数据:如何利用大量的未标记EEG数据集?以及多大的数据够用?
    2. 不同的EEG数据集有不同的采集配置:如何处理不同格式的EEG数据以匹配神经Transformer的输入层?
    3. 缺乏有效的EEG表征学习范式:EEG的低信噪比特点,以及如何平衡时间和空间特征?
  • 贡献
    1. 大规模EEG预训练:在超过2500小时的EEG数据上预训练
    2. 兼容各种EEG配置:LaBraM 是统一的模型,能够在灵活的辅助下处理各种通道和时间长度的 EEG 信号。预训练的 LaBraM 可以适应任何具有不同配置的下游数据集
    3. 有效的EEG表征学习:神经 Transformer 使该模型能够有效捕获具有不同通道和长度的脑电图信号的时间和空间特征,使其适用于脑电图分析中的各种下游任务。并进一步定义了一个神经密码本(CodeBook),它提供了一种紧凑、通用且有意义的EEG信号表示。
    4. 下游数据集综合实验:作者在 BCI 的四个代表性下游任务上评估了 LaBraM,结果表明在很大程度上超越了所有为特定任务而开发的 SOTA 方法。

Method

在这里插入图片描述

Neural tokenizer training:

在通过掩码预测对 LaBraM 进行预训练之前,需要先将 EEG 标记为离散tokens。这一部分主要基于 Van Den Oord 的 VQVAE 架构实现

  • EEG数据token化:首先通过一个 tokenizer 模块将EEG根据时间和通道两个维度划分为patch矩阵
  • tokens 的向量量化:基于VQVAE的思想,将上一步得到的patch通过最近邻的方式找到一个预定义的 CodeBook 上的向量来代替这个patch,更新patch矩阵
  • 傅里叶谱预测:重建的目标被设定为EEG信号的傅里叶频谱的频率和相位分布(作者在预实验中发现直接重建EEG信号损失无法收敛,可能是SNR过低导致),作者认为这两种特征揭示了大脑潜在的神经生理活动(存在改进空间,这里的重建目标决定了后续预训练的下游任务的上限)。
  • VQ的预测损失:包含两种预测目标的重建损失,以及 CodeBook 的更新损失
    在这里插入图片描述

Pre-training LaBraM:

  • 模型架构:时序 encoder → 叠加时序和空间 embedding → 大量Transformer模块 → Tokens预测头
  • 掩码输入:同样地划分为patch矩阵,然后随机选取一定比例的patch进行掩蔽,同时为了提高训练效率和内存使用,将随机掩码的对称patch矩阵同时作为输入,也可以起到数据增广的作用。
  • 预测目标:上一步得到的离散tokens。
    在这里插入图片描述

Results

Experimental setup:

  • Pre-training:在超过2500h的EEG数据上训练神经tokenizer和预训练 LaBram
  • Fine-tuning:在四个下游数据集上进行全微调 LaBram

Pre-training result:

在这里插入图片描述

Comparison with SOTA:

表 1 和表 2 展示了最先进的baseline以及LaBraM在 TUAB 和 TUEV 的结果。结果表明,LaBraM-Base 模型在这两项任务的各种评估指标上均优于所有baseline。随着模型参数数量的增加,LaBraM-Huge 模型表现最好。作者认为有了足够的数据量,大规模脑电图模型可以学习更通用的脑电图模式,从而提高脑电图分析中各种下游任务的性能。
在这里插入图片描述

Pre-training with/without downstream datasets:

在这里插入图片描述

如图 4 所示,是否将下游任务数据集纳入模型的预训练过程不会显着影响模型在下游任务上的性能。这表明 LaBraM 模型具有学习通用脑电图表示的能力

Scaling data size:

在这里插入图片描述

如图所示,随着数据规模的不断扩大,Huge模型的性能呈现出明显的上升趋势。这些结果基本遵循 scaling law,所以作者大胆推断,在数据量至少为一万小时的情况下,Huge 模型将继续表现得更好。


Conclusion

LaBraM是一个通过无监督预训练学习通用embedding的大型脑电图(EEG)模型,能够处理多样化的EEG数据集。LaBraM通过分割EEG信号和使用向量量化神经谱预测来生成丰富的语义tokenizer,并利用神经Transformer架构在大规模数据上预训练学习EEG信号的时空间特征,适用于多种EEG分析任务。在异常检测、事件分类、情感识别和步态预测等任务中,LaBraM的表现超越了当前最先进方法,有望推动EEG深度学习模型的发展。


Related work

  • BCI 中的自监督学习BrainBERT(Wang 等人,2023)掩蔽立体脑电图 (SEEG) 频谱图的随机部分,并使用 43.6 小时的数据生成原始嵌入。

Appendix

Effectiveness of VQ:

在这里插入图片描述

LaBraM without pre-training:

直接在下游数据集上从头开始训练 LaBraM,无需预训练,性能急剧下降证明了预训练的有用性。
在这里插入图片描述


Discussion

  • Limitations
    1. 虽然作者收集了有史以来最大的超过2500小时的脑电图数据集,并为BCI训练了有史以来最大的3.69亿参数的模型,但与当今的大型视觉模型和大型语言模型相比,仍然有很大的差距。
    2. LaBraM 需要进行全面微调以适应下游任务,这可能会耗费计算成本和内存成本。
    3. LaBraM 使用单峰脑电图数据进行训练。研究用其他方式训练大型脑电图模型是值得的。
  • Outlook
    1. 涌现能力:从各种BCI任务中收集更多的脑电数据,并训练更大的脑电模型,看看脑电模型中是否存在类似于大型语言模型的涌现能力
    2. 高效性:利用适配器、即时调优、LoRA等参数高效学习方法,减少微调开销,节省磁盘空间
    3. 多模态:将图像、语言、语音和其他生理信号等其他模态纳入大型脑电图模型训练中以构建新的范式,或将脑电图表示与语义空间中的其他模态对齐,这可能是未来工作的一个有意义且具有挑战性的方向。

创作不易,麻烦点点赞和关注咯!


http://www.ppmy.cn/embedded/139538.html

相关文章

scPair:隐式特征选择提高single-cell paired多模态分析

配对多模态单细胞分析可在同一细胞中分析多模态特征,用于识别染色质和 mRNA 模态互补的细胞状态以及将调控元件与靶基因联系起来。然而,与单模态分析相比,输入特征的高维度和较浅的测序深度给数据分析带来了挑战。在这里,作者介绍…

leetcode:114. 二叉树展开为链表

给你二叉树的根结点 root ,请你将它展开为一个单链表: 展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。展开后的单链表应该与二叉树 先序遍历 顺序相同。 示例 1&#xf…

如何在 Ubuntu 上设置 SSH X11 转发并访问远程图形界面

1. 前言 当我们在远程服务器上运行需要图形界面的程序时,通常需要使用 SSH 来连接服务器并通过 X11 转发将远程的图形界面显示到本地机器。本文将详细介绍如何使用 SSH 命令和相关的配置,来通过 X11 转发在 Ubuntu 上远程访问服务器的图形界面。 2. SS…

Bokeh实现大规模数据可视化的最佳实践

目录 引言 一、Bokeh简介 二、安装Bokeh 三、数据准备 四、性能优化 五、创建图表 六、添加交互功能 七、应用案例 八、高级技巧 九、总结 引言 在数据科学领域,数据可视化是一个至关重要的环节。通过可视化,我们可以直观地理解数据的特征和趋…

springboot中设计基于Redisson的分布式锁注解

如何使用AOP设计一个分布式锁注解&#xff1f; 1、在pom.xml中配置依赖 <dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId><version>5.3.26</version></dependency><dependenc…

什么是Git,有什么特点

版本控制工具Git简介 一、Git的由来 Git 是一种分布式版本控制系统&#xff0c;由 Linux 之父 Linus Torvalds 于 2005 年创建。当时&#xff0c;Linux 内核开发团队需要一个高效的版本控制系统来管理庞大的代码库。在此之前&#xff0c;他们使用的是 BitKeeper&#xff0c;这…

【第二十一周】网络爬虫实践

目录 摘要Abstract案例&#xff1a;使用 Python 抓取微博评论数据一、数据来源分析1.明确需求2.抓包分析 二、代码实现步骤1.发送请求2.获取数据3.解析数据4.保存数据5.批量采集数据6.封装函数 总结 摘要 本周主要完成了陶博的大语言课程中布置的一个爬虫实践任务&#xff0c;…

Java算法OJ(7)随机快速排序

目录 1.前言 2.正文 1. 快速排序的基本原理 2. 随机快速排序的改进 3. 随机快速排序的步骤 3.小结 1.前言 哈喽大家好吖&#xff0c;今儿给大家带来算法—随机快速排序相关知识点&#xff0c;废话不多说让我们开始。 2.正文 在了解随机快排之前&#xff0c;先了解一下…