范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

节省显存新思路,在PyTorch里使用2bit激活压缩训练神经网络

  机器之心专栏
  作者:郑怜悯、陈键飞
  随着超大规模深度学习模型逐渐成为 AI 的趋势,如何在有限的 GPU 内存下训练这些模型成为了一个难题。
  本文将介绍来自加州伯克利大学的 ActNN,一个基于 PyTorch 的激活压缩训练框架。在同样的内存限制下,ActNN 通过使用 2 bit 激活压缩,可以将 batch size 扩大 6-14 倍,将模型尺寸或者输入图片扩大 6-10 倍。ActNN 相关论文已被 ICML 2021 接收为 Long Talk,代码开源于 github。
  论文 https://arxiv.org/abs/2104.14129
  代码 https://github.com/ucbrise/actnn
  AI 训练撞上「内存墙」
  从 AlexNet,ResNet 到 GPT-3,深度学习性能的突破都离不开模型规模的疯狂增长。大模型有更好的性能已经成为业界的共识。过去几年,不仅训练一个最先进模型需要的算力在指数增长,训练一个最先进模型需要的内存也在指数增长。如下图所示,大型 Transformer 模型的参数量以每两年翻 240 倍的速度指数增长。但是,单个 GPU 的内存却只以每两年翻 2 倍的速度在缓慢增长。另外,在训练模型时,不光要存储模型参数,还要存储中间结果激活值和优化器状态,所需要的内存更多。如何在有限的 GPU 内存下训练这些大规模模型成为了挑战。
  source:Gholami A, Yao Z, Kim S, Mahoney MW, Keutzer K. AI and Memory Wall. RiseLab Medium Blog Post, University of California Berkeley
  节省训练内存的方法
  目前,节省训练内存的方法主要有三类:1. 重计算(Gradient checkpointing/Rematerialization) 2. 使用 CPU 内存进行交换 (swapping) 和 3. 使用分布式训练将 Tensor 分散存储在多个 GPU 上。这三类方法互相不冲突,可以结合使用。大部分机器学习框架对这些方法都提供了一些支持,也有不少相关的论文。但是,想要高效、自动化地实现这些策略并不容易。与已有方法不同,我们提出了 ActNN,一个新的基于压缩的内存节省框架。在提供理论证明的同时,我们基于 PyTorch 提供了一个高效易用的实现。Table.1 比较了 ActNN 和已有的一些内存节省系统。ActNN 支持 PyTorch 的动态图执行模式,并且不需要预先进行复杂的策略搜索。ActNN 作为一个独立的 Python 库,使用时 import 即可,不需要修改或重新编译 PyTorch。与已有的工作相比,ActNN 灵活且易于使用。同时,ActNN 在理论上也可以和已有的技术相互叠加。
  ActNN:2 bit 激活压缩训练
  在训练一个多层神经网络时,在前向传播中,每一层的中间结果都要被存下来用于计算反向传播的梯度。这些中间结果,又被叫做「激活值」(activation),实际上占据了大部分的内存消耗,尤其是在 batch size 较大或者输入图片较大的时候。ActNN 的原理是就是压缩这些激活值来节省内存。如下图所示,左图表示的是普通的前向传播和反向传播,前向传播时会存下所有层的 fp32 激活值用于反向传播,内存使用在计算 loss 的时候达到峰值。右图表示的是 ActNN 的训练方法:在前向传播时,通过一个压缩操作 Q 将激活值压缩后再存储;反向传播时,通过解压缩操作 Q^-1 将激活值解压再计算梯度。
  如果只是为了节省内存,这里可以使用各种压缩算法,但是大部分现有的压缩算法并不能高效地运行在 GPU 上,会引入较大的开销。ActNN 选择了使用 2-bit 量化作为这里的压缩算法。量化操作的代价较小,而且有一些好的数学性质允许我们使用有损压缩达到较大的压缩比。
  把 fp32 浮点数量化为 2-bit 整数是一个有损压缩,会引入一些误差。论文从理论上分析了量化引入的误差是如何影响训练的收敛性的。
  第一,存在一个随机化的量化策略,使得使用有损量化压缩后,估计出的有损梯度是原梯度的一个无偏估计。
  在这一条件下,我们套用已有的随机梯度下降收敛性定理,得出最后收敛时的误差会被梯度的方差所限制。
  第二,我们推导出了使用量化压缩之后,随机梯度下降计算出的梯度的方差。
  等号右边的第一项是随机梯度下降在 minibatch 采样时产生的方差,等号右边的第二项是有损压缩额外引入的方差。这条公式显示地刻画了有损压缩带来的影响。注意到,当有损量化压缩带来的方差远小于原来随机梯度下降自带的方差时,ActNN 引入的有损压缩就不会影响训练的收敛性。更多关于公式的推导和可视化参见文末的论文链接。论文对不同的算子(conv2d,batch norm,linear等)都提供了详细的分析。
  由上述公式启发,我们提出了一些新的量化技巧用于降低有损压缩引入的额外方差。我们引入了新的量化技巧 ( Per-group Quantization,Fine-Grained Mixed-Precision,Runtime Adaptation) 来利用梯度在不同样本,不同纬度,不同层之间的异构特性。最后的压缩算法会分配更多的 bit 给更重要的激活值。平均每个浮点数分配到 2 bit。
  在具体实现压缩算法时,还有很多可以调节的参数。这里产生了一个内存节省和训练速度的取舍。一般来说,使用更复杂的压缩算法可以节省更多的内存,但是也会引入更多额外的开销,使训练速度变慢。为了给用户较大的灵活性,ActNN 提供了 5 个优化等级 L1-L5 供用户选择。低的优化等级节省的内存较少,但是运行速度快。高的优化等级节省的内存多,但是运行也更慢。在最高优化等级 L5 下,ActNN 会结合一个简单的内存交换策略,将压缩后的激活值移到 CPU 内存上,进一步节省内存。
  实现
  要在 PyTorch 实现 ActNN 算法非常简单。对于一个 PyTorch nn Module,我们只需要在其 forward 函数里加入量化压缩,在其 backward 函数里加入解压缩操作。所有的计算还是在 fp32 下进行,与原来一样,伪代码如下图所示。
  ActNN 为大部分常用的 PyTorch nn.Module 实现了使用量化压缩的版本。用户只需将模型里的所有 PyTorch nn.Module 替换成 ActNN 对应的 Module (如把 nn.Conv2d 替换成 actnn.Conv2d),即可节省内存,不需要更改其他代码。ActNN 同时也提供了一个 wrapper 实现一行代码自动替换。
  实验结果
  因为 ActNN 进行的是有损压缩,所以最重要的一点是先验证 ActNN 是否会影响模型的精度。下图是使用 ActNN 在 ImageNet 上训练 ResNet-50 的结果。FP 代表普通的 fp32 训练, BLPA 是来自 NeurIPS 2019 的一个相关工作。可以看到,在 ActNN 的 2-bit 压缩模式下,模型几乎没有损失精度。在更极限的 1.25 bit 的情况下,ActNN 也能收敛,只不过会损失一些精度。而之前的工作 BLPA 在小于 4 bit 的情况就下无法收敛。
  我们还在图像分割,物体检测,以及自监督学习等多个任务上进行了实验。ActNN 都能在 2-bit 压缩模式下达到和普通 fp32 几乎一样的结果。在部分任务上,因为 ActNN 可以使用更大的 batch size,甚至可以取得更好的测试结果。详细的实验结果和训练记录参见文末的论文与 github 链接。
  之后,我们对比了 ActNN 与普通 fp32 训练的实际内存使用情况。如下表所示,ActNN 可以将激活值占用的内存压缩 12 倍,将训练使用的总内存压缩 4 - 7 倍。这一实际内存压缩效果符合理论推导。为什么激活值压缩倍率是 12 而不是 32 bit / 2 bit = 16?主要是因为 ActNN 不能使用 inplace 的 ReLU,以及需要存储少量额外的 min 和 scale 用于解压缩。
  最后,我们测试了 ActNN 的训练速度。因为 ActNN 在训练过程中进行了压缩,这些压缩在节省内存的同时也会引入额外的计算开销。一般来说,省得内存越多,进入的额外开销就越多,训练也就越慢。我们在 NVIDIA T4 (16 GB 内存) 上对比了 ActNN 和已有内存节省系统的训练速度。如下图所示,DTR (ICLR 2020),BLPA (NeurIPS 2019)和 swap 分别是基于重计算,压缩和内存交换的三种方法,红叉代表 Out-of-memory。y 轴是训练吞吐量 (images per second),越高越好。绿色的曲线是综合 ActNN 在不同优化等级下的最优结果。可以看到,ActNN 不仅能开到最大的 batch size(即最省内存),同时在所有 batch size 下都比 baseline 的训练速度更快。
  我们还对更多的网络进行了测试。在同样的内存限制下,ActNN 可以将 batch size 扩大 6-14 倍,将模型尺寸或者输入图片扩大 6-10 倍。详细的实验设置和结果参见文末的论文链接。
  两行代码即可在 PyTorch 中使用import actnn model = actnn.QModule(model)
  ActNN 提供了一个自动模型转换封装。只需在训练脚本里插入两行代码,即可将普通的 PyTorch 模型转换为使用 ActNN 的模型。同时,ActNN 也提供了更高级的 API 支持定制化的使用场景。
  更多的例子参见 github 链接。我们提供了在图像识别、图像分割、物体检测,以及自监督学习等多个任务上使用 actnn 的完整例子和训练记录,欢迎试用!

