推理量化精度调优案例
本章节以Llama-3.1-8B模型为例,通过W8A8量化场景展示量化精度调优方法,量化精度评估基于伪量化功能,数据集为BoolQ。原始浮点模型的具体情况请参见原始浮点模型量化精度。
量化步骤
- 在W8A8量化场景下,针对Llama-3.1-8B模型,对五种离群值抑制方法逐一进行了尝试。
- m3也适用于W8A8量化场景,但可能会导致离群值增多,量化精度损失更多,效果不稳定,因此未尝试。
- 不同模型或量化场景下,离群值抑制方法的表现可能会有所不同,建议根据具体任务需求选择合适的算法进行优化。
- anti_method取值m1时,精度值为78.87%。
- anti_method取值m2时,精度值为79.27%。
- anti_method取值m4时,精度值为64.01%。
- anti_method取值m5时,精度值为79.17%。
- anti_method取值m6时,精度值为64.89%。
通过以上数据可以发现,在Llama-3.1-8B模型中,离群值抑制算法m2取得了最佳的精度结果(79.27%),相较于其他方法表现最优。这表明在当前模型和量化场景下,m2算法能够更有效地抑制离群值,提升量化模型的精度。
- 选择激活量化算法。
通过以上数据可以发现,在Llama-3.1-8B模型上,设置act_method=2时,取得了最佳的模型精度结果(80.40%)。
- 调整校准集。
使用anti_method=m2,act_method=2的配置,将校准数据集从5条扩展至50条后,模型精度从80.40%改变为79.05%。由此可见,对于Llama-3.1-8B模型而言,最初的5条校准数据已经能够充分满足校准需求,增加校准数据量并未带来精度改善。
- 执行量化回退。
使用anti_method=m2,act_method=2,5条校准数据集的配置,针对Llama-3.1-8B模型,分别进行了手动和自动量化回退测试。
通过以上调优策略,量化模型的精度相较于浮点模型仅损失了0.12%,达到了量化后精度目标。