Notes on Deep Compression

     最近看了一篇文章,对神经网络进行压缩。方法简单并且十分有效。《Deep Compression: Compressing Deep Neural Networks with Pruning Trained Quantization and Huffman Coding》
     文章讨论了深度神经网络的压缩。通过剪枝、量化和哈夫曼编码三个步骤将模型文件的大小压缩了35x-49x。

I.     剪枝
1.将所有小于阈值的链接从网络中删去
2.重新训练整个网络
3.存储稀疏的权值
          diff表示与上一个稀疏元素位置之差。由于只用3个bit来编码diff,所以如果两个稀疏元素间隔超过8,就补上一个diff为8的0值权值。最终存储的是黄色高亮的部分。

II.     量化
1.同一范围内的权重分成一组,用一个数代替,组成centriods。
2.对应的每组的所有梯度相加,从centroids上减去

3.分组方式为 k-means clustering,即将n个权值W = {w1, w2, ..., wn} 分成 k 组 C = {c1, c2, ..., ck},并且使得:

III.     哈夫曼编码
          由于网络中参数的分布是有偏的,可以通过哈夫曼编码的方式,用更短的码来表示出现更频繁的值。具体方法学过通信原理的都知道,网上也有很多资料,在此不再赘述。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值