新趋势已来!下一代智能照明将有何呈现形式?近年来,在万物互联的时代背景下,云计算大数据人工智能物联网等前沿技术给照明行业发展带来前所未有的影响,智能照明进入了飞速发展时期。一方面,5GAIloT等技术全面赋能智能照明另一方5月再掀高管离职潮!平均两天就有一位高管离职走过红利期后,行业马太效应加剧,无论是企业还是个人,都面临着前所未有的难题。2021年才过三分之一,照明人事圈便动荡无常,尤其是进入五月才过了20天,则有近10位上市照企高管先后离照明品牌分绿营蓝营橙营你的品牌属于哪个阵营?不知道昨天大家的朋友圈有没有各种五颜六色刷屏,反正小编的朋友圈已经变成了一道彩虹。仔细研究,原来是某个app推出的号称能反映你是哪种彩色性格的测试蓝色是艺术家金色是领导者粉色是治愈公牛欧普阳光木林森等上市照企,哪家分红最豪气?近日发布的十四五规划和2035年远景目标纲要,再次强调了完善上市公司分红制度相关内容,释放出满足人们日益增长的家庭财富管理需求的强烈信号,而且对于敦促上市公司高质量发展具有很强的导首例!A股第一股被判赔偿股民1。23亿,315位股民人均获赔39万5月11日,上海金融法院公开宣判原告315名投资者与被告飞乐音响证券虚假陈述责任纠纷一案。该案系最高人民法院关于证券纠纷代表人诉讼若干问题的规定出台后普通代表人诉讼的首次全面实践。马秀慧周晓萍超越董明珠!2021胡润全球女富豪榜发布5月19日,胡润研究院发布2021胡润全球白手起家女富豪榜列出了全球白手起家的十亿美金女企业家。这是胡润研究院连续第十一年发布该榜单,财富数字主要来源于胡润研究院今年发布的全球富豪松下照明第五代全新形象出炉,有啥特点?5月18日,松下照明以光无限用光延伸家的空间为主题的春季新品巡展会在山西太原锦绣国际建材商松下照明运营中心店面隆重召开。松下照明BU家居照明北方营业部执行总监寇佳伦高级经理李雪斌陕41年前预想成现实!数字化对产业升级竟有如此作用近日,笔者走访了杭州两家物联网技术企业,一家是研发并推广智慧城市照明管理平台的高科技企业,通过一个产品卖遍全球,成为这个细分领域的领军企业。传统公共照明产品加上这个平台便可以实现数央企鸿雁起诉小米,首战告捷进入2021年,智能家居领域第一个备受关注的专利纠纷案小米通讯技术有限公司(简称小米公司)及其生态链企业上海创米科技有限公司(简称创米公司)因涉嫌专利侵权被杭州鸿雁电器有限公司(简现场认筹300余万元!奥克斯照明来山东了5月18日,以凝聚共生,创变未来为主题的奥克斯照明山东省上市发布会在山东省临沂市鲁商知春湖温泉酒店隆重举行。奥克斯照明中国区营销中心总经理杨学城运营总监王安娜华东区总监丁宝龙华中区第5个品牌日李光斗段淳林马志伟孙跃等嘉宾5月15日,2021中国灯饰照明行业品牌论坛在古镇星光联盟顺利举办,本次论坛以品牌力量创新引领为主题,由中国照明电器协会灯具专业委员会中山市古镇镇生产力促进中心古镇灯饰传媒联合主办
九州猎奇十二生肖中为什么只有龙是不存在的,为什么会有龙?我国自古就有12生肖的存在,里面十二只动物基本都是真实存在,但是唯独不见龙真实存在过,那么古人到底是怎么想到龙这个生物的呢?假设这个龙从来都没有,那古人当时把它加进去的原因是什么呢这几种颜色的被子千万别盖,易触风水禁忌卧室的被子材质和颜色选择得注意,有很多风水层面的讲究,弄不好的话对财运非常不利!卧室的被子选择需要跟整体风格搭配起来,另外材质和颜色也得注意,尤其是颜色,这不只是影响卧室风格,还有心虚到草木皆兵!绿委慎防大陆盗沙船灰色地带冲突据台媒报道台当局审计部门公布去年度总决算审核报告,显示大陆抽沙船去年越界抽沙被驱离逼近4000艘次,比2018年大增逾54倍。民进党立委心虚到草木皆兵,昨天故意表示,大陆抽沙船近年十二生肖纪年法在远古的时候,世上并没有纪年的方法,人们试了很多种方法也不知道如何纪年份。于是人们就想到了去求玉皇大帝帮忙,玉帝思索良久,最后玉帝想到一个好主意。他把时间分为十二年一个循环,用动物未解之谜关于我总是梦到自己的初中男同学你知道吗?我连他名字是这个峰还是锋?我都记不清。我会喜欢一个名字都记不清的人吗?不可能。以上是我和朋友的对话。(核心思想唯有一句Idontlikehim。)我发誓我真的对这位初中同猫的单纯与人的两面很多年前,那时我刚刚参加工作。在一个豪宅大院当保安,谁的宅,谁的院我就不说了,怎么辉煌奢侈我也不介绍了。光保安就有八十多人,你可以想想这是多大的宅院。是私人宅院不是某个单位的。宅院女儿被继父强奸多年母亲却选择站在他一边,女儿终于断绝母女关系据每日邮报8月11日报道,一位女儿终于勇敢地选择与母亲断绝关系,因为其选择了站在她恋童癖第二任丈夫一边,而不是她自己的女儿。来自英国米尔顿凯恩斯(MiltonKeynes)的35岁白海军我说雅安房价会上涨50,有人留言后悔没早看到2016年10月1日,我曾撰文白海军雅安,预计2020年前房价再上涨50,之后有人留言说,现在回头看这条新闻,后悔没早看到。为什么说后悔没早看到?因为雅安现在的房价已经接近6000因停车位发生争执一男子拔枪射击,警察却给他点赞据每日邮报7月21日报道,周四(19日),在美国佛罗里达州克利尔沃特(Clearwater),47岁的迈克尔德雷卡(MichaelDrejka)指责一名妇女占用残疾人停车位,被其男普京和特朗普车队经过时街道旁住宅别开窗别靠近窗户,小心被狙击据芬兰晚报7月15日报道,俄罗斯总统普京与美国总统特朗普将于7月16日在芬兰首都赫尔辛基举行会晤。赫尔辛基市警察局已经发布安全警示,要求在普京和特朗普车队经过的时候,街道旁的居民们一飞机降落时坠毁,爆炸成火球,场面惊心动魄据每日邮报7月31日报道,一架飞机在巴西圣保罗CampodeMarte机场降落的时候发生意外在跑道上爆炸成一个火团,导致飞行员死亡,六名乘客受伤。视频加载中飞行员安东尼奥特拉韦尔西