模型量化
文章平均质量分 95
不定期更新模型量化有关 Paper 的阅读理解
Bitterest
阿巴阿巴
展开
-
Paper Reading||Overcoming Oscillations in Quantization-Aware Training
1. 作者发现,在 QAT 过程中使用直通估计器(STE)时,权值似乎会在相邻的量化水平之间随机振荡,这就会为优化过程引入有害的噪声。2. 这种权重振荡,会破坏训练期间收集的批归一化层的参数统计结果,导致较差的推理准确性。这种影响在具有深度可分离层的高效网络(如 Mobilenets 和 EfficientNets )的低比特(≤4比特)量化中表现得特别明显。3. 大多数的 QAT 算法还无法克服这种权重振荡。...原创 2022-06-23 13:51:41 · 914 阅读 · 1 评论 -
Paper Reading||Quantization Networks
现有的低比特量化方法可以分为两类:以近似(Approximation)为基础的方法和以优化(Optimization)为基础的方法。以 Approximation 为基础的方法即在前向传播时使用阶梯函数来离散浮点值,在反向传播时采用 STE 或其他设计来近似创造一个可导的梯度流。但是因为反向传播的梯度流是创造出来的,这就会带来梯度与实际(在前向传播中运用到的)公式不匹配的问题。以 Optimization 为基础的方法即将注意力放在如何间接引导 Weight 往减小量化误差方向更新。如在 Loss 上原创 2022-02-13 17:37:18 · 893 阅读 · 1 评论 -
Paper Reading||Improving Low-Precision Network Quantization via Bin Regularization
当进行较低比特量化时,PTQ 方法往往会带来显著的性能下降。以前的 QAT 方法试图最小化量化误差,或模拟全精度网络的 Activation 分布。然而,这些方法的最终性能仍然不令人满意。原创 2021-12-04 21:43:16 · 3940 阅读 · 0 评论 -
Paper Reading||Differentiable Dynamic Quantization with Mixed Precision and Adaptive Resolution
不同的网络架构在不同的层中分配的内存和计算复杂度是不同的,会导致量化处于次优状态,特别是当量化参数(如比特宽度、动态范围和步长)逐层冻结训练时(可以参考 PROFIT)。2. (在没有 STE 之前,)基于梯度的低比特宽度模型训练是困难的,因为先前量化函数的梯度可能会消失,即量化后的 DNN 在反向传播时可能返回零梯度。3. 量化往往会在轻量级架构上表现较差,如 MobileNet 系列。这主要因为这些模型已经是高效和紧凑的,没有太多的量化空间。原创 2021-12-01 00:08:56 · 2244 阅读 · 0 评论 -
Paper Reading||MQBench: Towards Reproducible and Deployable Model Quantization Benchmark
近年来虽然深度学习模型量化做的越来越好,但其缺乏一个系统的研究与探讨——这些研究工作是否真的可以应用于实践?量化后性能的提升是由量化算法本身带来的,还是由训练的 Tricks 带来的?且目前仍缺乏一个 Benchmark 来统一规范量化的训练流程,并彻底和公正地比较量化算法。作者发现大多数量化相关的学术研究论文没有在实际硬件设备上测试过,也就是说实际在硬件部署时的效果是不清楚的。因为实际部署不仅会进行 Fold BN 操作,还会量化除 Weight、Activation 以外的 Parameters原创 2021-11-04 21:53:59 · 1580 阅读 · 6 评论 -
Paper Reading||Network Quantization with Element-wise Gradient Scaling
使用直通估计器 (STE) 来进行QAT是次优的,因为它只是传播相同的梯度,而不考虑离散器的输入和输出之间的离散误差所带来的梯度影响。当然目前也有人做STE的 Soft 版本,即用 Sigmoid 或 Tanh 来近似组成离散化操作。但在较大的温度时会导致消失/爆炸梯度问题。原创 2021-09-25 16:41:15 · 767 阅读 · 0 评论 -
Paper Reading||Training With Quantization Noise for Extreme Model Compression
这篇论文开头就讲了很多的定义和概念,对量化的理解还是起到一定作用的。作者的核心创新就是Quant-Noise观念,这种观念可以应用到量化、剪枝中。Quant-Noise思想与Dropout、LayerDrop有异曲同工之妙,Quant-Noise减小了元素间相关性、增强了鲁棒性。原创 2021-08-31 20:31:07 · 770 阅读 · 2 评论 -
Paper Reading||Improving low-bit quantization through learnable offsets and better initialization
LSQ 只适用于激活函数为 ReLU 的模型,即只适用于 Activation 为非负分布的模型,不适用于激活函数为 Swish\Leaky-ReLU 等的模型。基于梯度的可学习量化方案其实不太稳定,需要更完美的超参数。原创 2021-10-03 14:07:58 · 329 阅读 · 0 评论 -
Paper Reading||Learned Step Size Quantization
早期量化器的参数都是固定的。固定映射方案虽然简单、具有吸引力,但它不能保证优化网络性能。量化误差最小化方案可能会完美地最小化量化误差,但如果不同的量化映射实际上没有最小化任务误差,则仍然不是最佳的。QAT量化如何以最佳方式最大化任务性能,仍然是一个悬而未决的问题。原创 2021-09-29 15:24:36 · 643 阅读 · 0 评论 -
Paper Reading||Differentiable Soft Quantization:Bridging Full-Precision and Low-Bit Neural Networks
由于量化电平是有限的,当模型量化到极低比特(如 2-bit)时,目前的二值量化和均匀量化仍然会导致非常严重的性能下降。QAT 的反向传播很难获得准确的梯度,在文献中基本都用直通估计器(STE)来近似。但当数据被量化到极低比特时,梯度误差会被放大,导致优化明显不稳定。量化本身不可避免地会导致原始数据与其量化值之间出现较大偏差,从而常常导致性能下降。量化通常由两个操作完成:剪裁(Clip)和取整(Round)。前者将数据限制在较小的范围内,而后者将原始值映射到最近的量化点。原创 2022-02-09 21:55:26 · 2585 阅读 · 1 评论 -
Paper Reading||Distance-aware Quantization
1. 使用 STE,虽然使得Round操作处处可导(梯度为1),但会引入梯度不匹配、不合理的问题。2. 软量化器(Soft Quantizer)方法虽然能有效改进梯度不匹配问题,但从软量化器直接“跳变”为硬量化器会带来 Quantizer Gap 问题。3. 在软量化器中引入能够逐渐增大的 Temperature 参数,虽然能缓解 Quantizer Gap 问题,但又会导致梯度流变得不稳定。原创 2022-01-27 22:55:28 · 3699 阅读 · 0 评论 -
Paper Reading||DoReFa-Net: Training Low Bitwidth CNNs With Low Bitwidth Gradients
先进的DCNN通常参数多、计算复杂度高,这些缺点不利于嵌入式设备中的应用。 以前的工作还没有成功地在向后传递期间将梯度量化为位宽小于8的离散值并保证性能不严重减少。原创 2022-01-20 16:03:19 · 954 阅读 · 0 评论 -
模型压缩之量化入门笔记||量化基本公式的理解||量化过程可视化||LSQ公式理解
本人初入模型量化的坑,对量化的一些过程还不是很理解,于是做了一些可视化的小实验,来帮助更好地理解公式。原创 2021-08-20 21:18:35 · 2881 阅读 · 0 评论 -
Paper Reading||Filter Pre-pruning for Improved Fine-tuning of Quantized Deep Neural Networks
Conv层往往和BN层同时出现,实际加速推理时还必须对BN层参数进行量化,然后利用“Fold”操作将BN层参数嵌入到Conv层中。但是这样做可能会增加Weight分布的动态范围,增大量化误差。作者认为应该先“Fold”,然后再对“Fold”结果进行统一量化,这样就能降低量化误差。一些权重对于学习都是不必要的,或者实际上干扰了学习过程,干扰了量化DNN的微调。那么可以通过某原创 2021-08-17 15:09:44 · 168 阅读 · 0 评论 -
Paper Reading||PROFIT: A Novel Training Method for sub-4-bit MobileNet Models
作者发现在主流模型中,较笨重的模型(AlexNet、ResNet-18、ResNet-34、ResNet-50)在经过ultra low-bit量化后精度损失较少,但紧凑轻型网络(MobileNet-v1、MobileNet-v2)在经过量化后精度损失很严重。对于这个现象,引起了作者的思考。作者发现在微调过程中,Weight量化后会使Activation的统计信息(statistics)发生变化,如mean和variance会发生变化。如何缓解Activation这样的变化称为值得思考的问题。原创 2021-08-14 17:55:59 · 553 阅读 · 0 评论