一文深度看懂视觉语言模型 (VLM)

在本文来自于encord,从VLM 算法架构,原理,到应用方向,挑战难点方面探讨VLM 的架构、评估策略和主流数据集,以及该领域的主要挑战和未来趋势。

通过了解这些基础方面,读者将深入了解如何将 VLM 应用于医疗保健、机器人和媒体等行业,汽车行业属于机器人板块,熟悉VLM可以帮助理解当前自动驾驶产品,算法挑战以及发展趋势。

是一篇带有深度的科普文章,文章比较长而且需要一定的算法基础和强烈兴趣爱好来读。
很长一段时间以来,人工智能(AI)能够像人类一样有效地理解视觉和文本线索的想法似乎遥不可及且难以想象。
然而,随着多模态人工智能的出现,我们看到了一场革命,人工智能可以同时理解各种模态,如文本、图像、语音、面部表情、生理手势等,以理解我们周围的世界。处理多种模态的能力为人工智能应用开辟了各种途径。
多模态 AI 的一个令人兴奋的应用是视觉语言模型 (VLM)。这些模型可以同时处理和理解语言(文本)和视觉(图像)的模态,以执行高级视觉语言任务,例如视觉问答 (VQA)、图像字幕和文本到图像搜索。
在本文中,您将了解:
  • VLM 架构。
  • VLM 评估策略。
  • 用于开发视觉语言模型的主流数据集。
  • VLM 面临的主要挑战、主要应用和未来趋势。
让我们首先了解什么是视觉语言模型。
什么是视觉语言模型?
视觉语言模型是视觉和自然语言模型的融合。它将图像及其各自的文本描述作为输入,并学习将两种模式的知识关联起来。该模型的视觉部分从图像中捕获空间特征,而语言模型则对文本中的信息进行编码。
两种模态的数据(包括检测到的物体、图像的空间布局和文本嵌入)相互映射。例如,如果图像包含一只鸟,模型将学习将其与文本描述中的类似关键字关联起来。
这样,模型就会学会理解图像并将知识转化为自然语言(文本),反之亦然。
训练 VLM
构建 VLM 涉及预训练基础模型(foundation models)零样本学习(zero-shot learning)迁移学习技术(Transfer learning)(例如知识提炼)可用于微调模型以完成更具体的下游任务。 
这些是更简单的技术,需要更小的数据集和更少的训练时间,同时保持良好的结果。
另一方面,现代框架使用各种技术来获得更好的结果,例如:
  • 对比学习。

  • 掩蔽语言图像建模。

  • 带有变压器等的编码器-解码器模块。
这些架构可以学习各种模态之间的复杂关系并提供最先进的结果。让我们详细讨论一下。
视觉语言模型:架构以及当前流行的模型
目前 VLM 主流模型架构有CLIP、Flamingo和VisualBert等,他们所使用的学习技术有:
对比学习
对比学习是一种通过了解数据点之间的差异来学习数据点的技术。该方法计算数据实例之间的相似度得分,旨在最大限度地减少对比损失。它在半监督学习中最有用,在半监督学习中,只有少数标记样本引导优化过程来标记看不见的数据点。
图片
例如,了解猫长什么样子的一种方法是将其与类似的猫图像和狗图像进行比较。对比学习模型通过识别面部结构、身体大小和毛发等特征来学习区分猫和狗。这些模型可以确定哪幅图像更接近原始图像(称为“锚点”),并预测其类别。
CLIP是一个使用对比学习的模型示例,它使用文本和视觉编码器计算文本和图像嵌入之间的相似性。它遵循三步流程来实现零样本预测。
  1. 在预训练期间训练文本和图像编码器以学习图像-文本对。

  2. 将训练数据集类别转换为标题。

  3. 估计给定输入图像的零样本预测的最佳标题。
