Multimodal Machine Learning: A Survey and Taxonomy
2024-08-23 15:39:20

1 介绍

一般来说,模态就是指,一种事情发生或者被经历的方法。

当一个研究的问题或者说数据集包含了多个模态时,就是多模态问题或者多模态数据集。

多模态数据主要有:自然语言;视觉信号;音频信号等。
我认为多模态主要包括这些,是因为这些信息是日常生活红数据量最丰富、最有价值和最容易获取的信息,在当下最具有研究价值;而一些其他的信息,像是红外、超声、嗅觉、触觉、加速度信号等,可能只会在机器人等限定的领域有用处,相对来说应用范围没有那么广泛,信号的局限性较大。

多模态的五大挑战:表示,转换,对齐,融合,协同学习
这几大方面的挑战是:
表示:怎样表示、总结不同模态的信息。不同模态的数据经常是异质的,比如语言是符号性的,音频和视频是用信号表示的。
转换:不同模态之间的联系可能是开放的,比如一个图片可以有多种语言解释。
对齐:把不同的模态直接联系起来,比如把做菜的步骤关联到对应的视频。
融合:把不同模态的数据综合起来做预测。
协同学习:把一种模态的学习模型迁移到另一个模态的模型中

我认为这几个问题中,表示主要是数据处理层面的,涉及到模型如何设计、数据怎样表示;翻译和对齐可以是模型的一部分能力,也可以是这个多模态模型的功能;融合主要是涉及到模型的输出部分;而协同学习则是和迁移学习相似,主要是对模型开发人员有用。我认为这几个问题中最有挑战性的可能是协同学习,因为不同模态之间的模型差异实在太大,感觉这样的机制很难实现。

2 多模态的应用:

1.视听结合的言语识别,图像注解等 V-A
多模态可以增强模型的鲁棒性
2.多媒体内容的索引和检索 V-A
3.人类社交时的多模态行为的理解 V-A
4.媒体解释 V-L
5.事件检测 V-L
6.多媒体生成 V-L

跨模态检索会用到除了融合以外的所有技术

3 表示

把多模态的数据用计算模型可以识别的格式表示出来,可以是向量/张量表示。
困难

  1. 结合异质数据
  2. 处理不同的噪音
  3. 处理丢失的数据
    现在很多的多模态数据的表示都是单模态数据的简单拼接。

好的表示的特点:平滑、保留时空顺序、稀疏、自然聚类

联合表示:

联合表示把多个单模态数据结合到相同的表示空间 。
通常用在多模态数据要结合起来使用的时候
AVSR,情感分析,多模态手势识别等

神经网络
通常把最后一层或者倒数第二层拿来用
1.先分别用独立层训练,然后通过一个隐藏层来把这些模态投影到一个联合的空间中
2.对于没有标签的数据,可以用自编码器
基于联合表示的神经网络的一大好处是:
可以学习无标签数据,而且可以微调来适应特殊的任务

概率图模型
使用DBM等
优点:泛化性好,可以更好地处理缺失模态的数据
缺点:难以训练,计算代价高

序列表示
使用RNN

协同表示:

协同表示分别处理单模态信号,同时保留有相似的约束。
通常用在一次只使用一种模态数据的时候
比如多模态检索、翻译、结合、零次学习

相似模型:
最小化不同模态间在坐标空间的距离
可以使用神经网络,可以端到端学习协同表示(RNN\LSTM等)

结构化坐标空间:
添加了额外的限制
主要形式有跨模态哈希、图像和语言的顺序嵌入、典型关联分析:
把高纬度数据压缩到低纬度,相似的对象有相似的码
可以使用神经网络

4.翻译

给出一个模态的实体,生成在另一个模态的相同的实体
例子:语音合成,视觉语音生成,视频描述,跨模态检索
两种类型:基于样例的,生成式的

4.1 基于样例的:使用字典

