02 Optimal Brain Damage 详解:二阶信息剪枝的起点
2026/7/6 5:04:45 网站建设 项目流程

一、论文基本信息

论文名称:Optimal Brain Damage
作者:Yann LeCun, John S. Denker, Sara A. Solla
会议:Advances in Neural Information Processing Systems 2,NIPS 1989
论文链接:https://proceedings.neurips.cc/paper_files/paper/1989/file/6c9882bbac1c7093bd25041881277658-Paper.pdf

Optimal Brain Damage,通常简称为OBD,是神经网络剪枝领域最经典的论文之一。

这篇论文的重要性不在于它能直接处理今天的 ResNet、ViT 或大语言模型,而在于它提出了一个影响深远的思想:剪枝不应该只看权重大小,而应该看删除某个参数后,损失函数会增加多少。

换句话说,OBD 把模型剪枝从简单的经验规则,推进到了基于损失函数敏感度的理论分析框架。

它也是后来很多二阶剪枝方法的起点,比如 Optimal Brain Surgeon、基于 Hessian 的剪枝方法、SparseGPT、GPTQ 等方法,在思想上都可以看到 OBD 的影子。


二、为什么这篇论文重要?

在早期神经网络研究中,人们已经发现一个现象:训练好的神经网络中存在大量冗余参数,删除一部分连接后,模型性能并不会明显下降。但是,关键问题是:到底应该删除哪些参数

最简单的想法是删除绝对值小的权重。例如,如果某个权重 (w_i) 非常接近 0,就认为它对输出影响不大,可以剪掉。这种方法可以写成:。但是,OBD 指出:权重大小本身并不能完全反映参数重要性。

一个权重虽然很小,但如果损失函数对它非常敏感,那么删除它仍然可能造成较大损失。
一个权重虽然较大,但如果损失函数对它不敏感,那么删除它也许影响不大。

因此,OBD 关心的不是:这个权重有多大

而是:把这个权重删除以后,损失函数会增加多少?

这就是 OBD 的核心思想。


三、OBD 想解决什么问题?

假设我们已经训练好了一个神经网络,网络参数为:

模型在训练集上的损失函数为:

现在我们希望删除一些参数,使模型变得更小。

删除参数 (w_i) 可以理解为将它置为 0:

对应的参数变化为:

如果同时删除多个参数,就可以得到一个参数扰动向量:

剪枝后的损失变化可以表示为:

OBD 的目标就是估计这个

如果删除某个参数后很小,说明这个参数不重要,可以剪掉。

如果删除某个参数后很大,说明这个参数重要,不应该剪掉。

因此,OBD 的剪枝问题可以理解为:

也就是删除那些对损失函数影响最小的权重。


四、为什么不能直接计算损失变化?

理论上,我们可以对每个参数都做一次实验:

  1. 设置为 0;

  2. 重新计算模型损失;

  3. 观察损失增加多少;

  4. 选择损失增加最小的参数删除。

但是,这种方法计算成本非常高。假设模型有 (n) 个参数,如果每个参数都单独测试一次,就需要进行 (n) 次前向传播。对于小模型来说也许还能接受,但对于稍大一点的网络,这种方法就会非常低效。更重要的是,如果还要考虑多个参数组合的影响,搜索空间会变得极其庞大。因此,OBD 希望用一种近似方法快速估计:。这个近似方法就是Taylor 展开


五、Taylor 展开:OBD 的数学基础

对于损失函数,在当前参数附近进行 Taylor 展开:

其中:

  • 是一阶梯度;

  • 是 Hessian 矩阵中的元素;

  • 是参数扰动;

  • 是三阶及以上高阶项。

因此,损失变化为:

近似为:

这就是 OBD 的基本出发点。


六、为什么一阶项可以忽略?

OBD 假设当前模型已经训练到一个局部极小点附近。在局部极小点处,损失函数对参数的一阶梯度近似为 0:

因此,一阶项可以忽略:

于是损失变化主要由二阶项决定:

这一步非常关键。它说明 OBD 并不是根据权重本身大小判断重要性,而是根据损失函数局部曲率来判断参数敏感度。如果某个方向的曲率很大,说明损失函数对这个方向非常敏感,参数在这个方向上稍微变化,就会导致损失明显增加。如果某个方向的曲率很小,说明损失函数对这个方向不敏感,即使参数发生变化,损失也不会明显增加。这就是二阶信息剪枝的基本思想。


七、Hessian 矩阵是什么?

在 OBD 中,Hessian 矩阵非常重要。Hessian 矩阵定义为损失函数对参数的二阶偏导数组成的矩阵:

其中:

  • 对角线元素表示损失函数对单个参数(w_i) 的二阶敏感度;

  • 非对角线元素表示参数之间的相互影响。

