Paper Reading · CVPR 2025 · Parameter-efficient fine-tuning

5% > 100%.

Mona 只训练少量视觉适配器,却在论文覆盖的八个视觉数据集与多种密集预测任务上超过全量微调。真正值得读的不是口号,而是多尺度深度卷积、输入分布调节、实验口径与公开实现之间的关系。

中文完整精读CVPR 正式版 11 页主表与消融重建固定提交代码审计

Dongshuo Yin, Leiyi Hu, Bin Li, Youqun Zhang, Xue Yang · CVPR 2025 · pp. 20071–20081
原图与 MathJax 3 内嵌 · 证据核查于 2026-09-26 · 未独立重跑训练

01 / Identity & evidence

先把版本与“100%”说清楚

这篇论文最初以 arXiv:2408.08345 发布,后正式发表于 CVPR 2025。本页以 CVF 的 11 页正式版本为方法与实验主依据,以官方仓库固定提交 5deeac9f4fc5e788b7fa0132ec568cd256afca12补充复现配置与实现审计。

证据固定版本用途与边界
CVPR 正式论文CVPR 2025, 20071–20081标题、作者、公式、全部图表与出版身份
Obsidian 现有 PDF2408.08345v2.pdf,10 页,SHA-256 dfe33b…a6d8c5旧 arXiv v2;保留归档与 PDF++ anchors,不把旧 metadata 当最新出版状态
官方代码5deeac9f…fca12当前公开实现快照;不等于论文训练时的私有环境
官方仓库 README2026-09-26 核查训练入口、预训练权重与 CVPR 信息
Paper Verified · 正文或表格直接支持Author Claim · 作者解释但证据有限Our Interpretation · 本页推理Implementation Audit · 固定代码行为Research Extension · 未验证建议
标题不是“训练 5% 的全模型参数”。

论文表格的百分比是可训练 backbone 参数占预训练 backbone 参数的比例。检测/分割 neck 与 head 仍然训练,且 Mona 增加新结构。COCO 的 Mona 为 4.16M、4.67%;Swin-L 任务为 5.08M、2.56%。因此“5% > 100%”是简洁口号,不是所有训练参数或总计算量的严格比例。

作者与机构:正式版把 Dongshuo Yin 标为上海交通大学与清华大学双重署名,并说明工作始于上海交大、完成于清华;Leiyi Hu 属中国科学院大学;Bin Li 与 Youqun Zhang 属阿里巴巴;Xue Yang 属上海交大并明确为通讯作者。现有笔记只写 institute: Tsinghua University,因此元数据不完整。

CVF 正式条目arXiv官方仓库

02 / Research motivation

研究缺口:视觉 PEFT 缺的不是更低秩,而是视觉归纳偏置

全量微调的问题

每个任务都保存整套 backbone,存储与训练成本高;在 Pascal VOC 这类低数据设置上,198M Swin-L 全量更新还可能过拟合。

旧视觉 adapter 的问题

多数沿用 NLP 的线性 down/up projection。它们能省参数,却没有显式利用二维邻域与尺度结构,在 COCO、ADE20K 等密集预测上仍低于 full fine-tuning。

核心假设

冻结预训练层后,adapter 先校正输入分布,再以多个卷积核观察局部尺度,能以更少参数保留并重组预训练视觉知识。

真正填补的 gap:不是第一个视觉 PEFT,也不是第一个密集预测 adapter。Mona 的贡献是证明一个带视觉滤波器的 adapter,在同一套 Swin / OpenMMLab 体系下,能跨分类、水平检测、旋转检测、语义分割与实例分割同时超过 full fine-tuning。

证据边界:“full fine-tuning 不再最优”只被这组数据集、backbone、训练 recipe 支持。论文没有不同随机种子的均值/方差、显著性检验、现代 ConvNet/ViT 大范围复现,也没有与后来方法比较。更强的普遍性措辞应视为 Author Claim。

