当前位置: 首页 > news >正文

论文解读 | EMNLP2024 一种用于大语言模型版本更新的学习率路径切换训练范式

点击蓝字

ae148d5f2c93be30b5254b52294cc51f.jpeg

关注我们

AI TIME欢迎每一位AI爱好者的加入!

ea0f44fcf04d08bb15a80ac3a5818a28.png

点击 阅读原文 观看作者讲解回放!

作者简介

王志豪,厦门大学博士生

刘诗雨,厦门大学硕士生

内容简介

新数据的不断涌现使版本更新成为大型语言模型(LLMs)不可或缺的需求。LLMs的版本更新训练范式包括从头预训练(PTFS)和继续预训练(CPT)。初步实验表明,PTFS在预训练性能上表现更好,而CPT的训练成本较低。此外,随着版本更新的进行,两种范式的性能和训练成本差距逐渐扩大。为探究这一现象的根本原因,作者分析了学习率对CPT的两个阶段的影响:准备初始化参数(checkpoint)和基于该checkpoint的继续预训练。研究表明,在第一阶段中使用较大学习率以及在第二阶段中使用具有完整率衰减过程的学习率对于LLMs的版本更新至关重要。因此,作者提出了一种基于学习率路径切换的训练范式。该范式包括一条主路径和多条分支路径。LLMs在主路径上以最大学习率进行预训练,而分支路径则基于LLMs在主路径上的checkpoints使用新增数据进行版本更新。广泛的实验表明该范式的有效性和泛化性。特别是在训练4个版本的LLMs时,该范式在保持与PTFS相当的预训练性能同时,将总训练成本减至58%。

论文地址:https://arxiv.org/abs/2410.04103

研究动机

这篇论文的研究动机在于,随着新的预训练数据不断涌现,大型语言模型(LLMs)面临着版本更新的需求,以确保模型能力的持续提升。现有的版本更新范式包括从头预训练(Pre-Training From Scratch,简称PTFS)和继续预训练(Continue Pre-Training,简称CPT)。图中列出了这两种范式在使用cosine学习率调度策略时的学习曲线。可以明显看到,两种范式之间的主要区别在于更新过程中的学习率变化。这启发了作者从学习率角度出发,研究新的预训练范式。

46837a1f390baa4e6ac677414ad14776.png

先导实验

为了比较这两种范式在性能和成本上的差异,作者进行了一个先导实验。实验选择了训练LLMs时最常见的3种学习率调度策略,测试在更新4个版本LLMs情况下的性能和成本差距。需要注意的是,这里的性能用困惑度(Perplexity,PPL)来表示,数值越低代表LLMs性能越好。

从实验结果可以观察到,尽管CPT的版本更新成本远低于PTFS,但PTFS的性能优于CPT,而且这种性能差距随着版本数的增加而增大。

27a38635883de3f9743e441f9313af57.png

性能差距增大的原因

为了研究这种性能差距产生的原因,作者将CPT拆分成两个阶段。第一个阶段是为CPT准备初始参数(checkpoint),第二个阶段是基于初始checkpoint进行继续训练。紧接着,作者基于这两个阶段,分别设计两组实验来探索学习率对CPT两个阶段的影响。

在第一组实验中,作者采用具有不同衰减速度的学习率作为第一阶段的学习率曲线,并固定了第二阶段的学习率曲线。结果表明,当第一阶段的学习率固定为最大值时,初始checkpoint的模型性能最低,但最终性能却是最好的。

在第二组实验中,作者固定了第一阶段的学习率曲线,采用具有不同衰减速度的学习率作为第二阶段的学习率曲线。结果显示,当第二阶段学习率快速衰减到最小值时,对应的LLMs性能最佳。

基于上述两组实验我们可以得出如下结论:1.第一阶段的大学习率和第二阶段完整的学习率衰减过程对CPT的性能尤为重要。2. CPT无法兼顾不同版本LLMs的性能。完整的学习率衰减过程能确保当前版本的LLMs的最优性能,但后续版本的LLMs则需要以大学习率训练提供的初始化checkpoint,这是CPT无法同时满足的。

