生成式语言大模型压缩技术思考——以ChatGPT为例
ChatGPT引领了生成式语言大模型的应用与技术热潮,首先简单回顾ChatGPT应用范式:将其应用于指定的下游任务时(如知识问答、翻译、编码),ChatGPT需要经历三个阶段的训练(增强人类语境的猜想):
使用人类标注数据微调,学习人类想要的答案;
训练Reward model,学习人类偏好或意图;
使用强化学习(PPO算法)微调大模型,对齐人类偏好。
ChatGPT是基于GPT3.5(1750亿参数规模)训练获得的,其模型结构为Decoder-only单向掩码架构,推理部署需要分布式推理调度的支持。其在单机A100上进行多卡分布式推理时,自回归解码的响应延迟在百毫秒到数秒量级,因此部署应用面临着响应延迟高、成本开销大的问题。模型压缩是实现ChatGPT小型化应用、减少部署成本的关键,但需要引入哪些压缩算法?具体有哪些技术挑战?实现高倍压缩,整体流程需要怎么设计?
从以下几个问题展开讨论:
大规模预训练阶段:通过在线蒸馏或自蒸馏,预训练小尺寸模型,需要考虑蒸馏的知识类型、助教模型的设计等;除Decoder-only模型结构外,小型化架构创新也非常关键;
下游迁移阶段的挑战:小样本学习的数据量少、训练周期数短,直接应用传统的结构剪枝、张量分解等结构化压缩方法,会引起较大的精度损失。一方面,基于少样本信息(Data-driven)与模型权重信息(Data-free),如何设计有效的压缩指示(Importance Indicator);另一方面,在少样本微调过程中,如何借助多种类型的教师知识设计蒸馏方法,也是辅助精度保持、泛化性保持的关键技术手段;
稀疏化压缩:由于大模型参数规模巨大,非结构(Element-wise)或半结构(Vector-wise, etc.)稀疏化的冗余度相对较高,相比于结构剪枝所面临的精度损失风险更低,有助于实现更高倍数压缩。一方面,也需要考虑如何设计有效的压缩指示,以支持高比例压缩(如90%稀疏度,10倍压缩),并且高参数效率的稀疏正则化有助于降低训练成本;另一方面,稀疏化压缩的推理部署,需要稀疏访存与计算算子的支持,为达成理想的压缩与加速收益(减少稀疏格式解码等开销),更需要DSA计算芯片架构的支持;
混合精度量化:生成式语言大模型(如OPT-175B、ChatGPT)的特征维度非常高(超过10000),特征当中的异常值(Outliers)占比通常超过1%,长尾分布显著。若对整个网络的不同Layer均采用相同位宽(如INT8)进行量化,将引起较大的量化精度损失。因此需要设计合理的混合精度量化方法以降低精度损失风险;并引入极低比特量化(如4/2-bit)提高压缩倍数,但1-bit量化可能需要设计针对Attention的二值化网络结构,二值化的精度收敛效果较难保证。混合精度量化以及极低比特量化,需要算子、硬件层面的软硬件协同支持。
参考:https://blog.csdn.net/nature553863/article/details/128177323?spm=1001.2014.3001.5502
组合压缩:涉及多种压缩策略时(剪枝、张量分解、量化与稀疏化等),设计有效的组合压缩方案,是实现千亿模型至少20倍压缩、单机单卡部署的关键。此外,Training-aware压缩方法,需要考虑占用更少的分布式训练开销。
有关Transformer类模型压缩的讨论,具体参考:
https://blog.csdn.net/nature553863/article/details/120292394?spm=1001.2014.3001.5502
生成式语言大模型压缩技术思考——以ChatGPT为例相关推荐
- AIGC 语言大模型研究报告
AIGC 研究报告 这份报告可以被划分为两大部分. 第一部分集中于ChatGPT的发展和运作原理,为了增强理解,我们将先探讨自然语言处理的历史发展. 第二部分主要聚焦于由大模型引领的新的研究领域,并深 ...
- 开放报名|顶尖专家联合打造,首个系统化AI大模型前沿技术讲习班
大模型正在引发人工智能研究与应用范式产生重大变革,越来越多的顶级团队和杰出人才纷纷加入这一技术浪潮.作为AI大模型科研先锋,智源研究院聚集了来自高校院所和创新企业的一大批大模型领域卓越学者与工程师,共 ...
- 深度模型压缩技术在智能座舱方案的探索与实践
桔妹导读:近年来,智能汽车的概念已经成为了主流的发展趋势.汽车座舱在智能汽车的场景中成为关键一环.将汽车座舱智能化可以提高整体乘客乘坐品质和驾驶员行驶体验,智能座舱的功能丰富,其中多数核心算法是基于深 ...
- 太空夜景_太空深度学习的模型压缩技术概述
太空夜景 By Hannah Peterson and George Williams (gwilliams@gsitechnology.com) 汉娜·彼得森 ( Hannah Peterson)和 ...
- 深度学习模型压缩技术概览
背景介绍 目录 背景介绍 什么是模型压缩? 剪枝 非结构化剪枝 结构化剪枝 量化 低秩近似(Low-rank approximation) 知识蒸馏(Knowledge distillation) 神 ...
- 模型如何压缩?使用轻量化的模型压缩技术剪枝(pruning)
深度学习模型参数太多,本地服务器部署没有问题,但是如果部署到移动端.边缘端,像手机.树莓派等,它们的性能不能满足,所以我们要压缩模型大小,让他们可以部署到边缘端 模型压缩:使用轻量化的模型压缩技术,如 ...
- 知识图谱专栏简介:数据增强,智能标注,文本信息抽取(实体关系事件抽取)、知识融合算法方案、知识推理、模型优化、模型压缩技术等
知识图谱专栏简介:数据增强,智能标注,文本信息抽取(实体关系事件抽取).知识融合算法方案.知识推理.模型优化.模型压缩技术等 专栏链接:NLP知识图谱相关技术业务落地方案和码源 NLP知识图谱相关技术 ...
- 阿里云PAI平台模型压缩技术落地淘宝直播双十一应用:一猜到底
简介:随着移动端应用的兴起,模型压缩作为深度学习模型实现轻量化部署的有效手段,备受关注.机器学习也从理论研究阶段,有了明显的工程化.应用落地的趋势,那么模型压缩在淘宝直播游戏场景下,是如何发挥重要作用 ...
- 【视频课】深度掌握模型剪枝+模型量化+知识蒸馏3大核心模型压缩技术理论!...
前言 欢迎大家关注有三AI的视频课程系列,我们的视频课程系列共分为5层境界,内容和学习路线图如下: 第1层:掌握学习算法必要的预备知识,包括Python编程,深度学习基础,数据使用,框架使用. 第2层 ...
最新文章
- 经典JavaScript正则表达式实战
- Spark-Java算子
- python语言需要变量生明吗_python需要定义变量吗
- UIKIT_EXTERN和define定义常量
- Introduction | Elasticsearch权威指南(中文版) | 好的博文地址|官方资源所在位置
- TypeScript里数组foreach和map操作的区别
- 图像分割——基于二维灰度直方图的阈值处理
- c语言中基本数据类型printf()对应格式
- GitHub上最火的40个iOS开源项目(二)
- matlab求刚度,matlab直接刚度法计算结构频率
- Python用户交互以及数据类型
- 【ubuntu操作系统入门】Ubuntu常用命令大全一
- pxe无盘服务器教程,Windows下架设PXE服务器的方法
- N81新手入门全攻略——N81常规设置问答篇
- 软件的静态测试和动态测试【软件测试分类】
- win10怎么取消开机密码
- Mac安装boost
- 解决 chrome 访问 https 网站出现“您的连接不是私密的问题”
- 【异常处理】The CXX compiler identification is unknown
- 有哪些值得长期坚持下去的好习惯?