多模态预训练大模型~

本文对大规模多模态预训练模型 (MM-PTMs) 进行了全面回顾。

本篇文章为大家介绍一篇发表在MIR期刊的多模态大模型综述论文:Xiao Wang, Guangyao Chen, Guangwu Qian, Pengcheng Gao, Xiao-Yong Wei, Yaowei Wang, Yonghong Tian, Wen Gao. Large-scale Multi-modal Pre-trained Models: A Comprehensive Survey. Machine Intelligence Research. https://doi.org/10.1007/s11633-022-1410-8. (多模态预训练大模型:一个广泛的调研综述),作者分别来自鹏城实验室(深圳)、安徽大学、北京大学、四川大学。

论文链接:https://www.mi-research.net/article/doi/10.1007/s11633-022-1410-8

Github链接:https://github.com/wangxiao5791509/MultiModal_BigModels_Survey

随着对通用深度模型的迫切需求,许多预训练大型模型被提出,例如双向编码器表示(BERT)、视觉Transformer(ViT)、生成式预训练Transformers(GPT)等。受到这些模型在单一领域(如计算机视觉和自然语言处理)的成功启发,近年来多模态预训练大模型也越来越受到关注。在本文中,我们对这些模型进行了全面的综述,希望本文能够提供新的见解并帮助新研究人员跟踪最前沿的工作。具体而言,我们首先通过回顾传统的深度学习、自然语言处理、计算机视觉和语音的预训练工作来介绍多模态预训练的背景。然后,我们介绍了多模态预训练模型的任务定义、关键挑战和优势,并重点讨论了多模态预训练大模型的数据、目标、网络架构和知识增强预训练。紧接着,我们介绍了用于验证大规模多模态预训练大模型的下游任务,包括生成、分类和回归任务。我们还对代表性下游任务上的模型参数和结果进行了可视化和分析。最后,我们指出了可能有助于未来工作的相关研究方向。此外,我们维护了一个不断更新的大型预训练多模态大型模型论文列表:

https://github.com/wangxiao5791509/MultiModal_BigModels_Survey。

随着AlexNet在ImageNet竞赛上识别性能的突破[1], 人工智能得到了极大的发展。许多代表性的深度神经网络被提出,例如VGG、ResNet、Inception和LSTM网络(长短期记忆网络)。研究人员通常会收集并注释一些样本以完成他们的任务,并基于预训练的主干结构在大规模数据集上训练其模型(如计算机视觉领域的ImageNet、自然语言处理领域的GloVe和Skip-thought向量)。与传统的手工特征相比,这种端到端的方式能够很好地解决许多任务,如物体检测、分割和识别等。然而,所得到的深度模型的泛化能力仍然有限。虽然在一定程度上通过收集和标注更大的数据集可以解决这些问题,但这个过程既昂贵又繁琐。为了解决这个问题,Vaswani等人提出了Transformer网络,该网络在机器翻译任务上实现了新的最先进(State-Of-The-Art, SOTA) 性能。在此之后,在大语料库上的自监督预训练,然后在下游任务上的微调吸引了越来越多的研究人员的关注。许多预训练的大型模型都是按照这样的范式提出的,例如双向编码器表示(BERT)、生成式预训练Transformers(GPT)、T5和XLNet, 这也触发了计算机视觉领域预训练研究的新亮点。越来越多的大型自然语言处理 (NLP) 和计算机视觉模型通过预训练和微调的范式展示了强大的效果,包括视觉Transformer(ViT) 和Swin-transformer。尽管这些进展为人工智能的发展带来了新的动力,但由单一模态缺陷引起的问题仍然难以解决。研究人员试图将更多的模态引入深度模型中来弥合数据差距。许多多模态融合的任务也在传统深度学习中被探索,例如可见光、深度信息、自然语言、点云、音频、脉冲与事件流等。许多预训练多模态大模型被相继提出,并不断刷新各个任务的最先进水平,

如图1所示。本文旨在帮助对该领域感兴趣的新研究人员快速了解历史和最新发展的工作进行了全面综述。

图1. 从2019年到2022年6月的多模态预训练大模型的时间轴,包括多模态数据集和代表性模型。紫色字体表示该数据集包含中文文本(其他数据集包含英文文本)。用酒红色突出显示的模型是使用两个以上的模态进行训练的。

