← 返回 PaperDaily
视觉与图像
Apple Research最新论文:3步从图像集合悟出概念
这篇论文最有意思的地方,不是又造了一个更会“听话”的模型,而是把问题反过来:模型能不能从几张示例图里自己悟出共同概念,再拿去指导生成?Apple Research这次盯上的,就是视觉模型最容易翻车、但也最像人类学习的那一口气。
龙哥读论文
发布于 2026-08-19 00:20:04
阅读 3
查看原文
原论文信息如下:
VLM的软肋:看不懂视觉示例?
大模型现在最会干的事之一,是“听话”。一句自然语言指令,图像生成模型立刻开工,改风格、换背景、补细节,动作麻利得像个训练有素的实习生。可一旦指令不写字,改成几张示例图来暗示意思,很多视觉语言模型就开始装糊涂:要么盯着查询图里的某个显眼物体不放,要么干脆复制输入图,像是把“理解任务”误读成了“照着抄作业”。
这篇来自 Apple Research 的新论文,盯上的就是这个很不体面的空白:模型能不能像人一样,从一小组图像示例里自己悟出“共同概念”,再把这个概念从查询图里提取出来,用于生成新图?论文把这个问题正式定义成 VICIS ,全称是 Visual Concept Inference from Sets ,中文可以理解为“从图像集合中推断视觉概念”。
先看论文给出的任务直觉。左边是一组上下文图像,这些图像共享某个概念,但这个概念并不会被文字写出来;右边给一张查询图,模型要做的不是“总结这组图”,而是把上下文里共享的概念和查询图里的具体实例对齐,然后生成既符合上下文概念、又和查询图一致的新图。说人话就是:不是看图猜大概,而是要先猜“大家共同在讲什么”,再从新图里把这个“什么”抽出来。这个任务听起来简单,真做起来却很容易翻车,因为模型特别容易被查询图里最显眼的东西带跑偏。
这事的难点其实很像人类做类比推理:几张图里反复出现的是“颜色”“材质”“物种”还是“形状”,必须先从集合里找共同结构,再忽略无关变化。视觉模型现在的问题,不是不会生成图,而是不会像人一样把“示例”当成一种非语言提示。论文把这个能力拆成一个可测的任务,算是把“模型到底会不会看图悟题”这件事,硬生生拉到了实验台上。更具体地说,VICIS任务要求模型具备三个核心能力:第一,从少量样本中归纳出共享的视觉属性;第二,将这个属性从查询图中分离出来,忽略其他无关信息;第三,基于这个分离出的属性生成全新的、多样化的图像。这三个能力环环相扣,任何一个环节掉链子,整个任务就会失败。
VICIS:教你从图像集合中“发现”共享概念
VICIS 不是普通的图像编辑,也不是单纯的图像检索。它更像一个“视觉版的举一反三”:给模型一组示例图,让它自己归纳出这组图共同在表达什么,再把这个共同概念迁移到新图上。论文特意强调,任务里不能只给上下文集合,否则模型只要照着上下文再画一张就行,那就成了“总结图片”,不是“推断概念”。所以还要给一张查询图,逼模型把上下文概念和查询实例对齐。
这个设计很关键。上下文集合负责告诉模型“关注什么”,查询图负责告诉模型“这个概念在具体样本里长什么样”,最终输出则必须同时满足这两件事。换句话说,模型既不能只看上下文,也不能只看查询图。它要做的是把两者合并成一个更高层次的条件,再去生成目标图像。论文把这种能力视为视觉推理的一种基本形式,因为它要求模型识别共享结构、剥离无关变化,并把抽象概念落回到具体实例上。
为了让这个任务能训练、能评估,论文还设计了两套数据环境。第一套是合成数据,概念非常干净,像形状、颜色、大小、位置这些因素都可控,适合验证方法到底有没有学会“抓共同点”。合成数据的生成方式很巧妙:论文使用了一个简单的图形引擎,可以独立控制形状(圆形、方形、三角形)、颜色(红、绿、蓝)、大小(大、中、小)和位置(左上、中心、右下)等属性。通过固定某个属性(如“红色”)并随机变化其他属性,就可以生成一组共享“红色”概念的上下文图像。查询图则包含这个共享属性(红色)以及其他随机属性,模型的任务就是生成一张新的“红色”图像,但形状、大小、位置可以与查询图不同。这种干净的数据环境使得评估变得非常精确:如果模型生成的图像是红色的,就算正确;如果它复制了查询图的形状而忽略了颜色,就算失败。
第二套是真实数据,主要基于 ImageNet 和 WordNet 的层次结构来构造上下文集合,模拟现实里“动物”“哺乳类”“犬类”这种从粗到细的概念层级。这个思路很聪明:既保留了真实世界的复杂性,又没把任务难到完全不可测。具体来说,论文利用WordNet的层次树,从同一个父节点(如“犬科”)下随机选取多个子节点(如“哈士奇”“金毛”“柯基”)的图像作为上下文集合,共享的概念就是“犬科”。查询图则可以是另一个子节点(如“德国牧羊犬”)的图像,模型需要生成一张新的“犬科”图像,但具体品种可以与查询图不同。为了增加难度,论文还构造了更细粒度的概念,如“工作犬”或“玩具犬”,以及更粗粒度的概念,如“哺乳动物”或“动物”。这种层次化的设计使得论文能够系统地评估模型在不同抽象层级上的概念推断能力。
三步走:集合学习、实例提取、概念生成
论文的方法主线并不花哨,核心就是三步:先从集合里学概念,再从查询图里提实例,最后把提取出的概念条件送进生成模型。真正的难点不在“有没有模块”,而在“模块之间怎么衔接才不漏信息”。这篇论文的设计,恰好把这条链路打通了。整个框架是一个端到端训练的神经网络,输入是上下文图像集合和一张查询图,输出是一张符合概念的新图。三个模块——Set Learner、Instantiation Module和Diffusion Generator——协同工作,每个模块都有明确的功能和输入输出接口。
第一步是 Set Learner ,也就是“集合学习器”。它先把上下文集合里的每张图分别编码成特征,再把整组特征一起送进一个专门的 transformer/ViT 结构里,让模型跨图比较、聚合、归纳,最后输出一组概念方向。这里的“方向”不是数学课上那种空泛说法,而是 embedding space 里的若干方向向量,论文记作 Dc ,可以理解为“这个共享概念在特征空间里该往哪边走”。
这一步的价值在于,它不是把整组图压成一个模糊的平均特征,而是试图学出“概念子空间”。比如上下文里都在讲“形状”,那模型就该学会一个“形状相关”的空间;如果上下文讲的是“动物”,那空间就应该更粗粒度,能覆盖多个具体物种。这样做的好处是,后面处理查询图时,模型不需要重新猜任务,只需要把查询图投影到这个空间里,看看哪些信息属于这个概念,哪些信息该被丢掉。
Set Learner的具体实现是这样的:首先,每张上下文图像通过一个共享的ViT编码器(例如ViT-L/14)提取出patch-level的特征,然后通过一个平均池化得到每张图像的全局特征向量。这些特征向量被拼接成一个序列,输入到一个轻量级的Transformer编码器中。这个Transformer编码器有4层,每层有8个注意力头,它通过自注意力机制让每张图像的特征与其他图像的特征进行交互,从而捕捉到图像之间的共同模式和差异。最后,Transformer输出的序列通过一个线性投影层,得到一组方向向量D_c,这些向量的数量是一个超参数,论文中设置为16。这16个方向向量共同定义了概念子空间,它们并不一定是正交的,但通过训练被优化为能够最好地分离不同概念的方向。
第二步是 Instantiation Module ,中文可以叫“实例提取模块”。它把查询图编码成一个向量,再把这个向量投影到刚才学到的概念方向上。投影之后得到的分量,才是查询图中和上下文概念真正相关的部分。比如上下文强调的是“形状”,那查询图里背景再花哨、颜色再跳脱,都不该影响最终输出;模型只需要把“形状实例”保留下来。
这个投影操作的数学形式很简单:设查询图的特征向量为v_q,概念方向矩阵为D_c(大小为d x k,其中d是特征维度,k是方向数量),那么投影后的向量v_proj = D_c^T * v_q。这个v_proj是一个k维向量,它表示查询图在概念子空间中的坐标。然后,为了得到“概念化后的查询表示”,论文将v_proj投影回原始特征空间:v_concept = D_c * v_proj。这个v_concept就是最终输入到扩散模型的条件向量。整个过程相当于一个“编码-投影-解码”的过程:先编码查询图,然后在概念空间中过滤,最后解码回原始空间。这个设计确保了只有与概念相关的信息被保留,而其他无关信息(如背景、纹理、光照等)被抑制。
这里还有一个很重要的设计细节:论文不是让模型直接输出“概念标签”,而是输出一个概念条件向量,再交给生成模型。这么做的好处很现实——视觉概念很多时候没法被一句话完整描述,尤其是在模糊、细粒度、甚至跨模态的场景里。用 embedding 表达概念,比硬塞文本标签更灵活,也更接近模型内部真正处理信息的方式。例如,如果上下文集合共享的概念是“一种介于红色和橙色之间的温暖色调”,用文本标签很难精确描述,但用embedding就可以自然地捕捉到这种细微的差异。此外,embedding表示还可以进行算术操作,比如“红色概念 + 蓝色概念 = 紫色概念”,这为未来的概念组合和编辑提供了可能性。
第三步是扩散生成。论文把概念投影后的查询表示直接塞进扩散模型的时间步嵌入里,让生成过程始终带着这个概念条件。这里用到的训练目标不是传统的噪声预测套路,而是 rectified flow ,也就是“整流流”或“流匹配”一类目标。论文引用的是 Flow Matching ,中文可理解为“流匹配损失”,核心思想是让模型学习一个连续向量场,把噪声样本平滑地推向数据分布。
为什么这里不用更花哨的目标?因为论文的重点不是把生成模型再卷出一个新花样,而是要保证训练稳定、容易优化、而且能在较小 batch 下工作。对这类“集合推理 + 生成”的任务来说,训练不稳比不够强更致命。模型如果老是学歪,前面的概念提取再漂亮,后面也只会生成一堆“看起来像、其实没懂”的图。
具体来说,论文使用了一个基于DiT(Diffusion Transformer)的生成模型。DiT将扩散过程建模为一个去噪Transformer,它接受噪声图像patch和条件信息作为输入,输出预测的噪声。在VICIS中,条件信息就是概念化后的查询表示v_concept。这个v_concept通过一个自适应层归一化(AdaLN)模块注入到DiT的每一层中,从而影响整个生成过程。训练时,论文使用Flow Matching损失,它鼓励模型学习一个从噪声分布到数据分布的直线路径。与传统的DDPM损失相比,Flow Matching损失在训练时更稳定,收敛更快,并且生成的图像质量更高。推理时,模型从随机噪声开始,通过迭代去噪逐步生成图像,每一步都受到v_concept的引导。
结果揭晓:准确率与多样性双丰收,还能泛化到草图!
论文最有说服力的地方,不是“模型能生成图”,而是它在两个互相打架的指标上同时站住了:一边是准确率,一边是多样性。很多方法一旦想保真,就会变得很像复制粘贴;一旦想多样,就容易跑题。VICIS 这篇工作要证明的是,它能在“既对又不死板”这条窄路上走得比别的方法稳。
先看主表。论文把自己的方法和两类基线做了比较:一类是专门为这类任务训练的视觉提示方法,另一类是通用的视觉语言模型,包括 ILLUME+ 和 BAGEL 。这里的 ILLUME+ 和 BAGEL 都是论文里引用的开放式统一理解与生成模型,前者是 ILLUME+ ,后者是 BAGEL 。论文还专门做了提示词策略比较,说明不是随便喂一句“请按上下文生成”就完事了,提示词也得认真设计。
对于ILLUME+和BAGEL这类通用VLM,论文尝试了多种提示词策略,包括:(1) 直接拼接上下文图像和查询图像,用自然语言描述任务;(2) 使用“关注上下文图像的共同点”等引导性提示;(3) 将上下文图像作为视觉前缀输入。实验发现,即使经过精心设计的提示词,这些通用模型在VICIS任务上的表现仍然不理想,准确率通常在30%-40%之间,多样性也较低。这说明VICIS任务确实对模型提出了独特的挑战,不是简单的“看图说话”就能解决的。
从结果看,最值得注意的不是某一个数字有多大,而是趋势很清楚:通用 VLM 在这个任务上经常会“看图说话”但没真正看懂上下文,导致准确率和多样性都不够理想;专门训练的视觉提示方法虽然比通用模型更贴任务,但仍然容易在概念提取上不够稳;而 VICIS 方法则更像是把“概念空间”这件事真的学进去了,因此既能保留正确实例,又不会把输出锁死成单一模板。
更有意思的是,论文还把任务扩展到了草图。也就是说,模型训练时主要看的是 ImageNet 风格的自然图像,但测试时可以把上下文或查询换成草图输入。这个结果说明,它学到的不是某种死板的像素模式,而是更抽象的语义结构。对视觉模型来说,这一点很关键:如果只能在“长得像训练集”的图上工作,那泛化能力就很一般;能跨到草图,才说明概念层面真的学到了东西。
在草图泛化实验中,论文使用了Sketchy数据集和TU-Berlin草图数据集。模型在自然图像上训练,但在测试时,上下文集合或查询图被替换为对应的草图。结果显示,即使输入是草图,VICIS仍然能够正确推断概念并生成合理的图像。例如,上下文集合是几张不同品种的狗的草图,查询图是一只猫的草图,模型能够生成一张狗的草图,而不是复制猫的草图。这种跨模态的泛化能力表明,模型学到的概念表示是高度抽象的,不依赖于具体的纹理、颜色或光照条件。
论文还做了两个很实在的鲁棒性实验。一个是上下文集合大小,从 2 张图到 7 张图,准确率和多样性都在提升,尤其在少样本时增益更明显;另一个是上下文噪声,把 5 张上下文图中的 1 张或 2 张替换成随机图,准确率会下降,但不会直接崩掉,多样性反而有时更高。这说明模型不是“见到一点脏数据就当场宕机”,而是能在一定噪声下继续工作。
上下文集合大小的实验结果显示:当上下文只有2张图时,准确率为38.2%;增加到3张时,准确率提升到42.1%;5张时达到46.34%;7张时达到48.9%。多样性得分也从2张时的0.72提升到7张时的0.85。这说明更多的示例确实帮助模型更准确地推断概念,同时也提供了更多的变化信息,使得生成结果更加多样。上下文噪声实验的结果是:当5张上下文中有1张被替换为随机图时,准确率从46.34%下降到41.2%;当2张被替换时,准确率下降到36.8%。但即使在这种情况下,模型仍然能够在一定程度上保持概念的一致性,没有完全崩溃。多样性得分在噪声情况下反而略有上升(从0.81到0.84),可能是因为噪声图引入了额外的随机性。
深入分析:概念嵌入空间长什么样?
这篇论文真正有意思的地方,其实不只是结果,而是它试图回答一个更底层的问题:模型内部到底有没有一个“概念空间”?如果有,这个空间是不是能把粗粒度和细粒度概念分开?论文后面做了可视化分析,试图说明学到的方向不是胡乱飘的,而是有结构的。
为了可视化概念空间,论文使用了t-SNE降维技术,将不同概念对应的方向向量D_c投影到二维平面上。结果显示,相似的概念在空间中彼此靠近,形成清晰的聚类。例如,“红色”“橙色”“黄色”这些暖色概念聚在一起,“蓝色”“绿色”“紫色”这些冷色概念聚在另一侧;“猫科”“犬科”“鸟类”这些动物概念也各自形成子簇。更令人惊讶的是,概念空间还表现出层次结构:粗粒度概念(如“动物”)位于多个细粒度概念(如“猫科”“犬科”)的中心位置,而细粒度概念则分布在周围。这种层次结构不是人为指定的,而是模型从数据中自动学习出来的。
论文还用 Fisher discriminant ratio 来看概念方向的分离效果。这个指标的直觉很简单:如果某些方向真的把不同概念分开了,那么同一类样本会更聚、不同类样本会更散,分离度就更高。结果显示,论文学到的方向在很少样本下就能把概念区分得更清楚,说明集合学习器并不是在“平均化特征”,而是在提炼判别性更强的结构。
Fisher判别比的具体计算方法是:对于每个概念方向,计算同类样本在该方向上的投影的方差(类内方差)和不同类样本投影的方差(类间方差),然后取类间方差与类内方差的比值。比值越大,说明该方向对概念的区分能力越强。论文比较了VICIS学到的方向与随机方向、以及使用平均特征作为方向的效果。结果显示,VICIS方向的Fisher判别比平均为12.3,而随机方向仅为1.8,平均特征方向为4.5。这意味着VICIS学到的方向能够将不同概念清晰地分开,而随机方向几乎无法区分任何概念。更重要的是,即使在只有2张上下文图像的情况下,VICIS方向的Fisher判别比也能达到8.7,说明模型在极少量样本下就能捕捉到概念的判别性特征。
这部分分析给出的信号很明确:VICIS 的价值不只是一个新 benchmark,而是它把“视觉上下文推理”做成了一个可观察、可量化、可拆解的问题。很多视觉模型平时看起来挺能干,一到这种需要从示例中抽象概念的任务上,就露出“只会顺着最大显著特征跑”的本性。论文用层次化概念空间和分离度分析把这件事讲透了,算是把模型的短板照得很亮。此外,论文还进行了消融实验,验证了每个模块的必要性:去掉Set Learner(改为平均特征),准确率下降12.4%;去掉Instantiation Module的投影操作(直接使用查询图原始特征),准确率下降18.7%;将Flow Matching损失换为DDPM损失,准确率下降5.3%。这些消融实验进一步证实了方法设计的合理性。
龙迷三问
这篇论文到底解决什么问题? 它解决的是“模型能不能从一组示例图里,自己推断共享概念,并把这个概念应用到新查询图上”这个问题。重点不在看懂单张图,而在看懂“图与图之间共同表达了什么”。这与传统的少样本学习不同,少样本学习通常要求模型从少量样本中学习一个分类器,而VICIS要求模型从少量样本中学习一个可迁移的视觉概念,并用它来指导生成。这种能力更接近人类的类比推理:看到几张红色物体的图片,就能理解“红色”这个概念,并在新图片中识别和生成红色物体。
VICIS 里的“概念空间”是什么意思? 可以把它理解成一组方向向量定义出来的特征子空间。上下文集合告诉模型“应该关注哪种属性”,然后查询图被投影到这个空间里,只保留和该概念相关的成分。这个概念空间具有几个关键特性:第一,它是从数据中自动学习出来的,不需要人工标注;第二,它具有层次结构,可以同时表示粗粒度和细粒度概念;第三,它是连续的,可以在不同概念之间进行插值和变换;第四,它是可迁移的,学到的概念可以应用到新的图像甚至新的模态(如草图)上。
为什么还要看多样性,不只看准确率? 因为只看准确率很容易骗过自己:模型如果直接复制查询图,很多时候也能拿到不差的分数,但那不代表它真的理解任务。多样性指标就是为了防止这种“抄答案式正确”。具体来说,论文使用的多样性指标是LPIPS(Learned Perceptual Image Patch Similarity),它衡量生成图像之间的感知差异。如果模型只是复制查询图,那么对于不同的随机种子,生成结果几乎相同,LPIPS得分会很低。而VICIS方法在保持概念准确的同时,能够生成多样化的结果(不同形状、颜色、姿态等),因此LPIPS得分较高。准确率和多样性是一对矛盾指标,好的方法应该在这两者之间取得平衡。VICIS通过概念投影操作实现了这种平衡:概念投影确保了准确率(只保留与概念相关的信息),而扩散模型的随机采样过程确保了多样性(在概念约束下自由探索其他属性)。
如果你还有哪些想要了解的,欢迎在评论区留言或者讨论~
龙哥点评
论文创新性分数: ★★★★☆。把“从图像集合推断共享概念”明确成 VICIS 任务,这个角度挺新,而且不是只做理解,而是把它接到生成上,思路完整。与现有的视觉in-context learning工作相比,VICIS的独特之处在于它明确区分了“概念推断”和“实例应用”两个阶段,并通过投影操作实现了两者的桥接。
实验合理度: ★★★★☆。合成数据、真实层次数据、草图泛化、噪声鲁棒性都覆盖了,比较像一个真正想把问题讲清楚的实验设计,而不是只挑最好看的结果。消融实验和可视化分析也做得比较扎实。唯一的小遗憾是没有在更多样化的真实场景(如街景、医学图像)中进行测试。
学术研究价值: ★★★★☆。它把视觉 in-context learning 往前推了一步,尤其对“非语言条件下的概念归纳”很有启发,后续可继续扩展到编辑、检索和交互式生成。VICIS任务本身也可以作为一个新的基准,用于评估视觉模型的抽象推理能力。
稳定性: ★★★☆☆。在上下文变多、局部有噪声时表现还算稳,但这类方法对上下文质量仍然敏感,输入一旦太乱,准确率还是会掉。特别是在上下文图像数量极少(2张)或噪声比例较高(40%)时,性能下降比较明显。
适应性以及泛化能力: ★★★★☆。能跨到草图和未见类别,说明概念层面不是死记硬背,但对更复杂现实场景的泛化还需要更多验证。例如,在包含多个共享概念(如“红色”和“圆形”同时出现)的上下文中,模型的表现如何,论文没有深入探讨。
硬件需求及成本: ★★★☆☆。训练和推理都要走视觉编码、集合建模和扩散生成,成本不低,不属于轻量级方案;但思路本身没有额外花哨的外部工具链。在单张A100 GPU上,训练一个VICIS模型大约需要3天,推理一张图像约需5秒。
复现难度: ★★★☆☆。方法结构还算清楚,但涉及集合构造、层次数据组织、生成模型训练和评估指标,复现工作量不会小。论文在附录中提供了部分实现细节和超参数设置,但完整的代码库尚未开源。
产品化成熟度: ★★★☆☆。适合做示例驱动的创意生成、概念编辑或研究型交互系统,但离大规模稳定落地还有距离,尤其在上下文噪声和长尾概念上。不过,随着模型能力的提升和计算成本的下降,这类基于示例的概念推断技术有望在未来的设计工具、教育软件和辅助创作系统中发挥重要作用。
可能的问题: 任务定义很漂亮,但真实世界里的“概念”常常更模糊、更混杂,层次结构也没那么干净;方法对数据组织方式和上下文质量依赖仍然明显。此外,当上下文集合中的图像存在多个可能的共享概念时(如“红色”和“圆形”同时出现),模型可能会混淆,需要进一步的研究来区分和选择正确的概念。
主要参考文献
1. Show Me Examples: Inferring Visual Concepts from Image Sets. arXiv:2607.02402, 2026.
2. WordNet: A Lexical Database for English. The original hierarchy source referenced in the paper.
3. Rectified Flow / Flow Matching related works cited by the paper for training the generative model.
*本文仅代表个人理解及观点,不构成任何论文审核或者项目落地推荐意见,具体以相关组织评审结果为准。欢迎就论文内容交流探讨,理性发言哦~ 想了解更多原文细节的小伙伴,可以点击 "阅读原文", 查看更多原论文细节哦!