首页 >科技周边 >人工智能 >AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

WBOY
WBOY转载
2023-04-13 19:10:011888浏览

在科幻小说《三体》中,企图占领地球的三体人被赋予了一个很独特的设定:通过脑电波共享信息,彼此之间思维透明、不善阴谋。在他们那里,想和说是同一个词。而人类则利用自身思维不透明的特性想出了「面壁计划」,最终成功骗过三体人,取得了阶段性胜利。

那么问题来了,人类的思维真的是完全不透明的吗?随着一些技术手段的出现,这个问题的答案似乎没有那么绝对了。很多研究者都在尝试解码人类思维的奥秘,将一些大脑中的信号解码为文字、图像等信息。

最近,两个研究团队同时在图像解码方向取得了重要进展,而且相关论文都被 CVPR 2023接收了。 

第一个团队来自大阪大学,他们使用最近非常火的 Stable Diffusion,能从功能磁共振成像 (fMRI) 获得的人脑活动图像中重建大脑活动中的高分辨率、高精准图像(参见《Stable Diffusion 读你大脑信号就能重现图像,研究还被 CVPR 接收了》)。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

巧合的是,几乎同一时间,来自新加坡国立大学、香港中文大学和斯坦福大学的华人团队也做出了类似的成果。他们开发了一款名为「MinD-Vis」的人类视觉解码器,通过预训练的一个 mask modeling 和 latent diffusion model,能从 fMRI 数据中直接解码出人类视觉刺激。它生成的这些图像不仅有合理的细节,而且还准确地呈现了图像的语义和特征(如纹理和形状)。目前,这项研究的代码已经开源。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

论文题目:Seeing Beyond the Brain: Conditional Diffusion Model with Sparse Masked Modeling for Vision Decoding

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

  • 论文链接:http://arxiv.org/abs/2211.06956
  • 代码链接:https://github.com/zjc062/mind-vis
  • 项目链接:https://mind-vis.github.io/

接下来我们将详细介绍这篇论文。

研究概览

「所见即所思」。

人类的感知和先前知识在大脑中有着密切的关联,我们对世界的感知不仅受到客观刺激的影响,也受到我们的经验影响,这些影响形成了复杂的大脑活动。理解这些大脑活动并解码信息是认知神经科学的重要目标之一,其中解码视觉信息是一个具有挑战性的问题。

功能性磁共振成像 (fMRI) 是一种常用的非侵入性且有效的方法,可以用于恢复视觉信息,如图像类别。 

MinD-Vis 的目的是探索使用深度学习模型直接从 fMRI 数据中解码视觉刺激的可能性。

以往的方法直接从 fMRI 数据中解码复杂神经活动时,存在缺乏 {fMRI - 图像} 配对和有效的生物学指导的问题,所以重建的图像通常模糊且在语义上无意义。因此,有效地学习 fMRI 表征是一项重要的挑战,这有助于建立大脑活动与视觉刺激之间的联系。

此外,个体变异性使问题更加复杂,我们需要从大型数据集中学习表征,并且放宽从 fMRI 生成条件合成的限制。

因此,作者认为使用自监督学习 (Self-supervised learning  with pre-text task) 加上大规模生成模型可以使模型在相对较小的数据集上微调后具有上下文知识和令人惊叹的生成能力

在上述分析的驱动下,MinD-Vis 提出了人类视觉解码的掩码信号建模与双条件潜在扩散模型,具体贡献如下:

  • 提出了 Sparse Coded-Masked Brain Modeling(SC-MBM),作为受生物学指导的有效视觉解码大脑特征预训练学习器。
  • 通过增加双条件潜在扩散模型(DC-LDM),在相同语义下强化了解码一致性,同时允许生成方差。
  • 结合 SC-MBM 的表示能力和 DC-LDM 的生成能力,MinD-Vis 生成的图像在保留语义信息的同时更加合理。
  • 在多个数据集上进行了定量和定性测试。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

与过往的方法进行对比 – 生成质量

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

 与过往的方法进行对比 – 评判指标的定量对比

自监督学习 大规模生成模型

由于收集 {fMRI - 图像} 配对非常昂贵且耗时,这个任务一直存在缺乏数据标注的问题。另外,每个数据集、每个个体的数据都会存在一定的域偏移。

在这个任务中,研究人员的目标是建立大脑活动与视觉刺激之间的联系,并由此生成相应的图像信息。

为此,他们使用了自监督学习和大规模生成模型。他们认为这种方法可以使模型在相对较小的数据集上进行微调,并获得上下文知识和令人惊叹的生成能力。

MinD-Vis 框架

接下来将详细介绍 MinD-Vis 框架,并介绍设计的理由和思路。

