最近AI圈可以说是被新晋“顶流”DeepSeek刷屏了,新发布的 V3/R1 系列模型,直接在全球火出圈,它的性能强劲到足以和全球顶尖模型一较高下!不过你知道吗?虽然网络版和App版已经足够好用,但只有把模型搬进自家地盘,进行本地部署,你才能享受到真正的“私人定制”,让DeepSeek R1的“深度思考”完全为你所用。
不过呢,问题也来了。原版的 DeepSeek - R1 671B 全量模型,文件体积大得离谱,足足有720GB!这就好比你要搬一座大山回家,绝大部分个人和企业看到这样庞大的部署成本,都被吓得望而却步。
别担心,量化技术来救场!这项技术就像神奇的魔法,一边稳稳保住 DeepSeek 模型的高精度,一边还能把模型的计算效率和资源占用问题轻松搞定。这样一来,模型在实际应用中就能表现得更加出色,开发者和企业也能享受到更加灵活高效的部署方式。
什么是大模型量化
近年来,随着人工智能的发展和Transformer等架构的提出,使得深度学习的模型参数达上万亿规模,从而使得模型变得越来越大,计算和存储资源的需求也急剧增加。因此,为了降低计算和存储的开销,我们需要一些大模型压缩技术来降低模型部署的成本,并提升模型推理的性能。模型压缩主要有几种方法:量化、知识蒸馏、剪枝和低秩分解。
量化(Quantization)是通过降低模型当中的参数精度(权重或者激活值)将从较高位宽转化为(如32为浮点数)转化为较低位宽(如8位整数或4位整数),实现模型的压缩和优化,从而降低模型的占用显存和算力,提高运行效率。通常会伴随着一定量精度的损失,需要注意的是,在计算过程中我们还会将量化后的整数反量化为浮点数,得到结果。通过量化主要有以下收益:
1. 减少内存(显存)占用
整数数据类型(如8位整数)占用的内存比浮点数(如32位浮点数)少得多。假设一个模型有1亿个参数,使用FP32数据格式表示,需要的内存为:内存占用4x108字节,将字节转换为MB(1MB=1,048,576字节):内存占用约381.47MB;若使用INT8表示数据参数:内存占用=1x108字节,将字节转换为MB(1MB=1,048,576字节):内存占用约95.37MB。所以bit越短,内存占用越少,对硬件要求越低。
2. 提升计算效率
在硬件层面,整数运算更容易实现,许多处理器和加速器专门优化了整数运算,提供张量运算的专用指令集,所以整数运算(加法、乘法等)通常比浮点运算更简单和快速。
3. 能耗降低
整数运算搬运的数据量变少,减少了访存开销,同时计算过程中,NPU 所需的乘法器数目也减少,所以消耗的能量通常比浮点运算低。
当前模型量化主要包括后训练量化(Post-Training Quantization, PTQ)和量化感知训练(Quantization Aware Training, QAT)。PTQ可以在没有原始的训练过程的情况下,就能将预训练的FP32模型直接转换为定点计算的网络。PTQ最大的特点就是不需要数据或者只需要很少的校准数据集,且几乎不需要调整超参数,使得我们可以很方便的进行模型量化,是一种在训练期间模拟量化操作的方法。QAT 通过在模型中插入伪量化节点(FakeQuant)来模拟量化误差,并在训练过程中最小化这些误差,最终得到一个适应量化环境的模型。
量化在降低显存占用和算力的同时,不可避免存在一些挑战,如量化方法的精确性、低比特数带来的精度损失,与此同时,模型大小与精度之间也存在一种权衡。一般来说,模型越小,其表达能力和容纳参数的能力也越有限,所以较小模型,量化后精度损失可能更加显著。
在进行模型量化时,要综合考虑任务、模型大小、精度要求以及实际的应用场景,以确定最合适的量化策略。基于以上场景,MindStudio模型压缩工具可以支持DeepSeek系列模型的量化,并且更加高效。
MindStudio模型压缩工具介绍
msModelSlim(MindStudio模型压缩工具),是一个以加速为目标、压缩为技术、昇腾为根本的亲和压缩工具。支持训练加速和推理加速,包括模型低秩分解、稀疏训练、训练后量化、量化感知训练等功能,昇腾AI模型开发用户可以灵活调用Python API接口,对模型进行性能调优,并支持导出不同格式模型,在昇腾AI处理器上运行。
当前msModelSlim根据开发者差异化需求,提供了模型蒸馏、大模型量化、大模型稀疏量化和权重压缩、训练后量化等多种模型压缩方案。
针对DeepSeek系列模型,msModelSlim提供了支持W8A8、W8A16的量化方案,同时也在开发W4A16、W4A8量化算法,满足不同客户需求。
同时,针对DeepSeek-V3/R1的W8A8动态量化方案,大体分为三步:
1. 调整离群值抑制:通过一致量化过程中异常值,使能后续的量化更优。针对V3/R1版本,采用SmoothQuant优化算法。
2. 量化参数的选择:根据以往经验,选择指定的层回退(即对精度敏感的层使用浮点数计算);激活值量化方式选择Min-Max方式;采用混合量化方式,即MoE层选用W8A8-Dynamic量化,MLA层选用W8A8量化。
3. 校准集调整,通过更新业务校准集进行Label-Free量化。
量化流程如下:
基于msModelSlim模型压缩工具的量化压缩能力,互联网、运营商、金融等20+行业客户均在本地部署上线DeepSeek-V3/R1满血版量化模型。
结语
随着深度学习模型变得越来越庞大和复杂,高效地将其知识迁移至小型、轻量化的模型,已经成为AI技术走向实际生产的关键路径。msModelSlim支持多种模型压缩算法(包括量化压缩、稀疏压缩等),为开发者提供更加灵活、高效的模型压缩量化方案。在保障精度的同时,以更低的资源消耗实现更快的推理速度,助力企业快速部署上线,为AI技术的普及和落地提供了强有力的支持。
msModelSlim工具已开源发布昇腾社区及Gitee社区,诚邀大家点击阅读原文下载使用。
阅读原文:
https://gitee.com/ascend/msit/tree/master/msmodelslim/README.md
「免责声明」:以上页面展示信息由第三方发布,目的在于传播更多信息,与本网站立场无关。我们不保证该信息(包括但不限于文字、数据及图表)全部或者部分内容的准确性、真实性、完整性、有效性、及时性、原创性等。相关信息并未经过本网站证实,不对您构成任何投资建议,据此操作,风险自担,以上网页呈现的图片均为自发上传,如发生图片侵权行为与我们无关,如有请直接微信联系g1002718958。
