活动邀约 | 5月24日来交流AGI时代数据资产如何价值最大化? 了解详情
写点什么

神经网络剪枝领域优秀研究论文汇总

  • 2019-12-11
  • 本文字数:3118 字

    阅读完需:约 10 分钟

神经网络剪枝领域优秀研究论文汇总

剪枝是深度学习中用来帮助开发更小、更高效神经网络的技术。它是一种模型优化技术,通过移除权重张量中冗余的值来实现模型优化。它实现了神经网络的压缩,让神经网络运行得更快,减少了网络训练的计算开销,这在把模型部署到手机或者其他终端设备上时显得尤为重要。在这篇指南中,我们会浏览一下神经网络剪枝领域的一些研究论文。


Pruning from Scratch(2019)

这篇论文的作者提出了网络剪枝流水线,能够从一开始训练模型时就进行剪枝。基于 CIFAR10 和 ImageNet 数据集做的压缩分类模型实验,可以看出这个流水线减少了原来通用流水线方法里产生的预训练开销,同时还增加了网络的精度。



论文网页:https://arxiv.org/abs/1909.12579


下图所示是传统剪枝过程的 3 个阶段。这个过程包括预训练、剪枝和微调。



来源:https://arxiv.org/pdf/1909.12579.pdf


这篇论文里提出的剪枝技术需要构建一条剪枝流水线,这条流水线可以从随机初始化权重开始进行学习得到。该论文方法给每个网络层赋予标量门值,从而学习得到通道的重要性。


该论文方法为了改善模型在稀疏正则化下的性能,对通道重要性做了优化。在这个优化过程中,不用更新随机权重,之后,在给予一定资源限制的情况下,使用二分查找策略来决定剪枝后模型的通道数量配置。



来源:https://arxiv.org/pdf/1909.12579.pdf


这里让我们看一下不同数据集上的模型精度:



来源:https://arxiv.org/pdf/1909.12579.pdf


在把模型部署到低算力的设备上(如智能手机)时,优化机器学习模型显得特别重要(也很复杂)。

Adversarial Neural Pruning(2019)

这篇论文研究了具有对抗性扰动的网络隐特征的畸变问题。论文提出的方法通过学习一个贝叶斯剪枝掩码来抑制那些畸变较高的特征,这样可以最大化对抗性偏差上的健壮性。


作者研究了深度神经网络里隐特征的不稳定性。论文方法提出裁剪掉不稳定的特征,而保留健壮性的特征。这是在贝叶斯框架下通过对抗式学习剪枝掩码来实现的。



来源:https://arxiv.org/pdf/1908.04355.pdf



论文网页:https://arxiv.org/abs/1908.04355


对抗式神经剪枝(ANP:Adversarial Neural Pruning)在对抗式训练的概念中结合了贝叶斯剪枝方法。这个方法的基本情况如下:


  • 它是一个标准的卷积神经网络

  • 它是一个对抗式训练网络

  • 它是采用 beta-Bernoulli dropout 方法的对抗式剪枝方法

  • 这个对抗式训练网络通过易损抑制代价函数进行正则化

  • 这个对抗式神经剪枝网络通过易损抑制代价函数进行正则化


以下表格显示了这个模型的性能表现。



来源:https://arxiv.org/pdf/1908.04355.pdf

Rethinking the Value of Network Pruning(ICLR 2019)

这篇论文提出的网络剪枝方法分为两部分。裁剪后的目标模型要么是由人工设计出来,要么是由剪枝算法计算得到。在该论文实验部分,作者还对比了两种结果,即从头开始训练一个裁剪过的模型,以及对继承的权重进行微调训练这两种训练方式的结果,每种结果里的网络类型都包含人工预定义网络和算法自动生成的网络两种。



论文页面:https://arxiv.org/abs/1810.05270v2


下图显示了预定义的结构化剪枝结果,使用的是基于 L1-norm 的过滤器剪枝。每一层会剪掉一定比例的过滤器,即 L1-norm 较小的那一部分过滤器。Pruned Method 这一列显示了预定义的模型配置清单。论文观察到,每一行,从头训练的模型都达到了至少和微调模型同样水平的精度。