本文与现有相关综述论文的区别。 虽然已经有研究者提出了两个关于多模态预训练的综述,但我们的综述与现有综述之间的差异可总结如下:

  • 综述的范围不同。现有的多模态综述仅关注视觉语言,而多模态信息问题是一个更广泛的研究主题。本文通过引入更多模态,如音频、视频、表格等,比上类综述更加全面。

  • 综述的及时性。本文介绍了从2019年到2022年提出的最新多模态预训练数据集和算法,这是一个长期的综述,而前人的综述工作属于短文。作者在Github网页上也及时跟踪了最新的研究成果。

  • 最新关于多模态预训练大模型的见解。通过对现有不同角度的多模态预训练进行分类和分析,本文可以帮助读者掌握前沿的方法和技术,从详细和高层次的角度了解。此外,本文对多模态预训练大模型的提出的可能研究方向均是经过深思熟虑的,希望能为后续研究提供新的线索。

图2. 多模态预训练大模型综述框架图。

多模态预训练:

任务定义和关键挑战:

一般来说的深度神经网络在大规模数据集上进行训练,例如广泛使用的残差网络,是在ImageNet数据集上使用分类任务进行预训练的。相比之下,多模态预训练大模型通常是在大规模训练数据集上进行训练。通常,这些数据没有标注标签,因为规模太大而无法标注。另一方面,参数需要达到一定的规模。如图3所示,多模态数据、大型模型和计算能力紧密相连。总之,在计算能力的支持下,多模态预训练通常表示在无监督方式下使用大量多模态数据对具有大量参数的大型多模态模型进行预训练的任务。图3. 多模态数据、模型、算力的关系。

根据上述过程,实现一个模型参数量巨大的多模态预训练大模型是非常具有挑战性的。更具体地说,我们总结了以下关键挑战因素:

  • 大规模多模态数据的获取和清理。多模态数据是多模态预训练大模型中最重要的元素之一。由于缺乏多模态成像设备,收集多模态数据比单模态要困难得多。常用的多模态相机通常只覆盖两种模态,如RGB-depth、RGB-thermal、RGB-radar、RGB-event相机等。大多数当前的多模态预训练大模型都是视觉语言模型,因为可以从互联网轻松访问图像和文本数据。但是,由于样本噪声,这些数据的附加清理也是必要的。

  • 大规模多模态预训练的网络架构设计。网络架构是多模态预训练的另一个关键组件。用于多个输入模态的特征编码的网络需要仔细定制,因为不同的模态可能具有自己的特征,并且需要特定的网络。例如,对于图像和文本模态,建议使用Transformer或CNN, 而对于事件流,可以使用脉冲神经网络。另一个问题是多模态融合或跨模态匹配模块的设计。是否适用于大规模预训练模型的小规模多模态任务设计相似的模块仍有待验证。

  • 预训练目标的设计。由于大量的未标记多模态数据,预训练任务通常需要以无监督学习的方式进行。许多当前的工作采用每个模态的掩码区域预测作为其学习目标。显然,多模态任务的目标可以直接从单模态预训练中借用,但是为多模态任务设计的预训练目标也是必要、直观和有效的。广泛使用的对比学习、基于模态的匹配和模态翻译都是有效且有意义的尝试。如何设计新的多模态预训练目标是多模态预训练大模型中最具有挑战性的任务之一。

  • 支持大规模计算能力。传统深度神经网络的训练可以在具有有限GPU数量的服务器上执行。相比之下,由于大规模多模态数据和超大规模模型参数,多模态预训练大模型需要更多的计算能力。因此,首先要准备一个超级计算设备,随后的模型训练也需要大量的电力来支持。

  • 参数调优技巧。考虑到上述挑战因素,训练一个有效的大型模型从来不是一个简单的任务。训练神经网络所使用的技巧也非常重要。虽然小型预训练的研究和技术相对更加成熟,但对于大规模预训练技术的经验积累较少。

预训练大模型的优势:

