赞
踩
针对深度学习模型的边缘、移动端部署,模型量化已经成为必不可少的压缩手段。一方面,将模型权重量化为低比特,可缓解模型存储的负担(例如INT8量化的理论压缩比为4倍);另一方面,将W与A均量化为低比特,可通过专用整形计算单元或加速指令实现网络层的推理加速(例如NV GPU的TensorCore单元),并节省运行时内存的Overhead。
模型量化可分为QAT与PTQ两种实现方式,QAT依赖于训练集的感知微调(需要为Forward阶段设计低量化误差的Quantizer,为Backward阶段设计缓解Gradient mismatch的Estimator),PTQ则是训练后量化策略(包括Data-free与Label-free两种形式)。出于用户隐私与数据安全考虑,大多数应用场景提供少量无标注数据以支持Label-free PTQ,或者不提供任何数据仅支持Data-free PTQ。Data-free Quantization需要借助Pre-trained Model蕴含的信息执行有效量化,即达成量化目标的同时、尽量减少精度损失,典型代表为生成式方法(Generative Method)。生成式方法通过对抗样本生成方式,能够合成接近真实分布的数据(作为量化的数据基础),并进一步通过优化方式求解量化参数、微调权重参数,以实现有效量化。
生成式方法(如GDFQ、ARC、Qimera、AIT等)的基本架构,充分利用了深度学习的"搭积木原理"或"模块化编程方式",发挥了每个模块应有的功能价值。例如样本生成器借助了对抗样本生成思路,BN层蕴含原数据集的统计信息(CNN模型通常包含BN层,但Transformer模型通常不具备),Pre-trained model能够为Quantized model提供Soft label,Gumbel softmax的随机采样与可微分特点,等等。
Paper地址:https://arxiv.org/abs/2003.03603v3
上图显示了GDFQ的基本原理,包含生成器训练与量化模型微调的联合实现。生成器产生合成数据,作为Pre-trained model与Quantized model的输入;Pre-trained model为生成器提供Classification boundary information与BN statistics,使合成样本接近真实数据分布;同时,Pre-trained model也为量化模型提供Soft-label,以增强量化训练;在生成器训练与量化模型微调期间,Pre-trained model的参数冻结。具体描述如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。