多模态简介

news2024/10/6 18:32:23

1. 多模态定义

多模式深度学习是一个机器学习子领域,旨在训练人工智能模型来处理和发现不同类型数据(模式)之间的关系——通常是图像、视频、音频和文本。通过结合不同的模态,深度学习模型可以更普遍地理解其环境,因为某些线索仅存在于某些模态中。想象一下情绪识别的任务。它不仅仅是看一张人脸(视觉模态)。一个人的声音(音频模态)的音调和音高编码了大量关于他们情绪状态的信息,这些信息可能无法通过他们的面部表情看到,即使他们经常是同步的。

1.2 常见模态

在多模态深度学习中,最典型的模态是视觉(图像、视频)、文本和听觉(语音、声音、音乐)。然而,其他不太典型的模式包括 3D 视觉数据、深度传感器数据和 LiDAR 数据(自动驾驶汽车中的典型数据)。在临床实践中,成像方式包括计算机断层扫描 (CT) 扫描和 X 射线图像,而非图像方式包括脑电图 (EEG) 数据。传感器数据,如热数据或来自眼动追踪设备的数据也可以包含在列表中。

最流行的组合是三种最流行的方式的组合

  • 图片+文字
  • 图像+音频
  • 图片+文字+音频
  • 文字+音频

2 多模态的研究内容

2.1 模态表示

多模态表示分为两类。

  1. 联合表示每个单独的模态被编码,然后放入一个相互的高维空间。这是最直接的方式,当模态具有相似的性质时可能会很有效。

  2. Coordinated representation每个单独的模态都被编码而不考虑彼此,但是它们的表示然后通过施加限制来协调。例如,它们的线性投影应该最大程度地相关

2.2 模态融合

融合是将来自两种或多种模式的信息结合起来以执行预测任务的任务。由于多模态数据的异构性,多模态(如视频、语音和文本)的有效融合具有挑战性。

2.3 模态对齐

对齐是指识别不同模态之间的直接关系的任务。

2.4 模态转换

模态转换是将一种模态映射到另一种模态的行为。主要思想是如何将一种模态(例如,文本模态)转换成另一种模态(例如,视觉模态),同时保留语义。

2.5 模态共同学习

多模式共同学习旨在将通过一种或多种模式学习的信息转移到涉及另一种模式的任务。在低资源目标任务、完全/部分缺失或嘈杂模式的情况下,共同学习尤为重要。

3. 多模态的运作机理

多模态神经网络通常是多个单模态神经网络的组合。例如,视听模型可能由两个单峰网络组成,一个用于视觉数据,一个用于音频数据。这些单峰神经网络通常分别处理它们的输入。这个过程称为编码。在进行单峰编码之后,必须将从每个模型中提取的信息融合在一起。已经提出了多种融合技术,范围从简单的连接到注意机制。多模态数据融合过程是最重要的成功因素之一。融合发生后,最终的“决策”网络接受融合后的编码信息,并接受最终任务的训练。

简单来说,多模态架构通常由三部分组成:

  1. 编码单个模态的单峰编码器。通常,每个输入模式一个。
  2. 一种融合网络,在编码阶段结合从每个输入模态中提取的特征。
  3. 接受融合数据并进行预测的分类器。

我们将以上称为编码模块(下图中的 DL 模块)、融合模块和分类模块。

在这里插入图片描述
现在让我们更深入地了解每个组件。

3.1 编码

在编码过程中,我们寻求创建有意义的表示。通常,每个单独的模态由不同的单模态编码器处理。但是,通常情况下输入是嵌入形式而不是原始形式。

  • 例如,word2vec 嵌入可用于文本;
  • 而 COVAREP 嵌入可用于音频。
  • 多模态嵌入,如data2veq,将视频、文本和音频数据转换为高维空间中的嵌入,是最新的实践之一,并且在许多任务中优于其他嵌入,实现了 SOTA 性能。

