核心摘要 (Executive Summary)
该论文介绍了一种在“零样本指代表达式理解”(Zero-shot Referring Expression Comprehension, REC)任务中取得顶尖性能的解决方案 。“指代表达式理解”任务的目标是根据一段文字描述,在图像中定位到特定的目标物体 。而“零样本”设置则要求模型在没有任何针对性训练的情况下,直接利用预训练好的知识完成任务 。
该研究团队通过一种创新的方法,结合了多粒度视觉提示 (Multi-granularity Visual Prompts)、文本冗余移除 (Text Redundancy Reduction) 以及针对数据特性的联合预测 (Joint Prediction) 策略,最终在第五届 GCAIAC 零样本指代表达式理解挑战赛中荣获第一名,在A榜和B榜上分别取得了 84.825 和 71.460 的准确率 。
引言与背景 (Introduction and Background)
随着视觉-语言多模态大模型(Vision-Language Models, VLMs)如 CLIP 和 SAM 的飞速发展,如何将这些基础模型强大的图文理解能力泛化到下游任务中,成为了研究的热点 。零样本REC任务正是这一方向的关键应用,它旨在不经过任何微调,直接利用VLM完成定位任务 。
现有研究发现,为图像添加“视觉提示”(如在目标区域上绘制标记框)能够有效引导VLM的注意力,从而提升其在定位任务上的表现 。然而,作者指出,当前的方法大多只关注精细粒度的视觉提示,而忽略了粗粒度提示以及文本提示本身可能带来的影响 。
为了解决这一问题,该论文提出了一套组合策略,旨在最大化地激发预训练VLM的潜力 。
核心方法论 (Core Methodology)
什么是视觉提示 (Visual Prompt)?
简单来说,视觉提示是一种通过修改图像来引导视觉-语言模型(VLM)将其注意力集中到图像特定区域的技术 。它不像文本提示那样给模型输入文字指令,而是直接在视觉输入上做“手脚”,像用荧光笔在书上划重点一样,告诉模型:“嘿,请重点看这里!”
从这篇论文中,我们可以看到视觉提示的具体实现方法分为两大类 :
粗粒度提示 (Coarse-Grained Prompts): 这类方法对图像中一个比较大的、粗略的区域进行修改,目的是为了突出这个区域的整体和它周围的环境 。
- 如何实现? 论文中提到的方法包括 :
- 裁剪 (Crop): 直接把目标区域剪切出来。
- 反向模糊 (Blur Reverse): 只保留目标区域清晰,将其余背景全部模糊掉。
- 画框/画圆 (Box/Circle): 在目标区域周围画上一个醒目的红色圆圈或方框。
- 彩色蒙版 (Colorful Box): 在目标区域上覆盖一个半透明的彩色层。
- 如何实现? 论文中提到的方法包括 :
精细粒度提示 (Fine-Grained Prompts): 这类方法的目标是极其精确地高亮目标物体本身,而不包括任何背景 。
- 如何实现? 这需要一个额外的工具——SAM (Segment Anything Model) 。首先用SAM模型在候选框内把目标物体精确地分割出来,得到一个像素级的“蒙版”(Mask),然后 :
- 画轮廓 (Contour): 只描绘出这个物体蒙版的边缘线 。
- 反向灰度化 (Grayscale Reverse Mask): 保留物体本身的色彩,把图像其余部分变成灰色 。
- 反向模糊 (Blur Reverse Mask): 保留物体本身清晰,将其余部分模糊掉 。
- 如何实现? 这需要一个额外的工具——SAM (Segment Anything Model) 。首先用SAM模型在候选框内把目标物体精确地分割出来,得到一个像素级的“蒙版”(Mask),然后 :
视觉提示就是一系列图像处理的“滤镜”或“特效”。研究者们为一张图的同一个目标区域制作出所有这些不同版本的“加料”图片,让模型从不同角度去观察和理解这个被强调的目标 。
模型的完整推理流程是怎样的?
现在,我们来串联起所有部分,看看当模型接收到一张图片和一个文本描述后,它是如何一步步找到正确答案的。整个流程可以分为以下5个步骤,这与论文的整体架构图(Figure 2)完全对应 :
步骤 1:生成多粒度视觉提示图像 (Input-Image Processing)
- 输入:一张原始图片和多个候选框(Proposals)。
- 操作:针对每一个候选框,模型会应用上一节提到的所有视觉提示方法(包括粗粒度和精细粒度的),生成一大批“加料”后的新图片。例如,对于图中的“左边的男人”,模型会生成他的裁剪图、背景模糊图、轮廓图等等 。
- 输出:一系列经过视觉提示处理的图像版本。
步骤 2:文本冗余移除与编码 (Input-Text Processing)
- 输入:一句文本描述,例如 “black cat under sink” 。
- 操作:
- 首先在文本前加上一个标准前缀,变成 “A photo of black cat under sink” 。
- 然后,模型使用CLIP的文本编码器分别计算“完整描述”和“前缀本身”(
A photo of
)的特征向量。 - 最后,用前者减去后者,得到一个“去噪”后、更纯粹的文本特征向量 。
- 输出:一个代表核心文本描述的特征向量。
步骤 3:图文特征编码与相似度计算 (Feature Encoding & Matching)
- 操作:
- 将步骤1生成的所有“加料”图片,全部输入到CLIP的视觉编码器中,得到每一个视觉提示版本对应的视觉特征向量 。
- 将步骤2生成的“去噪”文本特征向量,与所有这些视觉特征向量进行相似度计算(通常是余弦相似度) 。
- 输出:一个相似度矩阵(Similarity Matrix),记录了文本描述与每一种视觉提示版本图像的匹配分数 。分数越高,代表模型认为这个版本的图像越符合文本描述。
步骤 4:选出最佳候选框 (Candidate Selection)
- 操作:对于每一个候选框,模型会查看它所有视觉提示版本中获得的最高分。这个最高分就代表了这个候选框与文本描述的最终匹配度。
步骤 5:联合预测与最终输出 (Joint Prediction & Final Output)
- 操作:这是最后一步精加工,专门应对比赛数据的复杂情况 。
- 处理同一目标的多个描述:如果数据集里有多句话描述同一个目标,模型会把这些话的预测结果聚合起来,得到一个更稳健的集体预测结果 。
- 处理同一图像的多个目标:如果一张图里有多个不同的目标需要定位(比如“左边的男人”和“右边的女人”),为了防止模型把它们都定位到同一个候选框上,它会启动匈牙利算法,为不同的文本描述找到最佳的、不冲突的候选框分配方案 。
- 输出:最终的、经过优化的定位结果,即文本描述所指的目标的精确边界框。
通过以上5个步骤,该模型就完成了一次完整的、从输入到输出的推理过程。它结合了精巧的图像预处理(视觉提示)、文本预处理(去噪)和智能的后处理(联合预测),从而实现了精准的零样本目标定位。
该团队提出的解决方案主要包含三个核心技术组件,其整体框架如下图所示:
1. 多粒度视觉提示 (Multi-granularity Visual Prompts)
为了充分激活VLM的视觉理解能力,研究者没有依赖单一类型的视觉提示,而是将粗粒度 (Coarse-Grained) 和精细粒度 (Fine-Grained) 的提示结合起来使用 。
粗粒度视觉提示 (Coarse-Grained VP): 这类提示主要通过在候选区域(Proposal)周围进行较大范围的视觉处理,以强调目标所在的上下文环境。如图2所示,具体方法包括:
Crop [C1]
: 直接裁剪出候选区域。Blur Reverse Box [C3]
: 将候选框外的区域进行高斯模糊。Red Circle [C4]
: 在候选区域周围画一个红色的圆圈。- 其他还包括添加彩色蒙版
[C2]
、灰度反转圆[C5]
等 。
精细粒度视觉提示 (Fine-Grained VP): 这类提示旨在更精确地突出目标物体本身。它利用了强大的 Segment Anything Model (SAM) 首先在候选框内精确地分割出目标物体,然后进行高亮处理 。具体方法包括:
Contour [F1]
: 描绘出分割后物体的轮廓。Grayscale Reverse Mask [F2]
: 将除了物体蒙版(mask)外的区域灰度化。Blur Reverse Mask [F3]
: 将除了物体蒙版外的区域进行模糊处理 。
通过实验,团队发现将 C1, C3, C4, F1, F2, F3
这几种提示组合使用时效果最佳 。这种组合策略能让模型在关注精细物体细节的同时,不丢失其在图像中的空间关系信息,从而达到更好的理解效果 。
2. 文本冗余移除 (Removing Redundant Text)
为了提升CLIP模型对文本的理解精确度,研究者借鉴了自然语言处理(NLP)中的去噪思想,提出了一种高效的“硬降噪”方法 。
- 背景: 在使用CLIP时,通常会在文本描述前加上 “a photo of” 之类的前缀来提升性能 。但作者认为,这个前缀本身对于具体的图文匹配任务而言是“冗余信息” 。
- 方法:
- 首先,将原始文本描述(如
black cat under sink
)和添加了前缀的文本(A photo of black cat under sink
)分别输入到CLIP的文本编码器中,得到两个特征向量。 - 同时,也将前缀本身(
A photo of
)单独输入编码器,得到其对应的特征向量。 - 最后,从“带前缀的完整描述”的特征向量中,减去“前缀本身”的特征向量。
- 首先,将原始文本描述(如
这个过程可以理解为从文本特征中“剥离”掉通用、无信息量的部分,从而让最终的文本特征更纯粹、更聚焦于核心描述内容 。相比于需要大量负样本、计算成本高昂的 Subtraction
方法,该方法更直接、计算开销小,且效果更优越 。
3. 联合预测 (Joint Prediction)
该策略是针对本次挑战赛数据的特有结构而设计的,旨在通过后处理优化最终的预测结果 。
- 同一条目内的预测聚合: 数据集中,同一个目标框可能对应多条不同的文本描述 。为此,模型会将针对这几条文本的所有预测结果进行聚合,并将这个聚合后的结果作为所有这几条描述的共同预测 。这增强了预测的稳定性和鲁棒性。
- 同一图像内不同条目的分配: 一张图片中可能包含多个需要被定位的目标(即多个条目) 。为了避免模型将不同的描述错误地指向同一个目标框,研究者使用了匈牙利算法 (Hungarian algorithm) 。该算法可以找到不同文本条目与不同候选框之间的“最优分配”,确保不同的目标能够被区分开,从而最大化整体的匹配准确率。
实验与结果 (Experiments and Results)
实验设置
- 模型: 核心推理模型为 OpenAI 的 CLIP (
ViT-B/32
和RN50x16
版本),并使用 SAM (SAM-VIT-H
) 辅助生成精细粒度的视觉提示 。 - 数据: 实验完全在官方提供的测试集上进行,不使用任何训练数据,是严格的零样本设置 。
- 硬件: 所有实验在一块 NVIDIA RTX 3090 GPU 上完成 。
主要结果与消融实验 (Main Results and Ablation Study)
该方法最终在挑战赛中取得了冠军 。为了验证每个组件的有效性,论文进行了一项消融研究,结果如下表所示:
步骤 | 方法 | ACC (准确率) | 说明 |
---|---|---|---|
1 | ReCLIP (基线) | 46.79 | 使用一个强大的零样本REC基线方法作为起点 。 |
2 | + 视觉提示 | 53.069 | 加入多粒度视觉提示组合后,性能显著提升 。 |
3 | + 移除冗余文本 | 60.846 | 再加上文本去噪技术,性能进一步提高 。 |
4 | + 参数调优 | 63.389 | 对模糊程度、线条粗细等超参数进行微调 。 |
5 | + 联合预测 | 72.968 | 最后加入针对数据特性的联合预测策略,准确率得到巨大飞跃 。 |
消融实验清晰地证明,该论文提出的每一个组件都对最终的性能提升做出了关键且显著的贡献。特别是联合预测策略,带来了近10个点的巨大提升,说明根据数据特性设计后处理流程至关重要 。
该论文成功地展示了一套高效的零样本指代表达式理解解决方案。其核心贡献在于:
- 创新的多粒度视觉提示组合: 通过结合粗粒度和由SAM生成的精细粒度提示,有效增强了VLM的视觉定位能力 。
- 高效的文本去噪方法: 提出了一种比主流方法更高效、效果更好的文本冗余移除技术,提升了CLIP的图文匹配性能 。
- 数据驱动的联合预测策略: 针对比赛数据的特性设计了联合预测方法,极大地优化了最终结果 。
综上所述,这项工作通过在视觉和文本两端进行精巧的提示工程(Prompt Engineering),并辅以智能的后处理策略,显著提升了多模态基础模型的零样本理解与推理能力 。
该方法成功的核心在于它并非依赖单一技术的突破,而是通过一套系统性的、在输入、处理和输出三个层面进行全方位优化的“组合拳”策略,精巧地放大了预训练视觉-语言模型(VLM)的固有能力。其核心创新点可以分解为以下三个方面:
1. 输入端创新:兼顾“宏观”与“微观”的多粒度视觉提示 (Multi-granularity Visual Prompts)
传统方法通常只关注单一类型的视觉提示,例如仅在目标上画一个框或仅高亮其精确轮廓。该方法的核心创新在于不偏废任何一方,而是将粗粒度和精细粒度的提示进行有效组合 。
- 动机:研究者认识到,不同粒度的提示能为模型提供互补的信息。
- 粗粒度提示(如模糊背景、画红圈)能够帮助模型理解目标在整个图像中的空间上下文关系(“where is it in the big picture?”) 。
- 精细粒度提示(如利用SAM模型描绘精确轮廓)则能引导模型聚焦于目标本身的细微特征和属性(“what exactly does it look like?”) 。
- 创新之处:通过将这两类提示结合使用(实验确定的最优组合为C1, C3, C4, F1, F2, F3),该方法确保模型既能进行精细的对象识别,又不会丢失其在复杂场景中的空间定位感,从而最大化地激活了VLM的图文理解潜力 。这是一种“远近高低各不同”的全面信息输入策略。
2. 处理端创新:高效且直接的文本特征“去噪” (Text Redundancy Reduction)
在文本处理上,该方法没有采用复杂且计算昂贵的负样本去噪方法,而是提出了一种新颖、高效的“硬降噪”或称为“特征减法”的策略 。
- 动机:该方法洞察到,像 “a photo of” 这样的通用前缀虽然能提升CLIP模型的泛化性,但对于具体的图文匹配任务而言,其语义是冗余的“噪声”。
- 创新之处:其创新操作在于将语义特征向量化后进行直接减法运算。它分别计算“带前缀的完整描述”和“前缀本身”的文本特征,然后相减,以此提纯出只包含核心描述信息的文本特征向量 。这种方法相比于依赖大量负样本来学习噪声分布的
Subtraction
方法 ,不仅计算效率极高,而且降噪效果的可控性更强,因为它精确地移除了已知的、特定的冗余信息 。这是一个巧妙利用模型内部表示的“四两拨千斤”式创新。
3. 输出端创新:针对数据特性的“规则化”联合预测 (Joint Prediction)
这是该方法能够取得决定性胜利的关键,体现了其将通用算法与特定问题结构相结合的智慧。
- 动机:研究者深入分析了挑战赛数据集的内在结构(一个目标框对应多个描述,一张图包含多个不同目标),并设计了针对性的后处理算法来解决由此产生的模糊性和冲突。
- 创新之处:联合预测包含两个层面的创新:
- 聚合增强鲁棒性:对于指向同一目标框的多条描述,它会聚合所有预测结果,用一个统一的、更可靠的集体预测来代替单个预测,从而减少单次预测的偶然性错误 。
- 分配解决冲突:对于同一图像内的多个不同目标,它引入匈牙利算法来寻找文本描述和候选框之间的“最优分配” 。这从数学上保证了不同的目标会被分配到不同的候选框,完美解决了“一个框被多个不同目标争抢”的问题。
该方法成功的核心在于其系统性的优化思维和对细节的极致追求。它没有试图去重新发明一个庞大的新模型,而是基于对现有强大VLM(如CLIP)工作机理的深刻理解,从视觉信息输入、文本信息提纯、预测结果后处理三个环节入手,通过一系列精巧、高效、且互相增强的工程技术(Prompt Engineering)和算法策略,将模型的潜力挖掘到了极致。它完美地诠释了如何通过“聪明的组合”而非“暴力的计算”来在一个复杂的零样本任务中取得突破。
为什么不直接计算 “black cat under sink” 的向量,而要绕一个圈子,先加再减?
答案可以从两个层面来理解,这两个层面都源于对CLIP模型工作特性的深刻洞察:
1. “投其所好”:为了激活CLIP的最佳性能模式
CLIP模型在训练时,接触了海量的来自互联网的“图片-文本对”。这些文本描述的格式五花八门,但很多都是以“一张……的图片 (A photo of…)”、“一幅……的画 (A painting of…)”等自然语言句式存在的。
- 既有研究和实践表明:直接给CLIP输入一个零散的短语(如 “black cat under sink”),其性能往往不如输入一个更完整的、符合其训练数据分布的句子(如 “A photo of black cat under sink”) 。
- 精髓所在:加上 “A photo of” 这个前缀,就如同对CLIP说一句“暗号”,让它进入最熟悉、最擅长的“看图说话”或“图文匹配”工作模式。这能更好地激活模型内部已经学习到的视觉-语言关联知识,从而生成一个质量更高、更鲁棒的初始特征向量。如果不加这个前缀,直接编码短语,得到的向量可能无法充分利用CLIP的全部潜力。
2. “去伪存真”:为了得到更具区分度的纯粹特征
虽然加上前缀能让CLIP模型“打起精神”,但这个前缀本身也带来了新的问题:它引入了冗余信息或噪声。
- 问题所在:特征向量中会同时包含“这是一张照片”的通用信息和“黑猫在水槽下”的核心信息。在进行精细的图文匹配时,这个通用的“照片”信息对所有图片都是一样的,它不仅没有帮助,反而可能成为一种干扰,稀释了核心描述的独特性。
- 精髓所在:通过减去 “A photo of” 的特征向量,研究者进行了一次巧妙的特征空间“提纯” 。这个操作的目标是,在保留第一步所带来的“激活效益”的同时,精确地剥离掉前缀引入的通用、无区分度的信息,最终得到一个只包含“黑猫在水槽下”这部分最关键、最具辨识度信息的“纯净”特征向量。
所以,这个“先加后减”的操作可以理解为一个两步走的优化策略:
- 第一步(加法):通过添加 “A photo of”,将输入文本“格式化”,以迎合CLIP模型的偏好,诱使其产生一个更高质量的初始特征表示 。
- 第二步(减法):从这个高质量的向量中剔除掉格式化带来的冗余部分,让最终用于匹配的向量更纯粹、更聚焦于核心描述,从而在与其他图像进行比较时更具区分度 。
简单来说,直接计算 “black cat under sink” 就像是让一个优秀的员工用一种他不熟悉的方式工作,他能完成任务,但可能不是最佳状态。而**“先加后减”** 的方法,则是先用员工最喜欢的方式让他进入巅峰状态,然后再巧妙地把他工作中产生的无关杂念去掉,只留下最精华的成果。这正是该方法在文本处理上的精妙之处。