Figure 1:Mona 与 full fine-tuning 及多种 PEFT 在 COCO 和 ADE20K 上的对比
Figure 1 · 原论文图。横轴 ADE20K mIoU,纵轴 COCO box mAP。Mona 位于右上角;蓝色虚线是 full fine-tuning。图只展示两个任务的一次报告值,不能替代误差条或跨 seed 检验。
03 / Problem formulation

冻结谁,训练谁,目标函数是什么?

给定下游数据集 \(D=\{(x_i,y_i)\}_{i=1}^{N}\),全量微调更新模型全部参数;adapter-tuning 固定预训练参数 \(\theta_F\),只优化 Mona 与 backbone 外任务模块的参数 \(\omega\)。

\[\theta^{\ast}=\underset{\theta}{\operatorname{argmin}}\;\mathcal{L}(D;\theta)\]
\[\omega^{\ast}=\underset{\omega}{\operatorname{argmin}}\;\mathcal{L}(D;\theta_F,\omega),\qquad \nabla_{\theta_F}\mathcal{L}=0\]
符号含义实际对象
\(x_i,y_i\)样本与监督分类标签、框/旋转框、实例 mask 或语义像素标签
\(\theta\)full fine-tuning 的全模型参数backbone 及任务模块一起更新
\(\theta_F\)adapter 模式下固定的预训练参数ImageNet-22K 监督预训练的 Swin backbone 原参数
\(\omega\)可训练参数每个 Swin block 两个 Mona,以及 neck/head 等 backbone 外参数
\(m,n\)输入通道与中间宽度\(n=64\);\(m\) 随 Swin stage 为 192/384/768/1536 等

论文比较的是两种训练方案最终达到的验证/测试性能,并未证明 PEFT 的理论最优解高于 full fine-tuning。若是同一架构,限制可训练参数可以产生正则化效果;但 Mona 还新增了卷积 adapter,和原始 full 模型并非严格的参数子空间包含关系。因此“少参数更好”只能作为结构化正则与视觉归纳偏置的经验解释,不能由参数空间大小直接推出。

04 / Mona architecture

每个 Swin block 插入两个 Mona

Figure 2:Swin block 内 Mona 插入位置和 Mona 模块结构
Figure 2 · 原论文图。一个 Mona 接在 W/SW-MSA 残差之后,另一个接在 MLP 残差之后。右图展示 scaled LayerNorm、64 维投影、3/5/7 深度卷积、1×1 聚合、GeLU 与多条 skip connection。
  1. 输入调节。固定 backbone 不能追随新数据分布,Mona 先组合归一化输入与原输入。
  2. 降维。线性映射 \(D_l:\mathbb{R}^{m}\rightarrow\mathbb{R}^{n}\),统一压到 \(n=64\)。
  3. 多尺度视觉滤波。并行 \(3\times3,5\times5,7\times7\) depthwise conv,各通道独立提取二维局部模式,平均后加残差。
  4. 通道聚合。\(1\times1\) pointwise conv 混合 64 个通道,再加残差。
  5. 恢复维度。GeLU(公开代码另有 \(p=0.1\) 的 dropout)后经 \(U_l:\mathbb{R}^{n}\rightarrow\mathbb{R}^{m}\),与模块原输入相加。
\[x_{\mathrm{norm}}=s_1\odot\operatorname{LN}(x_0)+s_2\odot x_0\]

论文把 \(s_1,s_2\) 描述成两个 learnable weights;公开实现是长度为 \(m\) 的可学习向量 gamma 与 gammax,因此用逐通道乘法 \(\odot\) 更贴近代码。初始化分别为 \(10^{-6}\mathbf{1}\) 与 \(\mathbf{1}\):开始训练时近似保留原特征,让归一化支路逐步进入。

