天天观天下!ICLR Spotlight|Facebook提出无损INT8优化器,单机可以跑千亿参数模型了??

2022-09-06 16:07:41   来源:商业新知网

‍ ‍

大数据文摘授权转载自夕小瑶的卖萌屋

作者:王思若


(资料图片)

2018年GPT、BERT预训练模型的提出吹响了大模型“军备竞赛”冲锋的号角,一场大模型的狂欢拉开帷幕,业界强大的算力支撑起例如Megatron-Turing、Switch Transformer、悟道2.0等千亿&万亿参数量模型。与此同时,面对着超大模型训练在内存存储、网络通信、性能功耗等方面的严峻挑战,这同样是一场工程上极致优化的探索之旅,各家公司纷纷提供了自己的解决方案或训练框架,常用的方法有以下几种:

1. 并行化方法:主要包括数据并行、模型并行和流水线并行,切分数据、Tensor或模型Block到不同GPU上从而达到并行化的效果。之后,Google提出了基于专家并行的MoE架构,通过稀疏结构拓展实现了大模型万亿参数量的飞跃。

2. 内存&通信优化方法:进一步为了应对并行化方法在内存及通信量上的局限,16年,陈天奇团队提出亚线性内存优化的Checkpointing(重计算)方法,在反向传播时重新计算前向传播的中间激活达到节省显存的目的。

21年,微软提出了CPU offload的ZeRO-Offload方案,将梯度、优化器、参数在CPU和GPU间Swapping,通过通信成本来大幅度的节省显存开销。当然,混合精度或者半精度模型训练即采用FP16代替FP32模型参数的量化方法是更加常见有效的方案,大幅度减少内存带宽和存储空间并且提高系统吞吐量,几乎可以成倍提升模型训练速度。

在这场巅峰较量中,Facebook表示:只需更改两行代码,带你体验极致的显存优化,单机即可训练千亿模型,助力贫民玩家实现大模型梦!虽然这里单机至少需要8张RTX 3090, 但未来可期呀!

哇喔~ 请各位抓紧上车并系好安全带,下一站是位于ICLR2022 Spotlight的8-BIT优化器,“一个故事,两行代码,无限显存优化”,祝您路途愉快~

论文题目:

8-BIT OPTIMIZERS VIA BLOCK-WISE QUANTIZATION

论文链接:

https://arxiv.org/pdf/2110.02861.pdf

Github:

https://github.com/TimDettmers/bitsandbytes

优化器遇到量化的故事

随着Transformer模型不断scale参数,Transformer家族迎来了110亿参数量的T5,1750亿参数量的OPT,1760亿参数量的BLOOM......,这些开源模型给了科研人员更多的可能去进一步探索大模型未知的潜力。但尴尬的是,8张80GB A100依然不足以对T5模型进行微调,显存又双叒叕爆掉了。实际的境况比你想的更加糟糕,仅仅对BLOOM-176B模型进行推理,就需要8张80GB的A100,如果想要进一步的对模型进行微调,至少需要72张!

我们不禁要问,模型训练时是谁占据了大量的显存?

10亿 (1 Billion)参数量的模型使用Adam优化器进行训练,所有数据使用FP32进行存储,模型权重(Model weights)和梯度(Gradients)分别需要4GB存储空间,Adam优化器保存了梯度的一阶矩估计(First Moment Estimation,即梯度的均值)和二阶矩估计(Second Moment Estimation,即梯度的未中心化的方差)又分别需要4GB存储空间。Adam优化器占据了50%的显存空间!!!

如何缩减Adam优化器的显存占用无疑成为了重点,微软提出了ZeRO-Offload方案把优化器参数卸载到CPU内存中,那是否还有其他方法呢?使用半精度或者FP8来代替全精度数据类型去存储参数?实际上,一种称为量化的方法已经广泛应用于深度学习中。

那么,下一个问题,什么是量化?

量化: 通俗理解就是将权值参数或中间激活值用更少位数的数据类型近似表示FP32浮点型数据。16年Deep Compression论文中首次提出参数量化方法,使用K-means聚类方法将参数矩阵进行聚类,使用聚类中心来代替原值,模型只需存储聚类的index和聚类中心centroid,从而达到压缩参数的目的,一般来讲为了更好的聚类首先会将参数归一化到某个区间范围,让不同张量值的量级保持一致。

这是量化操作的一种方案,反过来从量化数值转化为原始数值的过程称为反量化,量化可以有效降低内存消耗和计算强度但也带来了严重的精度损失问题。

▲Deep Compression

当优化器遇到了量化,思路很简单,但是优化很难,FP16优化器已经很不稳定,但Facebook直接使用FP8优化器,直接减少38%的显存占用,需要更少的模型训练时间,但拥有和FP32优化器完全相当的效果。

三个方法构建无损FP8优化器

