最强分割模型SAM3也翻车了?InstructSAM:用2B参数精心设计出的统一端到端方案,推理效率大幅提升!

0 阅读9分钟

image.png

点击这里获取 👉 原文链接

点击这里获取 👉 B站原创视频解读

“定位左侧第二个没戴头盔的警员”——这种人类看一眼就能完成的指令,却让当前最强的分割模型频繁翻车。它们要么把多个目标混成一个语义区域,要么在多目标场景下反复生成相同Mask,甚至需要多轮Agent调用花费近30秒才能完成一次推理。今天要解读的这篇工作,用一套“推理→实例Query”的显式接口,让2B参数的模型在复杂指令分割上全面碾压7B级端到端方法,甚至超越多轮Agent流程。读完本文,你将彻底理解:为什么并行可学习Query比自回归[SEG] token更高效、混合注意力如何抑制重复预测、以及一个精心设计的数据引擎能带来什么样的质变。

🔥 开源代码已放出github.com/DCDmllm/Ins…

❓ 核心痛点:为什么99%的指令分割方案都失败了?

你写下一句“找出这组图中没有佩戴头盔的警员”,希望模型能精准输出每个未戴头盔警员的独立掩码。但现有做法存在两个致命缺陷:

  • 多轮Agent管线:先用VLM把指令拆成多个短语(“警员”“未戴头盔”),反复调用SAM3生成候选mask,再用规则或验证prompt后过滤。这个过程不仅速度慢(单个样本需要29.6秒),而且每一步都可能丢失语义——改写会丢掉“没有”这样的否定约束,过滤会累积错误。
  • 端到端[SEG] token方案:让LLM自回归生成多个[SEG] token,每个token对应一个mask。但[SEG]是共享符号,缺乏显式实例绑定机制,导致生成的mask频繁重复或不一致。而且目标越多,自回归生成延迟线性增长。

下图清晰地展示了三种范式的差异:传统SAM3只支持简单短语提示;常见MLLM方法用[SEG] token但存在语义级分割与重复预测;而本文提出的InstructSAM通过并行实例查询实现一次前向传播完成多实例分割。

图1

图:三种指令驱动分割范式的对比——SAM3(仅短语提示)、常见MLLM(语义级[SEG] token)与本文InstructSAM(并行实例查询)。

但为什么99%的优化尝试都失败了?关键就在于架构设计——没有在推理过程和实例输出之间建立显式、可学习的接口。

🚀 原理拆解:InstructSAM如何实现“一图分割任意指令”

💡 整体架构:推理→实例Query的桥梁

InstructSAM的核心思想是:不让LLM直接“说出”mask,而是让它解析指令后生成一组结构化的实例感知Query,再通过一个轻量MLP投影到SAM3的检测器Query空间,驱动mask解码器一次生成所有实例mask。这种设计解耦了指令理解与像素预测,使得SAM3不需要内化指令语义,只需做好它最擅长的开放世界分割。

下图是整体架构:

图2

图:InstructSAM的整体框架——图像与短语经编码器输入多模态LLM,LLM内部通过混合注意力机制与可学习Query Bank交互,输出LLM条件化查询,再投影到SAM3解码器生成多实例掩码与分数。

💡 并行实例Query库:显式的集合结构接口

给定图像 ximgx_{img} 和指令 xtxtx_{txt},图像编码器生成视觉token VRLv×d\mathbf{V}\in\mathbb{R}^{L_v\times d},指令被分词为文本嵌入 TRLt×d\mathbf{T}\in\mathbb{R}^{L_t\times d}。作者引入一个可学习的查询库 Q={qk}k=1KQ=\{q_k\}_{k=1}^KKK控制单次前向传播可预测的最大实例数(默认K=10K=10)。

关键创新在于用并行可学习Query代替自回归的[SEG] token。当模型遇到触发token <mask_start>时,将所有Query插入多模态序列:

X=[V;T;Tphrase;<mask_start>;q1;;qK]\mathbf{X}=[ \mathbf{V}; \mathbf{T}; \mathbf{T}_{\mathrm{phrase}}; <\mathrm{mask\_start}>; \mathbf{q}_1; \dots; \mathbf{q}_K ]

