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 小时前
Transformer(注意力机制)不按顺序-全盘扫描
人工智能·深度学习·transformer
空堂与归7 小时前
RNN记不住长序列怎么办?用 LSTM 三门一通道接旁路
人工智能·rnn·nlp·lstm
DevOpenClub17 小时前
多语言内容审核如何避免误翻译:语种检测、纠错与情感分析编排
nlp
布吉岛的石头1 天前
Java 程序员第 48 阶段1:Transformer 架构总览与自注意力直觉,从 RNN 痛点理解注意力机制
java·架构·transformer
EW Frontier2 天前
拆解|多尺度复数卷积,把调制识别准确率又往上推了 3 个点【文末附代码链接】
transformer·调制识别·无人机信号识别·辐射源识别
Jialu.2 天前
中文 BERT 多任务分类项目:从模型结构到训练细节
人工智能·pytorch·分类·微软·nlp·bert
AIGC大时代2 天前
知网 AIGC 检测在罚什么:均匀句长、低指代、零口癖,并不等于「用过 ChatGPT」
人工智能·chatgpt·nlp·aigc·论文·知网·学术规范
Jialu.2 天前
从 102M 到 34M:BERT 到 BiLSTM 的完整知识蒸馏实现
深度学习·nlp·bert
LlmCraft|大模型工程实践2 天前
03 文本向量化:词袋模型与 TF-IDF
自然语言处理·nlp·tf-idf