[NeurIPS 2022] Leveraging Inter-Layer Dependency for Post-Training Quantization
Contents
- Introduction
- Method
- Experiments
- References
Introduction
- 作者提出一种端到端的 PTQ 训练策略 Network-Wise Quantization (NWQ),并通过 Annealing Softmax (ASoftmax) 和 Annealing Mixup (AMixup) 改进了 AdaRound,降低了训练收敛难度
Method
-
Activation Regularization (AR). 采用端到端而非 layer/block-wise 优化每个 block 的量化损失
-
Annealing Softmax (ASoftmax). 类似于 AdaRound,采用 Adaptive Rounding,但不同的是作者采用 Softmax 而非 Sigmoid,这使得 rounding 范围由 0~1 扩展到了 n n n~ m m m,但相应得训练参数量也增加到了原来的 m − n + 1 m-n+1 m−n+1 倍 (不过作者默认采用 n = 0 , m = 1 n=0,m=1 n=0,m=1,所以 ASoftmax 的优势很大可能来自与 AdaRound 的第二点不同,也就是加速模型收敛;如果扩展 m , n m,n m,n,那么随着训练参数量的增加,如果校准数据比较少,模型容易过拟合)
此外,不同于 AdaRound 采用正则项促使 h ( V ) h(\mathbf V) h(V) 趋近 0/1,而作者认为这个正则项和量化损失其实是冲突的 (量化损失会促使 h ( V ) h(\mathbf V) h(V) 趋近 w s − ⌊ w s ⌋ \frac{\mathbf w}{s}-\lfloor\frac{\mathbf w}{s}\rfloor sw−⌊sw⌋),这会导致 AdaRound 不容易收敛;对此,作者借助 softmax temperature 帮助模型更好收敛
其中, τ t \tau^t τt 代表 iter t t t 时刻的 temperature,从 1 线性衰减到 0.01;作者还给出了 V i \mathbf V_i Vi 的初始化策略 V i = log ( σ ′ ( V ) i ) \mathbf V_i=\log(\sigma'(\mathbf V)_i) Vi=log(σ′(V)i),这样可以使得初始 rounding 与原始权重尽可能接近,证明可参考附录 A
-
Annealing Mixup (AMixup). 采用 mixup 混合全精度模型输出和量化模型输出,作为 AR 中的优化目标 a l a_l al,其中全精度模型输出在 iter t t t 所占比例从 P s = 0.5 P_s=0.5 Ps=0.5 线性衰减到 P e = 0 P_e=0 Pe=0 从而帮助模型更好收敛
Experiments
- Comprehensive Comparison.
- Ablation Study. (1) AR.
(2) ASoftmax.
(3) AMixup.
References
- Zheng, DanDan, Yuanliu Liu, and Liang Li. “Leveraging inter-layer dependency for post-training quantization.” Advances in Neural Information Processing Systems 35 (2022): 6666-6679.