使用联合表示还是协调表示,(上文的模态表示中)是一个重要的决定。通常,联合表示方法在模态本质上相似时效果很好,并且是最常用的方法。

在设计多模态网络的实践中,
编码器的选择是基于在每个领域表现良好的编码器,
因为更加强调融合方法的设计。

  • 许多研究论文使用经典的 ResNets 作为视觉模式,
  • 使用RoBERTA作为文本。

3.2 融合

融合模块负责在特征提取完成后组合每个单独的模态。用于融合的方法/架构可能是成功的最重要因素。

最简单的方法是使用简单的操作,例如连接或求和不同的单峰表示。

然而,已经研究和实施了更复杂和成功的方法。例如,交叉注意力层机制是最近成功的融合方法之一。它已被用于以更有意义的方式捕获跨模态交互和融合模态。

下面的等式描述了交叉注意力机制,并假设您基本熟悉自注意力。

$$

$$

α k l \alpha_{kl} αkl表示注意力得分向量,s(.)表示softmax函数,K、Q和V分别是注意力机制的Key、Query和Value矩阵。为了对称
也被计算出来,并且可以将两者相加以创建一个注意力向量,该向量映射所涉及的两种模态(k,l)之间的协同作用。本质上,两者之间的区别

是在前
在后者中用作查询
被使用,并且
扮演键和值的角色。

在三个或更多模态的情况下,可以使用多个交叉注意机制,以便计算每个不同的组合。例如,如果我们有视觉 (V)、文本 (T) 和音频 (A) 模态,那么我们创建组合 VT、VA、TA 和 AVT 以捕获所有可能的跨模态交互。

即使在使用注意力机制之后,也经常执行上述跨模态向量的串联以产生融合向量F。Sum(.)、max(.) 甚至池化操作也可以代替使用。

3.3 分类

最后,一旦融合完成,向量F就被送入分类模型。这通常是具有一个或两个隐藏层的神经网络。输入向量F编码来自多种模态的互补信息,因此与单独的模态 V、A 和 T 相比提供更丰富的表示。因此,它应该增加分类器的预测能力。

从数学上讲,单峰模型的目标是最小化损失

哪里
是一个编码函数,通常是一个深度神经网络,而 C(.) 是一个分类器,通常是一个或多个密集层。

相反,多模态学习的目的是最小化损失:

在这里插入图片描述

哪里
表示融合操作(例如,连接)和 表示单一模态的编码函数。

4. 多模态应用场景

4.1 image captioning

图像字幕是为给定图像生成简短文本描述的任务。这是一项多模态任务,涉及由图像和短文本描述组成的多模态数据集。它通过将视觉表示转换为文本表示来解决前面描述的翻译挑战。该任务还可以扩展到视频字幕,其中文本连贯地描述短视频。

对于将视觉模式转换为文本的模型,它必须捕获图片的语义。它需要检测关键对象、关键动作和对象的关键特征。参考图例。3,“一匹马(关键对象)背着(关键动作)干草(关键对象)的大负载(关键特征)和两个人(关键对象)坐在上面。” 此外,它需要推断图像中对象之间的关系,例如,“双层床下面有一个狭窄的架子(空间关系)。”

然而,正如已经提到的,多模态翻译的任务是开放式的和主观的。因此,标题“两个人骑着装满干草的马车”和“两个人用马车运送干草”也是有效的标题。

图像字幕模型可用于提供图像的文本替代方案,从而帮助盲人和视障用户。

在这里插入图片描述

4.2 跨模态图像检索

图像检索是在大型数据库中查找与检索关键字相关的图像的任务。该任务有时也称为基于内容的图像研究 (CBIR) 和基于内容的视觉信息检索 (CBVIR)。

这样的动作可以通过传统的标签匹配算法来执行,但深度学习多模态模型提供了更广泛的解决方案和更多的功能,这也部分消除了对标签的需求。图像检索可以扩展到视频检索。此外,检索关键字可以采用文本标题、音频甚至另一幅图像的形式,但文本描述是最常见的。

