Vision Transformer 微调受益于非平滑组件 Vision Transformer Finetuning Benefits from Non-Smooth Components
ViT微调时应优先更新注意力和前馈层,因为它们的高可塑性带来更好性能
前置知识
Lipschitz连续性
Lipschitz连续性是衡量函数平滑程度的数学概念。如果存在常数K使得对任意输入x,y都有∥f(x)-f(y)∥ ≤ K∥x-y∥,则函数f是Lipschitz连续的,最小的K称为Lipschitz常数Lip(f)。在神经网络中,Lipschitz常数越小,网络对输入扰动越不敏感,即越平滑。这在泛化性和鲁棒性方面是有益的,但本文指出过度平滑会限制微调时的适应能力。
本文的核心论点是通过分析各组件的Lipschitz常数来理解它们的可塑性差异,这是连接理论分析与实验发现的关键桥梁
多头自注意力机制(MHA)
多头自注意力是Transformer的核心组件,通过Query、Key、Value三个矩阵计算token之间的关系。每个注意力头独立计算注意力权重,然后通过输出投影矩阵Oh合并。MHA使模型能够捕捉序列中不同位置之间的依赖关系,是Transformer区别于传统CNN的关键特性。在ViT中,MHA的参数量约占每层的33%。
MHA在本文的可塑性排名中位居第一,理解其工作原理对于理解为什么它具有最高可塑性至关重要
LayerNorm
LayerNorm是一种归一化技术,对每个token的特征维度进行归一化,公式为f(x) = γ⊙(x-μ)/σ + β,其中μ和σ分别是均值和标准差,γ和β是可学习的缩放和偏移参数。LayerNorm通过重新缩放特征来限制输入扰动的传播,这在时间序列中被用来缓解非平稳性。在ViT中,LayerNorm的参数量极少,仅占每层的0.02%。
LayerNorm在本文中被证明是最平滑的组件,参数量极少但对梯度有显著的约束作用
前馈网络(FFN)
前馈网络是Transformer中的另一个核心组件,由两个线性层和一个GeLU激活函数组成,公式为f(x) = W2·GeLU(W1x),其中W1的维度为d×4d,W2的维度为4d×d。FFN的隐藏维度通常是输入维度的4倍,使其参数量与MHA相当。FFN负责对注意力机制提取的特征进行非线性变换和存储知识。
FFN中的FC1和FC2层在可塑性排名中位居第二和第三,理解它们的特性有助于解释为什么微调FFN层效果也很好
参数高效微调(PEFT)
参数高效微调是一类只更新模型部分参数的方法,包括选择性方法(只微调某些层)、添加方法(插入小的适配器模块)、提示方法(学习软提示)和重参数化方法(如LoRA)。PEFT方法可以大幅降低微调成本,同时保持较好的性能。本文的研究属于选择性方法的范畴,系统地研究了单独微调每种组件的效果。
本文的研究为选择性PEFT方法提供了理论指导,帮助实践者选择应该微调哪些组件
分布偏移(Distribution Shift)
分布偏移指预训练数据和下游任务数据之间的差异。当预训练数据(如ImageNet)与目标数据集(如医学图像)分布不同时,直接使用预训练模型可能性能不佳,需要通过微调来适应。分布偏移是迁移学习中的核心挑战,也是本文研究微调策略的根本动机。
理解分布偏移有助于理解为什么需要微调以及为什么不同组件的适应能力很重要
研究动机
现有研究在理解Transformer平滑性方面取得了重要进展,主要集中在泛化性(Bartlett et al., 2017; Rosca et al., 2020)、训练稳定性(Zhai et al., 2023)和对抗鲁棒性(Miyato et al., 2018)方面。然而,平滑性在迁移学习中的作用仍然知之甚少。实践中,预训练数据和下游数据之间的分布差异会损害性能(Quionero-Candela et al., 2009),需要更新模型权重来适应这种偏移。随着模型规模不断扩大,微调成本急剧增加,这促使研究者开发参数高效微调方法(PEFT)。虽然已有研究通过实验比较了单独微调不同组件的效果——比如Touvron et al. (2022)发现只调整注意力模块对ViT有益,Zhao et al. (2024)研究了归一化层,Ye et al. (2023)研究了前馈层——但从理论角度理解这些组件的适应能力仍然非常有限。具体来说,为什么某些组件在微调中表现更好?是否有理论可以指导我们选择应该优先微调的组件?这些问题都没有得到系统性的回答。
本文的目标是本文的具体目标是弥合Vision Transformer各组件的内在功能特性与微调时观察到的经验性能之间的差距。作者希望回答一个核心的实践问题:在微调Transformer时,应该优先更新哪些组件,以及为什么?为此,作者提出了可塑性(plasticity)的概念,将其定义为组件输出对输入变化的平均变化率,以此来量化各组件适应新数据的能力。通过理论分析推导各组件可塑性的上界,并通过大规模实验验证理论预测,最终为实践者提供基于理论指导的微调策略。
与已有工作不同的是,本文的独特切入角度在于引入了可塑性这一新概念来分析Transformer组件。与传统的平滑性越好的假设不同,作者认为高可塑性(即低平滑性)实际上有利于微调。这一观点的关键洞察是:平滑性虽然有助于泛化和稳定性,但它限制了组件适应新数据的能力。具体来说,如果一个组件的Lipschitz常数很小,那么它对输入变化的响应也会很受限,这会约束梯度范数,导致在损失景观中下降缓慢。相反,高可塑性的组件(如注意力模块)能够产生更大的梯度范数,允许更快地探索损失景观并收敛到(局部)最小值。这一视角与Béthune et al. (2024)的理论相呼应——他们证明了对输入的Lipschitz正则化等价于约束参数梯度的范数。本文将这一理论洞察转化为可操作的实践指导,通过系统性的组件级研究,建立了从理论到实践的完整链条。
核心方法
本文的方法遵循直觉先行、理论支撑、实验验证的思路。首先,作者从神经网络平滑性的概念出发,提出用可塑性(plasticity)来衡量Transformer组件适应输入变化的能力。直觉上,如果一个组件对输入扰动非常敏感,输出变化很大,那么它就有更多的自由度来适应新的下游数据。这类似于大脑的神经可塑性——神经系统根据内在或外在刺激改变其活动的能力。然后,作者通过数学推导,为ViT的五种核心组件(LN1、MHA、LN2、FC1、FC2)建立了可塑性上界的理论排名。最后,通过在11个分类基准上进行超过1000次微调实验(使用86M参数的ViT-Base),验证了理论预测与实际微调性能的一致性。整个研究排除了组合微调的干扰因素,专注于组件级的单独微调分析。
本文的核心创新点是引入了可塑性(plasticity)的概念来分析Transformer组件。与传统观点认为平滑性越好越有利于学习不同,本文发现非平滑组件在微调中表现更好。定义1给出了可塑性的正式数学定义:P(f) = E_{(x,y)~ν} [∥f(x)-f(y)∥_F / ∥x-y∥_F],即组件f在输入分布上的平均变化率。如果P(f) < 1,组件在平均意义上收缩输入差异,具有低可塑性;如果P(f) > 1,组件放大输入变化,具有高可塑性。这一概念的关键洞察在于它与梯度的联系:由于∥∇_x f∥_F ≤ Lip(f),而P(f) ≤ Lip(f),所以高可塑性意味着更大的梯度范数上限。在微调过程中,权重更新θ ← θ - η∇_θL涉及梯度∇_θL = (∇_f L)·(∂f/∂θ),因此输入梯度和参数梯度是同一枚硬币的两面(Béthune et al., 2024)。这意味着高可塑性组件能够产生更大的参数梯度,从而实现更快、更好的适应。
方法步骤详情
本文的方法分为三个主要阶段。第一阶段是理论分析,通过推导各组件可塑性的上界来建立理论排名。具体来说,对于LayerNorm(命题1),可塑性上界为P(f) ≤ (1/σ)∥γ∥_∞,其中σ是最小标准差;对于前馈层(命题2),上界为P(f) ≤ ∥W∥_2(谱范数);对于多头自注意力(命题3和4),上界涉及多个项的组合,包括输出投影矩阵的范数、Value矩阵的范数、注意力矩阵的范数以及序列长度n。通过比较这些上界,理论上得出排名:MHA > FC1 ≈ FC2 > LN2 ≈ LN1。第二阶段是塑料性实证验证,使用12800张ImageNet预训练图像和11个下游数据集的图像,计算各组件的实际变化率。第三阶段是微调验证,在86M参数的ViT-Base上进行系统性的组件级微调实验,使用SGD优化器,4个学习率,3个随机种子,总共约1000次实验。
技术新颖性
本文的技术新颖性体现在多个层面。首先,在概念层面,可塑性(plasticity)是一个全新的视角,将神经科学中的神经可塑性概念引入到Transformer分析中。这与传统的Lipschitz连续性分析不同——Lipschitz常数是最大变化率的上界,而可塑性是平均变化率的期望。其次,在理论层面,本文为ViT的每种组件推导了可塑性上界,特别是对多头自注意力模块的分析。由于自注意力不是全局Lipschitz连续的(Kim et al., 2021),作者通过将序列限制在有界球内来获得紧的上界。命题4进一步通过利用图像能量有界的假设,将依赖关系从O(n)改进到O(√n)。第三,在实验层面,本文进行了迄今最大规模的ViT组件级微调研究,超过1000次实验覆盖了多种数据集、学习率和随机种子。第四,本文的发现挑战了平滑性有利于学习的传统观点(Miyato et al., 2018; Neyshabur et al., 2017),提出了相反但有理论支撑的新观点。
实验结果
本文的核心发现可以通过三个关键实验证据来总结。首先,在塑料性分析方面,实验验证了理论预测的排名。在ViT-Base上计算各组件的变化率分布,结果表明注意力模块(MHA)的可塑性最高,其变化率分布明显高于其他组件,随后依次是FC1、FC2、LN2和LN1。LayerNorm的可塑性低于1,表明它们在平均意义上收缩输入差异;而MHA和前馈层的可塑性高于1,表明它们放大输入变化。这一排名在所有11个基准上保持一致,并且在ViT-Huge(632M参数,序列长度n=257)上也得到验证,进一步证实了命题3中关于序列长度依赖性的预测。其次,在微调性能方面,高可塑性组件确实带来更好的性能。在11个基准上的平均准确率:MHA为90.8%,FC1为90.7%,FC2为90.3%,LN2为89.9%,LN1为89.8%。MHA相对于LN1的改进在统计上显著(Wilcoxon符号秩检验,5%置信水平)。在挑战性数据集如Cifar100、Clipart和Sketch上,MHA、FC1和FC2大幅超越LN1和LN2。第三,在优化动力学方面,梯度范数的排序与可塑性排名一致:MHA产生最大的梯度范数,导致验证损失下降最快。这验证了高可塑性允许更大梯度范数、更快探索损失景观的理论预期。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| 11个分类基准平均 | Top-1 准确率 | 90.8% (MHA) | 89.8% (LN1) | +1.0% |
| Cifar100 | Top-1 准确率 | 92.65% (MHA) | 91.43% (LN1) | +1.22% |
| Clipart | Top-1 准确率 | 77.31% (MHA) | 74.65% (LN1) | +2.66% |
| Sketch | Top-1 准确率 | 69.23% (MHA) | 65.76% (LN1) | +3.47% |
| 低数据regime (VTAB) | 平均准确率 | 94.4% (MHA) | 93.0% (LN1) | +1.4% |
| Adam优化器平均 | Top-1 准确率 | 82.2% (MHA) | 79.2% (LN1) | +3.0% |
| ViT-Large Clipart | Top-1 准确率 | 78.4% (MHA) | 76.8% (LN1) | +1.6% |
| 单组件微调 vs LoRA | 参数效率 | LN2: 89.4% (28K参数) | LoRA: 88.1% (400K参数) | 15倍参数更少 |
局限与改进
本文的局限性主要体现在以下几个方面。首先,实验范围限制在Vision Transformer上,虽然作者在DINOv3和GPT2上进行了塑料性分析验证,但没有进行这些模型的微调实验。对于大型语言模型(LLM),由于其规模和训练成本,微调策略可能需要不同的考量。其次,本文只研究了单独微调每种组件的情况,没有探索组合微调的策略。在实践中,可能需要同时微调多种组件,此时不同组件之间的相互作用可能会影响结论。第三,本文主要使用SGD和Adam优化器,没有探索其他优化策略(如学习率调度、自适应学习率)对不同组件的影响。作者在讨论中提到,有希望的方法是研究定制优化(例如自适应学习率和调度器)对每种模块性能的影响。第四,可塑性的度量依赖于预训练和下游数据的分布,作者承认不同值可能在蒸馏或指令版本的模型中观察到。第五,本文的理论分析虽然提供了有洞察力的上界,但上界与实际塑料性之间可能存在显著差距(如Ashlagi et al., 2021所示),特别是对于注意力模块,其上界比其他组件大几个数量级。
独立分析的弱点
本文存在几个值得改进的弱点。首先,理论分析的上界对于注意力模块非常宽松,数值上达到10的6次方量级,而实际塑料性要小得多。这表明当前的理论工具在捕捉注意力机制的平均行为方面还有改进空间,可能需要更精细的分析技术。其次,本文的塑料性度量是在固定预训练权重上计算的,没有考虑微调过程中权重变化对塑料性的影响。一个更全面的分析应该研究塑料性随训练进展的动态变化。第三,实验只在图像分类任务上进行,对于其他下游任务(如目标检测、语义分割、图像生成),不同组件的相对重要性可能不同。第四,本文没有探索最优的组合微调策略——虽然理论表明MHA最重要,但在实践中,同时微调MHA和FC1可能带来更好的性能,而这方面的系统研究缺失。改进方向包括:(1)发展更紧的注意力模块可塑性上界;(2)研究微调过程中塑料性的动态变化;(3)扩展到更多下游任务类型;(4)基于塑料性理论设计自适应的学习率策略。
未来方向
作者在讨论中提出了几个未来研究方向。首先,有希望的方法是研究定制优化(例如自适应学习率和调度器)对每种模块性能的影响。由于高可塑性组件能够产生更大的梯度,可能需要不同的学习率策略来充分利用这一特性。其次,作者指出由于我们的方法论和理论洞察自然延伸到仅解码器模型,我们的论文可以作为探索LLM适应性和塑料性的基础工作。这是一个重要的扩展方向,因为LLM的微调是当前的研究热点。基于本文的成果,还可以延伸以下方向:(1)设计塑料性感知的PEFT方法——根据各组件的塑料性自动分配微调预算;(2)研究塑料性与模型压缩和剪枝的关系——高塑料性组件是否在剪枝中更重要?(3)探索塑料性在持续学习中的作用——高塑料性是否有助于避免灾难性遗忘?(4)将塑料性分析扩展到多模态Transformer和混合专家模型(MoE);(5)研究预训练策略如何影响下游塑料性。
复现评估
本文在可复现性方面做得非常好。作者将代码和发现公开发布在GitHub仓库(github.com/ambroiseodt/vit-plasticity),社区可以自由使用和修改代码。论文提供了详细的实验细节,包括数据预处理协议(遵循Dosovitskiy et al., 2021和Kolesnikov et al., 2020)、微调超参数(见表7,包括优化器、批量大小、训练步数和学习率)、以及各组件的参数量(见表5)。使用的预训练模型是公开可用的ViT-Base、ViT-Large和ViT-Huge,分别有86M、307M和632M参数。数据集也是常用的公开基准。碳足迹方面,项目需要约3700 GPU小时,估计排放约259 kgCO2eq(在法国地区,由于依赖核能和可再生能源,排放相对较低)。总成本估计约4万美元。论文还提供了完整的理论证明(附录B)和详细的实验附录(附录E),包括所有基准上的塑料性分析图和梯度范数分析图。复现难度中等,主要挑战在于需要大量的GPU资源来进行1000次微调实验。
论文图表
该图展示了ViT-Base在Cifar10上的塑料性分析。左上角显示LayerNorm(平滑模块)的变化率较低且稳定,右上角显示多头注意力(非平滑模块)的变化率大且波动大。底部展示了损失景观:平滑组件导致梯度范数受限,在损失景观中下降缓慢;而非平滑组件产生高幅度梯度,允许探索损失景观并更快下降到(局部)最小值。
这是论文的核心概念图,直观地展示了塑料性与微调性能之间的关系,帮助读者理解为什么非平滑组件在微调中表现更好。