CNN网络模型压缩和量化
主要关注CNN网络模型的压缩和量化技术
O天涯海阁O
主要从事图像分析算法设计、深度学习
展开
-
加法神经网络--AdderNet: DoWe Really Need Multiplications in Deep Learning?
AdderNet: DoWe Really Need Multiplications in Deep Learning?CVPR2020https://arxiv.org/abs/1912.13200当前主流的CNN网络使用了大量的乘法运算来计算 输入特征层和卷积滤波器的相似性(cross-correlation),由于乘法运算耗时明显大于加法运算耗时,所有本文提出一个加法神经网络,使用 l1 范数来计算 输入特征层和卷积滤波器的相似性。这样在计算滤波器的输出响应时基本不用乘法运算。针对该加法神经网络原创 2020-06-11 15:15:59 · 1101 阅读 · 1 评论 -
卷积网络基础知识---Group Convolution分组卷积
Group Convolution分组卷积,以及Depthwise Convolution和Global Depthwise Convolutionhttps://www.cnblogs.com/shine-lee/p/10243114.html写在前面Group Convolution分组卷积,最早见于AlexNet——2012年Imagenet的冠军方法,Group Convolutio...转载 2019-06-04 09:38:20 · 9697 阅读 · 3 评论 -
卷积网络基础知识---Depthwise Convolution && Pointwise Convolution && Separable Convolution
https://yinguobing.com/separable-convolution/#fn2 卷积神经网络在图像处理中的地位已然毋庸置疑。卷积运算具备强大的特征提取能力、相比全连接又消耗更少的参数,应用在图像这样的二维结构数据中有着先天优势。然而受限于目前移动端设备硬件条件,显著降低神经网络的运算量依旧是网络结构优化的目标之一。本文所述的Separable Convolution就是降低...转载 2019-06-04 08:58:07 · 1663 阅读 · 0 评论 -
二值网络训练--A Empirical Study of Binary Neural Networks' Optimisation
A Empirical Study of Binary Neural Networks’ OptimisationICLR2019https://github.com/mi-lad/studying-binary-neural-networksADAM for optimising the objective, (2) not using early stopping, (3) spli...原创 2019-05-22 09:36:18 · 864 阅读 · 0 评论 -
二值网络训练--Training Competitive Binary Neural Networks from Scratch
Training Competitive Binary Neural Networks from Scratchhttps://github.com/hpi-xnor/BMXNet-v2 MXNet framework本文主要讨论了从零开始训练二值网络的一些情况以及 ResNet 和 DenseNet 二值网络的一些情况这里采用符号函数进行二值化二值梯度如何求导反向传播Strai...原创 2019-05-20 14:18:20 · 741 阅读 · 0 评论 -
二值网络--Optimize Deep Convolutional Neural Network with Ternarized Weights and High Accuracy
Optimize Deep Convolutional Neural Network with Ternarized Weights and High AccuracyIEEE Winter Conference on Applications of Computer Vision (WACV) 2019https://github.com/elliothe/Ternarized_Neura...原创 2019-05-10 16:06:05 · 626 阅读 · 0 评论 -
二值网络--TBN: Convolutional Neural Network with Ternary Inputs and Binary Weights
TBN: Convolutional Neural Network with Ternary Inputs and Binary WeightsECCV2018本文的思路就是: 对 weight 进行二值量化+ scaling factor α , 对于 网络层的输入 进行 ternary value {−1,0,1} without the scaling factor3 Ternar...原创 2019-05-10 11:32:47 · 598 阅读 · 0 评论 -
三值网络--Trained Ternary Quantization
Trained Ternary QuantizationICLR 2017https://github.com/TropComplique/trained-ternary-quantization pytorchhttps://github.com/buaabai/Ternary-Weights-Network pytorch传统的二值网络将权重 W 量化为 +1、-1; 三值网络 ...原创 2019-05-08 14:16:21 · 1689 阅读 · 1 评论 -
二值网络--Training Binary Weight Networks via Semi-Binary Decomposition
Training Binary Weight Networks via Semi-Binary DecompositionECCV2018CNN模型的压缩或加速总体上分为三类: pruning-based methods, low-rank decomposition based methods, and quantization-based methods本文属于 low-rank dec...原创 2019-05-07 10:17:13 · 1426 阅读 · 0 评论 -
二值网络--Structured Binary Neural Networks for Accurate Image Classification and Semantic Segmentation
Structured Binary Neural Networks for Accurate Image Classification and Semantic Segmentationhttps://arxiv.org/abs/1811.10413Binary Ensemble Neural Network 的思路就是将 若干个独立的二值网络组合起来近似 实数值网络,本文提出的 Struct...原创 2019-05-06 10:40:33 · 1292 阅读 · 0 评论 -
CNN网络量化--Two-Step Quantization for Low-bit Neural Networks
Two-Step Quantization for Low-bit Neural NetworksCVPR2018https://github.com/wps712/Two-Step-Quantization-AlexNethttps://github.com/HolmesShuan/Optimal-Ternary-Weights-Approximation本文的思路很简单:将CNN网络模...原创 2019-04-24 11:31:36 · 1603 阅读 · 0 评论 -
量化网络训练--Towards Effective Low-bitwidth Convolutional Neural Networks
Towards Effective Low-bitwidth Convolutional Neural NetworksCVPR2018https://github.com/nowgood/QuantizeCNNModel本文针对 低 bitwidth CNN网络 提出三个训练技巧 以得到较高精度。这些技巧可以独立使用也可以结合使用。第一个技巧:首先量化 weight,得到足够好的效果后再...原创 2019-04-24 10:46:11 · 1727 阅读 · 0 评论 -
ImageNet 二值网络精度排名表
Comparison with state-of-the-arts on ImageNet using ResNet-18 (W-weights, A-activation)Bi-Real net 56.4%TBN 55.6Binary Ensemble 61.0%11原创 2019-04-24 09:19:54 · 1854 阅读 · 0 评论 -
二值网络--Bi-Real Net: Enhancing the Performance of 1-bit CNNs
Bi-Real Net: Enhancing the Performance of 1-bit CNNs With Improved Representational Capability and Advanced Training AlgorithmECCV2018https://github.com/liuzechun/Bi-Real-net本文在 借鉴残差网络的 shortcut思想...原创 2019-04-23 10:44:25 · 1632 阅读 · 0 评论 -
二值网络--XNOR-Net: ImageNet Classification Using Binary Convolutional Neural Networks
XNOR-Net: ImageNet Classification Using Binary Convolutional Neural NetworksECCV2016http://allenai.org/plato/xnornet本文介绍了两种二值网络: Binary-Weight-Networks 和 XNOR-Networks,Binary-Weight-Networks 只对滤波器 ...原创 2019-04-22 10:59:32 · 910 阅读 · 0 评论 -
二值网络--Binarized Neural Networks
Binarized Neural Networks NIPS2016https://github.com/MatthieuCourbariaux/BinaryNet本文针对二值网络提出了 训练方法1 Binarized Neural NetworksDeterministic vs Stochastic Binarization 二值化函数我们对 weights 和 activatio...原创 2019-04-22 13:25:50 · 1624 阅读 · 0 评论 -
CVPR2019--Binary Ensemble Neural Network--二值CNN网络集成
Binary Ensemble Neural Network:More Bits per Network or More Networks per Bit?CVPR2019本文最基本的思想: 二值CNN网络虽然速度快,占用内存少,但是精度低。本文分析了 二值CNN网络精度低的可能原因,然后提出 组合多个二值CNN网络来提升精度。1 Introduction深度神经网络 DNNs 在学术界...原创 2019-04-22 13:22:02 · 1395 阅读 · 0 评论 -
CNN模型 int8量化实现方式(二)
这里介绍一个完全基于 Tensorflow 的模型量化方法,以 yolo v3 为例1)利用现有yolo v3 模型 生成 Tensorflow pb 模型基于 https://github.com/mystic123/tensorflow-yolo-v3Run python ./convert_weights.py and python ./convert_weights_pb.py...原创 2018-12-03 09:09:33 · 7504 阅读 · 1 评论 -
CNN模型 INT8 量化实现方式(一)
当前CNN模型基本都是 float32,将其转换为 INT8 可以降低模型大小,提升速度,精度降低的也不太多。那么在实际中如何实现这个量化了?在网上找到了两种实践方法,这里先介绍其中的一种。这里主要涉及两个问题:1)就是 int8量化;2)就是 int8 模型的使用基于Caffe-Int8-Convert-Tools进行caffe模型转int8量化 在 NCNN 框架上运行https://b...原创 2018-11-27 11:05:30 · 17441 阅读 · 2 评论 -
模型加速--Slimmable neural networks
Slimmable neural networksICLR2019Code and models will be released可瘦身的神经网络,针对不同硬件和运行环境,可以快速提供与之相适应的CNN模型来完成任务。硬件配置好的,给一个大模型,硬件配置差的,给一个小点的模型。同一个模型,设置一下参数就可以了At runtime, the network can adjust its w...原创 2018-11-07 15:40:40 · 2328 阅读 · 0 评论 -
模型加速--CLIP-Q: Deep Network Compression Learning by In-Parallel Pruning-Quantization
CLIP-Q: Deep Network Compression Learning by In-Parallel Pruning-QuantizationCVPR2018http://www.sfu.ca/~ftung/裁剪和量化一体化框架本文的思路比较简单,裁剪+量化一体训练模型分三个步骤:1) Clipping 裁剪,将网络中的权重系数值接近0 的权重全部置零,当然这种置零是临时...原创 2018-11-05 14:37:42 · 1719 阅读 · 0 评论 -
模型加速--LCNN: Lookup-based Convolutional Neural Network
LCNN: Lookup-based Convolutional Neural NetworkCVPR2017https://github.com/ildoonet/tf-lcnnhttps://github.com/hessamb/lcnn本文使用查表法加速CNN网络训练和计算,可以在嵌入式设备终端进行CNN网络训练本文对每个网络层构建一个 字典 Dictionary,每个 weig...原创 2018-11-02 16:13:31 · 1108 阅读 · 0 评论 -
模型量化--TBN:Convolutional Neural Network with Ternary Inputs and Binary Weights
TBN:Convolutional Neural Network with Ternary Inputs and Binary WeightsECCV_2018 paperTBN 用 高效的 XOR, AND 及位运算 代替 传统CNN 中的 算术运算TBN replaces the arithmetical operations in standard CNNs with efficie...原创 2018-11-01 16:12:18 · 669 阅读 · 0 评论 -
模型裁剪--Rethinking the Value of Network Pruning
Rethinking the Value of Network Pruninghttps://github.com/Eric-mingjie/rethinking-network-pruning网络模型裁剪价值的重新思考当前的深度学习网络模型一般都是 heavy computational cost,如何降低其计算量而尽可能保持网络性能是一个重要的研究课题。标准的模型裁剪三部曲是:1)训...原创 2018-10-29 16:28:44 · 6437 阅读 · 1 评论 -
实时目标检测--Pelee: A Real-Time Object Detection System on Mobile Devices
Pelee: A Real-Time Object Detection System on Mobile DevicesICLR 2018Code: https://github.com/Robert-JunWang/PeleeCNN模型在嵌入式设备中运行成为一种趋势,为此提出了一些模型如 MobileNet, ShuffleNet, and NASNet-A,他们主要依赖于 depth...原创 2018-10-26 16:29:10 · 2683 阅读 · 0 评论