其中 Tphrase\mathbf{T}_{\mathrm{phrase}} 是LLM生成的短目标短语(如简洁的指代描述),作为辅助条件。LLM生成上下文隐藏状态后,提取每个Query对应的嵌入 zk=H[qk]\mathbf{z}_k = \mathbf{H}[\mathbf{q}_k]。每个 zk\mathbf{z}_k 成为一个“grounded实例假设”,整合了指令语义、全局视觉和Query间交互。

这种设计的直觉:就像多个并行的侦探同时分析线索,每个侦探专注一个潜在目标,但它们之间可以互相交流(通过混合注意力),防止两个人跟踪同一个对象

💡 混合注意力设计:既要语言生成,又要集合预测

传统Transformer的因果注意力让每个token只能看到前面的token,这对于语言建模(自回归)是好的。但实例Query需要全局地看到所有图像、指令和其他Query,才能做出实例判别并抑制重复。作者提出混合注意力模式:

  • 文本token:保持标准因果注意力(自回归生成)。
  • Query token:允许全上下文注意力,即可以双向关注视觉token、文本token以及其他Query token。

形式化地,注意力掩码 A{0,1}L×LA\in\{0,1\}^{L\times L} 中:对文本位置 iItexti\in I_{\text{text}},仅当 jij\leq iAij=1A_{ij}=1;对Query位置 iIqueryi\in I_{\text{query}},对所有 j(IvisionItextIquery)j\in(I_{\text{vision}}\cup I_{\text{text}}\cup I_{\text{query}})Aij=1A_{ij}=1

这个设计太巧妙了!它让Query之间可以互相“聊天”:“我覆盖了左边那个杯子,你负责右边那个。”从而避免两个Query输出相同mask。实验证明,移除混合注意力后,ReasonSeg上的cIoU从65.0暴跌至52.4。

💡 从Query到Mask:轻量投影驱动SAM3

得到LLM条件下的Query嵌入后,一个轻量MLP将它们投影到SAM3检测器期望的Query空间,得到 {z~k}k=1K\{\tilde{z}_k\}_{k=1}^K。同时短语特征也被投影得到辅助文本条件 tpt_p。随后融合编码器通过交叉注意力让每个mask query与条件化图像特征交互,最后分数头预测每个Query的有效性,分割头生成对应二值mask。

整个过程在一次前向传播中完成,无需任何迭代或后处理。

🔄 两阶段训练:课程学习从对齐到推理

训练分为两个阶段,数据分布如下:

图5

图:两阶段训练数据分布。Stage1使用250万短语级和类别级数据(refcoco, COCO, LVIS等)实现基础视觉对齐;Stage2结合指令级数据(reason_seg, LISA, Inst²Seg等)与部分短语数据,注入推理能力。

Stage1:指代对齐预训练。目标是将可学习Query空间与SAM3的mask query空间对齐。使用大量类别级和短语级简单mask数据(refcoco, COCO, LVIS等,共250万样本)。LLM学习率5e-6,batch size 128,训练1epoch。

Stage2:推理知识微调。从Stage1对齐模型出发,注入指令级分割数据(如Inst²Seg、reason_seg等,共50万样本),同时保留部分短语数据以维持定位鲁棒性。学习率降至2e-6,batch size 64。整个训练过程冻结SAM3的视觉编码器,对LLM使用LoRA(rank=256)。

具体超参数:

模块Stage1学习率Stage2学习率优化器
LLM5e-62e-6AdamW
MLLM视觉编码器5e-62e-6AdamW
Projector5e-62e-6AdamW
Mask解码器(除VE)1e-55e-6AdamW
Mask解码器视觉编码器0 (冻结)0 (冻结)-

📊 实验验证:数据说话

🏆 SOTA对比:2B模型碾压7B方法

推理分割(Inst²Seg & ReasonSeg)

下表展示了在Inst²Seg基准上的主结果。InstructSAM-2B以较大优势超越所有端到端方法(LISA, SA2VA, X-SAM, LISA++等),甚至优于3B参数的多轮Agent管线(SAM3-Agent-Qwen2.5-VL-3B)。在无目标场景(零样本)下仍保持稳健。

表2

表:在Inst²Seg与ReasonSeg上的SOTA对比。InstructSAM-2B在多数指标上领先,尤其Inst²Seg mAP达31.5,远超第二名的21.2。

