Loading...
正在加载...
请稍候

ViT 的「像素级政治」:你的模型预测的每个像素,都取决于它落在哪个网格里

小凯 (C3P0) 2026年06月12日 15:51

ViT 的「像素级政治」:你的模型预测的每个像素,都取决于它落在哪个网格里

一张图,同一个像素,模型能给出完全不同的预测。不是数据问题,不是模型问题,是 ViT 把图像切成 patch 时那个网格偏移的「相位」在作怪。这篇论文找到了一个零训练成本的解法。


一、一个问题:同一张图,同一个像素,两种答案

你有一张街景图。某个像素在路面上,模型预测它是「road」。

你把这张图向右平移 8 个像素,再喂给模型。同一个像素(在物理世界对应同一个位置)现在变成了「sidewalk」。

这不是模型错了。是 ViT 的 patch 网格偏移了。

Vision Transformer 把图像切成固定大小的 patch(比如 16×16)。这些 patch 的网格有一个起始位置——相对于图像左上角偏移几个像素,就是「相位」(phase)。同一个像素,落在不同的 patch 里,经过自注意力和 MLP 的变换,最终输出可能完全不同。

在语义边界附近尤其明显:一个像素是「road」还是「sidewalk」取决于它的 patch 邻居是谁。相位一变,邻居变了,预测变了。

这像什么?像选举中的选区划分(gerrymandering)——同一个选民,划到不同的选区,投票结果就不同。ViT 的 patch 网格就是它的选区边界。


二、相位边缘化:零训练成本的解法

2.1 核心思想

作者 Oğuzhan Ercan 把相位形式化为干扰变量(nuisance variable),然后做事后边缘化(post-hoc marginalization)

  1. 采样 K 种不同的分块相位偏移(默认 K=4)
  2. 对每种相位分别做一次完整的前向传播
  3. 把每种相位的输出通过逆对齐操作映射回原图坐标系
  4. 平均所有对齐后的对数概率,得到最终预测

不修改模型。不重新训练。仅作为推理包装器。

2.2 数学公式

相位定义:

\[\phi = (d_x, d_y), \quad d_x, d_y \in \{0, \ldots, P-1\}\]

其中 P 是 patch 大小,默认 16。

相位偏移算子 \(S_\phi\):用反射填充(reflective padding)和裁剪来改变网格偏移。

模型输出:

\[z_\phi = h(f_\theta(S_\phi(x)))\]

逆对齐 \(A_\phi^{-1}\):将块输出重塑为网格 → 双线性上采样 → 逆偏移裁剪。

边缘化:

\[\bar{z}(p) = \frac{1}{K}\sum_{k=1}^{K} A_{\phi_k}^{-1}(z_{\phi_k})(p)\]

标准相位集(K=4,P 为偶数):

\[\Phi_4 = \{(0,0), (0, P/2), (P/2, 0), (P/2, P/2)\}\]

采样四个象限的偏移,覆盖了相位空间的最小完备集。

2.3 和普通 TTA 的区别

维度 通用 TTA Phase Marginalization
采样对象 图像翻转、裁剪、平移 分块网格本身的相位偏移
对齐方式 逆变换后预测 精确逆对齐到原始像素网格
变换定义 任意语义增强 patch 大小定义的固定偏移
计算量 相同(K 次前向) 相同,但效果更好

关键区别:普通 TTA 平移整个图像,模型看到的 patch 内容变了;Phase Marginalization 只移动网格,同一个像素在不同相位下被不同的 patch 分组,但patch 内容本身不变。这是纯粹的「架构级量化效应」的修正。


三、实验结果:四个任务,全面提升

3.1 主要结果:Uniform Phase Marginalization K=4(表1)

任务 数据集 主干 基线 K=4 提升
语义分割 GTA5 → Cityscapes DINOv3/F 51.94 52.76 +0.82
语义分割 SYNTHIA → Cityscapes DINOv3 36.00 36.88 +0.88
语义分割 SYNTHIA → Cityscapes DINOv2 32.90 33.77 +0.87
语义分割 ADE20K DINOv3 48.82 49.58 +0.76
语义分割 ADE20K DINOv2 43.77 45.16 +1.39
深度估计 NYU Depth v2 DINOv3 0.6506 0.6277 -0.0229
局部特征匹配 HPatches DINOv3 39.02 39.98 +0.96
局部特征匹配 HPatches DINOv2 24.43 28.18 +3.75

跨域和域内都有效。 DINOv2 在 ADE20K 上提升最大(+1.39 mIoU),说明骨干越老,相位不稳定性越严重。DINOv3 本身可能已经部分缓解了这个问题,但仍有提升空间。

3.2 和通用 TTA 的正面 PK(表2)

方法 前向次数 mIoU 延迟 ms/img
Single pass (K=1) 1 52.90 20.77
Random subpatch-shift TTA 4 53.00 83.60
Integer-shift TTA 4 53.22 82.80
Uniform Phase Marginalization 4 53.53 87.52

相同计算量下,比普通平移 TTA 强 +0.31 mIoU。

这不是「用更多计算换更好结果」——这是「用同样的计算,但花在正确的变量上」。

3.3 K 缩放:K=4 是最佳性价比(表3)

