function-preserving

分类: 模型增长

Function-Preserving

定义

在扩展(增长)网络结构时,保证扩展后的新网络在初始化时与原网络的输入-输出映射完全一致的技术。即对任意输入 xx,有 fnew(x)=fold(x)f_{\text{new}}(x) = f_{\text{old}}(x)

数学形式

fθ(x)=fθ(x),xf_{\theta'}(x) = f_{\theta}(x), \quad \forall x 其中 θ\theta 是原始参数,θ\theta' 是扩展后的参数(维度更大),等式在扩展初始化时严格成立。

核心要点

保证扩展不引入训练不稳定性——新网络从与旧网络完全相同的功能点出发

常见实现方式:(1) 权重复制 + 缩放校正(如 Net2Net 的 Net2WiderNet);(2) 零初始化新增路径(如添加零初始化的残差分支);(3) 正交补完(如 LiGO)

与随机初始化新层相比,function-preserving 初始化收敛更快、训练更稳定

是模型增长(model growth)领域的核心约束条件

代表工作

Net2Net: 首次提出 function-preserving 的 wider/deeper 变换

Grow, Don’t Overwrite: 用 function-preserving expansion 解决微调中的灾难性遗忘

GROWN%3A Grow Only When Necessary for Continual Learning: 在持续学习中使用 function-preserving growth

相关概念

Net2Net

模型增长框架

持续学习