与单模态预训练的大模型相比,多模态预训练大模型更适用于实际应用场景。具体来说,多模态协作生成、模态补全、跨领域检索等问题可以通过多模态预训练大模型得到很好的解决。此外,多模态数据包含更多的信息,可以弥补单个模态的缺陷。因此,多模态预训练大模型可以帮助提取多模态的共同特征。许多最近的工作表明,利用多模态预训练大模型确实带来了额外的先验知识。与小型多模态模型相比,通过自监督/无监督学习获得的多模态预训练大模型的泛化性可以显著提高。因为一些先验知识只包含于海量大数据中,而少量人工选择的标注数据是有偏的,因此小型模型很难掌握这种知识。

预训练数据集:

如表格1所示,许多大规模多模态数据集被提出用于预训练任务,关于各个数据集更加详细的介绍请参考综述论文原文和对应的原始文章。表格1. 大规模预训练多模态数据集概览表

预训练目标:

如何设计预训练目标是多模态预训练任务的核心任务之一。本文介绍的诸多的预训练目标,如图4所示,更多的细节请参考原文。图4. 预训练大模型中具有代表性的预训练目标。

预训练网络框架:

本文回顾了89个典型的预训练多模态大模型,如表格2所示,其中涵盖了所涉及的模态、骨干网络架构、预训练目标、大模型的特色、参数量、以及对应的开源代码链接。更多的细节请参考综述原文。

表格2. 该综述论文涉及到的多模态预训练大模型概览

知识引导的预训练大模型:

传统的预训练模型存在逻辑推理能力差和缺乏可解释性的问题。为了解决这些问题,在预训练模型中引入知识,即使用知识进行预训练也被称为"知识增强的预训练模型"(KEPTMs),如图5所示。知识表示学习。通过学习符号化知识(通常以实体和关系的形式表示)的知识表示学习,使得基于神经网络的模型能够融合知识并提高其推理能力。相似性基础模型和图神经网络(GNN)模型是两种主要的知识表示学习方法。图5. 知识增强预训练模型(KEPTMs)的分类。

预训练下游任务

在预训练任务完成后,研究者通常会在下游任务上测试模型以验证其强大的能力。具体而言,生成任务、分类任务和回归任务被用于验证。作为一种新的学习范式,针对修改下游任务以适应预训练大型模型的提示学习(Prompt Learning)吸引了越来越多的关注。在本节中,还回顾了一些有代表性的提示学习算法。这些下游任务的概览如图6所示。图6. 预训练多模态大模型的下游任务概览。

实验分析:

考虑到多模态预训练大模型的复杂性和数量,要在短时间内复制预训练任务几乎是不可能的。因此,本论文忽略了预训练相关的实验和分析。然而,本文仍然希望为读者提供一份更完整的综述文章,因此,从他们的论文中提取了相应下游任务的实验结果,并将其与共享基准数据集进行比较,如图6和图7所示。 图7. 节选的多模态预训练大模型在三种主流任务上的实验结果情况:zero-shot image retrieval (Rank-1, Rank-5), image captioning (BLEU, METEOR, CIDEr, SPICE), and visual question answering (Test-std)。

未来研究方向:

尽管多模态预训练大模型已经取得了巨大的发展,但它仍然是一个年轻的研究方向。许多问题和机遇仍然等待研究人员解决。在本节中,我们总结了几个值得尝试的研究点。

  • 在更多模态上进行预训练。现有的大型预训练模型通常在两个模态上进行预训练,例如视觉和语言。缺乏大量对齐的多模态数据可能是一个关键原因。正如一句老话所说:"磨刀不误砍柴工"。获取真实的多模态数据对于大规模预训练来说是最重要的事情,如图8所示,例如视觉图像、文本、音频、雷达、事件流、深度图像、热图像等。据我们所知,很少有设备可以同时捕捉这么多模态。因此,制造多模态成像设备可能具有非常显著的意义。基于这些数据的预训练大型模型可能具有更广泛的应用潜力。   whaosoft aiot http://143ai.com  

