Redian新闻
>
​NeurIPS 2022 | 最优脑压缩,训练后剪枝又一力作!

​NeurIPS 2022 | 最优脑压缩,训练后剪枝又一力作!

科技


@Paperweekly 原创 · 作者 | An.
单位 | 中科院自动化所
研究方向 | 计算机视觉、模型压缩



论文标题:
Optimal Brain Compression: A Framework for Accurate Post-Training Quantization and Pruning

论文链接:

https://arxiv.org/pdf/2208.11580.pdf

代码链接:

https://github.com/IST-DASLab/OBC

本文提出了一种新的训练后压缩框架 Optimal Brain Compression(OBC),该框架在统一范式下涵盖了权重剪枝和量化OBC 在无需任何再训练的情况下,只需少量的校准输入数据,即可获得空间和时间效率大大提升且模型性能良好的压缩模型。该方法基于最优脑手术(OBS)[1] 框架进行扩展,将其推广到了包括 CNN、Transformer 在内的现代 DNN 模型中。

实验证明,OBC 在 GPU 支持的复合压缩中,实现了精度仅下降 2% 的情况下,理论计算量减少 12 倍,以及在 CPU 稀疏感知运行时,精度仅下降 1% 的情况下,实际运行加速 4 倍。这些结果首次表明,训练后压缩可以获得与完全再训练压缩相近的性能表现。




问题定义
分层压缩问题分层压缩是训练后压缩的标准方法,它将压缩任务分解为分层子问题,根据校准数据给出层输入和输出的子样本,为每一层确定压缩权重的近似重建。数学上,我们可以定义层 的函数为 ,该层的输入为 ,权重为 分层压缩的目标是在约束条件 下找到权重的近似重建 以最小化损失 具体公式如下:

层输入 的期望通常是通过统计 个输入样本的 mini-batch 的平均值来近似估计的。这种低数据设置也是分层压缩的一大优势。与过往的分层压缩工作 [2,3] 一致,本文也只对线性层和卷积层进行压缩,这些层均使用平方误差来衡量重建误差。详细的推导可以参阅 [3]。式(1)更具体的表示如下:
最佳脑手术(OBS)框架OBS 框架 [1] 针对密集神经网络的精确修剪问题,从给定点处的泰勒近似出发,给出了最优去除权重选择的显式公式,以及补偿剩余权重的最优更新。具体来说,设 为给定模型的海森矩阵,引起最小损失增加的修剪 和剩余权重的更新量 如下:
OBS 分层剪枝有了上述基础,我们现在可以利用分层修剪问题实例化本文的框架。首先,式(2)的损失是二次的,完全满足 OBS 框架的假设,这意味着式(3)对于分层压缩问题是精确的,不引入额外的误差。
因此,迭代 OBS 框架能以一次去除一个权重并对其他权重进行补偿的方式,为分层压缩问题提供一套精确的贪心解决方案虽然这种贪心方法并不能保证收敛到全局最优值,但实验证明,这种方法对于处理太大而无法通过精确方法处理的问题实例非常有效。



稀疏性的最优贪心求解器
迭代 OBS 的贪心解决方案存在一个巨大的挑战,即使用式(3)修剪单个权重的计算量很高。海森矩阵 是一个 的矩阵,其中 ,该矩阵需要在 步中的每一处更新和求逆,计算复杂度为 。显然, 的总体运行时间对于修剪如今规模的神经网络来说效率太低。
因此,本文的核心创新是在不引入额外误差的情况下,将此过程的整体成本降低至 时间和 内存。

2.1 ExactOBS 算法

我们首先将式(2)改写成行表示形式 ,从中可以看出,删除权重 只影响对应行输出 。因此,不同行之间没有海森矩阵的交互,因此仅需使用对应每行的单个 的海森矩阵就足够了。这一观察降低了大量的计算复杂度。为了进一步降低时间和空间复杂度,作者还做了下面两个改进。
第1步 - 处理单行这一改进的关键思想在于避免在每一步中对 的统计和 的求逆。前者很容易,因为权重的变化不会对 带来改变,我们只需在修剪前对各层的海森矩阵进行统计,在后续修剪时根据每行的掩码 进行选择即可。
然而,这一技巧并不适用于求逆操作,因为 本文提出了一种基于高斯消元法的等价求解方法,来根据当前海森矩阵的逆快速计算下一步迭代时新的海森矩阵逆。当我们去除某一个权重时,海森矩阵对应行列的元素也将删除,基于这一事实,在更新逆时我们可以直接使用高斯消元法将对于行列的元素去除,具体公式如下:
由此可以得到单行修剪的算法伪代码(见图 1),其中海森矩阵逆的更新的时间复杂度为 

