简介
msModelSlim,即昇腾压缩加速工具,一个以加速为目标、压缩为技术、昇腾为根本的亲和压缩工具。支持训练加速推理加速,包括模型低秩分解、稀疏训练、训练后量化、量化感知训练等功能,昇腾AI模型开发用户可以灵活调用Python API接口,对模型进行性能调优,并支持导出不同格式模型,在昇腾AI处理器上运行。
- CANN 8.0.RC3版本的msModelSlim软件包支持集成在CANN Toolkit(开发套件包)或从msModelSlim网站下载,msModelSlim文档会在昇腾社区和msModelSlim网站同时发布。CANN 8.0.RC3版本之后的msModelSlim软件包仅支持从msModelSlim网站下载,msModelSlim文档仅在msModelSlim网站发布。
- ModelSlim工具从7.0.RC2版本将更名为msModelSlim。
- 当前版本两种API的调用方式均支持,原版本的API调用方式会延续至下个版本,后续版本将变更为新版本的API调用方式。
- 原版本的API调用方式:
import modelslim
- 新版本的API调用方式:
import msmodelslim
- 原版本的API调用方式:
msModelSlim针对开发者的差异化需求,提供了以下模型压缩方案:
功能类型 |
功能名称 |
功能简介 |
---|---|---|
训练加速 |
低秩分解是一种矩阵分解技术,它可以将一个大型矩阵分解为若干个较小矩阵的乘积,这些较小矩阵的秩相对较低。低秩分解在很多领域都有应用,如数据分析、机器学习、图像处理等。 |
|
稀疏加速算法是一种旨在通过减少模型参数的数量来提高计算效率的训练方法。这种算法基于网络扩增训练的思想,通常涉及到在训练过程中引入额外的参数,然后通过某种方式对这些参数进行筛选或修剪,以实现模型的稀疏化。 |
||
蒸馏调优是一种模型压缩技术,它将一个大型、复杂的教师模型的知识转移到一个小型的学生模型中。在这个过程中,学生模型试图模仿教师模型的输出,通常是通过训练学生模型来匹配教师模型的输出或中间层的激活。 |
||
推理加速 |
大模型量化是一种模型压缩技术,它通过减少模型权重和激活的数值表示的精度来降低模型的存储和计算需求。量化工具通常会将高位浮点数转换为低位定点数,从而直接减少模型权重的体积。 |
|
大模型稀疏量化工具结合了模型量化与模型稀疏化两种技术,旨在通过减少模型体积和降低内存及带宽消耗来提升模型的性能。 |
||
训练后量化不需要重新训练模型,而是在模型训练完成后直接对模型进行量化。 |
||
量化感知训练是一种在模型训练过程中模拟量化效果的训练方法。通过在训练过程中加入量化操作,模型可以适应量化带来的精度损失,从而在量化后的模型上保持较高的性能。 |
||
模型权重剪枝是一种通过移除模型中不重要的权重(即那些对模型性能影响较小的权重)来减少模型复杂度的技术。剪枝后的模型权重更少,从而可以减少模型的存储需求,并可能加快模型的推理速度。 |
||
基于重要性评估进行剪枝调优是一种常用的方法,它涉及到评估模型中每个权重的重要性,并据此决定哪些权重应该被剪枝。 基于重要性评估的剪枝调优可以显著减少模型的大小,提高模型的推理效率,同时尽量保持模型的性能。这种方法在深度学习模型压缩和加速中非常有用,特别是在需要部署模型到资源受限的环境中的情况下。 |