LoRA继任者ReLoRA登场,通过叠加多个低秩更新矩阵实现更高效大模型训练效果

news2025/1/11 22:38:43

论文链接: https://arxiv.org/abs/2307.05695
代码仓库: https://github.com/guitaricet/peft_pretraining

一段时间以来,大模型(LLMs)社区的研究人员开始关注于如何降低训练、微调和推理LLMs所需要的庞大算力,这对于继续推动LLMs在更多的垂直领域中发展和落地具有非常重要的意义。目前这一方向也有很多先驱工作,例如从模型结构上创新的RWKV,直接替换计算量较大的Transformer架构,改用基于RNN范式的新架构。还有一些方法从模型微调阶段入手,例如在原有LLMs中加入参数量较小的Adapter模块来进行微调。还有微软提出的低秩自适应(Low-Rank Adaptation,LoRA)方法,LoRA假设模型在任务适配过程中对模型权重的更新量可以使用低秩矩阵进行估计,因而可以用来间接优化新加入的轻量级适应模块,同时保持原有的预训练权重不变。目前LoRA已经成为大模型工程师必备的一项微调技能,但本文作者仍然不满足于目前LoRA所能达到的微调效果,并进一步提出了一种可叠加的低秩微调方法,称为ReLoRA

本文来自马萨诸塞大学洛厄尔分校的研究团队,作者团队将ReLoRA应用在具有高达350M参数的Transformer上时,展现出了与常规神经网络训练相当的性能。此外,本文作者还观察到ReLoRA的微调效率会随着模型参数规模的增加而不断提高,这使得其未来有可能成为训练超大规模(通常超过1B参数)LLMs的新型手段。

01. 引言

虽然目前学术界和工业界都在不断推出自家的各种基座模型,但不可否认的是,完全预训练一个具有初等推理能力的LLMs仍然需要非常庞大的算力,例如大家熟知的LLaMA-6B模型[1]就需要数百个GPU才能完成训练,这种规模的算力已经让绝大多数学术研究小组望而却步了。在这种背景下,参数高效微调(PEFT)已经成为了一个非常具有前景的LLMs研究方向。具体来说,PEFT方法可以在消费级GPU(例如RTX 3090或4090)上对十亿级语言或扩散模型进行微调。因此本文重点关注PEFT中的低秩训练技术,尤其是LoRA方法。作者思考到,过去十年中深度学习发展阶段中的一个核心原则就是不断的“堆叠更多层(stack more layers)”,例如ResNet的提出可以使我们将卷积神经网络的深度提升到100层以上,并且也获得了非常好的效果。因此本文探索能否同样以堆叠的方式来提升低秩适应的训练效率呢?

本文提出了一种基于低秩更新的ReLoRA方法,来训练和微调高秩网络,其性能优于具有相同可训练参数数量的网络,甚至能够达到与训练100M+规模的完整网络类似的性能,对比效果如上图所示。具体来说,ReLoRA方法包含(1)初始化全秩训练、(2)LoRA 训练、(3)参数重新启动、(4)锯齿状学习率调度(jagged learning rate schedule)和(5)优化器参数部分重置。作者选择目前非常火热的自回归语言模型进行实验,并且保证每个实验所使用的GPU计算时间不超过8天

02. 本文方法

ReLoRA通过序列叠加的方式仅训练一小组参数就可以实现与全秩训练相当的性能,并且遵循LoRA方法的基础原则,即保持原始网络的冻结权重并添加新的可训练参数。乍一看,这种方式可能显得计算效率低下,但我们需要清楚的是,这种方法可以通过减小梯度和优化器状态的大小,来显著提高显存效率。例如Adam优化器状态消耗的显存通常是模型权重占用的两倍。通过大幅减少可训练参数的数量,ReLoRA可以在相同的显存条件下使用更大的batchsize大小,从而最大限度地提高硬件效率,ReLoRA的整体操作细节如下图所示。

03. 实验效果

为了清晰的评估ReLoRA方法的性能,作者将其应用在各种规模大小(60M、130M、250M 和 350M)的Transformer模型上,并且都在C4数据集上进行训练和测试。为了展现ReLoRA方法的普适性,作者重点考察NLP领域的基础语言建模任务。模型架构和训练超参数设置基本与LLaMA模型保持一致。与LLaMA不同的是,作者在实验中将原始的注意力机制(使用float32进行 softmax计算)替换为了Flash注意力[2],并且使用bfloat16精度进行计算,这样操作可以将训练吞吐量提高50-100%,且没有任何训练稳定性问题。此外,使用ReLoRA方法训练的模型参数规模相比LLaMA要小得多,最大的模型参数才仅有350M,使用8个RTX4090上训练了一天时间就可以完成。