▲ 图1. 单行 OBS 修剪的伪代码

第2步 - 联合考虑所有行为了在每一步中选择具有最小整体修剪损失的权重(即每行最小损失的最小值),需要将 OBS 框架应用于完整的权重矩阵 ,而不仅仅是独立应用于每行。
图 1 的算法已经解决了计算复杂度的问题,但这种多行联合求解带来了过于昂贵的内存占用(每行都需要存储  )。作者巧妙地发现了一个性质,即每行内的修剪顺序是固定的,最终剪去多少仅取决于修剪的参数总数这为降低存储复杂度提供了可能。
这一性质让我们可以独立处理每一行,按照顺序修剪所有权重,并记录损失变化量 。通过这种预处理,我们只需要 的额外内存,即可按照预先记录的 在完整矩阵中选择全局掩码。
如果有足够的 CPU 内存可用的话,我们还可以保留每行的修剪轨迹,即每个单独修剪步骤之后的完整权重矩阵,这是一种用空间换时间的权衡,在额 的 CPU 内存占用下,可以节省第二次调用图 1 的算法。图 2 可视化了刚刚讨论的两个选项(Less compute 和 Less memory)。

▲ 图2. 利用逐行结果的高效全局 OBS 算法
至此,我们已经介绍完了本文的核心创新——在不引入额外误差的情况下,将此过程的整体成本降低至 的时间和 的内存。为了让读者更清楚地理解整个修剪过程,我再阐述一次整体的算法流程:

(a)将整个模型的剪枝问题分解为各层(线性层或卷积层)的修剪和权重重建子问题;

(b)统计每层的海森矩阵,并初始化海森矩阵的逆;

(c)对于每层的权重 ,分行利用式(3)计算每个权重剪去带来的误差,依次记录最小的索引 和对应的误差 ,剪去对应权重,利用式(3)对剩余权重进行更新,并利用式(4)更新海森矩阵的逆   和行掩码 【这一步并不会真正更新模型权重,只是为了记录各行修剪的顺序和每次修剪的误差】;
(d)根据上一步各行的 记录结果,选择全局的最小索引,进行完整权重矩阵的修剪和更新。

2.2 扩展:N:M 和块稀疏

N:M 稀疏性该方法可以很容易地扩展到各种形式的半结构化稀疏性。例如 N:M 稀疏模式 [4],它在 M 个连续权重中恰好选保留 N 个非零值。只需简单的调整即可实现:不在选择损失变化最小的权重,而是选择在具有 < N 个修剪权重的块中损失变化最小的权重。当某行达到 的稀疏比时就终止修剪。因此也不再需要前面介绍的全局掩码选择步骤。
块稀疏性块修剪是另一种实践中常用的修剪模式,特别是在 CPU 加速的情况下。它要求仅在大小为 的连续块中出现零,本文的方法可以扩展到修剪小的权重连续组,具体公式如下:




最佳大脑量化器(OBQ)

上一节的算法可以通过一种有效且准确的方式扩展到量化,作者将其称为最优脑量化器(OBQ)。

将 OBS 映射到量化投影, 是量化的权重舍入,更新后 。我们可以根据式(3)推导出类似的量化更新公式:

从 OBS 的视角看量化时,我们可以想象,我们先找到“最简单”量化的权重,调整所有剩余未量化权重来补偿精度损失,以此类推我们只需要在式(6)的基础上使用图 1 提到的算法,即可迭代式的量化给定层的权重。




实验

1. 非结构化稀疏性表 1 展示了不同 FLOP 的非结构化剪枝结果。在 ResNet、YOLOv5 和 BERT 上,本文提出的 ExactOBS 算法的表现通常是最好的,尤其是在大稀疏率的情况下。

▲ 表1. 不同 FLOP 目标下的非结构化剪枝方法对比

2. N:M 稀疏性如表 2 所示,本文提出的方法在多个 ResNet 变体中均取得了最优的效果。

▲ 表2. 半结构化剪枝的性能对比

3. 量化表 3 对比了 OBQ 与其他最先进的训练后量化方法的性能结果。从中可以看出,尽管 OBQ 独立优化了每个层,但在性能表现上与其他联合优化的方法相比非常相近。

▲ 表3. 训练后量化方法的性能对比

4. BOP 约束混合 GPU 压缩图 3 展示了OBC 将剪枝和量化结合起来的性能效果。在相对性能下降约 2.5% 的代价下,ResNets 的 BOP(比特数乘以 FLOPs)降低了 12~14 倍。

▲ 图3. 混合量化+2:4剪枝的 BOP 与准确率变化关系(BOP 指比特数乘以 FLOPs)