来源:https://arxiv.org/pdf/1810.05270v2.pdf


如下图显示,ThiNet 用贪婪方式对通道进行剪枝,剪掉的是对下一层激活值影响最小的那些通道。



来源:https://arxiv.org/pdf/1810.05270v2.pdf


下一个表格显示了 Regression-based Feature Reconstruction 方法得到的结果。这个方法最小化下一层的特征图重建误差,以此来对通道剪枝。这个优化问题是通过 LASSO 回归来解决的。



来源:https://arxiv.org/pdf/1810.05270v2.pdf


对于 Network Slimming 方法,在训练时,L1-sparsity 将 Batch Normalization 层的缩放因子施加在了每层通道上。训练完成之后,具有较低缩放因子的通道就会被裁剪掉。这个方法在不同层之间比较通道缩放因子,所以能够自动生成目标网络架构。



来源:https://arxiv.org/pdf/1810.05270v2.pdf

Network Pruning via Transformable Architecture Search(NeurIPS 2019)

这篇论文提出将神经网络搜索方法(https://heartbeat.fritz.ai/research-guide-for-neural-architecture-search-b250c5b1b2e5)直接应用于某个网络,在搜索空间内给这个网络设置不同的通道数和层大小。裁剪后网络的损失最小化有助于学习最终通道的数量。裁剪后网络的特征图是由 K 个基于概率分布采样的特征图片段组成。损失被反向传播到网络权重和参数化分布上。



论文网页:https://arxiv.org/abs/1905.09717v5


该论文方法根据每个分布的最大概率得到裁剪后网络的宽度和深度。这些参数是通过原始网络知识的转移来学习得到的。该论文在 CIFAR-10、CIFAR-100 和 ImageNet 数据集上对模型进行了实验。



来源:https://arxiv.org/pdf/1905.09717v5.pdf


这个剪枝方法包含三个阶段:


  • 用一个标准的分类训练过程,来训练一个未裁剪过的大型网络

  • 通过可转移架构搜索(TAS:Transformable Architecture Search)方法来搜索小网络的深度和宽度。TAS 旨在搜索网络的最优大小。

  • 通过简单的知识蒸馏(KD:Knowledge Distillation)方法将信息从未裁剪的网络转移至搜索到的小网络中。



来源:https://arxiv.org/pdf/1905.09717v5.pdf


以下表格是在 ImageNet 数据集上,使用不同的 ResNets 网络和不同的剪枝算法的结果对比:



来源:https://arxiv.org/pdf/1905.09717v5.pdf

Self-Adaptive Network Pruning(ICONIP 2019)

这篇论文提出通过自适应网络剪枝方法(SANP:Self-Adaptive Network Pruning)来减少 CNN 网络的计算开销。这个方法为每一个卷积层都引入了一个显著性和裁剪模块(SPM:Saliency-and-Pruning Module)。这个模块学习预测显著性评分,并将剪枝方法用于每个通道。SANP 根据每层和每个样本来决定裁剪策略。



论文网页:https://arxiv.org/abs/1910.08906


正如在以下架构图里看到的那样,显著性和裁剪模块嵌入在卷积网络的每一层里。这个模块为通道预测显著性评分,这是从输入特征开始的,然后为每个通道生成裁剪方法。


卷积中对于裁剪值为 0 的通道,卷积会跳过这类通道不进行卷积。之后,对主干网络和 SPM 的分类代价目标函数进行联合训练。该方法会在每一层的裁剪决策基础上估计计算开销。



来源:https://arxiv.org/pdf/1910.08906.pdf)df/1910.08906.pdf


这个方法的实验结果显示如下:



来源:https://arxiv.org/pdf/1910.08906.pdf

Structured Pruning of Large Language Models(2019)

这篇论文提出的剪枝方法基于低秩分解和增广拉格朗日 10 范式正则化(http://amsacta.unibo.it/1129/1/lagrange_methods.pdf)。10 范式正则化放宽了结构化剪枝的约束,而低秩分解可以保留矩阵的致密结构。



论文网页:https://arxiv.org/abs/1910.04732


正则化项可以让网络选择移除哪些权重。权重矩阵被分解为两个小矩阵,然后就可以确定这两个矩阵间的对角型掩码。在训练期间,通过 10 范式正则化给这个掩码剪枝,增广拉格朗日方法用来控制这个模型最终的稀疏程度。作者将其方法称为分解 L0 剪枝(FLOP:Factorized L0 Pruning)。


使用的字符级语言模型来自 enwik8 数据集,它包含 Wikipedia 上的 100 兆字节数据。该论文用 FLOP 方法在 SRU 和 Transformer-XL 模型上进行了评估。以下显示了一些实验结果数据。



来源:https://arxiv.org/pdf/1910.04732.pdf

结语

我们现在应该了解了一些最常用的、最新的剪枝技术。以上提及链接的论文和摘要也包含了代码实现。


原文链接:


https://heartbeat.fritz.ai/research-guide-pruning-techniques-for-neural-networks-d9b8440ab10d


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-12-11 14:172110

评论

发布
暂无评论
发现更多内容

哪些关键供应链指标的数据集成可以提高智能商品系统决策支持效果

第七在线

身份自动化工作流,帮助您快速提高工作效率

Authing

企业管理 统一身份认证 Authing 身份自动化 身份管理

Royal TSX for Mac(强大的远程管理软件)v6.0.2激活版

影影绰绰一往直前

Microsoft 365 for Mac(Office 365)v16.80正式激活版

iMac小白

上升到人生法则的贝叶斯理论

小齐写代码

微信多开 WechatTweak for Mac(微信多开、消息防撤回工具)v3.8.6中文集成版

iMac小白

“数”上加“速” 腾讯云(辽宁)数字经济产业基地在铁西揭牌

Geek_2d6073

macOS 14 Sonoma(最新MacOS系统)pkg完整安装包 14.2正式版

iMac小白

macOS 13 Ventura (苹果最新系统) v13.6.3正式版

iMac小白

AI数字人支持短视频创作/实时互动直播带货!

青否数字人

数字人

IPQ8072 and IPQ8074: The difference between enterprise-grade and consumer-grade routers

wallysSK

Final Cut Pro X for Mac(fcpx视频剪辑)v10.7.1简体中文版

iMac小白

sublime text for Mac(代码编辑器) v4.0(4169)中文注册版

影影绰绰一往直前

Navicat Premium 16 for Mac(数据库管理软件)v16.3.4中文激活版

影影绰绰一往直前

从数据洞察到市场变革:我们的 Web3 愿景

Footprint Analytics

区块链 #Web3

五大能力六大场景,百度“品牌智能体”打造品牌AGI时代最核心经营阵地

科技热闻

2024通义语音AI技术图景,大模型引领AI再进化

阿里技术

通义千问

Acrobat Pro DC 2023 for mac(专业PDF编辑软件)中文直装版

iMac小白

文心一言 VS 讯飞星火 VS chatgpt (167)-- 算法导论13.1 7题

福大大架构师每日一题

福大大架构师每日一题

Netflix Mac(奈飞客户端) v2.13.0激活版

iMac小白

Solidity之旅(十六)Constant 和 Immutable状态变量

BSN研习社

区块链 Solidity

Parallels Desktop 19 for Mac v19.1.0一键激活版

iMac小白

Proxifier for Mac(全局代理客户端) v3.11注册版

影影绰绰一往直前

TcpDump

虚实的星空

HTTP tcpdump

月薪50k万的程序员,和三个15K的程序员,谁的开发效率高?

伤感汤姆布利柏

程序员 互联网 高薪

AnyGo for Mac v6.9.5激活版 GPS定位软件

iMac小白

Java-springboot整合activiti实际项目案例(源代码)

金陵老街

跨链技术 2023:拥抱区块链的互操作性

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

Dynamic Wallpaper for Mac(Mac动态壁纸桌面)v17.0中文版

影影绰绰一往直前

Navicat Premium 15 for Mac(数据库开发工具)v15.0.36中文激活版

iMac小白

使用PotPlayer播放器查看软解和硬解4K高清视频时的CPU及GPU占用情况 | 主赛道

神经网络剪枝领域优秀研究论文汇总_开源_Derrick Mwiti_InfoQ精选文章