到底什么是视觉语言模型?(分类/训练/评估)
5月27日,Meta发布了Vision Language Model行业研究的综述论文《An Introduction to Vision-Language Modeling》。全文干货满满,但篇幅过长,所以笔者把每一章节放到独立的文章中,方便对VLM领域感兴趣的同学们一边读一边翻译一边消化,觉得有用就一键三连吧~
*本文只摘译精华部分,需要了解全文的请至文末跳转至原文链接阅读。*楼主会用GPTs翻译形成初稿,然后自己精读后完成终稿,力求每一句话自己都能理解后再输出译文。
引言
近年来,语言建模技术取得了显著进展。许多大型语言模型(LLMs),如Llama或ChatGPT,现在能够解决各种任务,其使用变得越来越普及。这些模型过去主要处理文本输入,但现在扩展到了视觉输入。将视觉与语言结合将开启许多关键应用,这些应用对当前的AI技术革命至关重要。尽管已有多项工作将大型语言模型扩展到视觉领域,但语言与视觉的结合尚未完全解决。例如,大多数模型在理解空间关系或计数时存在困难,除非进行复杂的工程处理并依赖额外的数据标注。许多视觉语言模型(VLMs) 也缺乏对属性和顺序的理解。它们经常忽略输入prompt的一部分,导致需要进行大量提示工程以产生期望的结果。此外,一些模型还可能产生不需要或不相关的内容。因此,开发可靠的模型仍然是一个非常活跃的研究领域。
这篇文章介绍了VLMs的基础知识。作者将解释什么是VLMs,它们是如何训练的,以及如何根据不同的研究目标有效地评估VLMs。这篇文章不应被视为对VLMs的全面调查或指南,也因此不打算引用VLM研究领域的每一项工作,不会捕捉到该领域的每一个最佳实践。相反,本文的目的是提供一个清晰易懂的VLM研究入门,并强调该领域的有效研究实践。这篇介绍对希望进入该领域的学生或其他领域的研究人员特别有用。
文章首先介绍不同的VLM训练范式,讨论对比学习方法如何改变了该领域;接着介绍利用掩码策略或生成组件的方法;最后介绍使用预训练主干(如LLMs)的VLMs。将VLMs分类并非易事,因为它们大多有重叠的组件。然而,作者希望我们的分类能够帮助新研究人员导航该领域,并揭示VLMs背后的内部机制。
文章接下来介绍了训练VLMs的典型方法。例如本文讨论了:哪些数据集适合不同的研究目标?哪种数据整理策略最有效?用户是否需要训练一个文本编码器,还是可以利用预训练的LLM?对比学习损失是否足以理解视觉,还是生成组件是关键?该章节还介绍了一些常用的技术,以提高模型性能以及改进对齐和基础。
虽然提供训练模型的方法是更好理解VLMs需求的关键步骤,但提供这些模型的稳健和可靠评估同样重要。许多用于评估VLMs的基准最近被引入。然而,这些基准中的一些具有研究人员应该注意的基本局限性。通过讨论VLM基准的优缺点,作者希望能阐明改进用户对VLMs理解的挑战。该章节首先讨论评估VLMs视觉语言能力的基准,然后介绍如何衡量偏见。
下一代的VLMs将能够通过将视频映射到语言来理解视频。然而,视频存在一些图像没有的不同挑战。计算成本当然要高得多,但还有其他关于如何通过文本映射时间维度的考虑。通过揭示从视频中学习的当前方法,作者希望突出需要解决的当前研究挑战。
通过降低进入VLM研究的门槛,Meta团队希望为更负责任的VLM开发奠定基础,同时推动视觉理解的边界。
VLM的分类
随着深度学习在计算机视觉和自然语言处理领域的显著进展,已经有多个将这两个领域结合的尝试。本文重点介绍了基于transformers的最新技术,作者将这些最新的尝试分为四种不同的训练范式(见图1)。
图1:VLMs的分类
- 第一种是对比训练,这是一种常用策略,利用正负样本对进行训练。VLM通过预测正样本对的相似表示和负样本对的不同表示来进行训练。
- 第二种是掩码方法,通过给定部分未掩码文本来重建被掩码的图像块。同样,通过在标题中掩码词语,可以训练VLM在给定未掩码图像的情况下重建这些词语。
- 基于预训练模型的VLMs通常利用开源的LLMs(如Llama)来学习图像编码器(也可以是预训练的)和LLM之间的映射。学习预训练模型之间的映射通常比从头开始训练文本和图像编码器的计算成本更低。
- 虽然大多数方法利用中间表示或部分重建,生成式VLMs通过生成图像或标题进行训练。由于这些模型的特点,它们通常训练成本最高。
需要强调的是,这些范式并不互斥,许多方法结合了对比、掩码和生成标准。对于每种范式,本文仅介绍一两个模型,以便读者对这些模型的设计有一个高层次的了解。详见以下传送门:
Meta最新Vision-Language Model研究综述(一)——VLMs的分类(https://zhuanlan.zhihu.com/p/700599618)
VLM的训练
最近的研究已经揭示了扩展计算能力对提高深度神经网络性能的重要性。受到这些扩展规律的启发,最近的许多研究都集中在增加计算资源和扩大规模,以学习更好的模型。这导致了像CLIP这样的模型,它在极高计算预算下训练了4亿张图像。即使是它的开源版本OpenCLIP,也在256到600个GPU上训练了多天或多周,具体取决于模型的大小。然而,最近的研究表明,通过使用数据管理流程,可以突破Scaling Laws的限制。
本文中首先讨论数据在模型训练中的重要性,并介绍一些用于创建VLM训练数据集的方法。然后讨论一些常用的软件、工具和技巧,以更高效地训练VLM。由于训练VLM的方法有多种,本文还会探讨在特定情况下应选择哪种类型的模型。最后,本文还会介绍一些提高基准的方法,即正确映射文本与视觉线索的能力。此外,作者还介绍了使用人类偏好来改进模型对齐的技术。VLM经常用于读取和翻译文本,因此也会介绍一些增强VLM OCR能力的方法,还会讨论一些常见的微调方法。
图2:训练VLM时需要注意的重要因素。
图2展示了一些训练VLM时的重要因素。数据是训练VLM的核心要素之一,为了学习涵盖广泛概念的优质模型,必须拥有多样化且平衡的数据集。同时,删除大型数据集中的重复数据非常重要,这不仅可以节省大量计算时间,还能减少模型记忆风险。此外,修剪数据也是关键步骤,需要确保图像的标题确实反映了其内容。提高标题质量对于增强VLM的性能也至关重要。
正确关联VLM中的词汇和具体概念是另一个关键步骤。常见的方法包括使用边界框或负面标题。最后,对齐模型的输出与人类预期答案也是必不可少的步骤,以确保模型生成的回答符合人类的期望。
详见以下传送门:
Meta最新Vision-Language Model研究综述(二)——VLMs的训练 (https://zhuanlan.zhihu.com/p/700728458)
VLM的评估
因为VLM的主要能力是将文本与图像匹配,所以评估其视觉语言能力,确保词语确实对应于视觉线索,至关重要。早期评估VLM的任务包括图像描述和视觉问答(VQA)。此外,还有评估模型从图像中理解和读取文本能力的文本中心VQA任务。另一种常见评估方法是基于零样本预测,例如ImageNet分类任务,这对于评估VLM的世界知识是否足够非常重要。更近期的基准如Winoground则测量视觉语言组合推理能力。鉴于VLM模型常会显示偏见或幻觉,因此评估这些问题同样重要。
图3:评估VLM的不同方法
图3展示了评估VLMs的常用方法,视觉问答是最常用的一种。尽管这种方法通过精确字符串匹配来比较模型的答案和标准答案,但这可能会低估模型的实际性能。推理评估方法包括给VLM提供一个标题列表,并让其选择最可能的一个。在这一类中,两个常用的基准是Winoground和ARO。最近,人们还可以使用密集的人工注释来评估模型将标题准确映射到图像相应部分的能力。最后,还可以使用像PUG这样的合成数据生成不同配置的图像,以评估VLM在特定变化下的鲁棒性。
详见以下传送门:
Meta最新Vision-Language Model研究综述(三)——VLMs的评估 (https://zhuanlan.zhihu.com/p/700943845)
从图像扩展到视频
迄今为止,本主要关注的是在静态视觉数据(图像)上训练和评估的VLMs。然而,视频数据带来了新的挑战和潜在的新能力,例如理解物体的运动和动态,或在时间和空间上定位物体和动作。文本到视频检索、视频问答和视频生成迅速成为计算机视觉的核心任务。
视频的时间维度在存储、GPU内存和训练方面带来了帧率的挑战。例如,如果每帧都被视为图像,那么24帧每秒的视频需要24倍的存储和处理能力。这需要在视频VLMs中进行权衡。例如,可以使用压缩格式的视频(如H.264编码)并在数据加载器中即时解码;从图像编码器初始化视频编码器;以及在视频编码器中引入空间/时间池化或掩码机制。非端到端的VLMs通过离线提取视频特征并训练使用视频特征而不是像素帧的模型,以处理长视频数据。
与图像-文本模型类似,早期的视频-文本模型通过自监督准则从头开始训练视觉和文本组件。但与图像模型不同,对比视频-文本模型并不是首选方法,早期更倾向于视频和文本的早期融合和时间对齐,因为在表示中更多的时间粒度比计算视频的全局表示更有趣。最近,视频-语言模型也出现了类似于图像-语言模型的趋势:使用预训练的LLMs并与视频编码器对齐,增强LLMs的视频理解能力。现代技术如视觉指令微调也常用于并适应于视频数据处理。
详见以下传送门:
Meta最新Vision-Language Model研究综述(四)——从图像扩展到视频 (https://zhuanlan.zhihu.com/p/701035253)
总结
将视觉映射到语言仍然是一个活跃的研究领域。从对比学习方法到生成方法,有许多训练VLMs的途径。然而,高昂的计算和数据成本往往成为多数研究人员的障碍。这促使研究人员更多地利用预训练的LLMs或图像编码器,仅学习模态之间的映射。不论使用何种技术来训练VLMs,一些通用的考虑因素仍需注意。大规模高质量的图像和描述是提升模型性能的重要因素。改进模型的基础能力以及使模型符合人类偏好,也是提升模型可靠性的关键步骤。
为了评估模型性能,已经引入了多个基准来衡量视觉语言和推理能力;然而,其中许多基准存在严重的局限性,例如仅能通过利用语言先验知识来解决问题。将图像与文本绑定并不是VLMs的唯一目标;视频也是一种重要的模态,可以用来学习表示。然而,在实现良好的视频表示学习之前,仍有许多挑战需要克服。VLMs的研究仍然非常活跃,因为还有许多关键组件需要完善,以使这些模型更加可靠。
本文转自 AI生成未来 ,作者:吕阿华