fMRI 数据有这些特点和问题:

  1. fMRI 用 3D 体素(voxel)来测量大脑血氧水平相关(BOLD)的变化,来观测大脑活动变化。邻近体素的幅度通常相似,表明 fMRI 数据中存在空间冗余。
  2. 在计算 fMRI 数据时,通常会提取 Region of Interest (ROI) 并把数据打成 1D vector。在这个任务里,只提取大脑 visual cortex 的信号,因此,体素的数量(约为 4000)远比图像里像素点的数量(256*256*3)少,这样的数据在纬度方面和通常处理图像数据的方式存在相当的差距。
  3. 由于个体差异,实验设计的差异,脑信号的复杂程度,每个数据集、每个个体的数据都会存在一定的域偏移。
  4. 对于一个固定的视觉刺激,研究者希望模型还原的图像在语义上一致;但由于个体差异,每个人看到这个视觉刺激的反应不同,研究者又希望模型有一定的方差和灵活性。

为了解决这些问题, MinD-Vis 包含两个阶段:

  1. 利用大规模的 fMRI 数据集来训练 Masked Autoencoder,来学习 fMRI representation。
  2. 将预训练好的 fMRI encoder 与 LDM 通过 cross-attention conditioning 和 time-step  conditioning 相集成进行 double conditioning,以进行条件合成。然后,通过使用配对的 {fMRI, Image} 来共同 finetune LDM 中的 cross attention head。

下面将在这里详细介绍这两步。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

MinD-Vis Overview

(A)Sparse-Coded Masked Brain Modeling (SC-MBM) (MinD-Vis Overview 左)

由于 fMRI 空间信息冗余,即使大部分被遮盖,fMRI 数据仍然可以恢复。因此,在 MinD-Vis 的第一阶段,为了节省计算时间,大部分 fMRI 数据被遮盖了。这里,作者使用了类似于 Masked Autoencoder 的做法:

  1. 将 fMRI voxels 划分成 patches
  2. 使用有等于 patches 大小的步长的 1D 卷积层转换成 embedding
  3. 把剩余的 fMRI patch 加入 positional embedding 后作为 vision transformer 的输入
  4. 解码得到重建的数据
  5. 计算重建的数据与原数据的 loss
  6. 通过反向传播优化模型,使得重建的数据尽可能地与原数据相似
  7. 重复 2-6 的步骤,训练出最终模型

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

SC-MBM 能有效还原被掩盖的 fMRI 信息

这个设计和 Masked Autoencoder 有什么区别?

  • 当 mask modelling 应用于自然图像时,模型一般使用等于或略大于 1 的 embedding-to-patch-size ratio。
  • 在这个任务中,作者使用了比较大的 embedding-to-patch-size ratio,这能显著提高信息容量,为 fMRI 创建了大的表征空间,这种设计也对应于大脑中信息的稀疏编码*。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

SC-MBM 的消融实验

(B)Double-Conditioned LDM (DC-LDM) (MinD-Vis Overview 右)

在 Stage A 中进行了 large-scale context learning 之后,fMRI encoder 可以将 fMRI 数据转换为具有局部性约束的 sparse representation。在这里,作者将解码任务表述为条件生成问题,并使用预训练的 LDM 来解决此问题。

  • LDM 在图像的潜在空间上操作,fMRI 数据 z 作为条件信息,目标是学习通过反向扩散过程形成图像。
  • 在图像生成任务中,多样性和一致性是相反的目标,fMRI 到图像更依赖于生成一致性。
  • 为了确保生成一致性,作者将 cross attention conditioning 和 time step conditioning 相结合,并在 UNet 的中间层使用带有 time embedding 的条件机制。
  • 他们进一步把优化目标式重新表述为双重调节交替式。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

我们通过多次解码不同随机状态的图像证明了我们方法的稳定性。

微调

在 fMRI encoder 通过 SC-MBM 预训练后,它与预先训练的 LDM 通过 double conditioning 整合在一起。在这里,作者:

  1. 将 encoder 的输出使用卷积层合并到 latent dimension 中;
  2. 联合优化 fMRI encoder、cross attention heads 和 projection heads,其他部分固定;
  3. 微调 cross attention heads 是连接 pre-trained conditioning space 和 fMRI latent space 的关键;
  4. 在通过 fMRI 图像对端到端进行微调的过程中,通过 large-capacity fMRI representations 将学到 fMRI 和图像特征之间更清晰的联系。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

DC-LDM 的消融实验

额外细节

