Multimodal Machine Learning:A Survey and Taxonomy 综述阅读笔记
该笔记基于:Multimodal Machine Learning:A Survey and Taxonomy
- 该论文是一篇对多模态机器学习领域的总结和分类,且发表于2017年,算是相当新的综述了。老师在课上推荐阅读,我花了三天大体看了一边,其中有很多实际的方法或者技术对我来说是全新的领域,也是未来学习的方向,但是对这个领域和其想解决的问题有了大致的了解。记录如下:
关键名词解释:
- Modality:A particular mode in which something exists or is experienced or expressed. 中文释义为模态或形态。一个事物存在(被体验/被表达)的一种特定的方式。如一只猫,能被看见,图像是模态;能被听见,声音是模态;能被触摸,它身上的皮毛纹理是一种模态;某些人可以通过气味辨别自己的猫,那么气味是模态。模态之间大都是异质性的(heterogeneity)。
- Multimodal:多模态,顾名思义,包含了多种模态。如果一个研究问题或者数据集包含了多个上述的模态时,也可以被称为multimodal。
目的&目标:
- 为了使人工智能进一步加强对我们周边事物的理解,它需要具备解释多模态信号的能力。(因为我们就身处在一个多模态的环境中,接收并处理着大量多模态信号)
- 多模态机器学习致力于搭建能够处理和连接多模态信息的模型。“Multimodal machine learning aims to build models that can process and relate information from multiple modalities”
面临的挑战(Challenges):
一个领域的挑战是对这个领域所研究的问题和解决方案的概括,举个例子,比如机器视觉中有一个挑战是“遮挡”,这意味着,在面临一个实际计算机视觉问题时,你需要考虑遮挡对你的任务是否有影响,研究对象被遮挡了怎么解决,现有的解决方案是否能满足你的需求,你是否需要改进已有方案。以下是多模态ML所面临的挑战:
- 表征(Representation)
- 翻译(Translation)
- 对齐(Alignment)
- 融合(Fusion)
- 联合学习(Co-learning)
下图是综述中给出的各应用涉及到的挑战

