【文献阅读】Attention Bottlenecks for Multimodal Fusion

news2024/11/25 23:51:07

Abstract

在多模态视频分类中,将各模态的最终表示或预测进行后期融合(“后期融合”)仍然是主流范式。为此,本文提出了一种基于 Transformer 的新型架构,该架构使用“融合瓶颈”在多个层次进行模态融合。与传统的成对自注意力机制相比,该模型强制不同模态之间的信息通过少量的瓶颈潜在变量进行传递,要求模型在每个模态中整理和凝聚相关信息,并共享必要的内容。这种策略在提高融合性能的同时,还减少了计算成本。

Introduction

多模态的挑战:
(i)模态之间的学习动态差异;
(ii)不同的噪声拓扑结构,有些模态流在当前任务中包含比其他模态更多的信息;
(iii)专门化的输入表示。

音频和视觉输入表示之间的差异尤为明显——许多最先进的音频分类方法依赖于短时傅里叶分析生成对数梅尔频谱图,并经常将其作为输入用于为图像设计的 CNN 架构(C-Former)。这些时频表示与图像的分布不同——多个声学对象可以在同一频率上具有能量,而 CNN 的平移不变性在这里可能不再是理想的属性(声学对象可以在时间上发生平移,而频率上的平移则可能完全改变其含义)。相反,视频中的视觉流是三维的(两个空间维度和一个时间维度),虽然图像的不同空间区域对应于不同的对象,但多个帧之间存在高冗余性,这也是一个独特的挑战。因此,输入表示以及神经网络架构和基准测试在不同模态间往往差异巨大。为了简化,多模态融合的主流范式通常采用一种临时的方案,即通过输出表示或分数整合单独的音频和视觉网络,也就是所谓的“后期融合(分数融合)”。
早期融合”模型允许注意力在图像的不同空间和时间区域之间自由流动,以及在音频频谱图的频率和时间维度之间流动。虽然从理论上具有吸引力,但假设在模型的所有层次进行完整的成对注意力并非必要,因为音频和视觉输入包含了密集、细粒度的信息,其中大部分是冗余的。这样的模型也无法很好地扩展到较长的视频,因为成对注意力与标记序列长度呈二次复杂度增长。

为了解决早期融合的问题,本文提出了两种方法来限制模型中的注意力流动:

第一种方法:遵循多模态学习中的常见范式,即将跨模态的流动限制在网络的后期层次,让早期层专注于学习和提取单模态模式。因此,这被称为“中期融合”(图1,左中),引入跨模态交互的层被称为“融合层”。我们将这种方法与“早期融合”(所有层都为跨模态)和“后期融合”(所有层都为单模态)这两个极端版本进行了对比。
第二个想法:(也是主要贡献)是限制层内标记之间的跨模态注意力流动。通过允许模态内部的自由注意力流动,但强制模型在共享信息之前,先从每个模态中整理和“凝聚”信息。核心思想是在层内引入一小组潜在的融合单元,形成一个“注意力瓶颈”,跨模态的交互必须通过这一瓶颈进行。

在这里插入图片描述这种“瓶颈化”的版本命名为Multimodal Bottleneck Transformer(MBT)。贡献包括:

(i)MBT通过紧密的融合“瓶颈”限制了潜在单元之间的跨模态信息流动,迫使模型在每个模态中收集和“凝聚”最相关的输入(因此只分享必要的信息与其他模态)。这避免了完整成对注意力的二次扩展成本,并以更少的计算实现了性能提升;
(ii)将 MBT 应用于图像和频谱图块(图2),并探讨了与融合层、输入采样和数据规模相关的多种消融;
(iii)在多个流行的音视频基准(包括 AudioSet 、Epic-Kitchens100 和 VGGSound )上设定了视频分类的新标准。在 Audioset 数据集上,性能超过了当前的最新水平,平均精度提升了5.9 mAP(相对提升12.7%)。
在这里插入图片描述

The ViT and AST architectures

在这里插入图片描述在这里插入图片描述在这里插入图片描述

Multimodal transformer——three different token fusion strategies

Fusion via vanilla self-attention

