DEEP COMPRESSION(深度学习网络参数压缩)

DEEP COMPRESSION:

DEEP COMPRESSION: COMPRESSING DEEP NEURAL NETWORKS WITH PRUNING, TRAINED QUANTIZATION AND HUFFMAN CODING
github 源码地址

Introduce

本篇论文是ICLR2016年的best paper,主要讲述关于深度学习网络参数的压缩工作。论文主要从下三点出发:

  1. pruning
  2. train quantization
  3. huffman coding

本文首先对网络进行剪枝,只保留重要的连接;第二步通过参数共享量化权重矩阵;第三步对量化值进行huffman编码,进一步压缩。整个网络在不影响性能的情况下,能够将参数量降低到原来的1/49~1/35。
在ImageNet数据集上,压缩后的网络的实验结果如下所示:
1. AlexNet在不影响精度的前提下,参数从240M减少到6.9M,35 ×
2. VGG-16在不影响精度的前提下,参数量从552M减少到11.3M,49 ×
3. 模型能够在DRAM运行。
4. 运行速度提高3-4倍。
5.消耗能量减少到原来的1/7~1/3。


这里写图片描述
从图1可以看出网络的基本流程,首先移除冗余的连接,只保留权值比较大的连接,得到剪枝后的网络;第二步,权重进行量化,然后多个连接共享一个参数,只保存码本和索引;第三步,使用huffman编码,压缩量化的值。

Network pruning

在深度学习训练的过程中,会学到连接的参数。剪枝的方法也很简单,连接的权值小于一定阈值的直接移除,最终就得到了稀疏的网络连接。剪枝这一步骤能够将VGG-16(AlexNet)参数降低到原来的1/13(1/9)。
稀疏矩阵用compressed sparse row(CSR)和compressed sparse column(CSC)的格式进行压缩,总共需要2a+n+1个存储单元,a是非零元素个数,n是行数或者列数。
网络剪枝的过程如figure 2所示:


这里写图片描述

一个4*4的矩阵可以用一维16数组表示,剪枝时候,只保留 权值大于指定阈值的数,用相对距离来表示,例如idx=4和idx=1之间的位置差为3,如果位置差大于设定的span,那么就在span位置插入0。例如15和4之间距离为11大于span(8),所以在4+8的位置插入0,idx=15相对idx=12为3。这里span阈值在卷积层设置为8,全连接层为5。

Train Quantization And Weight Shared


这里写图片描述

图3假定某层有4个输入单元4个输出单元,权重矩阵为4*4,梯度同样为4*4。假设权重被量化为4类,用四种颜色标识。用每类量化的值代表每类的权值,得到量化后的权值矩阵。用4个权值和16个索引就可以计算得到4*4权重矩阵连接的权值。梯度矩阵同样量化为4类,对每类的梯度进行求和得到每类的偏置,和量化中心一起更新得到新的权值。
压缩率计算方法如下公式所示:

r=nbnlog2k+kb(1)

公式(1)n代表连接数,b代表每一个连接需要b bits表示,k表示量化k个类,k类只需要用 log2(k) 个bit表示,n个连接需要
  • 8
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
### 回答1: Deep Compression MobileNet 是一种基于深度压缩的神经网络模型,它在保证网络结构较小、参数较少的同时,仍能保持较高的准确率和较快的推理速度,因此在移动端应用中得到广泛应用。 Deep Compression MobileNet 的核心思想是使用联合训练、剪枝和量化等技术来压缩神经网络。在联合训练中,网络结构和权重同时进行优化,以达到更好的效果。在剪枝中,通过去除一些网络中冗余的连接和神经元,减少网络参数数量。在量化中,将网络中的浮点数参数转换成整数,进一步减小了模型的体积。 Deep Compression MobileNet 的成功还在于其高效的算法实现。对于模型中的瓶颈层和卷积层,使用了不同的压缩策略,有效减少了计算复杂度。此外,还使用了稀疏矩阵和哈夫曼编码等技术,大幅提高了模型的压缩比,并且保证了模型的准确率。 总之,Deep Compression MobileNet 是一种高效、精简、准确的神经网络模型。它通过深度压缩技术,在移动端应用中实现了优异的性能表现。 ### 回答2: Deep Compression MobileNet是一种深度学习模型,它可以在小型移动设备上运行,而且具有非常高的压缩率。这个模型主要基于两个技术:剪枝和量化。剪枝是移除模型中一些不必要的权重和神经元,以降低模型的大小。而量化则是将模型参数的精度降低,从而减少存储空间和计算量。 Deep Compression MobileNet的压缩率非常高,它可以将模型大小降低到原来的几十分之一,同时不会对模型的准确率造成太大的影响。这种高度压缩的模型可以节省存储空间和运行时间,使得它在移动设备上更加高效。 总的来说,Deep Compression MobileNet是一种高度压缩深度学习模型,能够在小型移动设备上高效地运行,节省存储空间和计算时间。随着移动设备的普及和应用场景的增多,这种模型将会在未来得到更广泛的应用。 ### 回答3: Deep Compression MobileNet是一种针对移动设备优化的图像识别模型。与其他神经网络相比,它拥有更少的参数,这使得它可以在资源受限的设备上运行得更快。 Deep Compression MobileNet是通过深度压缩技术开发的,这是一种有效利用人类视觉系统的原理的方法。Deep Compression MobileNet利用了我们的大脑如何识别图像的方式:人类视觉系统只关注有意义的信息,而忽略了无关紧要的细节。这就是为什么人们可以在短时间内识别出一个物体或人的面部。 与传统的神经网络不同,Deep Compression MobileNet将整个网络分成多个部分,并使用“层次聚类”技术来确定哪些部分是有用的,哪些是无用的。然后,该模型使用采样和量化技术将模型参数缩小,减少了原网络的大小和计算量。这些技术可以大幅降低模型所需的内存和计算功耗,使其适合移动设备等资源有限的场景。 总之,Deep Compression MobileNet是一个针对移动设备的高效图像识别模型。通过使用层次聚类、采样和量化等技术,它可以在节省计算资源和内存的同时保持准确性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值