图8. 经常被使用的主流模态案例 

  • 基于增量学习的预训练。 目前,现有的预训练大型方法通过特征微调或提示学习用于下游任务。这种标准的深度学习过程在短时间内运行良好,但预训练是一个昂贵的过程。具体而言,数据收集和清理、用于预训练的电荷以及硬件设备都耗费了大量的人力和材料资源。当我们收集另一组数据时,在混合数据上的预训练是昂贵、冗余且不环保的。然而,很少有研究考虑为大型模型开发增量学习算法,并且不清楚传统深度学习中开发的增量学习算法是否适用于大型模型。除了上述数据增量学习之外,还有许多方面可以利用多模态预训练大型模型。例如,类别(或类别)增量学习是一个经典的机器学习问题。另一个有趣的问题是如何将新模态引入到已经预先训练好的多模态模型中。因为新的传感器(模态)将在未来的某个不确定时间出现,设计的多模态大型模型应该足够灵活以应对这种情况。

  • 知识增强型多模态预训练。 根据对多模态预训练大模型的综述,我们可以发现知识辅助型预训练仍处于起步阶段。当前的工作仅仅在预训练阶段采用外部知识图谱或知识库,但它们通常是单模态的、独立的多模态数据,并且仅限于提高模型对数据的理解。虽然常识知识更为普遍,但它也更抽象,引入了歧义,导致在应用到特定数据时出现挑战。因此,我们认为进一步探索知识增强型多模态预训练是值得研究的。首先,需要通过自监督学习收集或提取多模态数据的指定知识。其次,需要设计更多针对多模态数据的通用知识融合方法,超越视觉和语言模态的限制。第三,需要特定的预训练知识评估任务来检查知识在早期阶段的增强情况,因为预训练是整个训练过程的第一阶段,而下游任务仍在确定中。

  • 细粒度多模态预训练。 大多数现有的多模态预训练大模型都是从全局视角进行预训练的,例如研究人员将整张图像与语言之间的匹配作为预训练的监督信号。代表性工作包括CLIP、ALIGN等。需要注意的是,细粒度本地信息挖掘或实例级预训练可能进一步改善多模态预训练的整体性能。一些研究人员已经利用了细粒度预训练策略的可能性。我们希望更多的研究人员能够关注这个方向,以进一步推动最终结果的发展。

  • 基于提示学习的多模态预训练模型。 目前预训练的大型模型通常使用"预训练-微调"的方式,即用户需要使用预训练权重初始化其模型,然后再微调到下游任务上。尽管这在许多任务中都有效,但是微调可能不是最直接的方法。因为当前的多模态大型模型是通过模态匹配、掩码令牌预测等方式进行预训练的,而下游任务通常是分类和回归任务。因此,存在多模态预训练和微调之间的差距。最近,一个新的框架(称为提示学习)被开发出来用于基于大型模型的下游任务,它快速地转换下游任务的环境,使其与预训练保持一致。许多工作已经证明了它在CV和NLP任务中的有效性。在这个方向上的研究工作也很有趣,具有巨大的潜力。

  • 小规模模型开发的技术迁移。 小规模多模态模型已经被开发多年,并为深度多模态任务提出了许多代表性的模型。在这些工作中,扩散、跨注意力和动态神经网络对于特定的多模态任务非常有用。其中的一部分技术被应用于视觉-语言预训练模型,如基于跨注意力的ViLBERT。在大型模型任务中仍有许多算法或技巧尚未探索。我们认为从小规模到大规模预训练模型的转移值得研究。

  • 跨模态预训练模型中的耦合和解耦问题。 耦合涉及建立不同模态之间的相关性,而"交叉"只能通过这种相关性实现。解耦可以进一步动态扩展模态。从框架设计的角度来看,值得研究如何为这两个问题提供可行的解决方案。

总结:

本文对大规模多模态预训练模型 (MM-PTMs) 进行了全面回顾。首先,我们介绍了MM-PTMs的背景,重点关注传统的深度学习、NLP、CV和语音中的预训练。然后,讨论了MM-PTMs的任务定义、关键挑战和益处。接下来,我们深入探讨了MM-PTMs的回顾,并讨论了预训练数据、目标、网络、知识增强预训练等。我们回顾了下游任务,包括生成、分类和回归任务,并概述了MM-PTMs的模型参数和用于预训练的硬件。我们还讨论了几项代表性任务的实验结果,并对其进行了可视化。最后,我们指出了一些值得关注的研究方向,并总结了本文。希望我们的综述能够为MM-PTMs提供一些有用的见解。

猜你喜欢

转载自blog.csdn.net/qq_29788741/article/details/131776193