一句话总结

ViT使用语义无关的背景块作为表示全局语义的捷径,在全局注意力和粗粒度语义监督的驱动下。这篇论文选择性地将补丁特征集成到CLS token中,减少了背景主导的快捷方式的影响,并在标签、文本和自监督的情况下,在12个基准测试中提高性能。

论文信息

研究背景与动机

  • 原始 ViT 中的 CLS token 用于聚合全局图像表示
  • Darcet et al. (ICLR 2024) 发现 ViT 的特征图中会出现异常的 high-norm artifact patches,提出添加额外的 register tokens 来吸收这些 artifacts
  • 但这篇论文认为问题不仅仅是 artifact patches —— ViT 存在更根本的 lazy aggregation 行为,Lazy Aggregation:在图像级粗粒度监督下,ViT倾向于将前景语义"扩散"到大量背景patch中,利用背景token作为编码全局语义的捷径。

lazy aggregation是这篇论文贡献中提出的一个关键假设,但是我不认为应该这么局限于vit,我认为这是对于目前整个学习范式的问题,数据不可能做到面面俱到,模型在寻找最优解的时候可能会偏向于利用背景分析,比如dataset中所有bird类图片的background都是类似的,模型就会把背景作为一个主要判断依据,但是从另一个角度来看,又不能完全不考虑背景信息,例如一个像狗又像狼的生物,在野外会判断成狼,但是在农村院子里就是狗,虽然通过主体自身信息能做到百分之八十到九十的准确性,但是背景并非完全无用,就像我在我的论文中描述的一样。

这篇论文想解决什么问题?

这篇论文想解决的问题就是 Lazy Aggreation。

方法细节

这篇论文的方法有个前提直觉:前景区域在深层特征中通常具有通道维度的语义一致性(如"狗"的头部patch在多个通道上应呈现相似的激活模式),而背景区域语义杂乱,通道间变化更大。因此,对通道维度进行低通滤波后仍保持稳定的patch更可能是前景。(这假设哪来的,我看大家都在用)

新度量:Patch Score 与 Point-in-Box

在分析 artifacts 之前,作者首先要建立一个统一的度量标准。因为不同监督范式下的 artifacts 表现形式不同(全监督是 attention deficit、CLIP 是 dense misalignment、DINO 是 high-norm tokens),需要一把统一的尺子来衡量它们。

作者定义 Patch Score 为每个 patch 特征与全局表示之间的余弦相似度:

$$S_p = \frac{x_{\text{patch}} \cdot Q_{\text{CLS}}}{\|x_{\text{patch}}\|_2 \; \|Q_{\text{CLS}}\|_2}$$
  • ViT:全局表示就是 CLS token $Q_{\text{CLS}}$
  • ConvNet(如 ResNet):全局表示是 Global Average Pooling (GAP) 后的特征,作者将其视为一个"隐式的 CLS token"

核心直觉:如果 ViT 的 dense 特征是"健康"的,那么与全局语义(CLS)最相似的 patch 应该落在前景物体上;反之,如果背景 patch 获得了高相似度,就说明全局语义被**“错误地"编码到了背景中**。

为了量化 artifacts 的严重程度,作者构建了一个探测基准:

  • 数据集:ImageNet 验证集中单物体标注的图像(避免多物体歧义)
  • 指标定义:PiB = 最高 Patch Score 的 patch 落在前景边界框内的图像比例

PiB 的解读:

  • PiB → 高 score patch 集中在前景,dense feature 质量好
  • PiB → 高 score patch 散落在背景,存在 artifacts

从论文表 1 可以看到,ResNet 的 PiB 为 68.4,而 ViT 只有 42.7 —— 这说明 ConvNet 的 dense 特征与全局语义的对齐明显优于 ViT。

从两个角度分析artifacts

第一个是CLS token到底是基于什么信息得到的,设计了两种探测方式:可视化分布——统计前景patch和背景patch的Patch Score分布;Masking Probe——在输入图像上直接mask掉top-k高score patch或bottom-k低score patch,重新评估分类准确率。结果如下图所示:

