模型落地困难?看看这个如何解决PTQ的振荡问题(二)

简介: 模型落地困难?看看这个如何解决PTQ的振荡问题(二)

4、实验


4.1、ImageNet Classification

作者在各种模型上验证了本文的算法,包括不同规模的ResNet-18、ResNet-50和MobileNetV2。如表1所示,本文的算法在与不同配置相对应的广泛模型上以很大的优势优于其他方法。

具体而言,在ResNet-18和2/4位的MobileNetV2上实现了66.18%和57.85%的Top-1准确率,分别比SOTA高1.52%和4.93%。其次,本文的方法在低位显示出强大的优越性。例如,在MobileNetV2×0.75上,2/4位PTQ量化的精度增益显著高于4/4位(5.36%对1.61%)。振荡问题可能更为严重,因为低位会导致PTQ重建误差的大小增加。因此,在低位量化时平滑这种振荡对于PTQ优化过程至关重要。

本文的方法在不同规模上对MobileNetV2进行了相当大的改进,这意味着模型大小不会限制本文算法的性能。此外,可以注意到本文的算法对MobileNetV2更有效。通过观察,MobileNetV2中的振荡问题比ResNet网络家族的振荡问题更严重。深度可分离卷积增加了模块容量的差异,从而使损失振荡的幅度更大。因此,本文的算法通过解决MobileNetV2中的振荡问题,实现了相当大的性能改进。

4.2、消融实验

1、帕累托最优

在不同规模的MobileNetV2上随机采样了大量混合重建粒度方案,并使用BRECQ算法使用4/4位PTQ对这些方案进行优化,以获得采样精度。在图4中绘制了这些方案的精度分布。此外,还分别在MobileNetV2上标记了MRECG和BRECQ算法在不同尺度下的准确性。从图4中,可以观察到MRECG在所有尺度上都比MobileNetV2有稳定的准确性提高。总体而言,MRECG在模型大小的限制下实现了Pareto最优状态。

2、组成部分贡献

在这里分别研究了混合重建粒度和扩展批处理大小对准确性的贡献。将通过BRECQ量化为4/4位的0.5缩放的MobileNetV2作为基线。

如表2所示,混合重建粒度和扩展批量大小的准确度分别提高了1.08%和0.74%。同时,这两种方法的结合进一步提高了模型的性能。

3、缩小扩大「Batch size」的边际效用

根据大数定律,当样本数量增加时,样本的平均值收敛于方程1中的期望值,从而产生较小的近似误差。然而,当样本大小足够大时,由于近似误差的减小而获得的精度增益可以忽略不计。换句话说,「Batch size」的扩大呈现出边际效用递减的趋势。

在图5中对一些「Batch size」进行了随机采样,并通过BRECQ在0.5标度的MobileNetV2上获得了4/4比特的PTQ精度。证明了采样精度的中位数,以防止异常值的影响。

可以注意到,当「Batch size」较小时,采样精度波动更大,这意味着较小「Batch size」的近似误差会产生较大的噪声。随着「Batch size」的扩大,这种情况有所缓和。此外,可以观察到中值精度的增加,然后趋于稳定,这意味着扩大「Batch size」可以为PTQ带来精度增益。同时,这种收益受到边际效用递减的制约。

4、损失分布

如图6所示给出了不同算法的损失分布。从Adaround的分布可以看出,它具有最大的振荡幅度。因此,在模型的更深层次,Adaround的重建损失迅速增加。

此外,BRECQ使用块重建进行PTQ优化,这在某种程度上缓解了损失振荡问题,从而提高了性能。而混合重建粒度通过联合优化容量差异较大的相邻模块来平滑损失振荡。

可以看出,与Adaround和BRECQ相比,MRECG的损失变化更稳定。此外,当比较不同场景下的MRECG损失时发现基于无数据场景获得的MRECG仍然具有较小的振幅损失振荡。作者认为,这种适度的振荡与ModCap MRECG只能联合优化两个相邻模块的事实有关,这只能实现局部最优。相比之下,MRECG具有最平滑的损失曲线。然而,这种全局最优是以延长获得量化模型的时间为代价的。


5、参考


[1].Solving Oscillation Problem in Post-Training Quantization Through a Theoretical Perspective.

相关文章
|
存储 SQL 关系型数据库
如何设计可落地的重构技术方案——理论篇
如何设计可落地的重构技术方案——理论篇
301 0
|
1月前
|
机器学习/深度学习 人工智能 监控
提升软件质量的关键路径:高效测试策略与实践在软件开发的宇宙中,每一行代码都如同星辰般璀璨,而将这些星辰编织成星系的过程,则依赖于严谨而高效的测试策略。本文将引领读者探索软件测试的奥秘,揭示如何通过精心设计的测试方案,不仅提升软件的性能与稳定性,还能加速产品上市的步伐,最终实现质量与效率的双重飞跃。
在软件工程的浩瀚星海中,测试不仅是发现缺陷的放大镜,更是保障软件质量的坚固防线。本文旨在探讨一种高效且创新的软件测试策略框架,它融合了传统方法的精髓与现代技术的突破,旨在为软件开发团队提供一套系统化、可执行性强的测试指引。我们将从测试规划的起点出发,沿着测试设计、执行、反馈再到持续优化的轨迹,逐步展开论述。每一步都强调实用性与前瞻性相结合,确保测试活动能够紧跟软件开发的步伐,及时适应变化,有效应对各种挑战。
|
3月前
|
测试技术 UED
质量标准化实践问题之测试策略的本质如何解决
质量标准化实践问题之测试策略的本质如何解决
21 2
|
3月前
|
机器学习/深度学习 人工智能 算法
就AI 基础设施的演进与挑战问题之大模型训练过程中的问题如何解决
就AI 基础设施的演进与挑战问题之大模型训练过程中的问题如何解决
|
4月前
业务系统架构实践问题之领域设计的重要性如何解决
业务系统架构实践问题之领域设计的重要性如何解决
|
4月前
|
存储 缓存 运维
通用研发提效问题之什么是通用化方案,提高女娲的适用性如何解决
通用研发提效问题之什么是通用化方案,提高女娲的适用性如何解决
|
4月前
|
人工智能 领域建模
应用工程化架构问题之AI计算机中的大模型评估体系发生变化如何解决
应用工程化架构问题之AI计算机中的大模型评估体系发生变化如何解决
|
6月前
|
机器学习/深度学习 安全 搜索推荐
大模型从“赶时髦”到“真有用”成为提效手段
【1月更文挑战第2天】大模型从“赶时髦”到“真有用”成为提效手段
147 1
大模型从“赶时髦”到“真有用”成为提效手段
|
存储 NoSQL 关系型数据库
重构之道:揭秘大规模系统重构的经验与挑战
重构之道:揭秘大规模系统重构的经验与挑战
970 2
|
机器学习/深度学习 算法 计算机视觉
模型落地困难?看看这个如何解决PTQ的振荡问题(一)
模型落地困难?看看这个如何解决PTQ的振荡问题(一)
197 0