已经开发了几种跨模态图像检索任务。例子包括

文本到图像检索:检索与文本解释相关的图像
组合文本和图像:查询图像和描述所需修改的文本
跨视图图像检索
Sketch-to-image retrieval:使用人造铅笔素描来检索相关图像
每当您在浏览器上进行搜索查询时,搜索引擎都会提供一个“图像”部分,显示与您的搜索查询相关的大量图像。这是图像检索的真实示例。

在这里插入图片描述

4.3 文本到图像生成

文本到图像生成是目前最流行的多模态学习应用程序之一。它直接解决了翻译挑战。Open-AI 的 DALL-E 和谷歌的 Imagen 等模型一直是头条新闻。

这些模型所做的可以被认为是图像字幕的反面。给定简短的文本描述作为提示,文本到图像模型会创建一个准确反映文本语义的新颖图像。最近,文字转视频的模式也首次亮相。

这些模型可用于辅助 Photoshop 和图形设计,同时也为数字艺术提供灵感。
在这里插入图片描述

4.4 视觉问答(VQA)

视觉问答是另一种多模态任务,它结合了视觉模态(图像、视频)和文本模态。在 VQA 期间,用户可以提出有关图像或视频的问题,模型必须根据图像中发生的情况回答问题。要成功解决这个问题,需要对场景有很强的视觉理解以及常识性知识。封闭式 VQA 的简单示例包括“图片中有多少人”和“孩子坐在哪里?” 然而,VQA 可以扩展到自由形式、开放式的问题,这些问题需要更复杂的思维过程,如下图所示。

视觉问答是一种多模态应用程序,包含翻译和对齐挑战。

这些模型可用于帮助盲人和视障用户或提供高级视觉内容检索。

4.5 情绪识别

情感识别是一个很好的例子,说明了为什么多模态数据集优于单模态数据集。仅使用单模态数据集即可执行情感识别,但如果将多模态数据集用作输入,则性能可能会有所提高。多模态输入可以采用视频+文本+音频的形式,但脑电图数据等传感器数据也可以合并到多模态输入中。

然而,已经表明,与单一模式对应物相比,有时使用多种输入模式实际上可能会降低性能,即使具有多种模式的数据集总是会传达更多信息。这归因于训练多模态网络的困难。如果您有兴趣了解更多有关这些困难的信息,本文应该证明是有用的

5. 多模态数据集

没有数据,就没有学习。

多模态机器学习也不例外。为了推进该领域,研究人员和组织已经创建并分发了多个多模式数据集。以下是最受欢迎的数据集的完整列表:

医疗数据链接

5.1 COCO-Captions 数据集:

一个多模式数据集,包含 330K 图像并附有简短的文本描述。该数据集由微软发布,旨在推进图像字幕研究。

5.2 VQA

:一个视觉问答多模态数据集,包含 265K 个图像(视觉),每个图像至少有三个问题(文本)。这些问题需要理解视觉、语言和常识知识才能回答。适用于视觉问答和图像字幕。

5.3CMU-MOSEI

:Multimodal Opinion Sentiment and Emotion Intensity (MOSEI) 是一个用于人类情绪识别和情绪分析的多模态数据集。它包含 23,500 个句子,由 1,000 名 YouTube 演讲者发音。该数据集将视频、音频和文本模式合二为一。用于在三种最流行的数据模式上训练模型的完美数据集。

5.4.Social-IQ

:一个完美的多模态数据集,用于训练视觉推理、多模态问答和社交互动理解方面的深度学习模型。包含 1250 个音频视频(在动作级别),并带有与每个场景中发生的动作相关的问题和答案(文本)。

5.5 Kinetics 400/600/700

:此视听数据集是用于人类动作识别的 Youtube 视频集合。它包含人们执行各种动作的视频(视觉模态)和声音(音频模态),例如播放音乐、拥抱、进行运动等。该数据集适用于动作识别、人体姿势估计或场景理解。