使用两类算法:基于检索的,基于结合的
基于检索的:直接使用检索,可用单模态空间或者跨媒体语义空间,后者更好,可以双向翻译
基于结合的:使用更复杂的规则,把多个结果结合起来生成一个更好的翻译
缺点:模型大、查询慢、字典要求大、不一定有对应结果

4.2 生成式的:生成模型

类型:基于语法的,编码解码器(最常用),持续生成模型

基于语法的:用语法限制目标域
优势:更可能生成语法和逻辑正确的结果
局限:智能产生公式化的结果,难以创新;训练过程要分段、复杂

编码解码器:先编码到一个隐表示,然后再用解码器解码
使用端到端的神经网络,编码通常和模态本身有关,解码通常用RNN和LSTM。缺点是需要大量数据,而且神经网络可能是再记忆训练数据

持续生成模型:基于源模态数据流持续生成目标模态,最适合时序序列,例如文字转语音

4.3 模型评估

一种评估方法是人工判断:
语音合成:自然度,平均观点分数
VSS:真实度
媒体描述:语法语义正确,相关度,顺序,细节
自动评估效果一般

也可以用检索来作为描述的评估方法

5 对齐

找到不同模态之间的子模块实体之间的联系和对应关系
两种对齐:显式和隐式

5.1 显式对齐

最重要的方式是用相似矩阵来评价

无监督:不需要对齐的标签
假设对齐有限制,例如时间顺序,或者相似矩阵存在
DTW用于对齐多视角时间序列,CCA。可以同时学习相似矩阵和对齐
图模型,需要专家知识。

有监督:需要有标签的对齐实例
方法和无监督的比较像

深度学习也在显式对齐里面很好用,LSTM,CNN

5.2 隐式对齐

是其他任务中间的步骤,通常是隐式的
不依赖于有监督的样本

图模型:需要人工设定对齐方式,比较不常用

神经网络:最常用的方法,尤其是在翻译的中间步骤,可以给翻译带来很大的提升,加入注意力机制效果更好

5.3 难点

标签数据少,相似矩阵难设计,对齐关系可能是多对多,或者不存在

6 融合

集成多个模态的信息来做预测,一般认为是在预测的后部阶段

  1. 更健壮的预测结果
  2. 可以捕捉到补充的信息
  3. 缺失一个维度的信息时仍可以起作用

6.1 模型无关的方法

可以分为早期,晚期和杂交融合
比较简单,但是不能充分利用多模态的特点

6.2 基于模型的方法

基于核的方法:
不同的模态使用不同的核,核可以看成数据点的相似函数
优点是损失函数是凸的,好优化;
缺点是测试时也要用训练数据,查询慢,内存消耗大

图模型:
生成式的:建模联合概率
判别式的:建模条件概率
优点:容易利用数据的时间和空间结构,所以在AVSR和情感检测常用;可以加入专家知识

神经网络:最常用
优势:可以从大量的数据中学习;端到端训练;效果好
缺点:可解释性差,需要大量数据

融合的困难:
数据可能没有在时间上对齐
难以捕捉互补的信息
每个模态都可能会有噪音

7 共同学习

用另一个模态的模型知识来辅助一个模态的模型学习
这是与任务无关的,因此可以在多模态融合、翻译、对齐模型中使用

7.1 平行数据

不同模态使用一个数据集,对应关系已经确定
共同训练:创建更多有标签数据
迁移学习:可以多模态表示,单模态的时候也更好

7.2 不平行数据

不需要有共享的实例,只需要有共享的概念或类别
迁移学习
概念建构:通过不仅仅是语言,也包含其他模态的数据来学习语义
零次学习:不需要之前见过任何相关的有标签的数据,就识别出一个概念
单模态:通过部分特征来推出实体
多模态:使用另一个模态来推出没有认识的模态

7.3 混合数据

两个模态用一个共享的模态或者数据集来桥接

2024-08-23 15:39:20
下一页