参考文献

[1] Babak Hassibi, David G Stork, and Gregory J Wolff. Optimal brain surgeon and general network pruning. In IEEE International Conference on Neural Networks, 1993.

[2] Peisong Wang, Qiang Chen, Xiangyu He, and Jian Cheng. Towards accurate post-training network quantization via bit-split and stitching. In International Conference on Machine Learning (ICML), 2020.

[3] Markus Nagel, Rana Ali Amjad, Mart Van Baalen, Christos Louizos, and Tijmen Blankevoort. Up or down? Adaptive rounding for post-training quantization. In International Conference on Machine Learning (ICML), 2020.

[4] Aojun Zhou, Yukun Ma, Junnan Zhu, Jianbo Liu, Zhijie Zhang, Kun Yuan, Wenxiu Sun, and Hongsheng Li. Learning N:M fine-grained structured sparse neural networks from scratch. InInternational Conference on Learning Representations (ICLR), 2021.


更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:[email protected] 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


·
·

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
健身人不注意这些,训练等于白练…抑制不住的愤怒!!第四范式开源强化学习研究通用框架,支持单智能体、多智能体训练,还可训练自然语言任务!训练速度提升17%60年前政府大楼变身时尚酒店,David Chipperfield 又一改造力作优脑银河魏可成:修复脑功能网络,脑疾病的下一代创新疗法50岁王菲牵手谢霆锋逛街,素颜尽显老态,网友:看起来不像情侣NeurIPS 2022 | 如何度量知识蒸馏中不同数据增强方法的好坏?一种统计学视角NeurIPS 2022 | 用离散对抗训练提高视觉模型的鲁棒性和泛化能力GPT-4 震撼发布,能读图,考高分,训练更高效​NeurIPS 2022 | 仅需3分钟!开源Transformer快速训练后剪枝框架来了大型语言模型也能跑在浏览器上了!又一ChatGPT平替诞生,训练成本8.5万美元微软提出自动化神经网络训练剪枝框架OTO,一站式获得高性能轻量化模型精选SDE岗位 | Epsilon、Intel、Neuralink 等公司持续热招!2022 USNEWS发布美国薪酬最高行业TOP25李谷一:邓丽君不过就是一个小歌手,不值得我挂念一日团 | 新增衣挂式防尘压缩袋!【太力·真空压缩收纳袋】所有人都用得到的收纳神器!低至18得宇航员同款,防皱丨防潮丨防霉!微软宣布开源DeepSpeed-Chat ,训练提速15倍以上,有望实现人手一个ChatGPT?​NeurIPS 2022 | DIST: 少学点反而更好!商汤开源松弛知识蒸馏方法【回顾与展望】2022 后疫情时代的旅游,2023 回家NeurIPS 2022 | 训练速度100倍提升!基于PyTorch实现的可微逻辑门网络开源ICLR 2023 | 微软提出自动化模型训练剪枝框架OTO,一站式获得轻量级架构【Church Park 2023排位+现房】【NEU/NEC/Berklee】【Studio$2820】2022 湾区公立/私立高中 UCB 录取率排名ChatGPT设计的游戏火了!玩法代码一力搞定,自称「原创」却被指:抄袭了《故事大王》三十多年精彩汇集、实力作家压卷之作!校园、童话、悬疑,娃读的欲罢不能!树立价值观、提高语文水平和口语表达能力,好值!今天随意浏览了一下CMU 2019​NeurIPS 2022 | 外包训练:无需终端上传源数据,无需联邦学习,也能得到好模型?NeurIPS 2022 | 基于激活值稀疏化的内存高效迁移学习“酷彩”珐琅锅又一力作,高颜值、大容量、超轻!丨种草机​NeurIPS 2022 | 知识蒸馏造成了样本不均衡问题?【回顾与展望】 2022,非洲收宮之旅,阿尔及利亚,埃塞俄比亚,突尼斯左小青不再隐瞒,自曝和陈道明的关系,难怪跟富豪老公分手分割一切又一力作!北京智源提出通用分割模型SegGPT谷歌发布技术报告:PaLM-2 推理超越 GPT-4,训练文本是第一代近 5 倍钱天一力克伊藤美诚【伯克利小舍】【Church Park 2023排位+现房】【NEU/NEC/Berklee】【Fenway最美顶楼】灵犀互娱又一力作公测定档,《三国志・战棋版》会是下一个爆款吗?旅游記憶(完)NeurIPS 2022 | UCLA推出科学问答新基准,大语言模型迎来多模态新挑战!ICLR 2023 | HomoDistil:蒸馏和剪枝在知识传递上的有机结合
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。