大模型压缩和推理加速
创作时间:
作者:
@小白创作中心
大模型压缩和推理加速
引用
CSDN
1.
https://blog.csdn.net/qq_21201267/article/details/144259091
大模型的压缩和推理加速是当前AI领域的重要研究方向。本文将从模型压缩和加速两个方面,介绍大模型压缩和推理加速的相关技术,包括量化、蒸馏、剪枝、稀疏激活等模型压缩方法,以及KV Cache、PagedAttention等推理服务加速技术。同时,本文还将介绍一些常见的推理框架,帮助读者更好地理解和应用这些技术。
1. 模型压缩和加速
为了提升推理速度,主要从以下几个方面进行优化:
- 减少模型尺寸:量化、蒸馏、权重共享
- 减少计算操作:模型剪枝、稀疏激活
1.1 量化
将浮点数量化成整型数:
$$
Q = \frac { R } { S } + Z
$$
其中:
- $R$ 是真实的浮点数
- $Q$ 是量化后的定点数
- $Z$ 是0浮点数对应的量化值
- $S$ 是收缩因子
收缩因子的计算公式为:
$$
S = \frac { R _ { \ \ \max } - R _ { \min } } { Q _ { \ \ \max } - Q _ { \min } }
$$
$Z$ 的计算公式为:
$$
Z = Q _ { \ \ \max } - \frac { R _ { \min } } { S }
$$
1.2 蒸馏
蒸馏损失函数为:
$$
L = \alpha L _ { S o f t } + (1-\alpha) L _ { H a r d }
$$
其中:
- $L _ { S o f t } = - \sum _ { i } ^ { N } p _ { i } ^ { T } \log ( q _ { i } ^ { T } )$
- $L _ { H a r d } = - \sum _ { i } ^ { N } c _ { j } \log ( q _ { i } ^ { 1 } )$
步骤:
- 训练教师模型
- 设计学生模型,可以选择层数减少、宽度缩小、参数共享等方式来降低复杂度
- 教师模型对输入数据进行预测,获取软标签
- 加权两种损失,考虑跟老师输出的差异和真实标签的差异(避免被老师的偶然错误带跑)
- 评估调优,学生模型结构调整,蒸馏温度T,超参数 a
还有特征蒸馏:学习教师模型的隐藏层输出
1.3 剪枝
删除不重要的模型参数,但是会引起精度损失
一般流程:
- 训练网络
- 删除权重值低于阈值的神经元
- 对网络重新训练(减少精度损失),后两步可以重复多次
1.4 稀疏激活
减少激活数量,某些神经元只在特定条件下被激活(输出非零值),其他神经元的激活值为零或被忽略,减少计算,减少内存占用
MOE 混合专家模型,门控网络负责选择合适的专家
稀疏激活模型有:悟道2.0,GLaM,Mixtral 8x7B 等
2. 推理服务加速
- 减少时间延迟
- 增加单位时间处理的 token 数量
2.1 KV Cache
- 以空间换时间
- 已知前 n 个Token, 预测第 n+1 个 Token的时候,对前n个Token的计算是重复的
- 对 K,V等信息缓存在内存中,后续复用,减少计算,推高推理效率
- 缺点就是会占用一定的显存资源
- transformers 中的 generate() 已经内置该技术了
2.2 PagedAttention
大模型部署框架 VLLM 就使用了这个技术
一次处理多个请求,需要有效管理每个推理占用的内存空间
- 将每个序列的KV缓存分成多个块,每个块包含固定数量的标记的键和值。在注意力计算过程中,PagedAttention Kernel 高效地识别和获取这些块,采用并行的方式加速计算
- 允许在非连续的内存空间中存储连续的KV张量
- 在块的粒度上实现了内存共享,不仅在与同一请求相关的不同序列之间,而且在不同请求之间
3. 常见推理框架
- vLLM
- 通过PagedAttention技术高效地管理attention中缓存的张量,比HuggingFace Transformers高14-24倍的吞吐量
- 兼容OpenAI的接口服务
- 与HuggingFace模型无缝集成
- Text Generation Inference (TGI)
- 提供了一系列优化技术,如模型并行、张量并行和流水线并行等
- 这些技术可以显著提升大模型推理的效率
- 适合需要在多种硬件环境下进行高效推理的场景
- llama.cpp
- 主要目标是在本地和云端的各种硬件上以最少的设置和最先进的性能实现LLM推理
- 提供1.5位、2位、3位、4位、5位、6位和8位整数量化
- 以加快推理速度并减少内存使用
- 适合CPU推理,结合模型int4量化,减少内存使用
- MLC LLM
- 适合在手机终端推理
- 可在客户端(边缘计算)如Android或iPhone平台上本地部署LLM
- TensorRT-LLM
- 是Nvidia在TensorRT推理引擎基础上,针对Transformer类大模型推理优化的框架
- 支持多种优化技术,如 kernel 融合、矩阵乘优化、量化感知训练等
- 可提升推理性能
- DeepSpeed
- 微软开源的大模型训练加速库
- 最新的DeepSpeed-Inference提供了推理加速能力
- 通过内存优化、计算优化、通信优化,降低推理延迟和提升吞吐
- OpenLLM
- 是一个用于在生产中操作大型语言模型(LLM)的开放平台
- 良好的社区支持
- 集成新模型
- 支持量化
- LangChain集成
- FasterTransformer
- 由NVIDIA开发,用于加速Transformer模型的推理
- 支持多种模型
- 针对NVIDIA GPU优化,提升性能
- 低精度推理
- 分布式推理
- 减少内存使用和访问延迟
热门推荐
暖风机选购指南:材料、功率、安全与品牌推荐
古希腊的饮食文化独具一格,为什么古希腊人会如此重视宴饮?
可延迟放学!将有强雷雨或冰雹、局地龙卷!广佛为什么是龙卷风高发区?
守护祁连山 应对气候变化的甘肃行动
王曼昱3-0横扫韩国名将 状态神勇掌控全场
北京什刹海畔,听风诉古,看水映今
出身最苦的皇帝朱元璋,被称为历史上第二军事家,他有多厉害?
达沃斯金融科技峰会:全球专家共话区块链与数字货币未来
世界未解之题数学最经典的难题排行榜
怎么吃才能护眼睛?护眼饮食大公开
《命运石之门》冈部回到真由理的关键变动率解析
计算机网络技术专业详解:培养目标、就业方向与核心课程
如何解读ENTP的暗恋信号:他们是否对你动了心?
房价倒挂现象解析及其影响因素
《魔兽世界》惩戒骑士PvP与PvE装备选择指南
意大利悲情电影《天堂电影院》:光影流转间的人生课堂与情感记忆
293位作者实测GPT-4写短篇小说,发现AI对高手作者创作提升几乎为零
假如有一天,你创业失败、负债累累、众叛亲离,请看看这篇文章
支付宝逾期了会怎样?消费者需要了解的真相!
全民健身运动的推广与发展
近视科普|哪些食物习惯不利于近视防控?
大件寄什么快递便宜?寄快递还是发物流?
当前有效国家级“小巨人”企业共有14695家!小巨人超全解析
如果地球是一粒尘埃,你还能找到它吗?
股票投资有哪些常见误区?
为什么会长“痘痘”?
壮美内蒙古:“旅游四地”建设绘就文旅高质量发展新画卷
生蚝的做法蒸几分钟,蒸生蚝的步骤
8种心态致夫妻破裂(夫妻关系破裂的原因及其解决方法)
现代阳台装修封阳台的优缺点及影响分析