task06大模型量化与训练

地址:微调量化篇第3章 https://datawhalechina.github.io/hello-agents/#/./chapter4/第四章 智能体经典范式构建

量化

用较少的信息来表示数据,在尽量不损失模型性能的前提下,降低资源开销

深度学习模型普遍表现出显著的参数冗余性(彩票假设),量化技术可以通过降低非关键参数的数值精确度(如从FP16降低至INT4),在大幅减少显存占用和计算量的同时,尽可能保持模型的原始性能

FP16 floating point 半精度浮点数(16位),用16位来表示一个浮点数,能较好地保留模型权重和激活值地动态范围与小数精度,常用于训练或推理阶段以平衡性能和精度

量化后的精度INT4,用4位(0.5字节)表示一个整数值,通常取值范围为-8到+7或0到15

通过量化感知训练或后训练量化,可以将模型中的非关键参数安全地从FP16转换为INT4,而不会显著损害模型的性能

实际应用中,模型可能会混合使用多种精度(如关键层保留FP16,非关键层用INT4),称为混合精度

需要多少显存

精度与显存的关系:模型权重通常以浮点数形式存储,不同的精度决定了每个参数占用的字节数

显存估算:

在计算机存储单位中 1GB=1024MB,1MB=1024KB

估算模型参数量和现存时,为了方便,通常近似为 1 G B ≈ 10 9 1GB≈10^9 1GB≈109 Bytes,如果追求精确计算,可以除以 1024 3 1024^3 10243

模型所需现存大小的通用估算公式:
权重显存占用 ≈ 模型参数量 × 每参数占用字节数 权重显存占用≈模型参数量×每参数占用字节数 权重显存占用≈模型参数量×每参数占用字节数

以Qwen2.5-7B为例,约70亿参数,即 7 × 10 9 7×10^9 7×109 :

如果使用FP16/BF16精度(16/8=2),2Bytes/参数
7 × 10 9 × 2 B y t e s ≈ 14 G B 7×10^9×2 Bytes ≈14GB 7×109×2Bytes≈14GB

如果使用INT8量化,需要约7GB参数空间;若使用INT4量化可以进一步将参数需要的权重占用缩减为3.5GB

实际运行时,还需要预留显存给KV Cache,上下文缓存,与训练长度成正比;激活值,保存中间层的计算结果,与Batch Size和序列长度相关;框架开销,PyTorch/CUDA context本身会占用一定开销。所以实际显存需求通常比估算值高20%到30%,例如3.5GB权重的7B的INT4模型,推荐显存至少6GB起步

Transformers中的主流集成方案

Hugging Face Transformers的官方文档与实践中,最常用的是GPTQ、AWQ、和bitsandbytes,在代码层面通常通过 AutoModel*.from_pretrained(..., quantization_config=...) 搭配相应的配置类(如 GPTQConfigAwqConfigBitsAndBytesConfig)实现相对统一的调用体验

GPTQ和AWQ主要面向推理部署与加速,属于Post-Training Quantization算法,生成的模型通常以量化后的检查点形式保存

bitstandbytes常用于8bit/4bit推理就,也是一系列低显存微调方案的核心依赖,尤其擅长让大模型在单卡上完成4-bit训练

面向生成模型的高效量化

GPTQ(Generative Pre-trained Transformer Quantization)是一种面向大规模生成式Transformer的训练后量化(PTQ)技术,是OBQ算法在超大模型上的高阶进化版,基于近似二阶信息是西安了一次性权重量化,解决了以往简单的RTN量化在模型参数超百亿时会导致严重精度崩塌问题

然后我看不懂了

相关推荐
机器学习之心2 小时前
TCN-Transformer-BiGRU组合模型回归+SHAP分析+新数据预测+多输出!深度学习可解释分析
深度学习·回归·transformer·shap分析
是店小二呀3 小时前
CANN 异构计算的极限扩展:从算子融合到多卡通信的统一优化策略
人工智能·深度学习·transformer
黑衣骑士兴4 小时前
llamafactory 安装和使用
nlp
ccLianLian5 小时前
计算机基础·cs336·损失函数,优化器,调度器,数据处理和模型加载保存
人工智能·深度学习·计算机视觉·transformer
肾透侧视攻城狮5 小时前
《Transformer模型PyTorch实现全攻略:架构拆解、代码示例与优化技巧》
深度学习·transformer·构建transformer模型·定义多头注意力模块·定义位置前馈网络·构建解/编码器模块·训练transformer模型
chian-ocean15 小时前
量化加速实战:基于 `ops-transformer` 的 INT8 Transformer 推理
人工智能·深度学习·transformer
杜子不疼.15 小时前
CANN_Transformer加速库ascend-transformer-boost的大模型推理性能优化实践
深度学习·性能优化·transformer
renhongxia116 小时前
如何基于知识图谱进行故障原因、事故原因推理,需要用到哪些算法
人工智能·深度学习·算法·机器学习·自然语言处理·transformer·知识图谱
深鱼~16 小时前
ops-transformer算子库:解锁昇腾大模型加速的关键
人工智能·深度学习·transformer·cann
禁默16 小时前
不仅是 FlashAttention:揭秘 CANN ops-transformer 如何重构大模型推理
深度学习·重构·aigc·transformer·cann