Browse this library

Chinese source article

2.1 · 参数与函数约束

比较参数重要性约束与函数空间蒸馏如何压缩旧任务信息,以及这些近似在何处失效。

View original Markdown ↗

如果旧数据不能保留, 最自然的办法是把旧任务压缩成一个约束: 哪些参数不能动太多, 或者模型在某些输入上的输出不能变太多. 这条路线存储小、实现直接, 也把持续学习的困难暴露得很清楚. 有限维约束只能保存旧函数的一个投影;它是否有效, 取决于这个投影与未来会被查询的区域是否一致.

参数约束以旧解 θ∗\theta^* 为锚点,

L(θ)=Lt(θ)+λ2∑iΩi(θi−θi∗)2.L(\theta)=L_t(\theta)+\frac{\lambda}{2}\sum_i\Omega_i(\theta_i-\theta_i^*)^2.

Ωi\Omega_i 表示参数 ii 对旧任务的重要性. 若所有 Ωi=1\Omega_i=1, 这只是普通 L2-SP;EWC 用 Fisher 对角近似局部曲率, Synaptic Intelligence 根据旧训练路径累计参数对损失下降的贡献, MAS 则用输出对参数的敏感度估计重要性. 三者都把复杂的旧损失面压成一个对角二次碗, 区别是怎样得到碗的曲率.

1. 从 Bayes 更新到局部二次近似

顺序 Bayes 的目标是 p(θ∣D1:t)∝p(Dt∣θ)p(θ∣D1:t−1)p(\theta\mid D_{1:t})\propto p(D_t\mid\theta)p(\theta\mid D_{1:t-1}). 真正的旧后验不可计算时, EWC 在旧解附近做 Laplace 近似, 并用 Fisher 代替 Hessian. 这给出了二次惩罚的来源, 也给出了边界: 后验需要近似单峰, 新解不能走得太远, 对角 Fisher 要能表达关键参数相关性. 任务相差很大时, 最佳路径可能沿弯曲谷底移动;固定在旧点的对角碗会同时过度约束无害方向、漏掉相关参数共同变化造成的伤害.

Online EWC 将多个旧任务的重要性累计成一个锚点, 避免状态随任务数线性增长. 衰减系数决定较早任务的证据保留多久. 衰减太快会忘掉早期任务, 完全不衰减又可能让重要性持续增大, 最终模型几乎不能学习. 这不是单纯的超参数问题, 它对应系统对历史价值的假设.

2. 函数空间约束更接近行为

Learning without Forgetting 保存旧模型作为教师, 在当前输入上约束新模型的 logits. 以温度 TT 的蒸馏为例,

LKD=T2 KL(pθ∗(T)(y∣x) ∥ pθ(T)(y∣x)).L_{KD}=T^2\,\mathrm{KL}\left(p_{\theta^*}^{(T)}(y\mid x)\,\|\,p_\theta^{(T)}(y\mid x)\right).

它不关心参数走了多远, 直接要求输出函数在查询点附近保持. 神经网络的重参数化很多, 因此函数距离通常比欧氏参数距离更符合目标. 问题转移到了查询点: 若当前任务输入和旧分布几乎不重叠, 新输入上的蒸馏不能约束旧区域;教师对新类别的高置信错误还可能阻碍学习.

特征蒸馏将约束放到中间层, 可以保护旧分类头依赖的表示. 不同层承担的信息不同, 全层匹配会压低可塑性;只匹配少数层又可能漏掉真正漂移的位置. 旧样本、生成样本或当前样本决定蒸馏覆盖的函数区域, 所以函数约束与回放经常组合: replay 提供查询点, 蒸馏提供比硬标签更丰富的旧决策信息.

3. 参数约束和函数约束怎样对应

在旧解附近线性化 logits, fθ(x)≈fθ∗(x)+Jx(θ−θ∗)f_\theta(x)\approx f_{\theta^}(x)+J_x(\theta-\theta^). 对输出平方距离取期望,

