前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >模型剪枝-学习笔记

模型剪枝-学习笔记

原创
作者头像
Johns
修改2022-06-30 10:25:15
2.3K0
修改2022-06-30 10:25:15
举报
文章被收录于专栏:代码工具代码工具

一. 模型剪枝的定义

深度学习网络模型从卷积层全连接层存在着大量冗余的参数,大量神经元激活值趋近于0,仅仅只有少部分(5-10%)权值参与着主要的计算. 将这些神经元去除后可以表现出同样的模型表达能力,这种情况被称为过参数化,而对应的技术则被称为模型剪枝。

下面看一下谷歌的论文《To prune, or not to prune: exploring the efficacy of pruning for model compression》给出的两个经典网络稀疏化前后的效果对比.

过参数化1.png
过参数化1.png
过参数化2.png
过参数化2.png

上面两个图分别展示了经典的MobileNetInceptionV3在参数稀疏化后依然可以保持不错的性能, 所以模型剪枝是非常必要的. 它能帮助我们获得一个更简单,更高效的模型. 从而减小模型对于计算空间和时间的消耗。

二. 模型剪枝的分类

根据粒度的不同,至少可以粗分为4个粒度。

  • 细粒度剪枝(fine-grained):即对连接或者神经元进行剪枝,它是粒度最小的剪枝。
    image.png
    image.png
  • 向量剪枝(vector-level):它相对于细粒度剪枝粒度更大,属于对卷积核内部(intra-kernel)的剪枝。
  • 核剪枝(kernel-level):即去除某个卷积核,它将丢弃对输入通道中对应计算通道的响应。
  • 滤波器剪枝(Filter-level):对整个卷积核组进行剪枝,会造成推理过程中输出特征通道数的改变。
    image.png
    image.png

细粒度剪枝(fine-grained),向量剪枝(vector-level),核剪枝(kernel-level) 方法在参数量与模型性能之间取得了一定的平衡,但是网络的拓扑结构本身发生了变化,需要专门的算法设计来支持这种稀疏的运算,被称之为 非结构化剪枝

滤波器剪枝(Filter-level) 只改变了网络中的滤波器组和特征通道数目,所获得的模型不需要专门的算法设计就能够运行,被称为结构化剪枝。除此之外还有对整个网络层的剪枝,它可以被看作是滤波器剪枝(Filter-level)的变种,即所有的滤波器都丢弃。

三. 模型剪枝的步骤

模型剪枝的步骤如下:

image.png
image.png

第一步:训练一个基准模型。

第二步:去掉一些不重要的连接,得到剪枝后的网络。

第三步:对剪枝后网络进行微调以恢复损失的性能,然后继续进行第二步,依次交替,直到满足终止条件,比如精度下降在一定范围内。

2个核心的问题: 一是如何评估一个连接的重要性? 另一个是如何在剪枝后恢复模型的性能?

一般连接重要性可以使用这个连接的权重大小来判断, 这种方式比较简单, 而且比较主观.

image.png
image.png

更好的方式是基于优化目标,根据剪枝对优化目标的影响来对其重要性进行判断, 以最优脑损伤(Optimal Brain Damage, OBD)方法为代表,Optimal Brain Damage首先建立了一个误差函数的局部模型来预测扰动参数向量对优化目标造成的影响。通过这个局部模型找到一个参数集合,使得删除掉这个参数集合之后损失函数E的增加最小.

第二个问题是剪枝性能的恢复, 一般使用重训练的方式恢复.

四. 更多技术

  • 自动化剪枝技术
  • 剪枝流程优化
  • 重要性因子的选择
  • Rethinking the Value of Network Pruning

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一. 模型剪枝的定义
  • 二. 模型剪枝的分类
  • 三. 模型剪枝的步骤
    • 2个核心的问题: 一是如何评估一个连接的重要性? 另一个是如何在剪枝后恢复模型的性能?
    • 四. 更多技术
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
    http://www.vxiaotou.com