\[f_{\mathrm{dw}}(z)=z+\frac{1}{3}\sum_{k\in\{3,5,7\}}\operatorname{DWConv}_{k\times k}(z),\qquad f_{\mathrm{pw}}(z)=z+\operatorname{Conv}_{1\times1}(z)\]
\[x_{\mathrm{out}}=x_0+U_l\!\left(\operatorname{GeLU}\!\left(f_{\mathrm{pw}}\!\left(f_{\mathrm{dw}}\!\left(D_l(x_{\mathrm{norm}})\right)\right)\right)\right)\]

为什么 depthwise + pointwise?depthwise 的空间成本与通道数线性增长,适合低成本加入二维局部归纳偏置;pointwise 再负责通道混合。三个尺度并非“人眼认知”的数学模型,而是 Inception 风格多尺度滤波的工程选择。论文消融支持 \([3,5,7]\) 在 VOC 上最好,但没有证明视觉系统确实按这种方式工作。

05 / Parameter analysis

少参数来自固定宽度 64,而不是结构免费

论文按两个缩放标量计数:LayerNorm 与缩放为 \(2m+2\),down/up projection 为 \(2mn+m+n\),三组 depthwise conv 为 \(83n\),pointwise conv 为 \(n^2+n\)。单个 Mona:

\[P_{\mathrm{Mona}}=(2n+3)m+n^2+84n+2\]

每个 Swin block 有两个 Mona,因此:

\[P_{\mathrm{block}}=2\bigl((2n+3)m+n^2+84n+2\bigr),\qquad n=64\]
Implementation Audit · 论文公式与代码计数不完全一致。

代码中的 gamma 与 gammax 各有 \(m\) 个元素,不是两个标量,所以 scaled-normalization 部分是 \(4m\)(LayerNorm 为 \(2m\),两个向量再提供 \(2m\)),单模块比论文公式多 \(2m-2\) 个参数。整体量级仍小,但严格复现参数表时应以运行模型逐项统计,而不是直接套公式。

中间宽度固定为 64,使 backbone 越大时 Mona 占比越低:论文 Table 6 中 Swin-T/B/L 分别为 4.87%、4.06%、2.56%。但推理仍执行两次 Mona/block;参数存储低不等于 FLOPs、显存、吞吐或延迟同比例下降。论文主动承认 adapter 引入额外 inference cost,却没有给实际时延。

06 / Training & inference

论文没有独立补充材料;公开配置补足了一部分 recipe

任务模型/数据公开 Mona 配置指标
实例分割Swin-B + Cascade Mask R-CNN;COCO 118k/5kAdamW, lr \(10^{-4}\), \(\beta_1=0.9,\ \beta_2=0.999\), weight decay 0.05;36 epochs,step 27/33;混合精度;多尺度+crop;README 文件名暗示总 batch 16box AP / mask AP
语义分割Swin-L + UperNet;ADE20K 20k/2kAdamW, lr \(3\times10^{-4}\), \(\beta_1=0.9,\ \beta_2=0.999\), weight decay 0.01;poly 160k iters;linear warmup 1500;8 GPU × 2 images;SyncBNmIoU
水平检测Swin-L + RetinaNet;VOC 0712 约16k/5kAdamW, lr \(10^{-4}\), \(\beta_1=0.9,\ \beta_2=0.999\), weight decay 0.05;runner 写 4 epochs 且注释“actual 12”;step 3;混合精度;输出 stage 1–3box AP
分类Swin-L;Flowers102 / OxfordPets / VOC20074 GPU × 4 images;AdamW lr \(3.125\times10^{-5}\),weight decay 0.05,\(\varepsilon=10^{-8}\),100 epochs;dynamic loss scale;224 croptop-1 / top-5
旋转检测Swin-B;DOTA-v1.0 / STAR;Oriented R-CNN, KLD, H2RBox-v2主仓库不含这些配置,README 指向外部 STAR-MMRotate 仓库;固定 commit、统一预处理和完整超参未在正文给出oriented box AP