将常规的 Transformer 应用于多模态输入。给定一个长度为 t 秒的视频片段,均匀采样 F 帧 RGB 图像,并将音频波形转换为单个频谱图。然后按照 ViT中提出的编码方法,分别对每一帧图像和频谱图进行嵌入,并将所有tokens一起连接成一个单一的序列
在这里插入图片描述

Fusion with modality-specific parameters

在这里插入图片描述

即当参数一样时,就和第一种融合一样。

Fusion via attention bottlenecks

在这里插入图片描述

保持网络中的瓶颈标记数量远小于每个模态的潜在单元总数,B远小于 N v N_v Nv N a N_a Na,这种方式在提高或保持多模态融合性能的同时,降低了计算复杂度。

Where to fuse: early, mid and late

在多模态学习中,一个常见的范式是限制网络的早期层专注于单模态处理,并仅在后期层引入跨模态连接。如果我们相信较低层负责处理低级特征,而较高层则专注于学习语义概念,这在概念上是直观的——例如,图像中的边缘和角等低级视觉特征可能没有特定的声音特征,因此可能无法从与音频的早期融合中受益。

在这里插入图片描述


在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2193249.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

科研必备语料库

1. Corpus of Contemporary American English 链接:https://www.english-corpora.org/coca/ 2. Purdue Online Writing Lab 链接:https://owl.purdue.edu/owl/ 3. Academic Phrases and Vocabulary 链接:https://www.ref-n-write.com/blog…

IntelliJ IDE 插件开发 | (十三)自定义项目脚手架(下)

系列文章 本系列文章已收录到专栏,交流群号:689220994,也可点击链接加入。 前言 在上一篇文章中介绍了如何在 IDEA 中自定义项目脚手架,本文将介绍如何在WebStorm、PyCharm、CLion等其它 IntelliJ 主流平台中如何自定义项目脚手…

【论文速看】DL最新进展20241006-视频深度估计、3D、自监督学习

目录 【视频深度估计】【3D】【自监督学习】 【视频深度估计】 [TPAMI 2024] NVDS: Towards Efficient and Versatile Neural Stabilizer for Video Depth Estimation 论文链接:https://arxiv.org/pdf/2307.08695 代码链接:https://github.com/RaymondW…

地理空间数据存储与处理:MySQL空间数据类型的优化与应用!

在 MySQL 数据库中,空间数据类型用于存储和处理地理空间数据。这些数据类型允许我们在开发时可在数据库中存储和操作地理位置、几何形状和地理空间关系等信息。 一、什么是空间数据类型 MySQL 中的空间数据类型主要包括以下几种: GEOMETRY&#xff1a…

【无人水面艇路径跟随控制3】(C++)USV代码阅读: ROS包的构建和管理:包的依赖关系、包含目录、库文件以及链接库

【无人水面艇路径跟随控制3】(C)USV代码阅读: ROS包的构建和管理:包的依赖关系、包含目录、库文件以及链接库 写在最前面ROS是什么CMakeLists.txt总结详细解释CMake最低版本和项目名称编译选项查找catkin包catkin包配置包含目录添…

(刷题记录5)盛最多水的容器

盛最多水的容器 题目信息:题目思路(环境来自力扣OJ的C):暴力枚举:双指针:移动高度较高的指针移动高度较低的指针 复杂度:代码与注释:暴力枚举:双指针: 题目信息: 给定一…

windows 找不到文件 Microsoft Net Framework 3.5 windows Driver Foundation(WDF).exe

问题 正常更新windows 11的时候发现这个问题。 重启也无法完成下面的更新,重启之后还是显然要更新: 解决方法 中文网站没有找到解决方案。微软官网总是给不靠谱的解决方案。 从有关上看到一个印度语音的视频,用的方法可行。借鉴过来。 …

【机器学习】机器学习框架

机器学习框架是支持开发、训练、和部署机器学习模型的工具集和库,以下是一些主流的机器学习框架及其特点: 1. TensorFlow 特点: 由 Google 开发,支持从研究到生产的大规模部署,广泛应用于深度学习模型。优势: 强大的可扩展性&am…

golang gin入门