图片
CLIP 等 VLM 为Encord Active中的语义搜索功能提供支持。当您登录 Encord → Active →选择项目→ 使用自然语言搜索查找数据集中带有文本描述的项目时。以下是使用“白色运动鞋”作为查询词使用自然语言搜索的方法:
图片
ALIGN是另一个示例,它使用图像和文本编码器通过对比损失函数来最小化相似嵌入之间的距离。
PrefixLM 
PrefixLM 是一种 NLP 学习技术,主要用于模型预训练。它输入文本的一部分(前缀),并学习预测序列中的下一个单词。在视觉语言模型中,PrefixLM 使模型能够根据图像及其相应的前缀文本预测下一个单词序列。它利用视觉变换器(ViT) 将图像划分为一维块序列,每个块序列代表一个局部图像区域。
然后,该模型对处理后的补丁应用卷积或线性投影,以生成上下文化的视觉嵌入。对于文本模态,该模型将相对于补丁的文本前缀转换为标记嵌入。Transformer 的编码器-解码器块接收视觉和标记嵌入。在那里,模型学习嵌入之间的关系。
SimVLM是一种采用 PrefixLM 学习方法的流行架构。它的 Transformer 架构比其前辈更简单,在各种基准测试中都超越了前辈的结果。
它使用 Transformer 编码器来学习图像前缀对,并使用 Transformer 解码器来生成输出序列。该模型还展示了良好的泛化能力和零样本学习能力。

图片

SimVLM 架构
类似地,VirTex使用卷积神经网络 提取图像特征,并使用带有转换器的文本头来管理文本前缀。您可以通过将图像-文本对输入到文本头来端到端地训练模型,以预测正确的图像标题。

图片

VirTex 架构
Frozen PrefixLM
虽然 PrefixLM 技术需要从头开始训练视觉和文本编码器,但 Frozen PrefixLM 允许您使用预先训练的网络并仅更新图像编码器的参数。
例如,下图展示了《Frozen》如何使用预训练语言模型和视觉编码器工作。文本编码器可以属于任何大型语言模型 (LLM),而视觉编码器也可以是预训练的视觉基础模型。
您可以微调图像编码器,使其图像表示与文本嵌入一致,从而允许模型做出更好的预测。

图片

Frozen Architecture

Flamingo 的架构采用了更先进的 (SOTA) 方法。它使用类似 CLIP 的视觉编码器和名为Chinchilla的 LLM 。保持 LLM 固定,您可以在文本之间交错的图像上训练视觉编码器。
视觉编码器通过感知器采样器处理图像。该技术可加快推理速度,使 Flamingo 成为小样本学习的理想选择。

图片

Flamingo 架构
交叉注意的多模态融合
该方法通过添加交叉注意层,利用预训练的 LLM 编码器进行视觉表征学习。VisualGPT是一个主要示例,它允许快速调整 LLM 预训练编码器权重以适应视觉任务。

图片

VisualGPT 架构
从业者从图像输入中提取相关对象并将其输入到视觉编码器。然后将得到的视觉表征输入到解码器,并根据预先训练的 LLM 使用权重进行初始化。解码器模块通过自复活激活单元 (SRAU) 平衡视觉和文本信息。
SRAU 方法避免了梯度消失的问题,这是深度学习中常见的问题,由于梯度较小,模型权重无法更新。因此,VisualGPT 的表现优于几个基线模型,例如普通 Transformer、Attention-on-Attention ( AoA ) Transformer 和 X-Transformer。
掩码语言建模 (MLM) 和图像文本匹配 (ITM)
MLM 在BERT等语言模型中发挥作用,通过屏蔽或隐藏文本序列的一部分并训练模型来预测缺失的文本。ITM 涉及预测句子 Y 是否跟在句子 X 之后。
您可以调整 MLM 和 ITM 技术以完成视觉任务。下图展示了在COCO数据集上训练的VisualBERT的架构。

图片

VisualBERT 架构
它通过引入图像序列和掩码文本描述来增强 MLM 程序。基于视觉嵌入,目标是预测缺失的文本。同样,ITM 预测标题是否与图像匹配。
无需培训
您可以直接使用大规模、预先训练的视觉语言模型,而无需进行任何微调。例如,MAGIC和ASIF是无需训练的框架,旨在预测与输入图像紧密相关的文本描述。
MAGIC 使用基于 CLIP 生成的图像嵌入的专门分数来指导语言模型的输出。使用此分数,LLM 可以生成与图像语义紧密一致的文本嵌入,从而使模型能够以零样本方式执行多模态任务。
ASIF 采用相似图像具有相似标题的理念。该模型计算训练数据集的查询和候选图像之间的相似度。接下来,它将查询图像嵌入与相应候选图像的文本嵌入进行比较。
然后,它预测一个嵌入与查询图像最相似的描述,从而实现与CLIP和LiT等模型相当的零样本性能。

图片

