首页 / 资讯中心 / 文章详情

VLM十年演进:从特征拼接走向统一架构,多模态AI的底层逻辑

VLM十年演进:从特征拼接走向统一架构,多模态AI的底层逻辑 ★ FEATURED ARTICLE
聊VLM之前先说说我自己的经历。十年前刚开始做多模态相关的工作时VLM视觉语言模型还是一个非常小众的方向印象里最主流的做法就是拿一个CNN提图像特征再扔给一个LSTM生成句子。放到今天看那个方案粗糙得让人脸红但在当时已经是团队里公认最先进的路线。这十年来我眼看着VLM从实验室的玩具变成了生产系统里不可或缺的组件从只能回答图里有什么进化到能读图表、写报告、帮你理解一段视频。今天这篇东西我想把这十年的演进脉络完整复盘一遍每一个关键转折点背后到底是什么力量在推动我们这些一线从业者又能从中看到哪些可以参考的经验和机会。这个复盘适合三类人看正在做多模态算法和应用开发的工程师想转行AI方向的产品或研发同学以及好奇VLM为什么突然变聪明的普通读者。我会把重点放在为什么这么做上而不是罗列一堆模型名字——因为模型会过时思路不会。1. 复盘之前先把这十年的底层脉络画出来1.1 我理解的VLM不是看图说话这么简单很多人一提VLM第一反应是给一张图让模型描述内容。这个理解不能说错但太窄了。我习惯把VLM定义成能够同时接收图像或视频和文本两种模态的输入在两种模态之间做语义对齐、推理和生成的模型。图像描述只是它最基础的输出形式除此之外图文检索、视觉问答、视觉常识推理、区域级理解、多轮图文对话甚至从图像直接生成操作指令都属于VLM的能力范畴。为什么VLM重要因为视觉是人类感知世界最主要的信息通道文本是人类表达和推理最主要的载体。把这两者打通模型才真正有能力处理真实世界的任务。你让模型读一张X光片、看一段监控视频、分析一份财报截图本质都是在做视觉理解语言表达的联动。整个AI应用的大盘里VLM就是感知层和认知层之间的那座桥。所以复盘的第一个结论应该是VLM不是一个功能而是一类底座能力。这十年里它的演进本质上就是这座桥从独木桥变成跨海大桥的过程。1.2 十年看下来主线只有一条从拼接走向统一如果让我用一个词概括VLM十年最大的变化那就是统一。具体来说前五年的主流做法是搭积木视觉用一个独立的CNN网络处理文本用另一个独立的RNN或Transformer处理最后在某个中间层把两者的特征拼起来。这种方式的问题在于两个模态各自为政融合层只是一个汇合点而不是真正的共同语言。后五年的演进方向是把视觉和文本纳入同一个架构体系图像被切分成patch编码成token序列和文本token混在一起共同经过同一个Transformer主干做自注意力计算。这个时候模型不再区分视觉分支和文本分支而是让图像和文本在同一个语义空间里互相检索、互相补充。这条拼接→融合→统一的主线决定了所有具体技术方案的走向。我建议读者学习VLM时也沿着这条主线走而不是追着每个月冒出来的新模型跑——模型是叶子主干是这条归一化的趋势。1.3 被淘汰的技术不等于没价值复盘十年我看到一个很普遍的心态今天的技术说明里几乎没人再提CNN提取特征、LSTM生成句子、区域注意力加权这些老方案了。但我恰恰认为回头看懂被淘汰的技术特别有价值。原因是很多新方案本质上是在解决老方案暴露出来的问题。比如为什么现在要统一成Transformer token答案部分是因为当年CNN输出的固定长度向量信息密度不够区域级特征又缺乏长程依赖建模为什么对比学习效果比纯分类任务好部分是因为当时分类任务对视觉特征的要求和图文匹配任务不一致。你只有踩过一次特征拼接的坑才能理解统一架构带来的便利到底在哪里。我甚至建议新人抽出半天时间手动实现一个最简单的CNNLSTM图像描述模型跑通一次推理。这个过程会让你对后面所有VLM技术产生原来如此的顿悟这对理解深度学习中的信息瓶颈和特征对齐问题是很有帮助的。2. 第一阶段特征拼接时代VLM最初的样子约2014—20182.1 起步CNN负责看RNN负责说2014年前后想做VLM的团队基本都在做同一件事用CNN提取图像特征用RNN具体是LSTM生成文本。图像端的标准做法是这样的先拿一个在大规模图像分类任务上预训练好的CNN网络把一张图缩放成固定尺寸比如224×224前向传播一遍取出倒数第二层的特征向量。这个向量一般是2048维或4096维大概可以理解成这张图的语义压缩包。然后这个向量被送到LSTM作为初始状态的一部分或者每一步都拼接进去生成一个个词。训练目标就是最大化每个词的条件概率也就是标准的交叉熵损失。这里有个很值得回味的细节当时的图像描述模型几乎直接套用了机器翻译的编码器-解码器结构唯一的区别只是把源语言文本换成了图像特征。这个设计到今天回头看非常粗暴——一张图中可能有几十个物体、复杂的空间关系、被遮挡的目标但最终全部被压成一个固定长度的向量。信息损失几乎是不可逆的。我当时在实际项目中踩过的坑用预训练CNN提特征时如果只取最后那个语义向量模型容易死记硬背常见组合。比如训练集里经常出现餐桌上有食物模型之后看到一张类似的餐桌图宁可说餐桌上有食物也不说餐桌上有花瓶。原因很简单高层语义向量把很多细节平均掉了模型根本没有看到花瓶它只是在猜最可能的文本。2.2 注意力机制第一波范式冲击针对信息瓶颈研究者开始尝试看哪里的问题生成猫这个词的时候应该多关注图里猫的区域生成垫子的时候应该多关注垫子的区域。这就是注意力机制的出发点。早期的方案叫软注意力把图像划分成网格区域每个区域提取一个特征向量。解码时根据当前生成的词状态计算每个区域和当前词的兼容性权重然后加权求和作为视觉上下文。本质上就是一个动态的信息选择器。我在一个老项目里复现过这种注意力机制效果提升非常明显尤其对于复杂场景的描述模型句式明显更合理了。而且有个有趣的副产品把注意力权重可视化之后你能清楚看到模型在生成某类词时会盯住图像的哪个区域。在调试的时候这几乎是最早的可解释性工具。但注意力机制也给训练带来了一些麻烦要额外学习区域特征的排序和选择收敛变慢如果区域划分太粗糙注意力会在错误的位置上产生高权重。这些问题的根源在于区域之间缺乏长程依赖——这恰恰是后来Transformer中自注意力要解决的问题。2.3 那个年代的三座大山数据、算力、评估整个第一阶段VLM发展始终被三个因素卡住数据、算力、评估。数据方面当时可用的图文配对数据规模大概在十万到百万量级每张图配几句人工标注的描述。这个量级训练的模型一旦加大容量过拟合几乎是必然的。算力方面当时训练一个中等规模的图像描述模型单卡要跑好几天为了求快普遍做法是冻结CNN只训练LSTM虽然省时间但图像特征和文本任务之间完全没有联合优化性能天花板很低。评估的问题更隐蔽。当年最主流的自动指标BLEU和CIDEr本质都是基于n-gram的词汇重叠度。模型如果生成了一句语义完全正确但用词不同的句子得分会很难看。我印象很深的一个案例模型正确描述一个穿红衣服的女孩在踢足球但因为训练集里从没见过踢足球这个动宾搭配BLEU得分比一句一个女孩在玩球的错误描述低得多。指标和真实语义之间的鸿沟从这个年代就埋下了。这一个阶段给行业留下的最大资产其实是两类数据集视觉问答和图像描述。它们直到今天还在被当成评估基准使用只是题目难度早已不可同日而语。3. 第二阶段预训练范式确立VLM开始真正读懂图文约2018—20213.1 对比学习图文对齐的核心突破2018年前后自然语言处理领域预训练微调范式取得了很大成功。研究者很自然地想到图像和文本之间是不是也能用海量弱监督数据做预训练当时最核心的思路是对比学习。这个概念可以这样理解把匹配的图文对当成正样本它们应该在向量空间里距离更近随机采样得到的不匹配图文对是负样本应当被推远。模型要学的就是区分这两类样本。这个过程不需要人工标注类别只需要知道这张图和这句话是不是对应的。实操层面负样本的选择非常关键。刚开始大家用完全无关的图文对做负样本模型学得很快但能力也很快触顶。后来发现难负样本才能逼出更强的对齐能力比如同一个物体的不同视角、同一种场景下的不同描述方式。我在项目里试过用图像之间相似但文本不同的样本作为负样本Loss下降速度显著变慢但最终学到特征的判别力确实更强了。对比学习带来的范式升级在于图像编码器从此可以完全摆脱人工标注的分类标签只需要图文对就能学到语义丰富的视觉表征。这为后续所有多模态预训练铺好了路。3.2 数据规模与弱监督量变引起质变对比学习大规模成功的前提是数据。互联网上有海量图片周围文本的天然配对虽然噪声大但胜在规模。自动爬取的图文对规模从百万量级一路涨到数亿、十几亿量级VLM的预训练第一次有了吃饱的条件。但这个吃饱不是白来的。数据清洗是整个流程中性价比最高也最容易被忽视的环节。我简单梳理了一下当年在实践中沉淀下来的清洗管线语言过滤保留语义完整、语法通顺的文本去掉乱码、太短、纯标签式的噪声。文本去重去掉重复或高度模板化的句子比如这是一张图片这种信息量为零的文本。图像过滤去除低分辨率图、卡通截图、含有大量文字的图这类图对图文对齐几乎没有帮助。匹配度过滤对图文相关性做一次预判把明显不匹配的样本筛掉。整套清洗流程跑完最终保留的数据往往只有原始量级的四成左右但训练效率和最终效果会好很多。弱监督数据的噪音在量变面前反而成为了一种正则化手段让模型不容易死记硬背小数据集模式。当然弱监督的问题也很明显互联网图文对大量是弱相关的。比如一篇食谱文章配图是一张精美的摆盘照片图和文有关联但关系非常松散。模型在这种数据上学到的是大致匹配而不是精确对应。这个问题后来在统一架构和指令微调阶段得到部分缓解但直到今天VLM产生的很多语义歧义根源仍然在被训练数据的弱相关性所影响。3.3 图像端Transformer化与生成式预训练第二阶段还有一个重要的技术铺垫Vision Transformer视觉Transformer的出现。图像被切成固定大小的patch展平成序列直接塞进标准的Transformer编码器。这个变化的意义不在于图像也能用注意力了而在于图像和文本终于可以使用同一套架构语言来描述。与此同时预训练目标从判别式延伸到生成式。早期的对比学习本质是判别判断图文是否匹配用一个相似度分数作为输出。但生成式预训练则要求模型真正生成文本或图像内容——给定图像生成描述、给定文本生成配图或者双向都做。生成式目标倒逼模型不仅要知道对不对还要知道怎么说。在实际训练中很多团队会把多种损失函数组合在一起对比损失负责全局语义对齐生成损失负责细粒度内容还原再加上掩码重建损失负责结构理解。这几类目标并不冲突反而互相补充。我见过一个比较典型的失败案例只做对比损失不做生成损失模型检索精度很高但让它生成描述时句子逻辑通顺却信息量极低只会说这是一张户外风景照这种废话。这说明对齐和生成是两个能力维度缺一不可。这一阶段结束时VLM已经在图文检索、零样本分类、图像描述等任务上大幅刷新了记录但架构上仍然是视觉编码器文本编码器融合模块的组合体。融合模块承担着跨模态汇合的功能却往往成为信息瓶颈。所有人都意识到下一个突破口就在这里。4. 第三阶段统一Transformer与指令时代VLM变成多模态大脑约2021—20244.1 统一架构让大语言模型直接看图像第三阶段标志性的变化是抛弃了独立的融合模块把视觉信号直接变成token送入大语言模型的主干网络。图像的使命就是被翻译成大语言模型能理解的形式。工程上最常见的实现方式是先用一个视觉编码器把图像转成一组特征再通过一个可学习的投影层有时也叫适配器映射到大语言模型的文本token空间。之后这些视觉token和文本token拼接在一起送入同一个Transformer解码器统一做自注意力计算。这里有一个极其关键、但新手很容易忽视的训练策略初始阶段要冻结大语言模型只训练视觉编码器和投影层让视觉信号先学会说大语言模型的母语。等Loss明显下降、视觉信号能稳定对齐之后再解冻全参数微调。如果一开始就全参数微调视觉特征和文本特征大概率对不齐训练会剧烈震荡Loss怎么都降不下去。我实测下来的经验是这个先对齐、后解冻的顺序还在超参数上直接影响最终的推理质量。比如投影层的中间维度设得太大训练时会有一段时间Loss降得很慢但最终效果并不比中等维度好设得太小图像细节信息会早早丢失。我一般倾向于先按中等维度跑通一次全流程再根据可视化结果调整而不做无脑的暴力扫描。4.2 指令微调与人类反馈从听懂题到听指令预训练阶段的模型本质上是填空选手和预测选手它并不懂得用户想问什么。指令微调解决了这个难题构造大量指令-回答对让模型学会根据用户的具体要求组织回答。多模态指令微调比纯文本要麻烦不少。首先是数据构造成本高需要图像问题标准答案三件套多轮对话场景里还要保证问答的上下文连续性。其次是主观题答案难以标准化两个不错的标注者给出的合理答案可能完全不同模型会学到平均化的答案看起来稳妥但缺少亮点。我还有一个踩过的坑为了保证模型在所有指令上都表现得体团队曾一股脑堆了大量指令数据结果模型变得特别听话但通用能力明显下降连简单常识都经常答错。后来调整了通用指令数据和多模态指令数据的配比效果才恢复。我的经验是多模态指令数据与通用指令数据的比例应当根据任务场景做小范围消融而不是盲目求大。在指令微调之上引入人类偏好排序是另一个重要变量。通过让模型学习哪种回答更受人类欢迎它可以学会在真实性、安全性、语气上和人类期望对齐。这个环节让我觉得最有用的是让模型学会不知道就说不知道——这比强行编造一段错误答案体验好太多。4.3 能力涌现与幻觉问题的两极统一架构指令微调带来的最亮眼变化是能力涌现模型能完成训练时从未直接见过的图文组合任务。比如训练数据里只有图像描述用户问图中判断这个人的情绪状态这种进阶理解问题模型也能接得住。这种涌现能力从哪来我个人理解是三个因素叠加预训练阶段学到的海量先验知识、统一架构带来的跨模态推理链路、指令微调赋予的任务泛化能力。这三点缺一不可。特别是统一架构它让模型的注意力可以在图像token和文本token之间自由流动这比任何显式的跨模态融合模块都灵活。但能力涌现的背面就是幻觉问题被急速放大。模型会在没有对应视觉证据的情况下生成看起来非常有道理的错误描述。我之前调试时遇到过一张完全没有自行车的图模型居然自信地说一个男人骑着自行车穿过街道。排查后发现图片里有一件反光的衣服模型基于文本先验把反光物脑补成了自行车。幻觉的根源在于大语言模型的文本先验太强而图像信号相对弱。解码时模型倾向于顺着流畅的文本路径走而不是贴着图像事实走。缓解手段里我用的最有效的是数据层面在训练时加入无图像负样本和图像-文本不和谐样本让模型在证据不足时选择诚实拒答。工程层面也可以在解码时提高视觉attention的权重或者对视觉敏感问题做专门微调。这些手段单独用都有点治标不治本组合起来效果才会比较稳定。5. 第四阶段系统化落地与新一轮评估从能跑demo到能上线近年5.1 评估体系的重构不再只盯一个分数十年前我们盯BLEU、CIDEr后来盯对比学习的zero-shot准确率再到后来大家慢慢意识到单一指标和真实使用体验严重脱节。我经历过的评估体系变化可以总结为三点。第一从单一分数走向多维评价准确性、忠实度是否忠于图像事实、指令跟随率、格式规范度、拒答率都要分开测。第二从静态基准走向动态对抗评估集要保持更新不断加入模型容易出错的边界样本否则模型会有过拟合到公开基准的风险。第三从自动化为主走向人机协同自动指标用于大规模批量筛选人工评估用于最终把关。有一个坑我想特别提醒模型在自动指标上表现好不代表在真实使用中可靠。我曾经上线过一个在公开基准上分数很高的模型结果人工评估时发现一个严重问题——它擅长说正确的话却非常不擅长在证据不足时承认不确定。这种过度自信只有在错误分析环节才能暴露出来自动指标是完全无法捕获的。5.2 真实场景中的VLM我看到的落地案例近几年VLM的落地场景我亲眼见过的可以分几类。一类是文档理解。表格、票据、合同、说明书这类半结构化文档模型可以直接从截图或扫描件里抽取关键信息。这类场景最大的优化点在于版面先验模型得先理解文档的整体结构再抽取具体内容。比如表格里一个数字不结合表头去看单独拿出来是没有任何意义的。我们在实际项目中做过一个约束让模型先生成版面结构摘要再基于摘要做字段抽取准确率提升非常明显。另一类是医疗影像辅助。影像报告生成、病灶区域描述这类场景对忠实度的要求极其严格完全不允许幻觉。工程上我们采用过限制解码空间的做法模型只能从预先检测出的候选病灶列表里选择描述词而不是自由发挥。这个约束牺牲了一些回答的丰富度但换来了几乎为零的幻觉率在专业场景中价值非常高。还有自动驾驶与车载交互、无障碍辅助等场景。这些场景共同的特点不是模型能力越强越好用而是要把模型放在一个受约束的流程里用工程手段兜住模型的不确定性。一个VLM系统落地至少需要配套的置信度判断、拒答机制、异常回退策略这在生产环境中和模型本身同等重要。5.3 部署与效率VLM不是越大越好VLM落地的现实考验是显存占用大、推理延迟高、服务成本贵。不做优化一个几十B参数的多模态模型商用场景很难承受正常并发。我技术选型时优先考虑的优化手段有这几个。量化排在第一位把权重从高精度压到低精度显存和延迟都能大幅下降。但多模态模型和纯文本模型有个区别——视觉分支往往比语言分支对量化更敏感。我做过分组量化对比把视觉编码器压到8位时效果损失基本可控再往下压就明显掉点。语言主干反而能承受更激进的4位量化。所以合理方案是视觉8位语言4位的混合量化。蒸馏也是一个方向用大模型输出作为小模型的监督信号。这里有个技巧蒸馏时一定要让大模型生成带推理过程的答案而不是只给结论。结论正确但过程错误的时候单纯蒸馏会让小模型学到错误的解题路径反而有害。我踩过这个坑后都会在蒸馏数据里混入不同难度的样本并强制大模型输出中间推理步骤。最后不要忘了服务层面的优化图像特征可以缓存重复出现的图不必重新编码多模态模型对batch的延迟波动更敏感需要仔细调批处理大小。很多团队拿到一个开源VLM就急着微调我反而建议先做两件事跑清楚量化后效果衰减是否可控做充分的提示词工程。这两件事成本低收益往往比直接微调更大。6. 未来五年三个值得押注的方向和一个必须警惕的陷阱6.1 从看懂到会做VLM走向具身智能过去十年VLM核心解决的是理解问题。未来十年我认为核心会转向行动——让模型从描述场景变成干预场景。具身智能是目前我看好的一个方向。在真实机器人场景里VLM承担的职责是感知推理大脑接收摄像头画面和任务指令理解环境状态生成操作序列再由底层的控制模块去执行。这里VLM的价值在于泛化性真实世界的场景太多样不可能像工业场景那样为每个环境写死规则只有能跨场景理解的模型才扛得住。技术难点也很清晰多模态理解必须和实时控制闭环推理延迟要从秒级压到毫秒级训练数据也不能只有图文对而需要大量感知-动作轨迹数据。这类数据目前还很稀缺谁能先把数据管线做出来谁就掌握了主动权。6.2 长上下文视频理解从看图到看懂世界当前大多数VLM处理的都是静态图像或短片段。视频理解要处理的是时间维度动作、因果关系、事件演进。这个方向一旦成熟应用价值会非常巨大——视频监控、内容审核、影视检索、教育辅助都会受益。但工程挑战也一样巨大视频token数量远大于图像。一部2小时的电影按现有切帧方式会产生几十万token远超大多数模型的有效上下文长度。如何做关键帧筛选、时间注意力压缩、长期记忆管理都是开放问题。我认为从业者现在就可以开始积累相关经验多研究一下视频摘要关键帧选择事件时序建模这类子方向。未来两三年这些技能会变得非常有价值。6.3 模型架构的新变量可验证推理与多模态强化学习大语言模型领域的可验证推理思路正在渗透到多模态领域。核心思想是让模型不只生成答案而是生成可以被外部工具验证的中间步骤。多模态场景里这个工具可以是目标检测器、OCR引擎、代码解释器或图像检索系统。模型先生成一个候选答案和它的推理依据然后用工具去验证验证不通过就重新生成。这种生成-验证-再生成的闭环工程上能有效压制幻觉。我曾在文档理解场景里用过类似方法让模型先定位表格区域再抽取内容准确率提升非常明显。多模态强化学习同样值得关注直接用任务成功率这类奖励信号优化模型而不是只靠语言建模损失。视觉定位、目标操作、工具调用这类任务已经能看到初步效果。这种训练方式对数据要求更高但上限也更值得期待。6.4 给从业者的一句实在话不要被benchmark绑架我早年刚入行的时候相信分数即智能后来慢慢发现评估基准本身也有严重的数据污染和题目偏向问题。一个模型在公开基准上分数高绝不等于它在真实场景里可靠。我给团队立过一条规矩任何候选模型都必须经过自建评测集的考验才能真正评估。自建评测集至少要覆盖三类样本真实业务数据、人为构造的边界样本模糊、遮挡、文字干扰、颠倒等、以及纯粹无解样本答案在图里根本不存在。第三类样本专门用来测幻觉率这是我判断模型能否上线最看重的指标之一。公开benchmark的价值在于横向比较和趋势判断但真正决定一个模型能否在业务里产生价值的永远是它在你自己的数据分布上的表现。这个原则十年里帮我避开了很多榜单王者、实战拉胯的坑。这十年我最大的感受可以用一句话说清楚VLM的每一次跃迁都不是单点技术的灵光一现而是数据规模架构创新算力红利三者共振的结果。早期做图像描述时我们困于数据量太小中期做对比学习时我们困于负样本难找今天做统一架构时我们困于幻觉难消。每个阶段的难题最终都是随着基础设施的成熟而被逐步化解的。最后再分享一个我个人的方法论跟踪VLM演进别只盯着模型排行要看训练范式的代际更替。排行变化只是表象范式变化才是本质。从特征拼接、到预训练对齐、到统一架构、再到未来的可验证推理每一次范式更替都意味着能力边界的一次重组。如果你正处在入行阶段我真心建议你从十年前的特征拼接时代开始手写一个最简单的图像描述模型再逐步升级到预训练、指令微调。亲手体会一次拼接的笨拙和统一的优雅远比看十篇综述更有用。这十年的路踩过的坑和积累的经验都藏在一个亲手跑通的项目代码里。
阅读完成 · 觉得有帮助?
咨询建站