计算机视觉-17:多模态基础模型
传统视觉模型往往围绕一个固定标签空间和单一任务训练,迁移到新的类别、数据集或输出形式时需要重新收集标注并微调。基础模型以大规模预训练为起点,学习可被多种下游任务复用的表示;课件强调,这类模型通常具有较大的参数规模和训练数据,并依靠自监督或弱监督目标获得跨任务的泛化能力。对于视觉,图文对、图像区域、图像与交互指令都可以成为监督信号。预训练后,模型可通过线性探测、微调、零样本提示或少样本上下文示例适配任务。
“基础”并不意味着模型无需边界条件。它需要在训练分布之外保持足够通用的概念和组合能力,也需要明确输入、输出与评价方式。本讲的推进顺序也对应能力接口的逐步扩展:图文对比学习先解决“图像和文字能否在同一空间比较”,视觉语言模型进一步解决“能否基于图像生成开放式回答”,可提示分割与模型串联再把语言概念落实到像素和可执行工具上。
图文对齐
CLIP 的训练数据是一批图像及其网页 alt-text。图像编码器把第 张图像映射为向量 ,文本编码器把与其配对的文本映射为 ;一个训练批中的正确图文对是正样本,其他配对是负样本。以图像检索文本为例,课件给出的对比目标为
再加入从文本检索图像的对称项:
其中 是批量大小, 控制 Softmax 对相似度差异的敏感程度,最终损失通常取两个方向的平均。对固定图像而言,分母把批内所有文本当作候选类别,交叉熵迫使正确文本在这些候选中胜出;反向项又防止多个图像都挤向同一段通用描述。 较小时,模型更重罚最容易混淆的近邻,但也会放大噪声配对的影响。图像和语言由此落入同一嵌入空间,模型输出相似度而非固定类别概率;批内负样本的数量和多样性决定模型实际学会了哪些边界,若细粒度概念从未与近似概念同批竞争,它就没有理由把二者分开。

零样本分类正是这一嵌入空间的直接用法。将类别名写成 “A photo of a [category]” 等文字提示,类别就从训练时固定的分类器权重变成了运行时提供的文本原型;待分类图像与所有原型做内积,分数最高者即为预测类别。自然语言模板比孤立类别名更接近网页描述的句子形态,也能补充 “crane” 这类多义词所缺少的语境;对多个模板向量求平均相当于减少某一种措辞造成的偶然偏差。类别集合在推理时才给出,因此模型能处理开放词表,但新类别是否可分仍取决于预训练数据是否给它形成了可靠语义方向。
CLIP 的可扩展性来自点积计算:训练时可在一个批中构造大量配对关系,推理时也能对海量图像或文本建立向量索引。课件用其在 4 亿图文对上训练的结果说明,弱标注的规模可带来很强的迁移性,并能覆盖照片、素描和图形图像等不同视觉域。它仍存在几个关键限制。首先,批大小并不能无限解决细粒度和组合关系问题;“马在吃草”与“草在吃马”中的词相同,句法关系却不同。硬负样本微调可专门加入这类对比,但相似样本也可能在描述上有歧义。其次,整图 caption 通常只说明最显眼的内容,不能告诉模型每个局部的位置和语义,区域 caption 与边界框坐标能提供更密集的监督。最后,任意大规模网络数据集都不可能涵盖全部概念、属性和关系,开放词表不等同于没有知识缺口。
CoCa 在对比学习之外加入了文字生成目标。它使用图像编码器和文本解码器:解码器前半部分形成单模态文本表示,用于与图像表示做对比;后半部分通过跨注意力读取图像特征,在已有词的条件下自回归预测 caption 的下一个 token。这样,同一模型一端学习图文检索和零样本识别,另一端学习从图像生成文字。对比损失要求全局语义一致,caption 损失则迫使视觉特征支持逐词生成;二者互补,也让模型的输出从单一相似度扩展为可读的语言序列。
它的联合目标可概括为
两个权重控制检索表征与生成能力的平衡。只做对比学习时,一张“红色汽车停在树旁”的图像只需整体接近这句话,模型没有压力保存每个词对应的细节;caption 目标要求逐词预测,迫使视觉表示支持颜色、对象和关系的展开。反过来,对比项又防止解码器只凭语言共现生成一段通顺的套话。联合训练因而同时保留全局可检索性和细粒度生成能力,代价是两种目标可能竞争模型容量,权重与训练文本质量会改变最终侧重。
视觉语言模型
大语言模型的基本训练方式是自回归预测下一个 token。它擅长在同一生成接口下完成问答、推理、摘要等文本任务,因此视觉语言模型的核心问题变成:怎样把图像变成语言模型可读取的条件信息,同时避免从零训练一个巨大的多模态网络。
LLaVA 采用“预训练视觉编码器、连接层、语言解码器”的简洁结构。图像先经 CLIP 编码器得到 patch 特征;最终 CLS token 已把整图压成单个向量,适合检索却丢失许多空间细节,倒数层的 patch token 因而更适合问答。线性投影层不负责重新学习视觉,只把这些特征旋转、缩放到语言模型词向量所在的维度,使语言模型能够把它们当作一串条件 token。训练先冻结两个大模型,只学这座低成本“接口”,避免尚未对齐的视觉梯度破坏原有能力;完成基本对齐后,再用图像、指令和目标回答联合微调,让模型学会何时引用图像以及以何种语言形式回答。这样的复用大幅降低训练门槛,能力上限也会受视觉编码器遗漏的信息和连接层容量约束。
若视觉 token 为 、用户指令为 、回答为 ,指令微调的生成损失通常只作用在回答 token 上,因为图像和用户问题是已知条件,模型真正需要学习的是在这些条件下如何继续生成:
逐 token 似然能直接复用语言模型训练方法,却只奖励“参考答案的文字概率高”,不会显式检查每个断言是否有像素依据。图像分辨率越高,patch token 越多,视觉细节和上下文成本之间的矛盾越明显;当视觉证据弱、训练答案有偏或语言先验过强时,模型便可能依靠常见句式补全出流畅但缺少图像依据的答案。