ASIF 预测策略
知识蒸馏/提炼
该技术涉及将知识从大型、训练有素的教师模型转移到具有少量参数的较轻学生模型。这种方法允许研究人员从较大的预训练模型中训练 VLM。
例如,ViLD是一种使用知识蒸馏方法开发的流行 VLM。该模型使用预先训练的开放词汇图像分类模型作为老师来训练两阶段检测器(学生)。
该模型将来自文本编码器的文本嵌入与图像嵌入进行匹配。

图片

ViLD 建筑
知识蒸馏将知识从图像编码器转移到主干模型,以自动生成区域嵌入。只有主干模型在推理过程中生成区域嵌入,并将它们与未见过的文本嵌入进行匹配。
目标是根据文本描述在图像中的对象周围绘制正确的边界框。
评估视觉语言模型
VLM 验证涉及评估图像和文本数据之间关系的质量。对于图像字幕模型,这意味着将生成的字幕与真实描述进行比较。
您可以使用各种基于 n-gram 的自动化评估策略来比较预测标签的准确性、语义和信息精度。以下是一些关键的 VLM 评估指标。
BLEU:双语评估替代 ( BLEU ) 指标最初是为评估机器翻译任务而提出的。它通过考虑候选句子中有多少个单词出现在参考中来计算目标文本与参考(基本事实)相比的精度。
ROUGE:面向回忆的要点评估替补模型 ( ROUGE ) 通过考虑参考句子中有多少个单词出现在候选中来计算回忆率。
METEOR:具有明确排序的翻译评估指标 ( METEOR ) 计算准确率和召回率的调和平均值,赋予召回率更多权重并将其乘以惩罚项。该指标比其他使用准确率或召回率的指标有所改进,因为它结合了两者的信息以提供更好的评估。
CIDEr:基于共识的图像描述评估 ( CIDEr ) 通过使用TF-IDF分数计算参考句子和目标句子之间的平均相似度,将目标句子与一组人类句子进行比较。
现在您已经了解了与视觉语言模型 (VLM) 相关的评估指标,了解如何为这些模型整理数据集至关重要。合适的数据集为训练和验证 VLM 提供了肥沃的土壤,并且对于确定模型在不同任务中的表现至关重要。
视觉语言模型的数据集
为 VLM 收集训练数据比传统 AI 模型更具挑战性,因为它涉及多种数据模式的收集和质量保证。以下是结合图像和文本数据进行多模式训练的几个数据集的列表。
LAION-5B:从业者使用LAION-5B数据集构建大型、预训练的 VLM。该数据集包含由 CLIP 生成的超过 50 亿个图像文本对,并配有英文和外语描述,可满足多语言领域的需要。
PMD:公共模型数据集(PMD)最初出现在FLAVA 论文中,包含 700 亿个图像-文本对。它是来自其他大型数据集的数据集合,例如COCO、概念字幕(CC)、RedCaps等。该数据集是多模态数据的宝库,可促进稳健的模型训练。
VQA:专家使用VQA数据集来微调预训练的 VLM,以用于下游 VQA 和视觉推理任务。该数据集包含超过 200,000 张图像,每张图像有 5 个问题、10 个真实答案,每个问题有 3 个错误答案。
ImageNet:ImageNet包含超过 1400 万张图像,这些图像的注释按照WordNet层次结构进行分类。它有助于为简单的下游任务(例如图像分类和对象识别)构建模型。
尽管有高质量的多模态数据集,VLM 在模型开发过程中仍面临重大挑战。下面让我们讨论一下。
视觉语言模型的局限性
尽管 VLM 在理解视觉和文本模式以处理信息方面功能强大,但它们面临着三个主要挑战:
  • 模型复杂性。

  • 数据集偏差。

  • 评估困难。