FP8优化器会以低精度的状态存储在显存中,在参数更新时会反量化为FP16的高精度状态,从而既能够高精度的更新参数,也可以尽可能缩减存储空间,如下图所示。为了构建无损FP8优化器,作者提出了逐块量化和动态量化的量化策略,以及稳定化词嵌入层的方法。

逐块量化 Block-wise Quantization

量化的第一步需要将张量归一到[-1,1]范围内,常见的归一化需要将整个张量的缩减,但这样多GPU核心同步会带来一定的通信消耗。块级动态量化将输入张量划分为2048大小的块来降低这个代价,每个块归一化可以独立的计算,不需要在核心之间同步,提供了吞吐量。此外,它对输入张量中的异常值也有更强的鲁棒性,在逐块量化中,异常值的影响被限制在单个块上。因此,大多数比特在其他块中被有效地使用,保证了量化的鲁棒性和精确性。

动态量化 Dynamic Quantization

首先简绍一下动态树量化,动态树量化包括四部分:(1) 符号位Sign;(2)指数Exponent,使用0的数量表示指数大小;(3)标志位,表明后面是线性量化的数值;(4)线性数值。

与固定指数和分数的数据类型不同,动态树量化可以通过移动标志位,随每个数字动态变化指数和分数的范围,从而保留更多小数位的信息。动态量化实际上就是动态树量化在优化器场景下的拓展,优化器二阶矩估计恒为正,不需要符号位,因此将符号位重新利用来拓展线性数值的表达范围。

稳定的词嵌入层 StableEmbedding Layer

词嵌入层(embedding layer)经常在模型训练的时候发生梯度溢出的情况,从而让模型不能稳定训练。稳定的词嵌入层方法通过Xavier uniform进行参数初始化并在Embedding Layer后加上层归一化操作,保证张量大致为1的方差,并且均匀分布初始化相对于正态分布初始化避免了极值的出现,保证梯度不会溢出,极大地提高了训练稳定性。

效果

作者在机器翻译、基于RoBERTa模型的文本预训练及其在GLUE任务上微调、图像预训练和分类任务上比较了8位优化器和32位优化器的性能表现,效果如下图所示:

8位优化器在包括翻译、文本理解和图像的7个基准数据集上相对于32位优化器均有相当甚至更优的性能指标,此外,8位优化器极大减少了内存消耗并在一定程度上提升了模型的训练速度。

此外,作者进一步通过基于模型预训练的消融实验验证了动态量化、逐块量化和稳定词嵌入层三种方法对模型效果的影响,如下图所示:

我们可以看到动态量化对整体稳定性至关重要,缺少动态量化会导致模型不能正常收敛;逐块量化对更大规模模型的训练稳定性产生了更为关键的作用;稳定的词嵌入层对8位和32位优化器都是有用的,在一定程度上提高了稳定性。

总结

8位优化器减少了内存占用,并在广泛的任务上实现了加速优化。目前Facebook提供了bitsandbytes库,两行代码即可调用8位优化器,一键实现广大“贫民”炼丹玩家小显存玩转大模型的梦,大家赶快动手试试吧~

关键词: 存储空间 如下图所示

上一篇:
下一篇:
精彩阅读

天天观天下!ICLR Spotlight|Facebook提出无损INT8优化器,单机可以跑千亿参数模型了??

热点

2018年GPT、BERT预训练模型的提出吹响了大模型“军备竞赛”冲锋的号角,一场大模型的狂欢拉开帷幕。

环球热资讯!IPO AI独角兽第四范式第三次递表港交所主板拟上市

热点

AI独角兽第四范式第三次递表港交所主板拟上市。

天天观焦点:AI自动匹配住宅立面,应用落地近在咫尺!

热点

它的面世意味着每一位建筑师都可以使用SU一般的操作体验,来定制属于自己的设计逻辑。

环球观天下!国内各城市元宇宙产业园盘点

热点

自2021年下半年开始,国内各省市密集出台了一系列元宇宙产业扶持政策。

【时快讯】腾讯突然宣布:不玩了

热点

当潮水退去的时候,留下的只有裸泳的。

全球新消息丨专访腾讯先锋总经理荆彦青:推动数实融合发展,这是我们的回答

热点

大多数看起来不费吹灰之力的事儿,背后都潜藏着数年的技术、人才积累。

全球微速讯:迈出了解元宇宙第一步,到底什么是元宇宙?

热点

2021年是元宇宙元年,元宇宙时代到来,掀起web3 0的时代大幕。

天天即时:消失的热搜,起底东软集团

热点

不即便如此,此次东软集团并未冲上热搜。

最资讯丨什么是Web3? 这里有一些向朋友解释的方法

热点

互联网最伟大的创新之一是让信息能够在全球范围内得到分发,并且价格低廉、可复制、种类丰富。

每日速读!对话Emfarsis董事:一款成功链游需要什么元素

热点

游戏贡献了超过一半的区块链活跃度,到2022年,已有超过49亿美元投资于区块链游戏。

财富