5.6.RGB-D 对象数据集

:结合了视觉和传感器模态的多模态数据集。一个传感器是 RGB,对图片中的颜色进行编码,而另一个是深度传感器,对物体与相机的距离进行编码。该数据集包含 300 个家庭物品和 22 个场景的视频,相当于 250K 张图像。它已被用于 3D对象检测或深度估计任务。
其他多模式数据集包括IEMOCAP、CMU-MOSI、MPI-SINTEL、SCENE-FLOW、HOW2、COIN和MOUD。

reference

参考

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

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

相关文章

【C++】I/O流类库

I/O 数据的输入和输出(input/output简写为I/O),对标准输入设备和标准输出设备的输入输出简称为标准I/O。对在外存磁盘上的文件输入输出简称为文件I/O。对内存中指定的字符串存储空间的输入输出简称为串I/O。 流 数据输入输出的过程&#x…

边缘智能:边缘计算和人工智能的深度融合

摘要 随着通信技术的飞速发展和移动设备使用的激增,一种全新的计算范式——边缘计算正在迅速普及。与此同时,随着深度学习的突破和硬件架构的许多改进,人工智能(AI)应用正在蓬勃发展。在网络边缘产生数十亿字节的数据,对数据处理…

也聊聊BLDC 电机的 10 大热门应用---【其利天下技术分享】

近年来,随着全球提出的低碳,高能效的概念提出,作为高效动力来源的BLDC技术,越来越受到各界的追捧。 大家都知道,BLDC的发展史也就短短几十年的时间,随着近年来,新磁性材料的运用、微电子技术和…

基于大模型的虚拟数字人__虚拟主播实例

基于大模型的虚拟数字人__虚拟主播实例 本文目录: 一、技术的背景: 二、创意名称: 三、创意背景 四、创意目标 五、创意设计 六、技术实现路径 七、完整代码实现 八、创意总结 九、人工智能虚拟人物的一些优秀代表作品及其特点 十、…

河道水位标尺识别预警 yolov7

河道水位标尺识别预警系统通过pythonyolov7网络模型技术,河道水位标尺识别预警算法对河道水位标尺进行实时监测,当河道水位出现异常情况时,河道水位标尺识别预警算法将自动发出警报提示后台管理人员及时采取措施。YOLO系列算法是一类典型的on…

【工具篇】SpringBoot基于assembly的服务化打包方案

简介 最近项目中,使用插件式开发方式,将多个Web应用打成一个FatJar程序包部署运行。但考虑到原始裸Jar包方式交付,有很多不便之处,比如启动命令过长(JVM参数配置、Spring环境配置等)、配置无法修改等问题会…

基于OpenMV的自动驾驶智能小车模拟系统

一、项目简介 基于机器视觉模块OpenMV采集车道、红绿灯、交通标志等模拟路况信息,实现一辆能车道保持、红绿灯识别、交通标志识别、安全避障以及远程WiFi控制的多功能无人驾驶小车。 赛道规格: 1、编程所需软件: OpenMV:使用Op…

cuda pyinstall cvs 使用记录

1.pip 换源 pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/2.安装匹配cuda的pytorch 官网:PyTorch pip3 install torch torchvision torchaudio查看能否使用cuda: import torch torch.cuda.is_available()获得以下反馈: 意思…

CSS基础学习--22 图像透明/不透明

一、透明度属性 CSS3中属性的透明度是 opacity 正常的图像 相同的图像带有透明度: img {opacity:0.4;filter:alpha(opacity40); /* IE8 及其更早版本 */ } 备注:Opacity属性值从0.0 - 1.0。值越小,使得元素更加透明。 IE8和早期版本使用滤…

【MySQL】库和表结构的增删查改