下图展示了本文方法与其他方法的性能对比效果,可以看到ReLoRA显着优于低秩LoRA方法,证明了我们提出的修改的有效性。此外,ReLoRA还实现了与满秩训练(Full training)相当的性能,并且我们可以观察到,随着网络规模的增加,性能差距逐渐缩小。有趣的是,ReLoRA 唯一无法超过的基线模型是仅具有60M参数的最小模型。这一观察结果表明,ReLoRA在改进大型网络的训练方面更加有效,这与作者最开始研究探索一种改进大型网络训练方法的目标是一致的。

04. 总结

本文是一篇专注于减轻大型Transformer语言模型训练代价的工作,作者选取了一条非常具有前景的方向,即低秩训练技术,并且从最朴素的低秩矩阵分解 (LoRA) 方法出发,利用多个叠加的低秩更新矩阵来训练高秩网络,为了实现这一点,作者精心设计了包含参数重新启动、锯齿状学习率调度算法和优化器参数重置等一系列操作,这些操作共同提高了ReLoRA算法的训练效率,在某些情况下甚至能够达到与全秩训练相当的性能,尤其实在超大规模的Transformer网络中。作者通过大量的实验证明了ReLoRA的算法可行性和操作有效性,不知ReLoRA是否也会成为大模型工程师一项必备的算法技能呢?

参考

[1] H. Touvron, T. Lavril, G. Izacard, X. Martinet, M.-A. Lachaux, T. Lacroix, B. Rozière, N. Goyal, E. Hambro, F. Azhar, A. Rodriguez, A. Joulin, E. Grave, and G. Lample. Llama: Open and efficient foundation language models. arXiv preprint arXiv:2302.13971, 2023.

[2] T. Dao, D. Y. Fu, S. Ermon, A. Rudra, and C. Re. Flashattention: Fast and memory-efficient exact attention with IO-awareness. In A. H. Oh, A. Agarwal, D. Belgrave, and K. Cho, editors, Advances in Neural
Information Processing Systems, 2022.


  关于TechBeat人工智能社区

TechBeat(www.techbeat.net)隶属于将门创投,是一个荟聚全球华人AI精英的成长社区。

我们希望为AI人才打造更专业的服务和体验,加速并陪伴其学习成长。

期待这里可以成为你学习AI前沿知识的高地,分享自己最新工作的沃土,在AI进阶之路上的升级打怪的根据地!

更多详细介绍>>TechBeat,一个荟聚全球华人AI精英的学习成长社区

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/917738.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【洁洁送书第五期】为什么我们要了解可观测性工程

导读 可观测性已成为一个热门话题,并广受关注。随着它的普及,“可观测性”不幸被误作“监控”或“系统遥测”的同义词。可观测性是软件系统的一个特征。而且,只有当团队采用新的实践进行持续开发时,才能在生产软件系统中有效利用这…

22款美规奔驰S500升级原厂香氛负离子系统,清香宜人,久闻不腻

奔驰原厂香氛合理性可通过车内空气调节组件营造芳香四溢的怡人氛围。通过更换手套箱内香氛喷雾发生器所用的香水瓶,可轻松选择其他香氛。香氛的浓度和持续时间可调。淡雅的香氛缓缓喷出,并且在关闭后能够立刻散去。车内气味不会永久改变,香氛…

怎么维护自己的电脑

文章目录 我的电脑日常维护措施维护技巧键盘&屏幕清洁清理磁盘空间控制温度 电脑换电池 无论是学习还是工作,电脑都是IT人必不可少的重要武器,一台好电脑除了自身配置要经得起考验,后期主人对它的维护也是决定它寿命的重要因素&#xff0…

什么是算法评价指标