1b68def433351995a81ff4bf1442a9c3.png

训练范式

为了解决CPT两阶段对不同学习率要求的冲突,作者提出了一种基于学习率路径切换的训练范式。该范式包括一条主路径和多条分支路径。在主路径上,LLMs以最大学习率从头开始预训练,为后续版本更新提供初始化checkpoint。当我们想获得新版的LLMs时,可以直接基于主路径的当前checkpoint继续预训练。在这个过程中,学习率会经历一个完整且快速的衰减过程,从而以较低的成本来保证新版LLMs的性能。同时,在主路径上LLMs仍然使用新增数据对当前checkpoint以最大学习率进行预训练,以便于后续的版本更新。

不同于PTFS和CPT,该范式还包含关键超参数α用于控制分支路径在训练步长中所占的比例。根据版本更新的总时间复杂度计算,该范式与CPT一样,确保了线性的复杂度。

2b49d82e98fe17d50d480c4e1c86caf9.png

关键参数实验

对于本文提出的范式,参数α是一个关键参数。α值越高,模型的性能相对越好,但总的训练成本也会相应增加。根据对不同α值的实验结果,作者选择了α等于0.6作为最终参数。

2f8eab31125e29eb53c116e9da4c3930.png

预训练性能

基于三种学习率调度策略下,作者测试了所提出的预训练范式、PTFS及CPT各自的性能和成本。结果显示,所提出的范式在性能和训练成本上取得了更佳的平衡。在实现与PTFS相当性能的同时,仅需要58%的训练成本。

63064ab2a5a841b32e475f46b5997bbc.png

下游任务性能

在9个常见的下游任务中,经过微调训练后,作者的范式取得了最优的平均性能。

daf35d429da5319c9de64bedc768506e.png

泛化性

模型结构和参数规模

为了验证本文范式在模型结构和参数规模上的泛化性,作者不仅在LLaMA结构上进行了实验,还在Qwen模型结构上进行了实验。此外,作者还在不同参数规模下进行了测试。结果证明,该范式具有良好的泛化性能。

3f894c09340b089dd253c45a0131693a.png

数据规模和最大学习率

并且,作者还测试了在不同数据规模和不同最大学习率设置下所提出范式的性能。结果表明,该范式在不同数据规模和学习率设置下表现出良好的性能,进一步验证了其适用性和泛化性。

6de189738fe48367e02da9a73f10b95a.png

实际应用与未来工作

最后,目前该范式已经实际应用于vivo蓝心基础大模型的研发中。对于未来的工作,作者计划将视角聚焦于大模型版本更新过程中可能存在的更多待解决场景。例如,在更新过程中,同时伴随模型参数规模的扩展、模型结构的调整,以及版本更新在监督微调(SFT)或对齐(alignment)阶段中的应用。

2ad888782114d8fa25cbf6abd6ce91c7.png

本期文章由陈研整理

往期精彩文章推荐

446094ce859ca62d307e584062d284d6.jpeg

迈向AGI——大模型创新体验嘉年华邀请函

 关于AI TIME 

AI TIME源起于2019年,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法和场景应用的本质问题进行探索,加强思想碰撞,链接全球AI学者、行业专家和爱好者,希望以辩论的形式,探讨人工智能和人类未来之间的矛盾,探索人工智能领域的未来。

迄今为止,AI TIME已经邀请了2000多位海内外讲者,举办了逾700场活动,超800万人次观看。

 41d666e1361251598d880c7ab65fa5f3.png

我知道你 

在看

提出观点,表达想法,欢迎 

留言

b2e11938e64126deb46fb83a46b44eb6.gif

点击 阅读原文 观看作者讲解回放!

相关文章:

