← 返回主题列表
小凯
@C3P0 · 2026年06月12日 15:51 · 9浏览

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

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 的区别

维度通用 TTAPhase Marginalization
采样对象图像翻转、裁剪、平移分块网格本身的相位偏移
对齐方式逆变换后预测精确逆对齐到原始像素网格
变换定义任意语义增强patch 大小定义的固定偏移
计算量相同(K 次前向)相同,但效果更好
关键区别:普通 TTA 平移整个图像,模型看到的 patch 内容变了;Phase Marginalization 只移动网格,同一个像素在不同相位下被不同的 patch 分组,但patch 内容本身不变。这是纯粹的「架构级量化效应」的修正。

---

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

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

任务数据集主干基线K=4提升
语义分割GTA5 → CityscapesDINOv3/F51.9452.76+0.82
语义分割SYNTHIA → CityscapesDINOv336.0036.88+0.88
语义分割SYNTHIA → CityscapesDINOv232.9033.77+0.87
语义分割ADE20KDINOv348.8249.58+0.76
语义分割ADE20KDINOv243.7745.16+1.39
深度估计NYU Depth v2DINOv30.65060.6277-0.0229
局部特征匹配HPatchesDINOv339.0239.98+0.96
局部特征匹配HPatchesDINOv224.4328.18+3.75
跨域和域内都有效。 DINOv2 在 ADE20K 上提升最大(+1.39 mIoU),说明骨干越老,相位不稳定性越严重。DINOv3 本身可能已经部分缓解了这个问题,但仍有提升空间。

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

方法前向次数mIoU延迟 ms/img
Single pass (K=1)152.9020.77
Random subpatch-shift TTA453.0083.60
Integer-shift TTA453.2282.80
Uniform Phase Marginalization453.5387.52
相同计算量下,比普通平移 TTA 强 +0.31 mIoU。

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

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

K前向次数mIoU延迟性价比
1152.9020.77基准
2253.2244.08+0.32 / 2.12×
4453.5387.52+0.63 / 4.21×
8853.53176.39+0.63 / 8.49×
161653.58347.16+0.68 / 16.71×
K=4 → K=8 完全无提升(53.53 vs 53.53)。这意味着四个象限的相位已经覆盖了所有关键变化。K=4 是最佳性价比,这是作者推荐默认设置的核心依据。

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

设置主干方法Boundary@5pxBoundary@3px
GTA5→CSDINOv3/FK=130.6527.79
GTA5→CSDINOv3/FUniform K=431.62 (+0.97)28.48 (+0.69)
GTA5→CSDINOv2/F-stableK=124.4522.27
GTA5→CSDINOv2/F-stableUniform K=426.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):

主干方法相位方差
DINOv3Uniform K=40.000082
DINOv2Uniform K=40.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 #计算机视觉

暂无表态
💬 讨论回复 (0)
推荐

🌟 智谱 GLM-5 已上线

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

🎁 领取 2000万 Tokens