LoRAMoE:缓解大模型的世界知识遗忘问题

2024-08-30 14:20

本文主要是介绍LoRAMoE:缓解大模型的世界知识遗忘问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

人工智能咨询培训老师叶梓 转载标明出处

大模型(LLMs)在进行SFT时,通过增加指令数据量来提升其在多个下游任务中的性能或显著改善特定任务的表现。但研究者们发现,这种大规模的数据增加可能会导致模型遗忘其预训练阶段学习到的世界知识。这种遗忘现象在封闭书籍问答等任务中尤为明显,这些任务通常用来衡量模型的世界知识水平。

为了应对这一挑战,复旦大学的研究团队提出了LoRAMoE框架。LoRAMoE是一种Mixture-of-Experts(MoE)风格的插件,它引入了多个低秩适配器(LoRAs),并通过路由器网络进行集成。该框架的核心思想是在保持模型主体不变的情况下,通过部分LoRAs来利用世界知识解决下游任务,从而缓解世界知识遗忘的问题。

论文链接:https://arxiv.org/pdf/2312.09979

项目链接:https://github.com/Ablustrund/LoRAMoE

方法 

LoRAMoE的核心架构如图4所示,与标准的MoE架构相比,LoRAMoE在每个Transformer块的前馈神经(FFN)层中引入了多个LoRA(Low-Rank Adaptation)作为可适应的专家,并通过路由器来控制它们。在训练过程中,只有专家和路由器是被优化的。

标准MoE架构的工作流程如下:

  • 输入数据通过一系列的嵌入层(Embedding)和Transformer块进行处理。
  • 在MoE中,路由器根据数据为专家分配权重,使它们能够分工完成前向传播过程。
  • LoRAMoE在此基础上进行了改进,冻结了主干模型以保持世界知识,并引入专家来利用这些知识解决任务,同时提高在多个下游任务上的性能。

在LoRAMoE中,传统的FFN层被替换为MoE风格的插件,使得专家可以协作处理任务。在训练阶段,主干模型被冻结,只更新∆W。如果考虑一个包含N个专家的LoRAMoE层,其前向过程可以表示为: 其中,分别代表第i个专家和路由器。W_g​ 是路由网络的可训练参数矩阵。

为了提高训练和推理的效率,LoRA被用作专家的架构。专家的参数矩阵∆WE被替换为低秩格式,显著减少了可训练参数,从而提高了微调过程的效率和资源利用率。

LoRAMoE面临的一个典型问题是专家使用不平衡,如图5所示。传统的解决方案是平衡专家的使用,通过将专家重要性的变异系数作为损失函数。然而,这种方法假设所有训练样本都在同一分布下,忽略了样本可能来自不同分布的事实,如图6所示。

LoRAMoE在训练阶段引入了一种新颖的平衡专家使用的方法——Localized Balancing Constraint。这种方法通过软性约束专家专注于两个方面:一部分专家专注于通过学习相关数据集来利用世界知识,另一部分专家专注于其他下游任务。同时,解决同一方面的专家之间进行平衡。

具体来说,定义LoRAMoE层的重要性矩阵Q,其中表示第n个专家对第m个训练样本的路由器值之和。然后定义与Q相同大小的系数矩阵I,其中​表示​的重要性系数。通过优化损失函数,可以使得对应专家从样本中学习更多,并被路由器分配更大的权重。

最终,LoRAMoE的损失函数可以表示为:其中,L是LLMs的下一个token预测损失,β控制本地平衡约束的强度。在训练阶段,主干模型被冻结,只有LoRAMoE层中的专家和路由器的参数是可训练的。在推理过程中,路由器自动为所有专家分配权重,避免了预指定数据类型的需要。

通过这种方法,LoRAMoE不仅提高了模型在多个下游任务上的性能,同时也有效地保持了模型内部的世界知识。

想要掌握如何将大模型的力量发挥到极致吗?叶老师带您深入了解 Llama Factory —— 一款革命性的大模型微调工具。9月22日晚,实战专家1小时讲解让您轻松上手,学习如何使用 Llama Factory 微调模型。

加助理微信提供直播链接:amliy007,29.9元即可参加线上直播分享,叶老师亲自指导,互动沟通,全面掌握Llama Factory,关注享粉丝福利,限时免费CSDN听直播后的录播讲解。
LLaMA Factory 支持多种预训练模型和微调算法。它提供灵活的运算精度和优化算法选择,以及丰富的实验监控工具。开源特性和社区支持使其易于使用,适合各类用户快速提升模型性能。

实验 

实验设置中,LoRAMoE仅将大型语言模型(LLM)前馈神经网络中的线性层替换为LoRAMoE层。每个LoRAMoE层初始化包含六个专家,其中三个专家专注于处理下游任务,另外三个专家负责通过学习相关任务来利用基础模型中的世界知识。控制约束强度β和不平衡程度δ的超参数均设置为0.1。对于LoRA设置,α和r分别设置为32和4。dropout设置为0.05,学习率为。训练数据集被精心设计,以确保它能够代表模型在实际应用中可能遇到的多样化挑战。基础模型的参数被冻结,只有LoRAMoE中的专家和路由器是可训练的。每个节点的批量大小设置为16。