如果完整使用 Hessian 矩阵,那么损失变化为:。这个公式很优雅,但问题也很明显:完整的Hessian 矩阵太大了。如果模型有 (n) 个参数,那么 Hessian 矩阵大小是:。当 (n) 很大时,计算和存储完整 Hessian 都非常困难。


八、OBD 的关键近似:忽略 Hessian 非对角项

为了让方法可计算,OBD 做了一个重要近似:假设 Hessian 矩阵是对角矩阵,忽略不同参数之间的二阶交互项。

也就是说,只保留:

忽略:

于是,损失变化可以从:

简化为:

如果只删除单个权重 (w_i),那么:

所以:

于是删除权重带来的损失变化近似为:

OBD 将这个值称为参数的saliency,也就是显著性或重要性:

这就是 OBD 最核心的公式。


九、OBD 的核心公式如何理解?

OBD 的重要性评分为:

它的含义是:一个参数是否重要,不仅取决于它自身大小,还取决于损失函数对它的敏感程度。

如果很小,那么删除它造成的变化可能较小。
如果很小,说明损失函数对这个参数不敏感,删除它造成的损失也可能较小。

只有当权重较大,并且损失函数对该参数非常敏感时,才会比较大。因此,OBD 比简单幅值剪枝更合理。


十、OBD 为什么叫 Brain Damage?

“Brain Damage” 直译是“大脑损伤”。

这个名字听起来有点奇怪,但在神经网络语境下,它是一个形象说法:人的大脑即使受到一定损伤,也可能仍然保持部分功能;神经网络删除一部分连接后,也可能继续保持较好的预测能力。

“Optimal Brain Damage” 则表示:以尽可能小的损失,对神经网络进行最优损伤。也就是在删除参数时,希望损失函数增加最少。从这个角度看,OBD 的名字其实非常贴切。



十一、OBD 的三个核心假设

OBD 之所以能够得到简洁的 saliency 公式,是因为它做了几个关键假设。

1. 模型已经收敛

OBD 假设网络已经训练到局部极小点附近,因此:。这样 Taylor 展开中的一阶项可以忽略。如果模型没有收敛,一阶项可能很大,此时只看二阶项就不够准确。


2. Hessian 可以近似为对角矩阵

OBD 忽略 Hessian 的非对角元素,即忽略参数之间的二阶交互。这使计算变得简单,但也带来了近似误差。实际上,神经网络参数之间往往存在复杂耦合关系。删除一个参数后,其他参数可能可以补偿它的影响。OBD 的对角 Hessian 近似没有显式建模这种补偿关系。


3. 删除参数造成的是局部小扰动

Taylor 展开本质上是局部近似。如果一次剪掉太多参数,参数变化可能不再是小扰动,那么二阶近似的准确性就会下降。因此,OBD 更适合逐步剪枝,而不是一次性大规模删除大量参数。


十二、OBD 的局限性

当然,OBD 也有明显局限。

1. 忽略参数之间的相关性

OBD 只使用 Hessian 对角项,忽略非对角项。这意味着它默认不同参数之间的影响是相互独立的。但在真实神经网络中,参数之间往往高度相关。删除一个参数后,其他参数可能会补偿它的作用。因此,OBD 的重要性估计可能不够精确。


2. 需要模型接近收敛

OBD 依赖一阶梯度近似为 0 的假设。如果模型训练不充分,或者处于训练过程早期,那么:。此时一阶项不能忽略,OBD 的二阶 saliency 就可能不准确。


3. 计算 Hessian 对角项仍然有成本

虽然 OBD 避免了完整 Hessian,但计算 Hessian 对角项仍然比简单幅值剪枝更复杂。对于现代大模型来说,即使只计算 Hessian 对角项,也需要额外计算和近似技巧。


4. 更适合非结构化权重剪枝

OBD 原始形式主要面向单个权重连接的剪枝。但是,现代部署更关心结构化剪枝,例如通道剪枝、注意力头剪枝、层剪枝等。如果直接使用 OBD,需要将单个权重的 saliency 聚合到结构单元上。例如,一个通道的重要性可以定义为该通道内所有权重 saliency 的总和:。但是,这种简单聚合是否合理,还需要结合具体结构分析。


十七、OBD 和 Optimal Brain Surgeon 的关系

OBD 之后,出现了另一个著名方法:Optimal Brain Surgeon,简称 OBS。两者都属于二阶剪枝方法,但区别在于:

方法Hessian 使用方式是否考虑参数补偿计算成本
OBD只使用 Hessian 对角项较低
OBS使用 Hessian 逆矩阵较高

OBD 删除一个权重时,通常只是简单将该权重置为 0。而 OBS 认为,删除一个权重后,其他权重可以进行调整来补偿损失。因此,OBS 不仅决定删除哪个权重,还会计算剩余权重应该如何变化。因此,OBS 理论上更精确,但计算成本也更高。可以说:OBD 是二阶剪枝的起点,OBS 是对 OBD 的进一步精细化。


需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询