表征:
表征也可以理解为表示,即试图通过各模态的信息找到某种对多模态信息的统一表示。当然,在计算机领域,一般都会是一个向量,但维度、各维度的具体值能否具备好的性质就成了关键。那么什么是好的性质呢?这需要具体任务具体分析,一个简单的例子,如果做的是多模态信息检索(就是比如百度搜索“在捉老鼠的猫”,能得到一系列图片和视频),学习出的视频、图片、文本的表征(向量)的相似性非常重要,来自同一个体的不同模态信息的表征(向量)间应具备更高的相似程度。
- 来自综述中的定义:“we use the term feature and representation interchangeably, with each referring to a vector or tensor representation of an entity, be it an image, audio sample, individual word, or a sentence. A multimodal representation is a representation of data using information from multiple such entities. ”
- 表征是一个非常基础的任务,好的表征能极大的提高模型的表现。
- 表征任务的困难点:如何结合异质性的来源的数据,比如文字是符号性的,图片是一个RGB矩阵,视频是时序的RGB矩阵,声音需要采样成一个一位数组;如何处理不同级别的噪音,原因是不同模态产生的噪声是不同的;如何处理数据缺失的问题
- 好的表征应具备的性质:
- 平滑 smoothness, 可以类比一下自然语言处理中语言模型的平滑
- 时序和空间一致性 temporal and spatial coherence
- 稀疏性 sparsity
- 自然聚类 natural clustering(我不太确定怎么翻译,暂时这样)
- 在表征空间的相似性应能够反映出表征所对应的概念的相似性 similarity in the representation space should reflect the similarity of the corresponding concepts
- 即使在某些模态数据缺失的情况下,这种多模态的表征依旧能够轻松获得 the representation should be easy to obtain even in the absence of some modalities
- 应能够在给出被观察到的其他模态的数据后,填补出缺失的模态数据 ,it should be possible to fill-in missing modalities given the observed ones
- 两种主要的表征思路
- Joint representations
- Coordinated representations
- 表征技术一览表,其中[#]是综述中引用的论文编号

翻译:
- 实际上,也可以理解为映射(mapping)。MMML很大一部分研究专注于将一种模态数据翻译(映射)为另一种模态数据。即,任务为给出一个实体的一个模态,需要生成该实体的另一模态。例如给出一段人说话的脸部特写视频(无声音),生成人说话的声音信号。又比如,给定一张照片,生成对照片的描述。
- 技术分类
- 基于例子的 example-based
- 生成式的 generative
- 简单的理解,测试阶段,example-based是需要字典的,而生成式是不需要字典的,它通过数据学习到两个模态潜在的映射关系。

- 翻译任务面临的困难点
- 非常难于评估,因为这类任务没有标准答案,答案通常非常开放和主观。这其实也是机器翻译面临的问题。
- 为了解决评估困难,提出了VQA(Visual question-answering)任务。然而它也有问题,例如特定问题的歧义性,回答和问题偏置(ambiguity of certain questions and answers and question bias)。
- 技术和实际应用一览表:

对齐:
- 从两个甚至多个模态中寻找事物子成份之间的关系和联系。比如给定一张图片和图片的描述,找到图中的某个区域以及这个区域在描述中对应的表述。又比如给定一个美食制作视频和对应的菜谱,实现菜谱中的步骤描述与视频分段的对应。
- 对齐分为两类:显式对齐和隐式对齐。显式对齐即应用的主要任务就是对齐,而隐式对齐是指应用在完成主要任务时需要用到对齐的技术。
- 显式对齐的技术方法分类
- 无监督方法 Unsupervised
- (弱)监督方法 (Weakly)Supervised
- 隐式对齐的技术方法分类
- 图模型 Graphical models
- 神经网络 Neural networks ----- 综述中尤其提到attention机制
- 对齐任务的困难点
- 很少有显式对齐标注的数据集
- 很难建模不同模态之间相似度计算
- 存在多个可能的对齐方案并且不是一个模态的所有元素在另一个模态中都存在对应
- 技术和实际应用一览表

融合:
融合是MMML最早的关注点之一。
- 多模态融合指从多个模态信息中整合信息来完成分类或回归任务。“multimodal fusion is the concept of integrating information from multiple modalities with the goal of predicting an outcome measure: a class (e.g., happy vs. sad) through classification, or a continuous value (e.g., positivity of sentiment) through regression.”融合还有更宽泛的定义,而综述中的定义的融合,是指任务在最后预测并以预测输出值为目的时才进行多模态整合。在深度神经网络方法下,融合和表征两个任务是很难区分的。但在图模型以及基于核的方法中比较好区分。(我暂时也没法解释这一段,需要进一步研究)
- 融合的价值
- 在观察同一个现象时引入多个模态,可能带来更健壮(robust)的预测
- 接触多个模态的信息,可能让我们捕捉到互补的信息(complementary information),尤其是这些信息在单模态下并不“可见”时
- 一个多模态系统在缺失某一个模态时依旧能工作
- 多模态融合有两大类:无模型 model-agnostic / 基于模型 model-based
- model-agnostic:不直接依赖于某个特定的机器学习算法
- 进一步分为early\late\hybrid fusion
- early fusion,也称为feature-based,基于特征。通常是在各模态特征被抽取后就进行融合,通常只是简单的连接他们的表征,也就是joint representation,直接连接多个向量。并使用融合后的数据进行模型训练,相比之后两种在训练上更为简单。
- late fusion,也称为decision-based,基于决策的。该方法在各个模态做出决策后才进行融合,得出最终的决策。常见的机制有平均(averaging)、投票(voting schemes)等等。这种方法中,各模态可以使用不同的模型来训练,带来更多的便利性。
- hybrid fusion,一种尝试结合early fusion和late fusion优势的方法。
- model-based:显式的在构造中完成融合
- Multiple Kernel learning(MKL),多核学习
- Graphical models,图模型
- Neural Networks,神经网络
- 神经网络在近期成为解决融合问题非常流行的方案,然而图模型以及多核学习依旧被使用,尤其是在有限的训练数据和模型可解释性非常重要的情况下。
- 融合任务的困难点:
- 信号可能并不是时序对齐的(temporally aligned)。很可能是密集的连续信号和稀疏的事件(比如一大段视频只对应一个词,然后整个视频只对应稀少的几个词)。
- it is difficult to build models that exploit supplementary and not only complementary information(翻译不出来,综述在最开始也提到过supplementary和complementary是两种模态间的关系)
- 每一个模态在不同的时间点可能表现出不同的形式和不同等级的噪声
- 技术和实际应用一览表

联合学习:
- 联合学习的目的是通过利用资源丰富(比如数据量大)的模态的知识来辅助资源稀缺(比如较小数据)的模态建立模型。
- 联合学习时任务独立的(task independent)并可以用于提升融合、翻译和对齐任务中的模型。
- 联合学习中,辅助模态(helper modality)通常只参与模型的训练过程,并不参与模型的测试使用过程。即使用时,模型输入并不需要辅助模态的数据。
- parallel:Co-training\Transfer learning
- non-parallel:Transfer learning\Concept grounding(概念接地)\Zero shot learning
- hybrid:Bridging

- 技术和实际应用一览表
联合学习的分类是基于训练资源(数据)形式划分的,下图的文字部分解释得很清楚,并在分类后记录各分类涉及的技术。

接下来可能会针对一两个我感兴趣的挑战和具体应用,阅读相应论文并尝试复现(虽然很可能失败或者需要学习大量的知识),如果你对MMML感兴趣,欢迎继续关注我的博客。
Plus Ultra
Multimodal Machine Learning:A Survey and Taxonomy 综述阅读笔记的更多相关文章
- 个性探测综述阅读笔记——Recent trends in deep learning based personality detection
目录 abstract 1. introduction 1.1 个性衡量方法 1.2 应用前景 1.3 伦理道德 2. Related works 3. Baseline methods 3.1 文本 ...
- 【转载】 《Human-level concept learning through probabilistic program induction》阅读笔记
原文地址: https://blog.csdn.net/ln1996/article/details/78459060 --------------------- 作者:lnn_csdn 来源:CSD ...
- [Tutorial]综述阅读笔记 <Visual Odometry PartII_Introduce about BA>
目录 Visual Odometry: Part II - Matching, Robustness, and Applications ---- paper notes 特征点的选择与匹配 特征点匹 ...
- Machine Learning Algorithms Study Notes(1)--Introduction
Machine Learning Algorithms Study Notes 高雪松 @雪松Cedro Microsoft MVP 目 录 1 Introduction 1 1.1 ...
- Coursera《machine learning》--(8)神经网络表述
本笔记为Coursera在线课程<Machine Learning>中的神经网络章节的笔记. 八.神经网络:表述(Neural Networks: Representation) 本节主要 ...
- 终身机器学习(Lifelong Machine Learning)综述
终身机器学习(Lifelong Machine Learning)综述 2015年10月23日 17:34:57 qrlhl 阅读数 7805更多 分类专栏: 机器学习 版权声明:本文为博主原创文 ...
- 【机器学习Machine Learning】资料大全
昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料【转】
转自:机器学习(Machine Learning)&深度学习(Deep Learning)资料 <Brief History of Machine Learning> 介绍:这是一 ...
- 机器学习(Machine Learning)&深度学习(Deep Learning)资料汇总 (上)
转载:http://dataunion.org/8463.html?utm_source=tuicool&utm_medium=referral <Brief History of Ma ...
随机推荐
- 32位 64位 获得进程peb的方法
基于上一篇文章,大概了解了peb的获取方法,但是那个方法只能获得当前进程的PEB,不能获得其他的进程的PEB.根据那个思想,获得其他进程PEB则需要注入,得到进程信息,然后进程间通信,将信息返回来,经 ...
- [原]零基础学习视频解码之FFMpeg中比较重要的函数以及数据结构
在正式开始解码练习前先了解下关于FFmpeg中比较重要的函数以及数据结构. 1. 数据结构: (1) AVFormatContext AVFormatContext是一个贯穿始终的数据结构,很多函 ...
- Oracle创建自增序列
Oracle没有自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现. 先建一个测试表了: create table userlogin( id number(6 ...
- 3.为JDeveloper添加不能的workspace
1.点击选中JDeveloper,在属性中,选中快捷方式, 可以看到目标中的值为C:\Oracle\Middleware\jdeveloper\jdeveloper.exe, 只需要在修改为C:\Or ...
- DataTable和Json的相互转换
1 #region DataTable 转换为Json字符串实例方法 2 /// <summary> 3 /// GetClassTypeJosn 的摘要说明 4 /// </sum ...
- 如何创建.gitignore文件
为什么要创建.gitignore文件? 因为.gitignore可以排除提交时携带的不必要文件,比如Java中的.class文件.同时还可以排除其他不想提交或者提交没这个必要的文件等等. 创建步骤如下 ...
- Redis口令设置
./redis-cli -h 192.168.128.131 -p 6379 #指定IP和端口启动对应的Redis服务 config set requirepass yourPassword #设置令 ...
- 自动化构建工具grunt的学习
关于grunt的一些记录,记的比较乱... 0.删除node_modules文件夹 命令行: npm install rimraf -g //先运行 rimraf node_modules //然后运 ...
- 第26章 FMC—扩展外部SDRAM
本章参考资料:<STM32F76xxx参考手册2>.<STM32F7xx规格书>.库帮助文档<STM32F779xx_User_Manual.chm>. 关于SDR ...
- 【译】2分钟介绍Rx
原文地址:https://medium.com/@andrestaltz/2-minute-introduction-to-rx-24c8ca793877 翻译去掉了一些口水话(⊙o⊙) 诸位应该已经 ...