表2展示了LoRAMoE的性能,并将其结果与直接对模型应用SFT或使用LoRA调整的结果进行了比较。结果显示,使用LoRAMoE的语言模型在世界知识基准测试和其他方面都表现良好,表明其在避免知识遗忘的同时提高了多任务处理能力。对于世界知识基准测试,与灾难性崩溃相反,LoRAMoE不仅避免了这个问题,而且还超越了仅使用CBQA数据集进行微调的模型。LoRAMoE在世界知识基准测试中的性能比纯SFT有显著提升,最高提升了63.9%,平均增长了35.3%。对于其他下游任务,LoRAMoE能够达到接近甚至超越直接SFT的性能。例如,在所有阅读理解任务(即Race、ReCoRD、multiRC)中,LoRAMoE都取得了优越的性能。另外还将LoRAMoE与单个LoRA的参数高效微调(PEFT)进行了比较。在单个LoRA调整期间也发生了知识遗忘,因为它本质上与纯SFT相同。与单个LoRA相比,LoRAMoE中的多个协作LoRAs增强了世界知识保留和多任务处理能力。

表2 显示的LoRAMoE的结果中与直接完整微调和使用LoRA调整后在世界知识基准测试中表现下降的情况不同,LoRAMoE确保了世界知识基准测试和其他下游任务的同时增长。它们在世界知识基准测试中平均提高了30.9%,在其他下游任务中平均提高了8.4%。Llbc在绝大多数任务中改善了LoRAMoE的结果,无论是世界知识基准测试还是其他任务。值得注意的是,对于阅读理解、NLI和原始CBQA数据集,这种方法的好处相当大,高达17.6%。这表明专家组的能力划分有利于多任务学习。

在参数敏感性分析部分,研究者保持其他设置不变,改变专家的数量和LoRA的秩。表3显示了在包括世界知识基准测试和所有其他下游任务在内的所有测试集上,不同参数设置下的平均性能。随着可训练参数数量的增加,性能总体上保持稳定。六个专家的数量是最有益的选择,因为更多的专家并不会导致更高的性能。虽然增加LoRA的秩在某种程度上提高了模型的能力,但它带来了可训练参数的指数级增长。

为了确认LoRAMoE在使专家专门化方面的有效性,研究者可视化了路由器在遇到下游任务数据和知识基准测试数据时分配给专家的权重,如图7所示。在处理世界知识基准测试和其他下游任务时,两种类型的专家的使用率存在明显差异。这表明路由器可以在推理阶段自动将特定任务分配给具有相应能力的专家。被要求利用世界知识的专家在世界知识基准测试中被大量使用(例如,TriviaQA、Natural Questions和HotpotQA),这强调了它们在防止世界知识遗忘中的关键作用。这与第2节中所述的事实相对应,即监督式微调通过将模型中预存的世界知识与人类指令相关联,提高了模型在这些任务中的能力。另一方面,被指派专注于提高下游任务性能的专家在遇到这些任务时被赋予了更高的突出地位。通过这种可视化结果,可以发现一些下游任务仍然需要另一种类型的专家。这是合理的。例如,在阅读理解任务中,模型在预训练期间学到的知识可以更好地协助做出事实判断。这种现象在基于语言的任务中更加明显。在WSC任务中,路由器平均分配了大约45%的注意力给负责世界知识的专家。

通过可视化专家权重的实验进一步表明,LoRAMoE通过促进专家之间的协作,有效缓解了世界知识遗忘问题,并实现了模型性能的提升。

这篇关于LoRAMoE:缓解大模型的世界知识遗忘问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1121071

相关文章

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

sqlite3 相关知识

WAL 模式 VS 回滚模式 特性WAL 模式回滚模式(Rollback Journal)定义使用写前日志来记录变更。使用回滚日志来记录事务的所有修改。特点更高的并发性和性能;支持多读者和单写者。支持安全的事务回滚,但并发性较低。性能写入性能更好,尤其是读多写少的场景。写操作会造成较大的性能开销,尤其是在事务开始时。写入流程数据首先写入 WAL 文件,然后才从 WAL 刷新到主数据库。数据在开始

揭秘世界上那些同时横跨两大洲的国家

我们在《世界人口过亿的一级行政区分布》盘点全球是那些人口过亿的一级行政区。 现在我们介绍五个横跨两州的国家,并整理七大洲和这些国家的KML矢量数据分析分享给大家,如果你需要这些数据,请在文末查看领取方式。 世界上横跨两大洲的国家 地球被分为七个大洲分别是亚洲、欧洲、北美洲、南美洲、非洲、大洋洲和南极洲。 七大洲示意图 其中,南极洲是无人居住的大陆,而其他六个大洲则孕育了众多国家和

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验