世界观天下!融资丨「龙门局渣打点心」完成500万天使轮融资,黑石资本领投

资讯

融资丨「龙门局渣打点心」完成500万天使轮融资,黑石资本领投,一方面龙门局会继续加大线上渠道投入,另一方面也在和线下商超、便利店渠道对接

天天快资讯丨融资丨「好朋友科技」完成近亿元B轮融资,金沙江联合资本投资

资讯

融资丨「好朋友科技」完成近亿元B轮融资,金沙江联合资本投资,资金主要用于新产品研发、提高客户服务能力,推进在新行业智选生态建设和新基地

快看:融资丨「芯翌科技」完成新一轮融资,浙普(上海)创投和汇信恒睿创投联合投资

资讯

融资丨「芯翌科技」完成新一轮融资,浙普(上海)创投和汇信恒睿创投联合投资,融资资金将用于加强视频数据治理相关产品的技术研发以及平台规模

每日热文:融资丨「明灏科技」完成数千万元Pre-A轮融资,梅花创投独家投资

资讯

融资丨「明灏科技」完成数千万元Pre-A轮融资,梅花创投独家投资,本轮融资主要用于产能扩充、市场推广、技术研发和海外市场拓展等方面。

每日时讯!融资丨「布林凯斯」获数千万元天使轮融资,中科天使基金领投

资讯

融资丨「布林凯斯」获数千万元天使轮融资,中科天使基金领投,本轮融资主要用于加速病毒载体工具研发及开展基因治疗CRO CDMO业务。

每日动态!炒菜机器人,是烹饪帮手还是厨房杀手?

资讯

炒菜机器人,是烹饪帮手还是厨房杀手?,感觉仍是噱头大于实用性。

前沿热点:融资丨餐饮供应链服务提供商「蜀海供应链」完成8亿元人民币B轮融资

资讯

融资丨餐饮供应链服务提供商「蜀海供应链」完成8亿元人民币B轮融资,新一轮融资筹集到的资金将聚焦于企业的数智化升级,助力其持续深耕食材供应

每日速看!元宇宙的故事,全靠链游

资讯

元宇宙的故事,全靠链游,链游撑起元宇宙超9成收入,却似乎与其技术初衷相悖。

环球新动态:不敌TikTok,Snapchat还是“老了”

资讯

不敌TikTok,Snapchat还是“老了”,上市以来最差劲的季度财报,Z世代正在抛弃Snapchat。

当前消息!年轻人用反消费主义改造黄金珠宝

资讯

年轻人用反消费主义改造黄金珠宝,人造钻石和小金豆,谁是反消费主义旗手?

环球热资讯!IPO AI独角兽第四范式第三次递表港交所主板拟上市

AI独角兽第四范式第三次递表港交所主板拟上市。

天天观焦点:AI自动匹配住宅立面,应用落地近在咫尺!

它的面世意味着每一位建筑师都可以使用SU一般的操作体验,来定制属于自己的设计逻辑。

环球观天下!国内各城市元宇宙产业园盘点

自2021年下半年开始,国内各省市密集出台了一系列元宇宙产业扶持政策。

【时快讯】腾讯突然宣布:不玩了

当潮水退去的时候,留下的只有裸泳的。

全球新消息丨专访腾讯先锋总经理荆彦青:推动数实融合发展,这是我们的回答

大多数看起来不费吹灰之力的事儿,背后都潜藏着数年的技术、人才积累。

微软正为Windows12开发新驱动框架 提升新老显卡性能

Windows 12系统可能会在2024年到来,按照正常的节奏,其开发工作应该早已秘密进行。日前,有开发者从Windows 11最新预览版Build 25188中

华盛顿地铁站首次亮相为视障人士扩展旅行路线

5月25日消息,一款旨在帮助视障人士或盲人行人使用公共交通工具的应用程序在华盛顿地铁站首次亮相。该应用程序名为Waymap,旨在为盲人和视

2022年情况又要变了!华硕高管:今年PC恐怕要供过于求

这两年来,由于疫情导致的居家办公及远程教育需求爆发,一直在下跌的PC市场枯木逢春,2021年更是创下了2012年以来的最快增长,然而2022年情

垃圾佬的心头好!西数新款固态盘SN740曝光

对于DIY垃圾佬来说,散片、拆机件、工包……这些名词怕是并不陌生。本周,西数推出了主要供应OEM厂商的新款固态盘SN740。SN740升级到了第五

虚假宣传、误导消费者 倍至冲牙器关联公司被处罚

后来者要想在激烈的市场竞争中立足,如果可以背靠巨头享受大树底下好乘凉的红利,那自然是皆大欢喜,没有这个福气,也大可凭借自己一步一个

吉利几何EX3功夫牛高居榜首,4月投诉量230起

近日,车质网发布了2022年4月车型投诉排行八卦(前30名),其中有不少产品的出现属实让人没想到。具体来看,吉利几何EX3功夫牛高居榜首,4月