所有 backbone 使用 ImageNet-22K 监督预训练 Swin;COCO、DOTA、STAR 用 Swin-B,其余主要用 Swin-L。论文使用 MMDetection、MMSegmentation、MMRotate 与 MMClassification。Mona 的 inference 不含采样、beam search 或 test-time optimization:训练完成后,只做常规前向和任务头解码。

公平比较需要注意的口径

07 / Main results

密集预测的提升最有信息量

Table 1 · COCO,Swin-B + Cascade Mask R-CNN。括号为相对 full 的百分点差。
方法训练 backbone 参数占比Box APMask AP
Full89.14M100%52.4045.10
Fixed00%48.00 (−4.40)41.60 (−3.50)
BitFit0.21M0.23%50.1043.60
NormTuning0.06M0.07%50.1043.50
Partial-112.95M14.53%50.6043.70
Adapter3.19M3.58%52.1045.00
LoRA3.06M3.43%50.4043.90
AdaptFormer1.60M1.79%51.7044.60
LoRand4.68M5.23%51.9044.70
Mona4.16M4.67%53.40 (+1.00)46.00 (+0.90)
Table 2 · VOC / ADE20K,Swin-L。
方法训练 backbone 参数占比VOC Box APADE20K mIoU
Full198.58M100%83.7051.18
Fixed00%83.8046.84
BitFit0.30M0.15%85.4048.37
NormTuning0.10M0.05%85.5047.89
Partial-128.77M14.53%85.5047.44
Adapter4.61M2.33%86.7050.78
LoRA4.57M2.31%85.4050.34
AdaptFormer2.34M1.18%86.6050.83
LoRand5.20M2.62%86.9050.93
Mona5.08M2.56%87.30 (+3.60)51.36 (+0.18)
+3.60 pp

VOC 提升最大。所有 PEFT baseline 都超过 full,说明这更像低数据下的正则化优势,而不是 Mona 独有现象。

+1.00 / +0.90

COCO box / mask AP 相对 full。这里其他 PEFT 多数仍落后,最能支持 Mona 的视觉结构有价值。

+0.18 pp

ADE20K 的领先很小。没有方差时,只能说报告值更高,不能说显著更好。

Table 3 · 分类 top-1 / top-5(%)。
方法Flowers102OxfordPetsVOC2007平均
Full99.5772 / 99.853694.6579 / 99.625784.1276 / 96.950792.7876 / 98.8100
Fixed99.3007 / 99.837494.2219 / 99.918285.0162 / 98.949992.8463 / 99.5685
BitFit99.5772 / 99.821195.3393 / 99.918285.6018 / 99.333693.5061 / 99.6910
NormTuning99.5284 / 99.837495.2303 / 99.891085.5210 / 99.252893.4266 / 99.6604
Partial-199.6585 / 99.837495.3938 / 99.863784.9354 / 98.606693.3292 / 99.4359
Adapter99.5934 / 99.853695.3393 / 99.809287.0355 / 99.131793.9894 / 99.6144
LoRA99.5446 / 99.853695.1485 / 99.891085.7028 / 99.313493.4653 / 99.6860
AdaptFormer99.5609 / 99.853695.2576 / 99.836586.2884 / 99.273093.7023 / 99.6544
LoRand99.5725 / 99.853695.3515 / 99.891086.6534 / 99.374193.8591 / 99.7062
Mona99.6764 / 99.902495.4765 / 99.918286.9709 / 99.505794.0413 / 99.7592

Mona 的平均 top-1 最高,但 VOC2007 top-1 低于 Adapter(86.9709 vs. 87.0355),OxfordPets top-5 与多方法并列。这修正了“所有单项都最好”的强读法;作者正文准确说在 Flowers102、OxfordPets 与平均结果领先。