在我们建立一个学习算法时,或者说训练一个模型时,我们总是希望最大化某一个给定的评价指标(比如说准确度Acc),但算法在学习过程中又会尝试优化某一个损失函数(比如说均方差MSE或者交叉熵Cross-entropy&…

如何甄选一款优异的“恶意代码辅助检测系统”

恶意代码辅助检测系统是一款保密资质认证、涉密资质认证、保密条件备案认证、军工资质认证、涉密信息系统集成资质认证、保密室建设中必配的安全保密产品之一,但是如何甄选一款优异的“恶意代码辅助检测系统”?却往往是摆在客户面前的难题。日前&#xf…

Redis多机实现

Background 为啥要有多机--------------1.容错 2.从服务器分担读压力。 主从结构一大难题------------如何保障一致性,对这个一致性要求不是很高,因为redis是用来做缓存的 同时我们要自动化进行故障转移-------哨兵机制,同时哨兵也可能cra…

多城市求职招聘小程序开发搭建功能演示

专门针对微信生态开发的一款求职招聘系统,目前提供了企业入驻、发布职位、在线求职、职位匹配、简历填写、兼职板块、附近职位、招聘会等服务。可以帮助求职者快速高效的找到适合自己的工作。 想做招聘类小程序的可以看看这款小程序,丰富的功能场景可以…

实证论文必备-DID丨原理+操作+论文复刻+前沿

DID:双重差分法,常用在政策效果评估中,无论是在毕业论文还是期刊发表中都比较常见,与传统回归统计类似,其研究对象为面板数据,相比于传统回归估计,双重差分法针对政策的估计具有更好的适用性和精…

Linux下两个必学的查找命令find grep

查找文件名,使用 find命令: 例如:我想在 根目录/ 下查找 名为 libmy.a 的文件 sudo find / -name "libmy.a" 详细示例: 1、搜索当前目录下所有文件名中包含 "test" 的文件:find . -name "test"2、搜索当前目录下所有文件名以 ".tx…

国密算法介绍

一、简述 商用密码 商用密码是中华人民共和国政府用于非国家机密信息保护所采用的一系列密码技术和密码产品的总称,其相关技术为国家秘密。商用密码的研发及使用由国家密码管理局统一管理。 国密算法 国密算法是指中国自主设计和使用的密码算法标准,其…

网络传输介质的连接

目录 1.以太网接口 1.RJ-45接口 2.光纤接口 3.信息插座 2.双绞线的连接规范 1.以太网接口 以太网中由于传输介质的不同,连接线缆的接口也不同,本节将介绍目前最常用的传输介质--双绞线和光纤所使用的接口。 1.RJ-45接口 RJ是Registered Jack的缩写在…

leetcode:338. 比特位计数(python3解法)

难度&#xff1a;简单 给你一个整数 n &#xff0c;对于 0 < i < n 中的每个 i &#xff0c;计算其二进制表示中 1 的个数 &#xff0c;返回一个长度为 n 1 的数组 ans 作为答案。 示例 1&#xff1a; 输入&#xff1a;n 2 输出&#xff1a;[0,1,1] 解释&#xff1a; 0…

门店数字化店务经营系统怎么做?门店数字化系统推荐

为什么你的门店无人问津&#xff0c;有的门店却天天都有到店客户&#xff1f;为什么你的门店要花费两三天才能统计好经营情况&#xff0c;有的门店却能够做到“数据实时可查”&#xff1f;经营管理和营销获客是每个门店发展的重中之重&#xff0c;今天也为大家分享一套完善的门…

python 基础篇 day 3 运算符大全

文章目录 什么是运算符算术运算符种类举例注意运算顺序&#xff1a;整数除法和浮点数除法取模运算幂运算字符串拼接注意整数与浮点数之间的运算注意溢出问题 赋值运算符种类举例注意事项赋值顺序多重赋值增量赋值运算符赋值运算符链式操作注意可变对象的赋值注意不可变对象的赋…

wangeditor 富文本的使用

版本 4.7.8基本实现展示&#xff1a; 官网地址 https://www.wangeditor.com/ 1.封装好组件 <template><div ref"editorEl" class"editor-wrapper"></div> </template><script> import E from "wangeditor"; imp…

苹果 Apple Watch 新专利,可以自动变幻表盘颜色

根据美国商标和专利局(USPTO)公示的清单&#xff0c;苹果公司近日获得了一项 Apple Watch 相关的技术专利&#xff0c;最大的亮点在于配备颜色采样传感器&#xff0c;可以根据表带、服装自动变幻表盘颜色和主题。 Apple Watch 正面配备颜色采样传感器&#xff0c;可以测量外部…

ele-form 上传图片文件 - 预览、删除、限制上传(隐藏上传控件)

dialog.vue <!-- 采集人脸、更新人脸 --> <template><el-dialog:title"title":visible.sync"dialogVisible"width"30%"top"6vh":close-on-click-modal"false"close"handleClose"><ele-form…

RHCE——七、搭建云存储器

搭建私有云存储 一、使用内网穿透搭建私有云存储1、准备工作2、上传软件3、设置数据库4、配置httpd5、私有云安装6、内网穿透配置 二、使用腾讯云服务器搭建私有云存储1、准备工作2、上传软件3、设置数据库4、配置httpd5、私有云安装 一、使用内网穿透搭建私有云存储 1、准备工…

如何保证缓存和 MySQL 的双写一致 ?

1. 如何保证缓存和 MySQL 的双写一致 &#xff1f; 什么叫做如何保证缓存和 MySQL 双写一致&#xff0c;这个问题就是指当应用程序执行写&#xff08;增删改&#xff09;操作时&#xff0c;如何保证 Redis 和 MySQL 的数据一致性。 当用户发送请求时&#xff0c;程序的执行流程…

打造完美的跨境电商系统,助力企业海外扩张!

打造理想的跨境电商系统&#xff1a;关键要素和优势 在如今全球化和互联网时代&#xff0c;跨境电商已成为企业迅速发展的必然选择。打造一套完美的跨境电商系统&#xff0c;不仅可以提升企业的国际竞争力&#xff0c;还可以助力企业实现海外市场的扩张和增长。本文将为您介绍…