当前目录
MAE Encoder 的视觉表征:Data Scale 与 Domain Alignment
整理几组船牌识别实验时,我关注到一个问题:同样使用 MAE 和 ViT,为什么改变预训练数据来源,会让下游识别表现出现很大的差异?
一种直觉是,预训练图像越接近船牌,下游任务就应该越容易。这种直觉有吸引力:船牌中的文字、排版、拍摄角度与自然图像显然不同。但我的小规模实验中,ImageNet-MAE 明显优于域内 MAE;SLP34K 原论文中的对比,却出现了域内 MAE 略胜的结果。
这促使我同时考虑两个因素:Data Scale,预训练数据的规模与覆盖;Domain Alignment,预训练图像与目标任务的视觉分布有多接近。 它们可能共同影响结果,也可能在不同条件下表现出不同的重要性。
这篇随笔整理的是已有实验和论文带来的思考。文中的个人结果属于开发阶段的历史测量,讨论范围限定在各自的实验协议内。
这里的“表征能力”是怎样被观察到的?
MAE 通过遮挡图像中的部分 patch、重建缺失像素进行自监督预训练,再将 encoder 用于下游任务。
我在这里使用的指标主要是识别系统微调后的准确率。它受到 encoder 初始化、后续训练、识别头和评测数据等因素的共同影响。因此,下面的对比提供的是不同初始化在特定下游配方中的可迁移性证据。
如果要更直接地讨论 encoder 自身的表征质量,还需要冻结 encoder 的探测实验,例如固定识别头的线性探测,或针对字符、布局和退化条件设计特征诊断。当前结果尚未覆盖这些问题。
小规模 Pilot:接近目标领域,仍可能学得不够
第一组证据来自 Pilot-v2:下游训练集有 3,500 张图像,验证集有 500 张,其中 IV 与 OOV 各 250 张。该历史协议中的 IV 指完整规范化标签在 Train 中出现;OOV 指完整标签未出现,但所有字符均在训练字符集中。这里沿用这一标签词表定义,与后来规范身份的划分分开讨论。
在固定下游训练背景下,三种初始化的结果如下:
| Encoder 初始化 | 预训练来源 | Max VAL Acc-IV |
|---|---|---|
| Random ViT | 无预训练 | 6.4% |
| Pilot-MAE | 小规模域内船牌图像 | 15.6% |
| ImageNet-MAE | 大规模通用图像 | 72.0% |
来源:个人实验记录 R-E-027。
这里的 Max VAL Acc-IV 是训练轨迹中的诊断最大值,各组可以来自不同 epoch;它没有替代事先固定的 checkpoint 选择规则。三组也都是单随机种子的比较,Pilot-MAE 一组复用了已完成的历史结果。
域内 MAE 相比随机初始化有收益。但在这套 Pilot 配方里,ImageNet-MAE 带来的收益大得多。这使我怀疑:当域内数据非常有限时,仅仅“图像来自同一个领域”,可能不足以支持有效的预训练。
一种可能的解释是,大规模通用数据提供了更广的视觉变化覆盖,小规模域内数据则未覆盖足够多的字体、背景、视角与图像退化。但这仍是解释性假设:实验改变的是预训练来源这一整套条件,规模、多样性、训练日程与其他来源差异尚未被分别控制。
另外,ImageNet-MAE 的训练终点 IV/OOV 准确率分别为 72.0% 和 20.4%。较好的 IV 识别表现与 OOV 泛化之间,仍有明显距离。
Train10K:更多域内数据之后,通用预训练仍然更强
第二组证据来自另一个固定的开发协议:Train10K、VAL1000、Test2000。两个 MAE 分支使用同一套后续识别与 semantic enhancement 配方,在 Val 上选择 checkpoint 后进行报告。
| Encoder 初始化 | 报告集 Acc-All | Acc-IV | Acc-OOV |
|---|---|---|---|
| T10K-MAE + SEM | 49.75% | 70.90% | 28.60% |
| ImageNet-MAE + SEM | 63.40% | 82.90% | 43.90% |
来源:个人实验记录 R-E-035。该记录中的 Test 是开发阶段的报告数据,不作为全新、未暴露的最终测试证据。
在这一组比较中,ImageNet-MAE 仍然占优。至少对当时的数据与训练方式而言,域内预训练并没有自动带来更好的下游结果。
这组结果也不能直接与上一组连成一条规模曲线。Pilot 的表格报告 Max VAL Acc-IV,这里报告 Val 选定模型的 Test 准确率;两组的数据、后续训练背景和评测条件都有变化。把 15.6% 与 70.90% 直接相减,会把这些变化一起算进“数据规模收益”。
SLP34K 原论文:域内预训练也有取得优势的条件
SLP34K 原论文 的 Table 3 提供了另一组参照。在该论文自己的实验条件下,同为 ViT-B/16、自监督 MAE 预训练并进行下游微调:
| MAE 预训练来源 | 论文报告 Acc |
|---|---|
| ImageNet(Table 3,row #10) | 80.88% |
| SLP34K 域内图像(Table 3,row #12) | 81.80% |
域内来源高出 0.92 个百分点。这是原论文报告的结果,并非我的实验,也不与上面的 IV/OOV 协议共用评测口径。
这个结果提示,域内预训练的优势确实可以在某些条件下出现。但它无法确定一个“超过多少张图像,域内 MAE 就会胜出”的阈值;也没有把数据规模、领域匹配程度与完整预训练配方的贡献逐一分离。
我目前怎样理解 Scale 与 Alignment?
我倾向于把两者看作潜在的互补因素。
数据规模与多样性可能影响模型能覆盖多少视觉变化;领域接近程度可能影响这些变化与下游任务的相关性。小而高度重复的船牌数据,可能没有充分发挥域内预训练的价值;规模更大、变化覆盖更充分的域内数据,则可能提供通用图像中不足的任务相关信息。这是一种值得检验的工作假设。
这里还需要澄清“alignment”的含义。本文主要讨论的是图像分布接近程度,例如文字密度、布局、背景、模糊和视角。图像来自船牌领域,并不自动意味着像素重建目标已经充分强调了字符区分或身份识别所需的信息。数据分布与学习目标,是两个可以分别研究的因素。
因此,看到一个 encoder 的下游结果较弱时,我会先检查它接触过什么数据、预训练了多久,以及后续任务如何使用这些特征,再判断问题可能出在哪里。
哪些比较能让这个想法更清楚?
下一步值得设计的比较包括:
- 在同一来源中改变数据量。 固定模型、预训练目标和下游配方,使用嵌套子集,并分别考察固定训练步数与固定数据曝光轮数的结果。
- 在接近的规模与预算下改变数据来源。 比较通用图像、船牌图像及其混合,记录字体、布局、背景与退化条件的覆盖。
- 区分表征探测与端到端微调。 同时观察冻结 encoder 的表现和完整识别系统的表现,检查收益出现在哪个阶段。
- 考察通用预训练后再做域内适配。 将它与直接使用通用模型、从头做域内预训练进行对照,避免把额外训练预算全部归因于领域对齐。
这些是从现有证据引出的研究问题,尚未构成新的实验结果。
对我而言,这几组比较最有启发的地方,是它们要求我更具体地描述一个预训练模型的能力:它的表现与数据来源、覆盖、学习目标和使用方式都有关系。理解这些条件,才能更清楚地判断下一次该增加数据、改变数据来源,还是调整模型学习和使用信息的方式。
参考资料
- Kaiming He et al. Masked Autoencoders Are Scalable Vision Learners, CVPR 2022.
- Baolong Liu et al. Towards Ship License Plate Recognition in the Wild: A Large Benchmark and Strong Baseline, AAAI 2025,Table 3。
- 个人研究记录 R-E-027:Pilot-v2 encoder 初始化来源对比。
- 个人研究记录 R-E-035:Train10K 固定协议方法验证。