Table 4 · 旋转检测 AP(%)。
方法DOTA / Oriented R-CNNSTAR / Oriented R-CNNSTAR / KLDSTAR / H2RBox-v2
Full78.3138.6330.3330.29
Fixed74.1030.8323.8126.01
BitFit76.0534.5128.1729.41
NormTuning75.8233.1327.1227.79
Partial-175.7233.9628.5328.89
Adapter78.2737.9730.3530.24
LoRA75.9133.8027.4828.95
AdaptFormer77.4335.9529.3630.11
LoRand77.6536.4429.8328.85
Mona78.4439.4530.9031.34
Figure 3:Pascal VOC 上训练损失曲线
Figure 3 · 原论文图。Mona 在作者的 VOC 训练曲线上损失更低、后段下降更明显。作者据此解释更快收敛;但图没有多 seed 阴影,训练 loss 也不是泛化性能。
08 / Ablation

消融支持“组成有效”,但还没有把每个机制完全隔离

消融设置VOC Box AP说明
中间宽度32 / 64 / 12886.8 / 87.3 / 87.1参数更多不保证更好;64 是经验甜点
scaled norm无 / 有,kernel [3,5,7]86.9 / 87.3+0.4 pp;没有单独拆 LN、残差支路、缩放向量
kernel[3] / [5] / [7]86.9 / 87.0 / 86.7单尺度都低于多尺度
kernel[3,3,3] / [3,5] / [5,7]86.8 / 86.9 / 87.1[3,5,7] 报告值最高
模型规模Swin-T full→Mona80.1→83.5+3.4 pp;Mona 4.87%
模型规模Swin-B full→Mona81.6→86.5+4.9 pp;Mona 4.06%
模型规模Swin-L full→Mona83.7→87.3+3.6 pp;Mona 2.56%
backbonePVT-L full / Adapter / LoRA / AdaptFormer / LoRand / Mona76.1 / 78.9 / 77.6 / 79.2 / 79.3 / 80.3显示不只适用于 Swin;仍只有一个额外 backbone/任务

实际证明:scaled normalization 与多尺度 kernel 的组合在 VOC 单一设置中有效;64 维优于两个邻近候选;结果能迁移到 PVT-L。没有证明:“多认知”是唯一原因、三个 kernel 都必须、逐通道缩放优于标量、dropout 的贡献、或提升来自更好归纳偏置而非额外深度/优化 recipe。

09 / Paper vs. implementation

公开实现足以运行主路径,但复现口径有几处断点

核查项论文固定提交中的行为影响
scaled weights两个 learnable weights,参数式只加 2gamma/gammax 是两个长度 (m) 的向量代码比公式每模块多 (2m-2) 参数;表达力也不同
未写出的 dropout公式为 GeLU 后上投影GeLU 后 Dropout(p=0.1)训练正则化的一部分;不计参数但影响复现
factor中间维度固定 64构造器收 factor=4/8,但始终 Linear→64,参数未使用配置接口容易误导;改变 factor 不改变宽度
冻结机制固定预训练 backbone,只训 Monainit_weights 后凡名称不含 my_module 的 backbone 参数都冻结与论文意图一致;neck/head 仍由框架训练
插入位置MSA 与 MLP 后各一个 Mona两个模块均在对应残差加和之后调用与 Figure 2 一致;不是并联 AdaptFormer
分类入口100 epoch 分类实验README 训练命令引用顶部写“Only for evaluation”的配置;checkpoint interval=101需要先验证是否会保存最终 checkpoint、是否缺训练专用文件
旋转检测DOTA/STAR 四列主结果主仓库无 MMRotate 配置,只链接另一个活跃仓库,未固定 revision跨时间复现可能漂移;主结果不在一个自包含版本中
路径与环境OpenMMLab toolkits权重与数据路径大量硬编码为 /pretrained_model/...、data/...README 要求手改;不是开箱即复现