意外的是,MinD-Vis 可以解码出一些在 ground truth 图像里并不实际存在,但与AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源内容十分相关的细节。比如说,当AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源是自然风景时,MinD-Vis 解码出了河流和蓝天;在提供房屋时,MinD-Vis 解码出了相似的室内装饰。这既有好处又有坏处。好处在于,这说明我们能够解码出想象到的内容;坏处在于,这可能会影响对解码结果的评估。

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

喜闻乐见的翻车集锦

AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源

作者认为,在训练样本数量较少的情况下,刺激的解码难度会有所不同。例如,GOD 数据集包含的动物训练样本比服装多。这意味着一个语义上类似于 “毛茸茸” 的词更可能被解码为动物而不是服装,如上图所示,其中一只袜子被解码为一只羊。

实验设置

数据集

在这里,作者用了三个公开数据集。

  • 第一阶段的预训练:用了 Human Connectome Project,它提供 136,000 个 fMRI 数据片段,没有图像,只有 fMRI。
  • 微调 Encoder 和第二阶段的生成模型:用了 Generic Object Decoding Dataset (GOD) 和 Brain, Object, Landscape Dataset (BOLD5000) 数据集。这两个数据集分别提供了 1250 张和 5254 张 {fMRI, Image} 配对,其中,分别取了 50 张和 113 张作为测试集。

模型结构

本文模型结构的设计(ViT 和扩散模型)主要是参照过去的文献。模型参数细节请参照正文。同样地,他们也采用了一种不对称的体系结构:编码器旨在学习有意义的 fMRI 表示,而解码器试图预测被遮盖的块。因此,我们遵循以前的设计,使解码器更小,预训练后我们将其舍弃。

评判指标

跟过往的文献一样,作者也使用了 n-way top-1 和 top-5 分类准确率来评估结果的语义正确性。这是一种在多次试验中,通过计算 n-1 个随机选择的类别和正确类别的 top-1 和 top-5 分类准确率来评估结果的方法。与先前的方法不同,他们在这里采用了更直接、可复制的评估方法,即使用预训练的 ImageNet1K 分类器来判断生成图像的语义正确性,而不是使用 handcrafted features。此外,他们还使用了 Fréchet inception distance(FID)作为参考来评估生成图像的质量。但是,由于数据集中图像数量有限,因此 FID 可能无法完美地评估图像分布。

效果

这篇文章的实验是在个体水平上进行的,即模型在同一个个体上进行训练和测试。为了与之前的文献进行比较,在这里报告了 GOD 数据集第三位被试的结果,并在附录中列出了其他被试的结果。

写在最后

通过这个项目,作者展示了通过 fMRI 还原人脑视觉信息的可行性。然而,这个领域有很多问题需要解决,例如如何更好地处理个体之间的差异性,如何减少噪声和干扰对解码的影响,如何将 fMRI 解码与其他神经科学技术结合起来,以更全面地理解人类大脑的机制和功能。同时,我们也需要更好地了解和尊重人类大脑和个体隐私方面的伦理和法律问题。

此外,我们还需要探索更广泛的应用场景,例如医学和人机交互等领域,以便将这项技术转化为实际应用。在医学领域,fMRI 解码技术未来可能可以被用来帮助视觉障碍人士、听觉障碍人士、甚至全身瘫痪患者等特殊群体来解码出他们的想法。这些人由于身体上的障碍,无法通过传统的交流方式来表达自己的思想和意愿。通过使用 fMRI 技术,科学家们可以解码他们的大脑活动,从而获取他们的想法和意愿,进而与他们进行更加自然和高效的交流。在人机交互领域,fMRI 解码技术可以被用来开发更加智能和自适应的人机界面和控制系统,例如通过解码用户的大脑活动来实现更加自然和高效的人机交互体验。

我们相信,在大规模数据集 大模型 算力的加持下,fMRI 解码将会有更加广泛和深远的影响,推动认知神经科学和人工智能领域的发展。

注:*使用稀疏编码在脑中学习视觉刺激表示的生物学基础:稀疏编码曾被提出来作为感觉信息表征的一种策略。研究表明,视觉刺激在视觉皮层中被稀疏编码,这样可以增加信息传输效率并减少脑中的冗余。使用 fMRI 可以从视觉皮层收集的少量数据中重建自然场景的视觉内容。稀疏编码可能是计算机视觉中编码的有效方式。文章中提到了 SC-MBM 方法,它将 fMRI 数据分成小块来引入局部性约束,然后将每个小块稀疏编码成高维向量空间,这样可以作为生物学上有效且高效的脑特征学习器,用来进行视觉编码解码。

以上是AI知道你脑子里在想什么,还帮你画了出来,项目代码已开源的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:51cto.com。如有侵权,请联系admin@php.cn删除