目录 一、库的操作 1、创建数据库 2、数据库所使用的编码 2.1查询编码集和校验集 2.2查看数据库的字符集和校验集 2.3创建数据库指定字符集和校验集 2.4不同的校验集所筛选的数据结果不一样 3、查看数据库 4、修改数据库 5、删除数据库 6、数据库的备份和恢复 6.1备…

【Spring MVC】获取 @RequsetBody 标识的对象,使用适配器模式增加代码可读性

1. 前言 一个技术需求引发的思考和实践: 思考 用 AOP 把校验代码 实践 用 Spring MVC 的 RequestBodyAdvice 做AOP逻辑继承 RequestBodyAdviceAdapter 实现自己的 适配器用自己的适配器让代码可读性增加熟悉 Spring MVC 、Java 反射的一些实践 本文内容 澄清一个A…

Mysql 调优

前言 硬件层面:使用固态硬盘、扩大内存、加大带宽等等 架构层面:主从复制实现读写分离【一主一 或 双主双从】 表结构层面:对表结构进行垂直拆分、水平分表、分库分表。常用的数据库中间件有:MySQL Proxy、MyCat以及ShardingSphe…

电脑C盘的清理 | 微信QQ缓存信息

记录一下我处理C盘爆满时的几个方法,基本上都是可以日常使用的。 一、磁盘清理 链接 二、查看具体哪些文件占内存 win图标右击 -----> 点击“系统(Y)” 点击查看具体是哪些文件夹哪些app占用了大量的内存,并选择删除部分…

第二章 re模块

1. re模块介绍 正则表达式 在处理字符串时,经常会有查找符合某些复杂规则的字符串的需求。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的代码。 re 模块 Python 提供了 re 模块用于实现正则表达式的操作。在实现时&…

CTFshow-pwn入门-前置基础pwn23-pwn25

pwn23-25的题目会涉及到ret2shellcode、ret2libc等内容,本篇文章只会侧重研究这几道题目的wp,不会过多涉及到ret2shellcode、ret2libc的基本原理,等有时间再来写关于ret2libc、ret2shellcode…的相关内容。大家可以参考CTFwiki的文章去慢慢学…

FPGA_数码管显示UART串口接收的数据

实验目标:通过电脑调试助手向FPGA的UART串口接收模块发送数据,然后数据可以稳定显示在数码管上。 实验目的: 练习UART串口模块和数码管的使用。之前已经有文章详细讲解了串口和数码管的开发,故这里直接提供设计思路供大家参考。 &#xff08…

求解矩阵行列式因子、不变因子、初等因子、Jordan标准形

首先,我们先来简要了解一下行列式因子、不变因子和初等因子的概念。 下面举例说明。 例1 首先,我们要求 λ I − A λI-A λI−A 然后,我们先求行列式因子。 D 2 ( λ ) D_2(λ) D2​(λ)的求法如下: 然后,我们再求…

015、数据库管理之用户和权限

用户和权限 认证与赋权连接过程本地连接远程连接查看用户信息创建用户账号创建角色管理用户账户管理角色设置账号密码忘记root密码实验1-用户和角色实验2-授权注意事项 认证与赋权 认证:对用户进行验证 是权限控制的第一步当用户第一次连接数据库时必须进行认证如果…

【Git】TortoiseGit(小乌龟)配置SSH和使用

目录 1、TortoiseGit(小乌龟)配置SSH 1.1、右击打开Git命令窗口 1.2、设置Git的全局name和email 1.3、查看是全局名字和邮箱是否设置成功 1.4、生成 sshkey秘钥 2、TortoiseGit(小乌龟)的使用 2.1、创建本地仓库 2.2、添加…

企业会计软件必备!深入了解为何选择会计软件以及其带来的好处

随着科技的发展,企业需要更加智能化和数字化的财务管理方式,因此会计软件是现代社会的必然产物,会计软件可以帮助企业更有效地进行财务管理。 企业为什么需要会计软件? 提高准确度 通过传统的手工操作财务记录,会有很…