Ex∥fθ(x)−fθ∗(x)∥2≈(θ−θ∗)⊤Ex[Jx⊤Jx](θ−θ∗).\mathbb E_x\|f_\theta(x)-f_{\theta^*}(x)\|^2 \approx (\theta-\theta^*)^\top\mathbb E_x[J_x^\top J_x](\theta-\theta^*).

函数约束在局部也对应一个参数二次型. EWC 保留其对角近似, 蒸馏则通过具体输入隐式计算 Jacobian 方向. 两者差别因此落在三点: 使用哪个输入分布, 保留多少参数相关性, 以及局部线性近似能维持多远. 这比把 EWC 和 LwF 当成毫无关系的算法更容易解释组合方法.

PEFT 又改变了约束空间. 冻结底座、只训练 adapter 或 LoRA, 等于先把允许更新的方向限制在低维子空间. 它减少了直接改写底座参数的机会, 但多个 adapter 合并回同一权重后仍可能冲突;即使不合并, 路由错误也会让正确模块无法被调用. 因而「冻结」提供参数稳定, 不自动提供统一输出空间中的函数稳定.

4. 有效性应由哪类证据支撑

理论推导只能在局部近似和指定后验族下说明惩罚形式. Fisher 热图、梯度夹角和表示相似度属于机制证据. 真正判断保持能力, 还要在同一数据顺序、存储、训练步数与超参数选择协议下比较新旧任务曲线. 只看最终旧任务准确率会奖励拒绝学习, 所以必须同时报告当前任务学习速度和最终可塑性.

关键消融是改变近似质量. 增加 Fisher 样本、从对角升级到块对角、改变蒸馏输入覆盖, 看性能是否按预测改善. 如果重要性估计更稳定却不提升保持, 瓶颈可能在二次模型本身;如果加入少量代表旧样本便明显改善函数蒸馏, 瓶颈在查询分布. 这些实验能区分方法为何有效, 而不是只给出排行榜差异.

这条路线适合状态预算紧、旧数据受限、任务之间仍共享较多表示的场景. 当输入分布几乎不重叠、任务持续增长或决策需要精确恢复罕见样本时, 压缩约束逐渐失真, 回放与记忆 会提供更直接的旧风险估计. 正则化方法 继续给出 EWC、SI、MAS 和 LwF 的公式、手算与比较.

5. 正则强度其实在分配误差

λ\lambda 并非只控制「记住多少」. 在二次近似下, 它改变新任务梯度沿不同参数方向能走多远;在蒸馏里, 温度与权重又改变旧类别概率质量对新类别学习的牵制. 固定一个全局系数默认所有阶段冲突程度相同, 长数据流里很少成立. 自适应系数可以根据梯度冲突、保持集损失或后验不确定性调整, 但调节信号本身必须只依赖已见数据.

极端系数提供两个必要对照. λ=0\lambda=0 回到顺序微调, 显示无保护时的遗忘;足够大的 λ\lambda 接近冻结, 显示拒绝学习能得到的稳定上限. 一个合理方法应在二者之间同时改善旧任务和新任务, 而不是只向冻结端移动. 扫描整条曲线还能看出方法是否需要狭窄的最佳区间, 这会影响部署时的稳健性.

多个旧任务累计后, 单一锚点会压平多峰后验. 为每个任务保存独立锚点提高表达力, 状态随任务数增长;合并重要性节省存储, 又会遗失任务条件. 这正是本路线的根本交换: 用多少历史状态换多精确的函数约束. 当压缩误差成为主要瓶颈, 改进优化器无法恢复已经丢掉的信息.

还要观察保护是否只是推迟遗忘. 相邻任务之间表现稳定, 不代表锚点经过十几个阶段仍然可靠. 以任务年龄为横轴画保持曲线, 再将重要性估计的重合度、正则梯度占比与行为下降对齐, 可以看到近似从何时开始失真. 若正则梯度长期压过新任务梯度, 方法已经进入冻结区;若占比很低而旧能力下降, 约束没有覆盖关键方向.

同一诊断也应在多个任务顺序上重复, 避免把一次较平滑的课程误作稳健约束.

不同模型规模也要复测, 因为可用冗余方向会随容量改变.

保持集覆盖范围也应随规模扩大.

参考文献