这种设计复用了两个强大的单模态模型,却也暴露了融合位置的选择。仅把视觉特征一次性送入语言模型,可能使长文本生成逐渐忽略图像细节;图像 token 数目也会随分辨率增长,直接送入大语言模型成本很高。
Flamingo 的策略是保留预训练视觉编码器和语言模型,只学习连接两者的模块。图像数量、分辨率和视频帧数会让视觉 token 数量剧烈变化,直接全部塞入语言上下文会使注意力成本失控;Perceiver Resampler 因而用固定数量的可学习查询,从任意长度的视觉特征中提炼固定数量潜变量。随后,在冻结语言模型的若干层之间插入交叉注意力块,让正在生成的语言 token 按当前语境主动查询相关视觉内容,而非只在输入开头被动接收一次图像。新通路带有从小影响开始学习的门控,防止随机初始化的视觉信号立即扰乱成熟的语言网络。固定预算让多图和视频可扩展,却可能把小目标或密集文字压缩掉。
Flamingo 的训练样本可以是任意交错的图像、视频和文字序列。特殊标记 <image> 与 <eos> 指出新图像和文本段的边界;掩码交叉注意力保证某个文本位置只能访问其前面最近出现的图像,维持自回归生成的因果方向。它由此能够把少量“图像—问题—回答”示例与新的测试样例放在同一上下文中,以 in-context learning 的方式完成视觉问答、描述和选择题。与 LLaVA 相比,Flamingo 将视觉信息多次注入语言层,并明确支持交错多图和视频;代价是结构更复杂,固定数目的视觉潜变量也可能压缩掉小目标或密集细节。

Molmo 延续视觉语言模型的生成接口,强调高质量多模态数据和可落到像素上的推理。课件将其训练数据与规模更大的普通图文对作比较:图文数量重要,但描述质量、对象覆盖和空间指向同样决定模型是否真正读懂图像。其数据收集流程包含面向图像的提问、对图中对象、数量、文字、位置、细节、背景和风格的密集描述,以及让标注者口述图像内容后以语音识别转写。这些监督比短 alt-text 更接近视觉问答和细粒度说明。
模型可输出归一化坐标形式的指向结果,例如 <point x=... y=...>,把“数到的对象”或“回答所依据的位置”显式绑定到图像区域。这样的输出将语言答案与视觉证据联系起来,也便于把模型与其他工具串联。课件展示了 Molmo 与 SAM 2 的组合:语言模型提出或定位目标,分割模型据此取得像素级掩码;同一思路还可服务于导航和操作中的目标引用。坐标本身并不能保证几何理解,仍需依赖视觉编码器、数据质量和下游执行模块共同校验。
提示与串联
SAM 将分割重新表述为可提示任务。传统语义分割头把“有哪些类别”固化在训练参数中,遇到新对象便要重新训练;SAM 只学习图像中可能的对象边界,再由点、框或已有掩码在推理时指定当前要取哪一个。图像编码器负责一次性理解整图,提示编码器把用户意图变成可比较的向量,轻量解码器才将两者结合成掩码。昂贵图像特征可以预先计算,交互时改变点或框只重跑小模块,因此适合反复纠正;它获得的是开放对象接口,不是开放语义知识,提示仍需来自人、检测器或视觉语言模型。
这里的提示是几何点、边界框或粗掩码,并非自然语言。SAM 预测目标范围而不负责输出语义类别;若需要“分出杯子”这样的语言条件,通常还要由检测器或视觉语言模型先把概念转换成点或框。

同一个点可能对应一个局部部件、一个完整物体或多个相邻物体,正确掩码存在天然歧义。SAM 因而针对一个提示生成多个候选掩码;训练时只对最匹配真值的候选计算掩码损失,同时学习每个候选的质量或置信度。多候选输出把“提示信息不足”的问题暴露给接口,而不是强迫模型武断地只给出一个边界。大规模、多类别掩码训练使其能在未见分布上进行零样本迁移,但提示质量、目标尺度、遮挡和领域差异仍会影响结果。
基础模型也可以通过语言模型进行串联。CuPL 先让语言模型为类别生成自然语言描述,再将这些描述交给 CLIP 构造更丰富的零样本分类提示。Visual Programming 则让语言模型生成一个小程序,按问题调用现有的视觉问答、检测或图像处理模块,并根据中间结果继续判断。其价值在于把已有模型的专长组合为多步流程;可靠性同时受制于每个工具的能力、接口格式和中间判断是否正确。