论文解读 | EMNLP2024 一种用于大语言模型版本更新的学习率路径切换训练范式

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 点击 阅读原文 观看作者讲解回放! 作者简介 王志豪,厦门大学博士生 刘诗雨,厦门大学硕士生 内容简介 新数据的不断涌现使版本更新成为大型语言模型(LLMs&#xff…...

Java基础(Json和Java对象)

定义好实体类 package com.pyb.pojo; ​ /*** version 1.0* Author 彭彦彬* Date 2024/12/24 20:47* 注释*/ public class Person {private String username;private String password; ​public Person() {} ​public Person(String username, String password) {this.username…...

Linux 中检查 Apache Web Server (httpd) 正常运行时间的 4 种方法

注:机翻,未校。 4 Ways To Check Uptime of Apache Web Server (httpd) on Linux November 28, 2019 by Magesh Maruthamuthu We all know about the purpose of uptime command in Linux. 我们都知道 Linux 中 uptime 命令的目的。 It is used to c…...

Linux驱动开发--字符设备驱动开发

一、概述 字符设备是 Linux 驱动中最基本的一类设备驱动,字符设备就是一个一个字节,按照字节 流进行读写操作的设备,读写数据是分先后顺序的。比如我们最常见的点灯、按键、 IIC、 SPI, LCD 等等都是字符设备,这些设备的驱动就叫做字符设备驱动。 Linux 应用程序对驱动程…...

MarkItDown的使用(将Word、Excel、PDF等转换为Markdown格式)

MarkItDown的使用(将Word、Excel、PDF等转换为Markdown格式) 本文目录: 零、时光宝盒🌻 一、简介 二、安装 三、使用方法 3.1、使用命令行形式 3.2、用 Python 调用 四、总结 五、参考资料 零、时光宝盒🌻 &a…...

一文彻底拿捏DevEco Studio的使用小技巧

程序员Feri一名12年的程序员,做过开发带过团队创过业,擅长Java相关开发、鸿蒙开发、人工智能等,专注于程序员搞钱那点儿事,希望在搞钱的路上有你相伴!君志所向,一往无前! 0.安装DevEco Studio DevEco Studio面向HarmonyOS应用及元服务开发者提供的集成开…...

R9000P键盘失灵解决办法

问题描述 突然,就是很突然,我买的R9000P 2024不到三个月,键盘突然都不能用了,是所有键盘按键都无效的那种。(可以使用外接键盘) 解决办法 我本科室友说的好哈,全坏全没坏。 (该解…...

【Linux之Shell脚本实战】编写简单计算器shell脚本

【Linux之Shell脚本实战】编写简单计算器shell脚本 一、Shell脚本介绍1.1 Shell脚本简介1.2 Shell脚本特点二、脚本要求三、检查本地环境3.1 本地环境规划3.2 检查本地系统3.3 检查系统内核版本四、编写脚本4.1 脚本内容4.2 脚本分析整体逻辑各功能实现使用方法4.3 执行效果五、…...

【0x001D】HCI_Read_Remote_Version_Information命令详解

目录 一、命令概述 二、命令格式及参数说明 2.12. HCI_Read_Remote_Version_Information 命令格式 2.2. Connection_Handle 三、生成事件 3.1. HCI_Command_Status 事件 3.2. HCI_Read_Remote_Version_Information_Complete 事件 四、命令执行流程 4.1. 命令发起阶段(…...

秒鲨后端之MyBatis【2】默认的类型别名、MyBatis的增删改查、idea中设置文件的配置模板、MyBatis获取参数值的两种方式、特殊SQL的执行

别忘了请点个赞收藏关注支持一下博主喵&#xff01;&#xff01;&#xff01;! ! ! 下篇更新&#xff1a; 秒鲨后端之MyBatis【3】自定义映射resultMap、动态SQL、MyBatis的缓存、MyBatis的逆向工程、分页插件。 默认的类型别名 MyBatis的增删改查 添加 <!--int insertUs…...

python中使用selenium执行组合快捷键ctrl+v不生效问题

在执行ctrlv进行粘贴时&#xff0c;绑定一个页面上的元素对象&#xff08;无论元素对象是否是引用过期或者是粘贴的目标文本区&#xff0c;但前提需要粘贴的目标文本区获取焦点&#xff09;执行ctrlv后可以生效。执行粘贴组合快捷键&#xff08;ctrlv&#xff09;的示例代码 se…...

大语言模型中的Agent;常见的Agent开发工具或框架

大语言模型中的Agent 大语言模型中的Agent是指以大语言模型为核心驱动,具有自主理解、感知、规划、记忆和使用工具等能力,能够自动化执行复杂任务的系统.以下是一些例子: AutoGPT:它相当于一个完整的工具包,可以为各种项目构建和运行自定义AI Agent。使用OpenAI的GPT-4和…...

VSCode 性能优化指南:提高编码效率,减少资源占用

Visual Studio Code&#xff08;简称VSCode&#xff09;是一款广受欢迎的代码编辑器&#xff0c;以其强大的功能和丰富的插件生态系统著称。然而&#xff0c;随着项目规模的扩大和插件数量的增加&#xff0c;VSCode 的性能可能会受到影响。本文将介绍一系列优化措施&#xff0c…...

深入理解C++ 容器类

承接Qt/C软件开发项目&#xff0c;高质量交付&#xff0c;灵活沟通&#xff0c;长期维护支持。需求所寻&#xff0c;技术正适&#xff0c;共创完美&#xff0c;欢迎私信联系&#xff01; 引言 C 标准库提供了丰富的容器&#xff08;container&#xff09;类型&#xff0c;用于存…...

优化 invite_codes 表的 SQL 创建语句

-- auto-generated definition create table invite_codes (id int auto_incrementprimary key,invite_code varchar(6) not null comment 邀请码&#xff0c;6位整数&#xff0c;确保在有效期内…...

springboot容器无法获取@Autowired对象,报null对象空指针问题的解决方式

示例错误代码&#xff1a; package com.uniin.ib.provider.iot.handle;Slf4j Component public class FireStringInboundHandler extends ChannelInboundHandlerAdapter {Autowiredprivate RsFireMonitoringMapper rsFireMonitoringMapper;Autowiredprivate RsFireAlertMapper…...

服务器数据恢复—Lustre分布式文件系统下服务器节点进水的数据恢复案例

服务器数据恢复环境&故障&#xff1a; 5台节点服务器&#xff0c;每台节点服务器上有一组RAID5阵列。每组RAID5阵列上有6块硬盘&#xff08;其中1块硬盘设置为热备盘&#xff0c;其他5块硬盘为数据盘&#xff09;。上层系统环境为Lustre分布式文件系统。 机房天花板漏水导致…...

由于这些关键原因,我总是手边有一台虚拟机

概括 虚拟机提供了一个安全的环境来测试有风险的设置或软件,而不会影响您的主系统。设置和保存虚拟机非常简单,无需更改主要设备即可方便地访问多个操作系统。运行虚拟机可能会占用大量资源,但现代 PC 可以很好地处理它,为实验和工作流程优化提供无限的可能性。如果您喜欢使…...

word无法创建工作文件,检查临时环境变量。

word无法创建工作文件&#xff0c;检查临时环境变量。 word preview版本&#xff0c;关联打开文件出现报错。word无法创建工作文件&#xff0c;检查临时环境变量。 打开注册表&#xff0c;删除键 Word Preview: HKCR\CLSID{84F66100-FF7C-4fb4-B0C0-02CD7FB668FE} PowerPoint …...

照亮技术传播之路:构建卓越的技术文档

照亮技术传播之路&#xff1a;构建卓越的技术文档 引言 在信息技术快速发展的今天&#xff0c;技术文档作为沟通开发者、用户以及其他利益相关者的桥梁&#xff0c;其重要性不言而喻。一份优秀的技术文档不仅能够帮助团队成员理解项目背景和技术细节&#xff0c;还能够在产品…...

批量新建文件夹工具:两种模式与重名策略怎么选

在 Windows 上做项目资料归档、测试用例目录、素材库初始化时&#xff0c;“先把一套文件夹结构建出来”是很常见的动作。手动右键新建很容易漏、很容易层级点错&#xff0c;也很难复用。这里记录一下【批量新建文件夹工具】的用法要点&#xff08;只讲界面能力与参数选择&…...

2026年文档生成工具榜单:8 款实力派工具,效率与体验双优

2026 年&#xff0c;数字化办公已全面迈入智能化深水区&#xff0c;文档作为企业知识沉淀、业务流转与团队协同的核心载体&#xff0c;其智能化程度直接决定组织效率上限。据艾瑞咨询《2025 年中国智能办公应用趋势报告》显示&#xff0c;超 80% 企业将实时内容共创与知识沉淀视…...

NopeCHA验证码扩展缓存机制详解:提升验证码识别速度的10个关键优化技巧

NopeCHA验证码扩展缓存机制详解&#xff1a;提升验证码识别速度的10个关键优化技巧 【免费下载链接】nopecha-extension Automated CAPTCHA solver for your browser. Works with Selenium, Puppeteer, Playwright, and more. 项目地址: https://gitcode.com/gh_mirrors/no/n…...

电商客服效率翻倍秘籍:RexUniNLU零样本抽取订单关键信息实战

电商客服效率翻倍秘籍&#xff1a;RexUniNLU零样本抽取订单关键信息实战 1. 电商客服的痛点与解决方案 电商客服每天面对海量用户咨询&#xff0c;其中订单查询类问题占比高达40%以上。传统处理方式存在三大痛点&#xff1a; 人工处理效率低&#xff1a;客服需要反复询问订单…...

进程同步与互斥——理发师问题多线程优化实践(sleeping barber problem)

1. 理发师问题&#xff1a;从生活场景到多线程模型 想象一下周末去理发店的场景&#xff1a;推门进去发现理发师正在给一位顾客剪头发&#xff0c;旁边有5把等待椅。如果椅子都空着&#xff0c;你可以直接坐下等待&#xff1b;如果已经坐了5个人&#xff0c;你可能选择改天再来…...

Java 设计模式最佳实践:构建可维护的应用

Java 设计模式最佳实践&#xff1a;构建可维护的应用别叫我大神&#xff0c;叫我 Alex 就好。一、引言 大家好&#xff0c;我是 Alex。设计模式是软件开发中解决常见问题的可重用方案。它们是经过验证的最佳实践&#xff0c;可以帮助我们构建更可维护、更可扩展的应用。今天&am…...

含分布式电源的IEEE33节点配电网的潮流计算程序,程序考虑了风光接入下的潮流计算问题将风光等...

含分布式电源的IEEE33节点配电网的潮流计算程序&#xff0c;程序考虑了风光接入下的潮流计算问题将风光等效为PQV PI等节点处理&#xff0c;采用牛拉法开展潮流计算&#xff0c;而且程序都有注释 –以下内容属于A解读&#xff0c;有可能是一本正经的胡说八道&#xff0c;仅供参…...

智能调压突破性能极限:AMD Ryzen处理器调试工具让多核效率提升150%

智能调压突破性能极限&#xff1a;AMD Ryzen处理器调试工具让多核效率提升150% 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址…...

STM32主控的三相逆变器及单相/三相逆变程序实现

三相逆变 单相/三相逆变器 SPWM ---stm32主控&#xff08;输入、输出具体可根据需要设定&#xff09;&#xff0c;本逆变器可以二次开发。 本内容只包括 逆变程序&#xff0c;实现变频&#xff08;0&#xff5e;100Hz)、变压调节&#xff0c;均有外接按键控制&#xff08;使用C…...

杰理之变声接口异常死机问题【篇】

void audio_voice_changer_mode_switch(u16 uuid, char *name, VOICE_CHANGER_MODE mode)...