“如果模型可以识别图像而无需针对该特定任务进行训练怎么办?”欢迎来到视觉语言模型的世界。

更多专栏文章点击查看:
LLM 架构专栏
大模型架构专栏文章阅读指南
Agent系列
强化学习系列
欢迎加入大模型交流群:加群链接 https://docs.qq.com/doc/DS3VGS0NFVHNRR0Ru#
公众号【柏企阅文
知乎【柏企】
个人网站https://www.chenbaiqi.com

简介:为什么视觉任务仍然挑战我们

从识别照片中的人脸到检测实时视频中的物体,计算机视觉彻底改变了机器“看”世界的方式。由于深度学习,图像分类、目标检测、分割甚至人物重新识别(ReID)等任务都取得了巨大进展。

但这些进步是有代价的:

  • 需要收集和注释海量数据集。
  • 从头开始训练模型需要大量时间和计算资源。
  • 特定于任务的微调限制了模型的泛化能力 。

为了克服这些障碍,研究人员引入了一种新的范式:在大规模数据上预训练模型→针对特定任务对其进行微调。

虽然这有所帮助,但它仍然严重依赖于每个任务的标记数据。

随后,自然语言处理(NLP)的进步引发了转变。如果我们可以在图像 - 文本对上训练模型,让它们在任务中泛化,而无需任何微调,会怎么样?

不同的学习范式

转变:从监督视觉到视觉语言模型(VLM)

受BERT和GPT等语言模型的启发,出现了一类新的模型:视觉语言模型(VLM)。

这些模型在图像 - 文本对的大型数据集上进行训练。与针对特定任务进行调整不同,它们旨在理解视觉和文本模式之间的对齐关系。

结果呢?一个单一的模型可以:

  • 无需对任何标签进行训练即可对图像进行分类(零样本分类)。
  • 根据文本检索图像。
  • 理解复杂的视觉语义。

2021年,一个VLM成为头条新闻:OpenAI的CLIP(对比语言 - 图像预训练)。

CLIP学会了用正确的标题匹配图像,而不是通过使用对比损失将它们与不正确的标题匹配。它不仅看到像素,还用语言理解它们。

视觉语言模型的工作原理

大多数VLM的核心包括:

  • 图像编码器(例如ResNet或Vision Transformer)。
  • 文本编码器(例如,BERT或GPT等Transformer)。
  • 以及将两者在共享嵌入空间中对齐的目标。

让我们进一步分解:

图像编码器

VLM中有两种主要类型的图像主干:

  • 基于CNN的(如ResNet):非常适合局部特征提取,通常用于早期的VLM。
  • 基于Transformer的(如ViT):将图像补丁视为令牌,实现全局注意力机制和更深入的理解。

由于ViT的可扩展性和表达能力,现代VLM经常使用ViT。

文本编码器

这些通常基于彻底改变NLP的Transformer:

  • BERT:基于编码器的双向结构。
  • GPT:基于解码器的自回归结构。

大多数VLM使用Transformer编码器来表示输入文本,从简单的短语到详细的标题。

VLMs如何在预训练期间学习?

为了对齐视觉和语言,VLM使用了几个训练目标。让我们探索一下关键的目标:

1. 对比目标

这是CLIP的基础。

对于每个图像 - 文本对:

  • 在嵌入空间中将匹配对拉近。
  • 将不匹配的对推得更远。

这实现了零样本分类——只需嵌入像“狗的照片”这样的标签并将其与图像匹配!

变体包括:

  • 纯图像对比学习(例如,SimCLR、MoCo)。
  • InfoNCE损失。
  • 图文对比学习(例如,CLIP、ALIGN)。
  • 图文InfoNCE损失。
  • 监督对比(例如UniCL):使用类标签来强制结构。
  • 监督图文InfoNCE损失。

2. 生成目标

这些涉及生成输入的屏蔽部分:

  • 掩蔽图像建模(MIM):预测缺失的图像补丁(例如,MAE、BEiT)。
  • 掩码语言建模(MLM):预测掩码文本标记(例如,BERT)。
  • 掩蔽跨模态建模:使用图像预测缺失的文本,反之亦然。

它们帮助模型捕获更深层次的语义信息。

一些模型(例如CoCa)甚至学习从图像中生成字幕,结合对比和生成学习。

3. 对齐目标

这些侧重于结构化的关系:

  • 图像 - 文本匹配:这个图像和标题是一对吗?
  • 区域 - 单词对齐:将单词与图像区域匹配(非常适合目标检测)。

这些目标对于细粒度视觉任务特别有用,例如视觉问答(VQA)或定位任务。

VLM架构:它们是如何构建的?

视觉语言模型(VLM)通常按照以下三种架构范式之一设计:Two-Tower、Two-Leg或单塔One-Tower。

CLIP和ALIGN等模型使用的双塔方法为图像和文本使用单独的编码器,允许独立处理每个模态。这种设计快速灵活,适合大规模预训练。然而,它在编码过程中缺乏直接的跨模态交互,这可能会限制其推理细粒度对齐的能力。

为了解决这个问题,CoCa和FLAVA等模型中看到的双腿架构引入了一个融合模块,将视觉和文本特征结合在一起。这允许模型执行对比和生成任务,同时实现跨模态的更丰富交互。

最后,CLIPPO和UniCL等单塔模型通过对图像和文本使用单一共享编码器,将集成向前迈进了一步。这种更紧密的融合鼓励了更高效的跨模态通信和推理。虽然还是一个相对较新的方向,但单塔架构有望实现统一的多模态理解。

将VLMs应用于视觉任务

一旦经过预训练,VLM可以通过两种主要方式进行调整:

  • 零样本推理:按原样使用模型。只需将类名嵌入为文本(例如,“斑马的照片”)并将它们与图像嵌入匹配。
  • 线性探测:在冻结特征之上添加线性分类器以实现更快的微调。

它们已经应用于:

  • 图像分类(零样本ImageNet)。
  • 基于文本的检索。
  • Person ReID(使用图像或文本搜索)。
  • 对象检测(通过将文本关联到区域) 。

结论

视觉语言模型正在重新定义计算机视觉的边界。凭借跨任务泛化、通过语言解释图像以及从海量未标记数据中学习的能力,它们为传统监督学习提供了强大的替代方案。

本文由mdnice多平台发布


柏企科技圈
15 声望4 粉丝