论文笔记——A Deep Neural Network Compression Pipeline: Pruning, Quantization, Huffman Encoding
论文《A Deep Neural Network Compression Pipeline: Pruning, Quantization, Huffman Encoding》
Pruning
- by learning only the important connections.
all connections with weights below a threshold are removed from the network.
retrain the network to learn the final weights for the remaining sparse connections.
- store by compressed sparse row(CSR) or compressed sparse column(CSC) format
requires 2nnz + n + 1, nnz is the number of non-zero elements and n is the number of columns or rows.
store the index difference instead of the absolute position
by 9× and 13× for AlexNet and VGG-16 model.
Quantization
- quantize the weights to enforce weight sharing
Network quantization, further compresses the pruned network by reducing the number of bits required to represent each weight.
- Weight Sharing
- k-means clustering
- Initialization of Shared Weights
- Forgy(random).
Since there are two peaks in the bimodal distribution, Forgy method tend to concentrate around those two peaks. - Density-based.
This method makes the centroids denser around the two peaks, but more scatted than the Forgy method. - Linear initialization.
Linear initialization linearly spaces the centroids between the [min, max] of the original weights.
- Forgy(random).
- Feed-forward and Back-propagation
Huffman coding
Huffman coding
Huffman code is a type of optimal prefix code that is commonly used for loss-less data compression.
总结
这篇论文的想法是比较好的,但是因为裁剪部分权值,会导致filter矩阵的稀疏性,所以需要特别的稀疏矩阵计算库才能支持以上的操作。
论文笔记——A Deep Neural Network Compression Pipeline: Pruning, Quantization, Huffman Encoding的更多相关文章
- Deep Learning 28:读论文“Multi Column Deep Neural Network for Traffic Sign Classification”-------MCDNN 简单理解
读这篇论文“ Multi Column Deep Neural Network for Traffic Sign Classification”是为了更加理解,论文“Multi-column Deep ...
- ThiNet: A Filter Level Pruning Method for Deep Neural Network Compression笔记
前言 致力于滤波器的剪枝,论文的方法不改变原始网络的结构.论文的方法是基于下一层的统计信息来进行剪枝,这是区别已有方法的. VGG-16上可以减少3.31FLOPs和16.63倍的压缩,top-5的准 ...
- 【论文笔记】Malware Detection with Deep Neural Network Using Process Behavior
[论文笔记]Malware Detection with Deep Neural Network Using Process Behavior 论文基本信息 会议: IEEE(2016 IEEE 40 ...
- 论文笔记之:Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation
Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation xx
- 论文阅读(XiangBai——【AAAI2017】TextBoxes_A Fast Text Detector with a Single Deep Neural Network)
XiangBai——[AAAI2017]TextBoxes:A Fast Text Detector with a Single Deep Neural Network 目录 作者和相关链接 方法概括 ...
- A Survey of Model Compression and Acceleration for Deep Neural Network时s
A Survey of Model Compression and Acceleration for Deep Neural Network时s 本文全面概述了深度神经网络的压缩方法,主要可分为参数修 ...
- 论文翻译:2022_PACDNN: A phase-aware composite deep neural network for speech enhancement
论文地址:PACDNN:一种用于语音增强的相位感知复合深度神经网络 引用格式:Hasannezhad M,Yu H,Zhu W P,et al. PACDNN: A phase-aware compo ...
- XiangBai——【AAAI2017】TextBoxes_A Fast Text Detector with a Single Deep Neural Network
XiangBai--[AAAI2017]TextBoxes:A Fast Text Detector with a Single Deep Neural Network 目录 作者和相关链接 方法概括 ...
- What are the advantages of ReLU over sigmoid function in deep neural network?
The state of the art of non-linearity is to use ReLU instead of sigmoid function in deep neural netw ...
随机推荐
- dns解决测试微信二级域名访问问题
背景介绍: 1:解决本地不能通过域名访问问题: 2:解决微信设置二级域名且本地iis站点使用非80端口号问题: ps:网站中微信部分在global中设置了重定向,代码已经修改为必须通过“wechat. ...
- SVN上新增一个项目和用户
author:headsen chen date:2018-05-04 11:01:08 1,在SVN服务器上,打开SVN的软件,在项目里新建一个文件夹.在Repositories下面 2,use ...
- AEcs6破解版下载
下载地址 http://pan.baidu.com/share/link?shareid=79184520&uk=1795677788 点击下载
- URAL 2040 Palindromes and Super Abilities 2(回文树)
Palindromes and Super Abilities 2 Time Limit: 1MS Memory Limit: 102400KB 64bit IO Format: %I64d ...
- 观《phonegap第三季 angularjs+ionic视频教程 实时发布》学习笔记(三)
十五.ionic路由 1.ionic中内联模板介绍 使用内联模板内联模板的使用,常见的有几种情况.(1) 使用ng-include指令可以利用ng-include指令在HTML中直接使用内联模板,例如 ...
- delphi -----获取计算IP
function GetHostName:String; var ComputerName: ..MAX_COMPUTERNAME_LENGTH+] of char; Size: Cardinal; ...
- SQL-修改: 将日期修改为空NULL、修改为空的记录
1.将日期修改为空NULL update 表 set 字段=null where 字段='' 如果设置为‘’,会默认1900-01-01 2.修改为空的记录 update [dbo].[pub_ite ...
- bash短路径显示
修改.bashrc文件vim 打开.bashrc文件,找到如下这行,有两个,都修改一下: PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' 将上面 ...
- cmake window下 sh.exe was found in your PATH, here
在window下 mingw环境下 用 camke 编译Cpp程序 CMake Error at D:/Program Files/CMake/share/cmake-3.8/Modules/CMak ...
- IO 之 File 类
位于 java.io 包 用来将文件或者文件夹封装成对象 方便对文件和文件夹的属性信息进行操作 File 对象可以作为参数传递给流的构造函数 构造函数 // 可以将一个已存在的, 或者不存在的文件或者 ...