gin是个小而精的web开发框架 官方文档 安装 go get -u github.com/gin-gonic/gin最简单的起手代码 package mainimport ("net/http""github.com/gin-gonic/gin" )func main() {r : gin.Default()r.GET("/ping", func(c *gin.Context) {c.JSON…

【自用】王道文件管理强化笔记

文章目录 操作系统引导:磁盘初始化文件打开过程角度1文件的打开过程角度2 内存映射的文件访问 操作系统引导: ①CPU从一个特定主存地址开始,取指令,执行ROM中的引导程序(先进行硬件自检,再开机) ②)将磁盘的第一块–主引导记录读入内存&…

【机器学习】深度学习、强化学习和深度强化学习?

深度学习、强化学习和深度强化学习是机器学习的三个重要子领域。它们有着各自独特的应用场景和研究目标,虽然都属于机器学习的范畴,但各自的实现方式和侧重点有所不同。 1. 深度学习(Deep Learning) 深度学习是一种基于神经网络的…

2024 年在线翻译谁称霸?论文翻译场景大揭秘!

现在这世界,语言就是把我们连在一起的绳子,挺关键的。不管搞研究、做生意还是传文化,翻译得又快又准。2024年,翻译这行竞争挺猛的,各种在线翻译工具都挺拼的。咱们今天就聊聊论文翻译,瞅瞅谁能在这场翻译比…

Meta 发布 Quest 3S 头显及 AR 眼镜原型:开启未来交互新视界

简介 在科技的浪潮中,Meta 始终站在创新的前沿,不断为我们带来令人惊叹的虚拟现实和增强现实体验。2024 年 10 月 6 日,让我们一同聚焦 Meta 最新发布的 Quest 3S 头显及 AR 眼镜原型(Orion),探索这两款产品…

【Blender Python】5.Blender场景中的集合

概述 这里的“集合”是指Blender场景中的集合。你可以在“大纲视图”面板中看到 图标的,就是集合,可以看做是文件夹,用于分类和整理场景中的对象。 获取场景的集合 >>> C.scene bpy.data.scenes[Scene]>>> C.scene.coll…

nodejs 构建高性能服务器的关键技术

nodejs 构建高性能服务器的关键技术 演示地址 演示地址 源码地址 源码地址 获取更多 获取更多 在现代 Web 开发中,Node.js 已成为构建高性能、可扩展网络应用的首选平台之一。它的非阻塞 I/O 模型与事件驱动架构使其能够在处理大量并发请求时表现出色&#xff0…

环形缓冲区(Ring Buffer)在STM32 HAL库中的应用:防止按键丢失

环形缓冲区(Ring Buffer)又称为循环缓冲区或圆形队列,是一种数据结构,它用于管理固定大小的数据存储空间。环形缓冲区本质是一个一维数组,不过是收尾相连的,类比一条蛇咬自己尾巴。 环形缓冲区重要性&…

危机四伏|盘点紧盯我国的五大APT组织

毒云藤(APT-C-01) 命名:该组织是 360 独立发现的,并率先披露了该组织的部分相关信息符合 360 对 APT 组织就行独立命名的条件。 360 威胁情报中心将 APT-C-01 组织命名为“毒云藤”,主要是考虑了以下几方面的因素&…

L1415 【哈工大_操作系统】CPU调度策略一个实际的schedule函数

L2.7 CPU调度策略 1、调度的策略 周转时间:任务进入到任务结束(后台任务更关注)响应时间:操作发生到响应时(前台任务更关注)吞吐量:CPU完成的任务量 响应时间小 -> 切换次数多 -> 系统…

curses函数库简介及使用

curses函数库简介及使用 导语curses简介屏幕输出读取清除移动字符 键盘键盘模式输入 窗口WINDOW常用函数屏幕刷新优化 子窗口keypad彩色显示pad总结参考文献 导语 curses函数库主要用来实现对屏幕和光标的操作,它的功能定位处于简单文本行程序和完全图形化界面之间…

【重学 MySQL】五十八、文本字符串(包括 enum set)类型

【重学 MySQL】五十八、文本字符串(包括 enum set)类型 CHAR 和 VARCHARTEXT 系列ENUMSET示例注意事项 在 MySQL 中,文本字符串类型用于存储字符数据。这些类型包括 CHAR、VARCHAR、TEXT 系列(如 TINYTEXT、TEXT、MEDIUMTEXT 和 L…