模型复杂度
语言和视觉模型本身就相当复杂,将两者结合起来只会使问题变得更糟。它们的复杂性带来了额外的挑战,包括获取强大的计算资源进行训练、收集大型数据集以及在物联网设备等弱硬件上部署。
数据集偏差
当 VLM 记住训练和测试集中的深层模式而不解决任何问题时,就会出现数据集偏差。例如,使用从互联网上精选的图像训练 VLM 可能会导致模型记住特定模式,而不会学习各种图像之间的概念差异。
评估策略
上面讨论的评估策略仅将候选句子与参考句子进行比较。该方法假设参考句子是唯一的基本事实。然而,一个特定的图像可以有多个基本事实描述。
尽管 CIDEr 等基于共识的指标可以解决这个问题,但当特定图像的共识较低时,使用它们会变得很困难。另一个挑战是当通用描述适用于多幅图像时。
图片
虚假相关
如图所示,VLM 可以注释或检索与通用标题匹配的多个相关图像。然而,实际上,该模型只不过是一个词袋。它所做的只是考虑诸如“城市”、“公共汽车”、“灯光”等词语来描述图像,而不是真正理解标题的顺序和真正的上下文含义。
此外,用于 VQA 的 VLM 可以对无意义的问题生成高度可信的答案。例如,对于包含白马的图像,向 VLM 询问“汽车是什么颜色的?”,VLM 会生成“白色”的答案,而不是指出图片中没有汽车。
最后,VLM 缺乏组合泛化能力。这意味着它们在处理新概念时性能会下降。例如,VLM 可能无法将黄色马识别为一个类别,因为很少将黄色与马联系起来。
尽管存在许多开发和部署挑战,研究人员和实践者在采用 VLM 解决实际问题方面取得了重大进展。下面让我们简单讨论一下。
视觉语言模型的应用
虽然前面讨论的大多数 VLM 都有助于为图像添加字幕,但它们的实用性还扩展到利用桥接视觉和语言模式的能力的各个领域。以下是一些其他应用程序:
图像检索:FLAVA等模型可帮助用户浏览图像存储库,帮助他们根据语言查询找到相关照片。电子商务网站就是一个相关的例子。访问者可以在搜索栏中描述他们正在寻找的内容,VLM 将在屏幕上显示合适的选项。此应用程序在智能手机上也很流行,用户可以输入关键字(风景、建筑物等)来从图库中检索相关图像。
生成式人工智能:通过文本提示生成图像是一个不断发展的领域,DALL-E等模型允许用户根据自己的描述创作艺术品或照片。该应用在设计师和发明家想要将不同的产品创意形象化的企业中非常实用。它还有助于为网站和博客创建内容,并有助于讲故事。
分割:像SegGPT这样的 VLM有助于完成诸如实例、全景、语义等分割任务。SegGPT 通过理解用户提示并利用独特的配色方案在上下文中分割对象来分割图像。例如,用户可以要求 SegGPT 从多幅图像中分割出彩虹,SegGPT 将有效地注释所有彩虹。
未来研究方向
以下是 VLM 领域的一些重要未来研究方向:
更好的数据集
研究界正在努力构建更好的训练和测试数据集,以帮助 VLM 理解成分。CLEVR就是其中一个例子。

图片

CLEVR 数据集
如图所示,它包含新颖形状、颜色和相应问题的图像,可供专家测试 VLM 的视觉推理能力。
更好的评估方法
评估挑战需要深入研究更好的评估方法,以构建更强大的 VLM。一种替代方法是通过ARO基准测试 VLM 的各项技能。
属性识别、关系推理和词序敏感性 (ARO) 是 VLM 必须掌握的三项技能。

图片

ARO 数据集
上图解释了 ARO 在不同情况下的含义。使用这样的数据集,专家可以分析 VLM 学到了什么以及如何改善结果。
机器人应用
研究人员还在使用 VLM 构建专用机器人。此类机器人可以帮助导航环境,通过监控物品改善制造业的仓库运营,并通过让机器人理解人类的手势(如面部表情、肢体语言、语音语调等)来增强人机交互。最近理想和小米智能驾驶竞相推出的VLM应用就是这个范畴。
医疗 VQA应用
VLM 注释图像和识别复杂物体的能力可以帮助医疗专业人员进行医疗诊断。例如,他们可以向 VLM 询问有关 X 射线或 MRI 扫描的关键问题,以便尽早发现潜在问题。
视觉语言模型:关键要点
视觉语言建模是一个不断发展的领域,对人工智能行业来说前景广阔。以下是有关 VLM 的几个关键点:
  • 视觉语言模型是一种同时理解图像和文本数据模式的多模式架构。

  • 他们使用 CV 和 NLP 模型来关联来自两种模态的信息(嵌入)。

  • 存在几种 VLM 架构,旨在将视觉语义与文本表示关联起来。

  • 尽管用户可以使用自动评分来评估 VLM,但更好的评估策略对于构建更可靠的模型至关重要。

  • VLM 有许多工业用途,例如机器人、医疗诊断、聊天机器人等。

*未经准许严禁转载和摘录-参考资料:

加入我们的知识星球可以下载包含以上参考资料的公众号海量参考资料

>>>>