Patch Score分布与Masking Probe结果

对图的分析:左侧图中,前景patch的score集中在低分区域(左侧),背景patch反而主导了高分尾部(右侧)。虚线显示背景的平均score显著高于前景。右侧图中,移除高score patch(甚至移除70%)几乎不损害准确率,甚至提升1.2%;而移除低score patch导致准确率断崖式下跌(70% masking时暴跌60%)。这说明,那些与CLS token"最相似"的patch(高score),对分类任务反而是冗余的;真正承载判别信息的反而是低score的前景patch。

作者将这种机制归因于自然图像中背景token的统计优势:背景patch数量上远多于前景,模型发现了一条更省力的优化路径。这个观点我很认同,本质是数据问题,而我们需要做的就是探索一种算法来限制这种路径,数据总不可能涵盖所有情况。

第二个这种现象什么时候出现的,在训练过程中全程追踪pib指标和top-1 acc,并选了用conv-based的restnet18对比,结果如下:

训练过程中PiB与Top-1 Acc变化

对图的分析:ViT的PiB从训练一开始就处于低位(约0.42),并且在整个训练过程中几乎持平,完全不随分类性能提升而改善。说明artifacts不是训练晚期的副产品(如过拟合、收敛震荡),而是从优化初期就内嵌在模型行为中的结构性现象。

在训练初期,CLS token为了快速降低图像级分类损失,会本能地寻找"最容易关联到标签"的统计线索。由于背景patch数量庞大且常与类别有统计相关性(如"鸟"类图像中常出现天空、树枝),模型迅速学会通过背景token"短路"获取全局语义。一旦这条捷径在早期被确立,后续的优化就沿着这条路径继续深化,导致artifacts从诞生之初就固化在表示中。

基于这两个角度的分析,提出了两个假设:图像级标签无法提供patch级的空间监督信号;全局attention允许任意patch间交互,为语义扩散提供了物理通道。

有时候看论文里的方法,不如看他们的probe和motivation的动机实验设计,感觉这部分才是我喜欢的科研,诶。

在后边的两节中,论文作者设计了实验用来验证这两个假设,最终得出结论:

  • 粗粒度监督本身并不"导致"artifacts,而是它与数据分布(背景占优)的结合创造了shortcut的温床。如果patch-level的密集监督存在,模型就没有动机去扩散语义;但在仅有图像级标签时,背景token的数量优势成为了一种混杂因子(confounder)。

  • 全局上下文对图像级分类确实有益,只是这种"益处"的代价是允许语义向背景扩散

  • 当ViT同时具备两个条件时——(1) 粗粒度语义监督(缺乏patch级约束)和 (2) 无限制全局依赖(长程attention)——模型会自发追求最容易的优化路径:将前景语义扩散到丰富的背景token中。

如何缓解Lazy Aggregation

基于之前提过的物理观察,前景信号在深层特征中具有通道维度的语义一致性(homogeneous semantic meaning),而背景区域由于语义杂乱,在通道维度上变化更大。作者用频领的稳定性来量化这种非均匀性,对每个通道,选择在该通道上频率稳定的top-k patch,来做cls token的聚合,对每个patch做通道维度上做频域变换,低通滤波后做逆变换根据和原来的相似性分数做稳定性度量后选出topk个通道,最后每个通道做独立的topkpatch选择,对于每个通道,选择稳定性分数最高的那几个patch,clstoken的一个通道上对应的值由对应通道的topkpatch平均得到。

与相关工作的关系

工作观点
ViTs Need Registers (Darcet et al., 2024)需要额外的 register tokens 吸收 artifact
ViTs Don’t Need Trained Registers (Jiang et al., 2025)可以用 test-time registers,无需训练
Do All ViTs Need Registers? (Baxevanakis et al., 2026)跨架构重新评估 registers 的必要性
本文需要多于 registers —— 要从根本上解决 lazy aggregation