在语义级ReasonSeg上,InstructSAM在验证集cIoU达到65.0,比SA2VA-4B高5.0,长指令测试集提升6.9——说明显式实例Query比单纯[SEG] token更能处理复杂推理

短语级指代分割(gRefCOCO, GSEval, RoboRefIt)

在多目标指代分割gRefCOCO上,InstructSAM的mAP达到57.3(val),远超PixelLM-7B的19.9和X-SAM的38.9。在零样本GSEval上以58.8 gIoU超越所有方法。在机器人感知基准RoboRefIt上,testB(分布偏移)以74.4大幅领先之前的61.5,展现出强大的泛化能力。

表3

表:在gRefCOCO与GSEval上的指代分割SOTA对比。InstructSAM-2B在所有子集上取得最优。

🔬 消融实验:每个设计都是关键

核心组件消融

移除Query Bank后,Inst²Seg mAP从31.5降至20.1(↓11.4);移除混合注意力后,ReasonSeg cIoU从65.0降至52.4(↓12.6)。两者都不可或缺。

表5

表:Query Bank与混合注意力的消融实验。两者都导致性能显著下降。

Query数量与效率

增大Query数(10→50→200)仅带来边际性能变化,但推理时间从1.1s增至2.1s。验证了K=10已足够覆盖大多数指令(通常目标<10)。

LLM条件Query vs 短语条件

移除LLM条件Query后,Inst²Seg mAP下降14.8;而仅替换短语为dummy token只下降2.4。表明主要的语义信号来自LLM条件Query,而非生成的名词短语

数据引擎有效性

移除Inst²Seg训练数据后mAP下降,移除过滤策略后mAP从31.5暴跌至11.9——噪声数据对端到端训练伤害极大。

Stage1对齐预训练

移除Stage1后,gRefCOCO mAP下降16.0,ReasonSeg cIoU从65.0降至15.9——没有对齐预训练,模型几乎学不会指令跟随。

⚡ 推理效率:1.1秒 vs 29.6秒

与SAM3-Agent-Qwen3-VL-2B对比,InstructSAM单样本推理仅需1.1秒,而Agent管线需要29.6秒——快了近27倍。这就是统一端到端设计的威力。

🏆 定性对比:复杂指令下的实例级感知

下图展示了InstructSAM与SAM3+Agent、SA2VA的对比。在“查找该行人衣物上提到某个著名城市的文字”这类需要细粒度定位的指令下,InstructSAM能精确检出文字区域,而其他方法要么漏检,要么将整片衣物作为mask。

图4

图:InstructSAM与SAM3+Agent、SA2VA在复杂指令下的定性比较。本文方法在细粒度推理、多目标定位上显著占优。

⚖️ 客观评价

局限性

  • 当前仅支持图像输入。视频场景下的多实例交互、时间对应和帧级一致性尚未覆盖,数据标注成本更高。
  • 将分割数据集与大规模对话指令联合训练时,存在任务间干扰,直接联合训练可能降低分割性能。需要更精细的数据平衡策略。

计算开销:2B参数,单次推理1.1秒(A100),远优于Agent管线。训练使用两阶段课程,计算资源在合理范围内。

未来展望:将训练扩展到视频数据(如与视频分割数据集联合)、设计协同训练策略(数据平衡与课程学习)是提升模型能力的关键方向。

🌟 价值升华 + 行动号召

核心收获

  1. 并行可学习Query > 自回归[SEG] token:显式的实例槽位实现了实例判别与集合预测,天然避免重复,且速度更快。
  2. 混合注意力是关键:让Query之间能双向通信,抑制重复,稳定训练。
  3. 数据引擎决定上限:高质量的指令-掩码对与严格过滤策略,比模型架构本身更直接影响性能。

🤔 深度思考:你认为这项技术最可能颠覆哪个AI应用场景?比如具身机器人的“拿起离水槽最近的杯子”这类操作、自动驾驶的“识别所有未佩戴头盔的骑手”等。欢迎在评论区留下你的观点!

💝 支持原创:如果本文帮到你,点赞+收藏就是最好的支持!分享给你的技术伙伴,让更多人看到这篇硬核解读。

🔔 关注提醒:设为星标,第一时间获取深度技术解读!

#AI技术 #深度学习 #实例分割 #指令分割 #论文解读 #多模态大语言模型 #SAM

参考

InstructSAM: Segment Any Instance with Any Instructions