仓库是三个 OpenMMLab / Swin 代码库的大型快照,几乎重复维护 Mona backbone。优点是能接近原环境;缺点是依赖版本旧、实现分散,容易让修复只落在某一任务副本。论文没有公开完整运行日志、预训练权重哈希或每张表对应 commit。

10 / Reviewer commentary

一篇好用、结论略强的系统型 PEFT 论文

Strengths

问题明确;模块简单;将空间滤波引入视觉 adapter 的动机合理;覆盖八个数据集、五类任务与两个 backbone;在 COCO/ADE20K 等密集预测上突破 full 的结果比只做分类更有说服力。

Weaknesses

缺少多 seed 与统计;没有训练/推理成本曲线;参数公式与代码缩放向量不一致;dropout 未在方法中说明;旋转检测复现链分散;超参数可能对 full 与 PEFT 的公平性产生显著影响。

What the paper proves

在作者 recipe 下,Mona 的单次报告值跨任务超过 full。它没有证明任意视觉模型、数据规模和预算下 PEFT 都优于 full,也没有证明多尺度卷积是唯一解释。

建议补充的实验

  1. 所有关键表至少 3–5 seeds,报告均值、标准差、paired bootstrap 或置信区间。
  2. matched-compute:为 full、LoRA、Adapter、Mona 分别调学习率/正则,并给吞吐、峰值显存、训练 GPU-hours、推理延迟和磁盘大小。
  3. 完整 factorial ablation:LN、原输入分支、标量/逐通道 scale、DWConv、PWConv、dropout、插入位置分别拆开。
  4. 跨架构扩展到 ViT/ConvNeXt/InternImage,跨预训练扩展到自监督与视觉语言预训练,并测试 domain shift 和 few-shot 曲线。
  5. 把 Table 1 的“训练 backbone 参数比例”和全系统可训练参数、FLOPs、激活显存并列,避免标题带来误读。
11 / Research extensions

从 Mona 可以继续走向“预算感知的视觉适配”

动态尺度路由

Research Extension:让不同 stage/样本选择 3、5、7 或空操作,以延迟预算约束训练;比较固定平均、soft gate 与离散路由。

结构重参数化

Research Extension:探索把训练时多分支卷积折叠为单个等效 depthwise kernel,减少部署延迟;需要处理残差与最大核对齐。

任务共享与组合

Research Extension:同一冻结 backbone 保存多个 Mona,研究 adapter fusion、冲突检测与按场景组合,而不只比较单任务 checkpoint 存储。

对程序化材质研究的启发不是直接拿 Mona 生成 graph,而是把可学习的视觉适配层放入材质图评价器、VLM 图像编码器或 renderer-feedback 网络,让少量任务参数适配新材质域。可进一步测试:多尺度纹理统计是否改善节点检索、图修复奖励或 test-time search 的候选排序。以上均未被原论文验证。

12 / References

一手资料与复现入口

  1. CVF Open Access:正式论文条目、PDF 与 BibTeX
  2. arXiv:2408.08345:版本历史与摘要。
  3. 官方 Mona 仓库:训练入口、配置和实现;本页固定提交 5deeac9f4fc5e788b7fa0132ec568cd256afca12。
  4. STAR-MMRotate 外部 PEFT 配置:官方 README 指向的 DOTA/STAR 实现入口;本页未把其可变 main 分支冒充固定实验版本。
  5. Yin et al., “1% vs 100%: Parameter-Efficient Low Rank Adapter for Dense Predictions,” CVPR 2023:LoRand baseline 与视觉 dense prediction PEFT 背景。
  6. Chen et al., “AdaptFormer,” NeurIPS 2022;Hu et al., “LoRA,” 2021;Houlsby et al., “Parameter-Efficient Transfer Learning for NLP,” ICML 2019:主要结构 baseline。

页面所有实验数字均来自 CVPR 正式版 Tables 1–8;实现结论来自上述固定代码提交。未运行论文训练、未验证 checkpoint 数值、未把一次静态代码审计等同于独立复现。