大规模语言模型高效调参--混合高效微调系列(MAM Adapter,UniPELT)

news2024/9/25 21:27:01

近年来提出了多种参数高效的迁移学习方法, 这些方法仅微调少量(额外) 参数即可获得强大的性能。虽 然有效, 但人们对为什么有效的关键要素以及各种高效微调方法之间的联系知之甚少。 Adapter 、Prefix Tuning、 LoRA (在结构上和公式上)看起来都不太一样,但是这三种方法有近似的效果?

MAM Adapter

分解先进的参数高效迁移学习方法(Adapter 、Prefix Tuning 和 LoRA)的设计, 并提出了一种新方法 MAM Adapter (论文: TOWARDS A UNIFIED VIEW OF PARAMETER EFFICIENT TRANSFER LEARNING), 一个在 Adapter、Prefix Tuning 和 LoRA 之间建立联系的统一方法。具体来说, 将它们重新构建为对预训练模型中特定隐 藏状态的修改,并定义一组设计维度,不同的方法沿着这些维度变化。

通过对前面 Prefix Tuning 变换,发现 Prefix Tuning 和 Adapters 的公式高度相似。作者进一步对最先进的 PEFT 方法进行了解构, 并提出了一个统一的框架来建立它们之间的联系。将它们重新定义为对预训练模型中特定隐 藏状态的修改(修改 h),并定义了一组设计维度, 包括计算修改的函数和应用修改的位置等, 这些维度在不同 方法之间存在变化。

现有方法和提出的变种的示例说明。 ”PLM 模块” 表示 PLM (例如注意力或前馈网络) 的某个子层被冻 结。 ”Scaled PA” 表示缩放的并行适配器。

上图分析不同微调方法的内部结构和结构插入形式的相似之处, 图中展示了高效微调方法 Adapter、Prefix Tuning 、LoRA 以及新变体(通过更换一些元素, 设计了前人的工作里没有的变体) Parallel Adapter 、Scaled PA的结构。

  • Parallel Adapteris:通过将 prefix tuning 的平行插入转移到适配器的变体。有趣的是, 虽然我们因其与prefix tuning 的相似性而提出了 Parallel Adapteris,但同时进行的工作独立地提出了这个变体并对其进行了经验研 究

  • Multi-head Parallel Adapter:使适配器与 prefix tuning 更加相似的进一步措施:我们应用 Parallel Adapteris 来 修改头的注意力输出,作为 prefix tuning。

  • Scaled Parallel Adapter:通过将 LoRA 的组成和插入形式转移到适配器中的变体,如上图e 所示。

高效微调方法 Adapter、Prefix Tuning、LoRA 以及新变体对比示意图

上表展示了高效微调方法 Adapter、Prefix Tuning、LoRA 以及新变体在新增可训练参数结构形式(functional form)、结构插入形式(Insertion form)、新增结构在 PLM 修改的具体位置(modified representation)、新增结构与 PLM 的组合函数(composition function)。其中, 新增可训练参数结构形式为需要学习的部分(注:Prefix Tuning 为经过转换后的格式);插入形式有串联或并联;模型修改的具体位置有 Attention 、FFN 层。

这个统一的框架使我们能够沿着这些设计维度研究参数有效的微调方法, 确定关键的设计选择, 并有可能 在不同的方法之间转移设计元素。通过最终的实验结果, 可以看到 MAM Adapter 在仅用了 6.7% 参数量(相比 全量微调) 的情况下, 在 Xsum 和 MT 这两个任务上达到了和全量微调相近的效果, 并且该方法大大优于 BitFit 和 Prompt Tuning,并始终优于 LoRA 、Adapter 和 Prefix Tuning。

UniPELT

近年来, 涌现出了许多针对语言模型的参数高效微调(PELT) 方法, 在模型训练参数极大的减少的情况下, 模型效果与全量微调相当。但是不同的 PELT 方法在同一个任务上表现差异可能都非常大, 这让针对特定任务 选择合适的方法非常繁琐。基于此, 提出了 UniPELT 方法, 将不同的 PELT 方法作为子模块, 并通过门控机制学习激活最适合当 前数据或任务的方法。

UniPELT (论文: UNIPELT: A Unified Framework for Parameter-Efficient Language Model Tuning) 是 LoRA、 Prefix Tuning 和 Adapter 的门控组合,其中:

  • LoRA:通过低秩分解,将优化预训练参数 W0 转换为优化外挂层 Wdown ,Wup 的参数矩阵 WB ,WA ;

  • PrefixTuning:在每个层的多头注意力中, 在 key 和 value 的前面添加了 l 个可调节的前缀向量。具体来说, 两组前缀向量 Pk , Pv ∈ Rl×d 与原始键 K 和值 V 进行连接。然后在新的前缀键和值上执行多头注意力计 算。

  • Adapter:在 Transformer 块的 feed-forward 子层之后添加 Adapter 模块。