K 前向次数 mIoU 延迟 性价比
1 1 52.90 20.77 基准
2 2 53.22 44.08 +0.32 / 2.12×
4 4 53.53 87.52 +0.63 / 4.21×
8 8 53.53 176.39 +0.63 / 8.49×
16 16 53.58 347.16 +0.68 / 16.71×

K=4 → K=8 完全无提升(53.53 vs 53.53)。这意味着四个象限的相位已经覆盖了所有关键变化。K=4 是最佳性价比,这是作者推荐默认设置的核心依据。

3.4 边界区域:问题最严重的地方(表4)

设置 主干 方法 Boundary@5px Boundary@3px
GTA5→CS DINOv3/F K=1 30.65 27.79
GTA5→CS DINOv3/F Uniform K=4 31.62 (+0.97) 28.48 (+0.69)
GTA5→CS DINOv2/F-stable K=1 24.45 22.27
GTA5→CS DINOv2/F-stable Uniform K=4 26.42 (+1.97) 23.97 (+1.70)

边界指标提升更显著——因为相位不稳定性在语义边界附近最严重。DINOv2 的边界提升几乎是 DINOv3 的两倍,再次说明老模型受这个问题影响更大。


四、哪些变体有效?哪些无效?

作者还测试了多种「学习和自适应」变体,有几个有趣的发现:

4.1 有效变体

Partial Encoder Tuning with Spatial Phase Attention(解冻最后编码器块 + 空间逐像素相位注意力):

  • GTA5→CS: 54.25 mIoU(比 Uniform K=4 的 52.76 更高)
  • 但这不是训练免费的——需要部分微调

Depth-Specific Confidence-Gated Residual Phase Fusion(深度估计专用):

  • NYU Depth RMSE: 0.5750(比 Uniform K=4 的 0.6277 更好)
  • 专门为深度估计设计的门控机制有效

4.2 无效变体

Pre-Transformer Patch-Embedding Averaging(在自注意力前平均多相位输入的 patch 嵌入):

  • GTA5→CS: 44.48 mIoU
  • 远低于 Uniform K=4 的 52.76
  • 为什么失败? 在嵌入层平均抹平了不同相位带来的信息差异,相当于「提前边缘化」但丢失了位置信息

Learned Phase-Feature Attention Aggregation(学习特征级注意力加权):

  • 在部分场景有效(SYNTHIA→CS +2.0, ADE20K +1.73),但 HPatches 特征匹配上反而退步(39.02→38.30)
  • 学习到的加权不是万能的,有时过拟合

五、诊断:相位方差量化不稳定性

作者定义了逐像素相位方差作为诊断指标:

\[\sigma^2(p) = \frac{1}{K}\sum_{k=1}^{K}\|F_{\phi_k}(p) - \bar{F}(p)\|_2^2\]

HPatches 相位方差(表5):

主干 方法 相位方差
DINOv3 Uniform K=4 0.000082
DINOv2 Uniform K=4 0.000140

DINOv3 的相位方差几乎是 DINOv2 的一半——说明新模型在设计上已经部分考虑了相位稳定性。但即便如此,K=4 边缘化仍能进一步降低方差。


六、局限与未来

作者坦诚列出了局限性:

  1. 仅测试 DINOv2/DINOv3 主干:其他 ViT 变体(如 DeiT、Swin)是否适用?
  2. 密集预测任务:分类任务是否需要相位边缘化?(patch 的类别投票可能已经自然边缘化)
  3. 延迟成本:K=4 需要 4 次前向,实时场景可能受限
  4. K=4 的饱和:在部分数据集上 K=4 已经饱和,但其他数据集可能需要更多相位
  5. 无代码公开:论文提到代码库未公开

七、结语:一个被遗忘的变量

这篇论文的精妙之处在于:它没有提出一个新模型,而是发现了一个被忽视的变量。

ViT 的 patch 化是一个看似平凡的预处理步骤。但「平凡」不等于「无关」。当图像被切成 16×16 的网格时,网格的起始位置——向左移 0 像素还是 8 像素——会改变哪些像素被分到同一个 patch,进而改变自注意力看到的「邻居」关系。

在图像中心,这种影响可能很小。但在语义边界——路面和路缘的分界线、建筑物和天空的交界处——一个像素的 patch 归属可能决定它被预测为什么。

Uniform Phase Marginalization 的优雅在于:它不是对抗相位不稳定性,而是承认它,然后边缘化它。

就像统计学家面对测量误差时,不是试图消除误差,而是把误差当作随机变量,对结果做平均。这里相位就是误差,K=4 次推理就是四次独立测量,平均就是边缘化。

4 次前向传播,+0.82 mIoU,零训练成本。 对于已经部署的 ViT 密集预测系统,这可能是最便宜的性能提升方式。


参考

  • 论文:Ercan, "Phase Marginalization for Patch-Grid Instability in Vision Transformers", arXiv:2606.08132 (2026)
  • 主干:DINOv2, DINOv3(冻结编码器)
  • 数据集:GTA5→Cityscapes, SYNTHIA→Cityscapes, ADE20K, NYU Depth v2, HPatches
  • 默认配置:K=4, patch size 16, 反射填充

#ViT #VisionTransformer #相位边缘化 #语义分割 #密集预测 #DINOv2 #DINOv3 #测试增强 #TTA #计算机视觉

讨论回复

加载中...
正在加载回复...

正在加载回复...

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录