资讯动态

多模态智能从视觉语言拼接走向信息涌现:Gestalt团队技术路线与工程实践

发布时间:2026/10/8 9:52:11 来源:尧图企业网站定制
多模态智能这两年从学术圈一路烧到工业界几乎每隔几周就有新模型、新框架、新玩法冒出来。但真正跟一线做多模态的人聊过之后你会发现大家焦虑的点其实高度一致视觉和语言这两套系统到底该怎么合是把图像特征硬塞进语言模型的输入序列里还是从训练目标层面就让它们互相塑造人大高瓴Gestalt团队的工作之所以值得单独拿出来聊就是因为他们没有停留在拼接层面而是一直在追问一个更底层的问题——当视觉和语言真正被放在同一个表征空间里训练时会不会自发地涌现出一些谁都没显式设计过的能力这篇内容就围绕这个核心线索展开把多模态从视觉语言到信息涌现这条技术脉络拆开讲清楚同时补上大量工程落地时才会遇到的细节。不管你是刚接触多模态的学生还是正在做多模态产品落地的工程师都能从中拿到可以直接用的思路和避坑经验。1. 为什么视觉语言这个说法本身就值得警惕1.1 拼接式多模态的隐性代价大多数人第一次接触多模态脑子里浮现的画面就是一个视觉编码器比如ViT把图片变成一串特征向量再通过一个投影层projection layer映射到语言模型的词嵌入空间然后跟文本token拼在一起送进Transformer。这个流程听起来干净利落CLIP、LLaVA、Flamingo基本都走了这条路。但问题在于这种拼接范式隐含了一个很强的假设视觉信息和语言信息可以在某个中间层被对齐而且对齐之后各自保持独立语义不变。实际训练中这个假设经常不成立。我拿一个具体的例子说明当你把一张猫坐在键盘上的图片编码成576个视觉token再和猫坐在键盘上这7个文字token拼在一起时模型在注意力层看到的是一堆异构的向量。视觉token之间的相似度分布和文本token之间的相似度分布完全不在一个量级上。结果就是模型要么过度依赖文本先验语言模型本身太强了要么视觉token被当成噪声忽略掉。这不是调参能解决的问题而是范式本身的局限。Gestalt团队的研究路径恰恰是从这里切入的。他们不太满足于把两个模态接起来能跑就行而是去研究表征空间本身的结构——视觉和语言在联合训练时底层特征是怎么互相影响的哪些信息在融合过程中被保留、被放大、被丢弃。这个视角的转变很关键因为它把问题从怎么接变成了接完之后发生了什么。1.2 信息涌现一个被低估的研究视角涌现这个词在大模型语境里被用得很泛但在多模态场景下它有非常具体的含义。简单说就是当视觉和语言在同一个目标函数下联合优化时模型会学到一些训练数据里没有显式标注、训练目标里也没有显式要求的能力。比如跨模态的指代消解、空间关系推理、甚至一定程度的物理常识推断。我举个实际观察到的例子。在一个视觉问答任务里问模型图中左边的物体比右边的重吗如果模型只是分别处理视觉和文本它很难回答因为重这个概念在图像里没有直接像素对应。但联合训练到一定规模后模型会自发地把左边物体的视觉特征和重这个语言概念在隐空间里建立关联——它可能从训练数据里见过大石头比小气球重这类样本然后把这种关联泛化到了新图片上。这就是一种信息涌现。Gestalt团队的工作之所以有意思是因为他们在尝试系统性地刻画这种涌现的条件和边界。不是碰运气等它出现而是去研究什么样的训练目标、什么样的数据配比、什么样的架构设计更容易催生这种能力。这对工程实践的指导意义非常大——你不需要盲目堆数据而是可以有针对性地设计训练策略。1.3 从模态对齐到表征共生的范式迁移传统多模态研究的核心指标是对齐——图像和文本的嵌入向量在余弦相似度上要接近。但Gestalt团队更关注的是共生两个模态的表征在联合空间中是否互相增强而不是互相妥协。这个区别很微妙但很重要。对齐的思路下你可能会用一个对比损失把图像和文本拉近但拉近的代价可能是丢失了模态特有的细粒度信息。比如一张医学影像它的关键诊断信息可能在某个局部区域但为了和肺部结节这个文本对齐模型可能把整张图压缩成一个粗粒度向量局部细节就丢了。共生的思路则是视觉表征保留自己的空间结构语言表征保留自己的序列结构但两者在高层语义上互相约束、互相补充。这个思路在工程上的体现就是不要过早地把视觉特征池化成一个全局向量。保留patch级别的视觉token让语言模型在注意力层自己去决定关注哪些区域。这也是为什么现在主流的多模态大模型都倾向于用较长的视觉token序列而不是一个CLIP全局特征。2. Gestalt团队技术路线里的几个关键设计选择2.1 视觉编码器的粒度选择为什么patch比全局特征更值得保留在Gestalt团队公开的一些工作里一个很明显的倾向是保留细粒度的视觉表征。这跟早期多模态模型用CLIP全局特征的做法形成了鲜明对比。为什么这个选择重要我拿一个实际场景说明。假设你在做一个电商商品理解系统用户上传一张鞋子的图片问这双鞋的鞋底是什么材质。如果视觉编码器只输出一个全局向量那鞋底区域的纹理信息在池化过程中大概率被平均掉了。但如果保留patch级别的token语言模型在生成回答时可以通过注意力机制聚焦到鞋底对应的那几个patch上从而做出更准确的判断。当然保留细粒度不是没有代价的。视觉token数量一多序列长度就上去了注意力的计算复杂度是平方级的。所以这里有一个工程上的权衡token数量、模型参数量、推理延迟三者之间需要找到一个平衡点。我的经验是对于大多数商品理解场景256到576个视觉token是一个比较舒服的区间。再少细节丢失明显再多推理成本上升但收益递减。2.2 训练目标的组合对比学习、生成式预训练与指令微调的分工Gestalt团队在训练目标的设计上有一个很清晰的层次感。不是把所有损失函数一股脑堆上去而是分阶段、分目标地训练。这个思路值得借鉴。第一阶段通常是对比学习目的是让视觉和语言在粗粒度上建立对应关系。这个阶段的数据量最大但目标最简单——就是把匹配的图像-文本对拉近不匹配的推远。第二阶段是生成式预训练让模型学会根据视觉输入生成连贯的文本描述。这个阶段开始引入更复杂的语言结构。第三阶段是指令微调用高质量的指令数据让模型学会遵循人类的提问方式。这个分阶段策略的好处是每个阶段的目标明确模型不会在早期就被复杂的指令数据带偏。我见过一些团队一上来就用指令数据做多模态训练结果模型在基础的对齐能力上反而不扎实表现为对简单的位置关系问题都回答不好。所以如果你在做多模态模型的训练建议老老实实按阶段来别跳步。2.3 数据配比的隐性影响视觉-语言数据不是越多越好这一点可能是最容易被忽视的。很多人觉得多模态训练就是数据越多越好但实际上视觉-语言数据的配比会显著影响模型的行为。Gestalt团队的一些实验表明如果视觉-语言对的数据占比过高模型可能会过度依赖文本先验在纯视觉任务上表现下降。反过来如果纯文本数据占比过高模型的多模态对齐能力又不够。我的经验是在一个多模态大模型的训练中纯文本数据、图文对数据、纯视觉数据如果有的话的比例大概在5:4:1到6:3:1之间比较稳妥。当然这个比例跟具体任务有关如果是做视觉问答图文对的比例可以适当提高如果是做通用助手纯文本数据不能太少否则语言能力会退化。还有一个细节图文对数据的质量比数量重要得多。网上爬来的alt-text很多是噪声比如IMG_20230101_123456.jpg这种文件名当描述对训练毫无帮助。宁可要10万条高质量的人工标注数据也不要100万条噪声数据。3. 信息涌现的实际表现几个可复现的观察3.1 跨模态指代模型如何学会看到文本里的指代关系跨模态指代是多模态信息涌现最直观的一个表现。给定一张有多个人物的图片和一段文本左边那个穿红衣服的人在做什么模型需要把左边那个穿红衣服的人这个文本描述和图像中的特定区域对应起来。这个能力不是单独训练出来的而是在联合训练中自发形成的。我在实际测试中发现模型对这种指代关系的处理能力跟视觉token的粒度高度相关。如果视觉token太粗模型只能做图里有几个人这种粗粒度判断如果token足够细模型可以精确定位到某个人的某个部位。这也解释了为什么Gestalt团队一直强调细粒度视觉表征的重要性。还有一个有意思的现象模型在处理指代关系时注意力分布会呈现出明显的聚焦模式。也就是说当文本提到红衣服时模型对图像中红色区域的注意力权重会显著上升。这种注意力模式不是人工设计的而是训练过程中自然形成的。你可以通过可视化注意力图来验证这一点这也是调试多模态模型的一个实用手段。3.2 空间推理从左上角有什么到谁在谁的前面空间推理是另一个信息涌现的典型场景。简单的空间问题比如左上角有什么相对容易因为左上角这个位置信息在视觉token的序列顺序里就有体现。但复杂一点的问题比如谁在谁的前面就需要模型理解遮挡关系、深度线索这已经超出了简单的模式匹配。Gestalt团队的工作里提到过一个观察当模型规模达到一定程度后空间推理能力会出现一个明显的跃升。这跟语言模型里的涌现能力现象类似——小模型完全做不对大模型突然就能做对了。这个跃升的临界点跟模型参数量、数据量、训练步数都有关系目前还没有一个精确的公式来预测但经验上参数量在10B以上时空间推理能力会有明显改善。对工程实践的启示是如果你需要模型具备较强的空间推理能力不要指望在小模型上通过调参来实现直接上大模型或者用专门的空间推理数据集做微调更现实。3.3 常识推断视觉信息如何激活语言模型里的隐性知识这个可能是最让人兴奋的一点。语言模型在预训练过程中已经学到了大量的常识知识比如冰是冷的火是热的猫会爬树。当视觉信息输入后这些隐性知识会被激活帮助模型做出更合理的推断。举个例子给模型看一张厨房的照片问这个房间适合做什么。模型会回答做饭因为它识别出了灶台、锅具等视觉元素同时激活了语言模型里关于厨房-做饭的常识关联。这个能力不是显式训练的而是视觉识别和语言常识在联合空间中自然碰撞的结果。我在实际项目中发现这种常识推断能力对提示词的设计很敏感。如果你问得太直接模型可能只做表面匹配如果你给一些引导性的上下文模型的推断会更深入。比如加上这是一个家庭场景这样的前缀模型对厨房功能的描述会更丰富。4. 把多模态信息涌现落到工程里的实操要点4.1 视觉token数量与推理延迟的平衡计算这是一个非常实际的工程问题。假设你用的是标准的Transformer架构注意力计算复杂度是O(n²)其中n是序列长度。如果视觉token是576个文本token平均50个那总序列长度约626注意力矩阵是626×626。如果视觉token增加到1024个总序列长度约1074注意力矩阵变成1074×1074计算量增加了约2.9倍。在实际部署中这个差异非常明显。我做过一个测试在同样的GPU上576个视觉token的模型单次推理约120毫秒1024个视觉token的模型约350毫秒。对于需要实时响应的应用比如对话式助手这个延迟差异是致命的。所以我的建议是先确定你的延迟预算然后反推视觉token的最大数量。如果延迟预算在200毫秒以内视觉token不要超过600个。如果可以做异步处理或者批量推理可以适当放宽。还有一个优化技巧不是所有图片都需要同样多的视觉token。对于内容简单的图片比如纯色背景上的单个物体可以用较少的token对于内容复杂的图片比如街景、人群才需要更多token。你可以训练一个轻量的分类器来动态决定token数量这个在工程上很实用。4.2 多模态数据清洗的几条硬规则数据清洗是多模态训练里最脏最累但最重要的一环。我总结了几条硬规则都是踩过坑之后总结出来的图片分辨率低于224×224的直接丢弃这种图片即使放大也丢失了太多细节训练价值极低。文本描述长度少于5个词的丢弃这种描述信息量太少容易让模型学到短文本对应任意图片的错误关联。图文相关性用CLIP打分过滤低于0.2的丢弃。这个阈值可以根据你的数据分布调整但不要低于0.15。去重图片用感知哈希pHash去重文本用SimHash去重。重复数据会让模型过拟合到特定样本上。敏感内容过滤这个不用多说但要注意不仅过滤图片文本里的敏感词也要过滤。这些规则看起来简单但执行起来工作量很大。我的经验是数据清洗的时间应该占总项目时间的30%到40%。如果你只花10%的时间清洗数据后面模型效果不好时你会花更多时间来回排查。4.3 指令微调阶段的数据构造技巧指令微调是多模态模型从能看懂到能干活的关键一步。Gestalt团队在这方面的经验是指令数据的多样性比数量更重要。不要只构造一种类型的指令要覆盖问答、描述、推理、创作等多种任务形式。我构造指令数据时通常遵循这个模板[系统提示] 你是一个多模态助手可以理解图片内容并回答相关问题。 [用户] image 这张图片里有哪些物体它们之间是什么关系 [助手] 图片中有...关键是它们之间是什么关系这个追问它迫使模型不仅做物体识别还要做关系推理。这种指令数据对提升模型的空间推理能力特别有效。还有一个技巧在指令数据里故意加入一些需要模型说我不知道的样本。比如给一张模糊的图片问一个无法回答的问题正确的回答应该是图片太模糊无法判断。这种负样本能有效降低模型的幻觉率。5. 多模态智能下一步的几个现实方向5.1 从理解到生成扩散模型在多模态里的位置多模态不只是看懂图片还包括生成图片。扩散模型在这方面的作用越来越重要。Gestalt团队的研究虽然偏理解侧但理解能力和生成能力其实是互相促进的。一个能精确理解图像结构的模型在生成时也更容易保持结构一致性。实际工程中我见过的一个有效做法是用多模态理解模型来评估生成模型的质量。比如生成了一张猫在沙发上的图片用理解模型去判断图里有没有猫猫在不在沙发上如果理解模型判断错误说明生成质量有问题。这种理解模型当裁判的思路比传统的FID指标更贴近人类判断。5.2 多模态Agent信息涌现如何支撑复杂任务规划多模态Agent是最近很热的方向它的核心挑战是Agent需要同时处理视觉输入、语言指令、工具调用、环境反馈等多种信息并做出合理的任务规划。这恰恰是信息涌现能力最能发挥价值的地方。举个例子一个多模态Agent需要完成把桌子上的红色杯子拿到厨房这个任务。它需要识别桌子、识别红色杯子、理解拿到厨房这个动作序列、规划路径、处理可能的障碍物。这些子任务涉及视觉识别、语言理解、空间推理、动作规划任何一个单独模块都做不好但联合训练后模型可以端到端地处理。目前这个方向还在早期但Gestalt团队的一些工作已经展示了信息涌现在这类任务中的潜力。我的判断是未来一到两年多模态Agent会从demo走向实际应用而信息涌现能力会是区分好Agent和差Agent的关键指标。5.3 评测体系的缺失我们其实还不知道怎么衡量涌现这是目前最让人头疼的问题。语言模型有 perplexity、有 benchmark但多模态的信息涌现能力怎么衡量现有的多模态benchmark大多测的是基础能力物体识别、简单问答对涌现能力的评测几乎空白。我参与过一些多模态评测集的构建工作最大的感受是涌现能力的评测需要设计模型没见过但人类能回答的问题。比如给一张包含多个物体的图片问一个需要跨物体推理的问题这种问题在训练数据里很少出现但人类可以轻松回答。如果模型也能回答说明它具备了一定的涌现能力。这个方向的评测体系还在建设中但可以肯定的是未来多模态模型的竞争会从基础能力转向涌现能力谁能更好地激发和衡量涌现谁就能占据优势。6. 我在多模态项目里踩过的几个真实坑6.1 视觉编码器冻结 vs 微调的取舍刚开始做多模态项目时我习惯性地冻结视觉编码器只训练投影层和语言模型。理由是视觉编码器已经在ImageNet上预训练好了没必要动。但实际效果并不好模型在细粒度视觉任务上表现很差。后来我尝试解冻视觉编码器的最后几层效果明显改善。原因是ImageNet预训练的视觉特征偏向于物体分类而多模态任务需要更丰富的语义信息比如纹理、材质、空间关系。这些信息在ImageNet的监督信号里体现不足需要通过多模态训练来调整。我的建议是如果你的计算资源允许至少解冻视觉编码器的最后2到4层。如果资源紧张可以用LoRA等参数高效微调方法效果也不错。6.2 多模态训练中的梯度爆炸问题多模态训练比纯语言模型训练更容易出现梯度爆炸。原因在于视觉特征和文本特征的数值分布差异很大联合训练时梯度容易不稳定。我遇到过好几次loss突然变成NaN的情况。解决方案有几个一是用梯度裁剪把梯度范数限制在1.0以内二是用更小的学习率特别是视觉编码器部分的学习率要比语言模型低一个数量级三是在投影层加LayerNorm把视觉特征归一化到和文本特征相近的尺度。这几个措施组合使用后训练稳定性大幅提升。如果你也在做多模态训练建议一开始就把这些防护措施加上不要等出问题了再补。6.3 推理阶段的模态缺失处理实际部署时经常遇到模态缺失的情况用户只发了文字没发图片或者图片加载失败。这时候模型不能崩溃需要有合理的降级策略。我的做法是在训练时就加入一定比例的模态缺失样本让模型学会在只有文本时也能正常回答。具体来说随机把10%到15%的图文对样本的图片去掉只保留文本让模型学习纯文本模式下的行为。这样训练出来的模型在推理时遇到模态缺失会更鲁棒。还有一个细节当图片缺失时不要简单地把视觉token置零而是用一个可学习的缺失token来代替。这样模型能明确知道这里本来应该有图片但没有而不是把零向量误认为是某种视觉特征。多模态智能从视觉语言走到信息涌现本质上是从工程拼接走向科学理解的过程。Gestalt团队的工作给我们的最大启发不是某个具体的技术方案而是一种研究姿态不要满足于能跑通要追问为什么能跑通以及跑通之后还能做什么。这个姿态对做工程的人同样适用——当你不再把多模态当成两个模块的简单叠加而是当成一个需要精心设计的联合系统时很多之前觉得无解的问题会突然有了新的思路。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