UniPELT的结构示意图

更具体地说, LoRA 重新参数化用于 WQ 和 WV 注意力矩阵, Prefix Tuning 应用于每一 Transformer 层的 key 和 value,并在 Transformer 块的 feed-forward 子层之后添加 Adapter。然后组合这三个模块, 每个模块使用门控机 制(实现为线性层) 来控制, 通过 GP 参数控制 Prefix-tuning 方法的开关, GL 控制 LoRA 方法的开关, GA 控制 Adapter 方法的开关。可训练参数包括 LoRA 矩阵 WA (Down) 和 WB (Up),提示调优参数 Pk 和 Pv 、Adapter 参数和门函数权重。整个结构如上图所示,图中蓝颜色的参数为可学习的参数。

UniPELT 仅用 100 个示例就在低数据场景中展示了相对于单个 LoRA 、Adapter 和 Prefix Tuning 方法的显著 改进。在更高数据的场景中, UniPELT 的性能与这些方法相当或更好。

对不同的高效微调方法的训练参数量、训练/推理时间进行了分析:

  • 从训练速度来看, UniPELT 比之前微调的方法多一些,但是还在能接受的范围,

  • 从推理时间来看, BitFit 方法增加的最少, UniPELT 方法时间增加了 27%。

  • 从训练参数量来看, LoRA ,BitFit ,Prefix-tuning 都比较小, UniPELT 参数量相对会多一些。

ps: 欢迎扫码关注公众号^_^.

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

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

相关文章

SpringCloud小项目——订单积分商城 使用Nacos、Open Feign、Gateway、Sentinel技术栈

目录 引出小项目要求创建极简数据库表订单表,订单明细表商品表积分表 相关微服务积分微服务产品微服务订单微服务调用积分和订单微服务 网关微服务登陆认证通过网关实现对外提供接口API走网关功能 sentinel相关使用Sentinel限流,流量整形Sentinel降级服务…

SparseBEV:High-Performance Sparse 3D Object Detection from Multi-Camera Videos

参考代码:SparseBEV 动机与主要贡献: BEV感知可以按照是否显式构建BEV特征进行划分,显式构建BEV特征的方法需要额外计算量用于特征构建,而类似query方案的方法则不需要这样做。比较两种类型的方法,前者需要更多计算资…

微服务 BFF 架构设计

在现代软件开发中,由于程序、团队、数据规模太大,需要把企业的业务能力进行复用,将领域服务剥离,提供通用能力,避免重复建设和代码;另外服务功能的弹性能力不一样,比如定时任务、数据同步明确的…

mysql面试题39:什么是触发器?触发器的使用场景有哪些?MySQL中都有哪些触发器?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:什么是触发器?触发器的使用场景有哪些? 触发器(Trigger)是数据库中一种特殊类型的存储过程,它在特定的数据库事件(例如插入、更新、删除操作…

软考高级架构师下篇-18大数据架构理论设计与实践

目录 1. 引言2. 传统数据处理系统的问题1.传统数据库的数据过载问题2.大数据的特点3.大数据利用过程4.大数据处理系统架构分析3.典型的大数据架构1. Lambda架构2.Kappa架构3. Lambda架构与Kappa架构的对比4.大数据架构的实践1.大规模视频网络2.广告平台3.公司智能决策大数据系统…

Redis-集群

Redis-集群 主从复制和哨兵只能在主节点进行写数据,从节点读取数据,因此本质上,是进行了读写的分离,每个节点都保存了所有的数据,并不能实现一个很好的分布式效果。 1.哈希求余算法 假设有N台主机,对每台…

对比纯软开与嵌入式硬件开发谁更好呢?

对比纯软开与嵌入式硬件开发谁更好呢? 你的纠结和犹豫是理解的,职业选择确实是一个重要的决策。我明白你在嵌入式和软件开发之间犹豫不决的原因。让我给你提供一些建议,帮助你做出更明智的决定。最近很多小伙伴找我,说想要一些嵌入…

日期时间参数,格式配置(SpringBoot)

介绍 在SpringBoot项目中,接口中的日期和时间类型的参数,配置格式。 日期格式 接口中常用的日期时间格式有两种: 字符串(比如:yyyy-MM-dd HH:mm:ss)时间戳(比如:1696839876955&a…

【云计算网络安全】僵尸网络详解:工作原理、控制和保护方法

文章目录 一、什么是僵尸网络?二、僵尸网络因为什么原因而诞生?三、僵尸网络主要用途四、僵尸网络如何工作?五、如何控制僵尸网络?5.1 客户端/服务器僵尸网络模型5.1.1 星形网络拓扑5.1.2 多服务器网络拓扑5.1.3 分层网络拓扑 5.2…

Maven依赖解决

记一次Maven依赖冲突解决 以zookeeper为例 一、问题描述 当下载zookeeper的2.2.6.RELEASE时,报错 Could not find artifact org.springframework.cloud:spring-cloud-starter-zookeeper-discovery:pom:2.2.6.RELEASE in central (https://repo.maven.apache.org/ma…

3D包容盒子

原理简述 包围体(包容盒)是一个简单的几何空间,里面包含着复杂形状的物体。为物体添加包围体的目的是快速的进行碰撞检测或者进行精确的碰撞检测之前进行过滤(即当包围体碰撞,才进行精确碰撞检测和处理)。包…

Flutter中的StreamBuilder和FutureBuilder有什么区别

流行的跨平台框架 Flutter 为开发人员提供了两个强大的小部件来处理异步操作:StreamBuilder 和 FutureBuilder。尽管它们有相似之处,但了解它们的不同之处,以便为您的特定用例选择合适的一个是至关重要的。在这篇博文中,我们将深入…

matlab相机标定实验

实验原理 1. 相机标定坐标系 相机的参数对目标的识别、定位精度有很大的影响,相机标定就是为了求出相机的内外参数。标定中有3个不同层次的坐标系:世界坐标系、相机坐标系和图像坐标系(图像物理坐标系和图像像素坐标系)。世界坐…

HTML-注册页面

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>注册页面</title> </head> <body><from action"#" method"get"><table border"1" align&q…

智能井盖传感器:提升城市安全与便利的利器

在智能化城市建设的浪潮中&#xff0c;WITBEE万宾智能井盖传感器&#xff0c;正以其卓越的性能和创新的科技&#xff0c;吸引着越来越多的关注。本文小编将为大家详细介绍这款产品的独特优势和广阔应用前景。 在我们生活的城市中&#xff0c;井盖可能是一个最不起眼的存在。然而…

代码随想录算法训练营第六十天 | 单调栈 part 1 | 739. 每日温度、496.下一个更大元素 I

目录 739. 每日温度思路代码 496.下一个更大元素 I思路代码 739. 每日温度 Leetcode 思路 维持一个单调递增的栈&#xff0c;向栈逐一pushtemperatures里的index。 如果当前遍历的元素大于栈顶元素&#xff0c;这意味着 栈顶元素的 右边的最大的元素就是 当前遍历的元素&…

基于安卓android微信小程序的旅游系统

项目介绍 随着人民生活水平的提高,旅游业已经越来越大众化,而旅游业的核心是信息,不论是对旅游管理部门、对旅游企业,或是对旅游者而言,有效的获取旅游信息,都显得特别重要.自助定制游将使旅游相关信息管理工作规范化、信息化、程序化,提供旅游景点、旅游线路,旅游新闻等服务本…

PG学习笔记(PostgreSQL)

PG学习笔记&#xff08;PostgreSQL&#xff09; 1、PG特点 项目极限值最大单个数据库大小不限最大最大数据单表大小32 TB单条记录最大1.6TB单字段最大允许1GB单表允许最大记录数不限单表最大字段数250~1600&#xff08;取决于字段类型&#xff09;单表最大索引数不限 2、PG安…

在 Amazon SageMaker 上使用 ESMFold 语言模型加速蛋白质结构预测

蛋白质驱动着许多生物过程&#xff0c;如酶活性、分子输运和细胞支持。通过蛋白质的三维结构&#xff0c;可以深入了解蛋白质的功能以及蛋白质如何与其他生物分子相互作用。测定蛋白质结构的实验方法&#xff08;如 X 射线晶体学和核磁共振波谱学&#xff09;既昂贵又耗时。相比…

深度学习DAY3:FFNNLM前馈神经网络语言模型

1 神经网络语言模型NNLM的提出 文章&#xff1a;自然语言处理中的语言模型预训练方法&#xff08;ELMo、GPT和BERT&#xff09; https://www.cnblogs.com/robert-dlut/p/9824346.html 语言模型不需要人工标注语料&#xff08;属于自监督模型&#xff09;&#xff0c;所以语言…