LoReFT——大语言模型的表示微调

引言

参数高效的微调或 PeFT 方法寻求通过更新少量权重来适应大型语言模型。然而,大多数现有的可解释性工作已经证明,表示编码了丰富的语义信息,这表明它可能是编辑这些表示的更好、更强大的替代方案。预先训练的大型模型通常经过微调以用于新的领域或任务,并且在微调过程中,即使只有少量的域内数据可用,单个基础模型也可以适应各种任务到模型。然而,微调整个模型的过程是消耗资源且昂贵的,特别是对于具有大量大小和参数的语言模型。

参数有效的微调或 PeFT 方法建议通过仅更新少量可用的总权重来解决与微调整个模型相关的高成本,这一过程有助于减少训练时间和内存使用。更重要的是,参数有效的微调或 PeFT 方法已经在多种实际设置中展示了与微调类似的性能。适配器是参数高效微调或 PeFT 方法的常见系列,它可以学习一种编辑,可以将其添加到与冻结基础模型一起运行的一组附加权重中,最近的适配器(例如 LoRA)减少了学习中可训练参数的数量在训练适配器时,通过使用低秩近似而不是全权重矩阵来更新权重。

之前的工作证明编辑表示可能是参数高效微调或 PeFT 方法的更好替代方案,在本文中,我们将讨论在冻结模型上运行的表示微调或 ReFT 方法,并学习特定于任务的方法对隐藏表征的干预。本文旨在深入介绍 ReFt 或表示微调框架,我们探讨了该框架的机制、方法、架构,以及它与最先进框架的比较。那么让我们开始吧。

ReFT:语言模型的表示微调

为了尝试将预训练的语言模型应用于新的领域和任务,当前的框架经常对这些预训练的语言模型进行微调,随着微调过程的实施,单个基本模型可以适应各种任务,甚至当处理少量域内数据时。尽管微调过程确实提高了整体性能,但这是一个昂贵的过程,尤其是在语言模型具有大量参数的情况下。为了解决这个问题并降低相关成本,PeFT 或参数高效 微调框架仅更新总权重的一小部分,这一过程不仅减少了训练时间,还减少了内存使用量,使 PeFT 框架在实际场景中与完全微调方法相比能够实现类似的性能。适配器是 PeFT 的常见家族,它通过学习编辑来工作,该编辑可以添加到一组附加权重以及与具有冻结权重的基本模型一致运行的权重子集。最近的适配器框架如 LoRA 和 QLoRA 已经证明可以在降低精度的模型上训练全精度适配器而不影响性能。与引入新模型组件的其他方法相比,适配器通常更加高效和有效。

当前最先进的参数高效微调框架的一个主要亮点是,它们不是修改表示,而是修改权重。然而,处理可解释性的框架已经证明,表示编码了丰富的语义信息,这表明与权重更新相比,表示编辑可能是更好、更强大的方法。这种表示编辑是更好方法的假设构成了 ReFT 或表示微调框架的基础,该框架训练干预措施而不是调整模型权重,允许模型操纵所有表示的一小部分以尝试引导模型行为在推理过程中解决下游任务。 ReFT 或表示微调方法是基于权重的 PeFT 或参数高效微调框架的直接替代品。 ReFT 方法从最近具有大型模型可解释性的模型中汲取灵感,这些模型会干预表示以找到忠实的因果机制,并在推理过程中引导模型的行为,因此可以被视为表示编辑模型的泛化。在此基础上,LoReFT 或低秩子空间 ReFT 是 ReFT 的强大且有效的实例,并且是 ReFT 的参数化,它干预由低秩投影矩阵跨越的线性空间中的隐藏表示,并直接构建在 DAS 上或分布式对齐搜索框架。

与完全微调相反,PeFT 或参数高效微调框架仅训练模型参数的一小部分,并设法使模型适应下游任务。参数高效微调框架可分为三大类:

  • 基于适配器的方法: 基于适配器的方法训练附加模块,例如具有冻结权重的预训练模型之上的全连接层。串联适配器在多层感知器或 MLP 和 LM 或大型模型注意层之间插入组件,而并行适配器则在现有组件旁边添加模块。由于适配器添加的新组件无法轻松折叠到现有模型权重中,因此它们在推理过程中造成了额外的负担。

  • 洛拉: LoRA 及其最新变体通过使用低秩矩阵在训练期间近似附加权重,并且它们在推理期间不需要额外的开销,因为权重更新可以合并到模型中,这就是它们被认为是当前模型的原因最强大的 PeFT 框架。

  • 基于提示的方法: 基于提示的方法将随机初始化的软标记添加到输入中,并训练它们的嵌入,同时保持语言模型的权重冻结。与其他 PeFT 方法相比,这些方法提供的性能通常并不令人满意,而且它们还带来巨大的推理开销成本。

ReFT 框架不是更新权重,而是学习干预措施来修改总表示的一小部分。此外,最近关于表示工程和激活引导的工作已经证明,向残差流添加固定引导向量可能有助于对预训练的大型模型生成进行一定程度的控制,而无需占用大量资源 微调。其他框架已经证明,使用学习的缩放和平移操作编辑表示可以尝试匹配但不能超越 LoRA 适配器在学习参数较少的各种任务上提供的性能。此外,这些框架在一系列任务中的成功表明,预训练语言模型引入的表示具有丰富的语义,尽管这些模型的性能不是最优的,导致 PeFT 继续作为最先进的方法没有额外的推理负担。

ReFT:方法论和架构

为了保持风格保存过程简单,ReFT 框架假设基于转换器的大型模型作为其目标模型,该模型能够生成标记序列的上下文表示。对于具有 n 个输入标记的给定序列,ReFT 框架首先将这些输入标记嵌入到表示列表中,随后 m 层根据先前隐藏表示列表的函数连续计算隐藏表示列表。每个隐藏表示都是一个向量,语言模型使用最终的隐藏表示来生成预测。 ReFT 框架同时考虑了屏蔽语言模型和自回归语言模型。现在,根据线性表示假设,在神经网络中,概念被编码在表示的线性子空间内。最近的模型发现这种说法在自然语言和其他输入分布训练的神经网络模型中是正确的。

此外,在可解释性研究中,随意抽象框架在实现特定行为时使用交换干预来随意建立神经网络组件的角色。交换干预背后的逻辑是,如果将一种表示固定为反事实输入的表示形式,并且这种干预会一致地影响模型的输出,就像 ReFT 框架对负责生成的组件所做的声明一样该表示,则该组件在行为中发挥因果作用。尽管有几种方法,但分布式交换干预是测试概念是否被编码在表示的线性子空间中的理想方法,正如线性表示假设所声称的那样。此外,DAS 方法之前已被用于寻找实体属性、情感、语言特征和数学推理的语言模型中的线性表示。然而,一些实验表明,DAS 方法具有很高的表达能力,即使 Transformer 语言模型是随机初始化的,它也具有找到因果有效子空间的能力,因此尚未学习任何特定于任务的表示,从而导致争论 DAS 对于可解释性任务是否有效且足够负责。

DAS 提供的表达能力表明,该方法可能是控制语言模型行为及其可控生成和负责任编辑工作的理想工具。因此,为了适应下游任务的语言模型,ReFT框架使用分布式交换干预操作来提出一种新的参数高效方法。此外,ReFT方法是一组干预措施,并且该框架强制要求对于在同一层上运行的任何两个干预措施,干预位置必须是不相交的,并且所有干预函数的参数保持独立。因此,ReFT 是一个通用框架,包含模型前向传递过程中对隐藏表示的干预。

ReFT:实验和结果

为了根据现有的 PEFT 框架评估其性能,ReFT 框架在四个不同的自然语言处理基准上进行了实验,并覆盖了 20 多个数据集,其主要目标是提供 LoReFT 框架在不同场景中的表现的丰富图片。此外,当 LoReFT 框架在现实生活中实施时,开发人员需要决定要学习多少干预措施以及应用每一项干预措施的输入位置和层。为了完成任务,ReFT 框架调整了四个超参数。

  1. 要干预的前缀位置的数量。
  2. 要干预的后缀位置的数量。
  3. 干预哪一组层。
  4. 是否将干预参数绑定到同一层的不同位置。

通过这样做,ReFT 框架简化了超参数搜索空间,并确保仅固定的额外推理成本,该成本不会随着提示的长度而扩展。

上表比较了 LLaMA-7B 和 LLaMA-13B 框架与现有 PEFT 模型在 8 个常识推理数据集上的准确性。可以看出,尽管参数少得多,LoReFT 模型的性能仍明显优于现有的 PEFT 方法,并且使用 LoReFT 模型的不同参数种子报告了三次运行的平均性能。 param(%) 是通过将可训练参数的数量除以基础大模型的总参数数量来计算的。

上表总结了 LLaMA-7B 和 LLaMA-13B 框架与 4 个不同算术推理数据集上的现有 PEFT 模型的准确性比较,该框架报告了使用不同随机种子的 XNUMX 次运行的平均性能。可以看出,尽管参数 (%) 少得多,但 LoReFT 框架的性能远远优于现有的 PEFT 框架。

上表总结了 RoBERTa-base 和 RoBERTa-large 框架与 GLUE 基准测试中现有 PEFT 模型的准确性比较,该框架报告了使用不同随机种子的五次运行的平均性能。可以看出,尽管参数 (%) 少得多,但 LoReFT 框架的性能远远优于现有的 PEFT 框架。

总结

在本文中,我们讨论了 LoReFT,它是现有 PEFT 框架的强大替代方案,可在四个不同领域的基准测试中实现强大的性能,同时提供的效率是之前最先进的 PEFT 模型的 50 倍。预先训练的大型模型通常经过微调以用于新的领域或任务,并且在微调过程中,即使只有少量的域内数据可用,单个基础模型也可以适应各种任务到模型。然而,微调整个模型的过程是消耗资源且昂贵的,特别是对于具有大量大小和参数的语言模型。参数有效的微调或 PeFT 方法建议通过仅更新少量可用的总权重来解决与微调整个模型相关的高成本,这一过程有助于减少训练时间和内存使用。值得注意的是,LoReFT 在常识推理、指令遵循和自然语言理解方面建立了新的最先进的性能,以对抗最强的 PEFT。

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

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

相关文章

tedsign vue3 web-端框架中封装一个验证码组件 以及对应node 接口逻辑说明

一个这样的组件 我直接上代码了 <template><t-loading size"small" :loading"loading" show-overlay><div class"container" click"refresh"><div v-if"svg" class"svg" v-html"svg&…

解锁LLMs的“思考”能力:Chain-of-Thought(CoT) 技术推动复杂推理的新发展

1.简介 Chain-of-Thought(CoT)是一种改进的Prompt技术&#xff0c;目的在于提升大模型LLMs在复杂推理任务上的表现&#xff0c;如算术推理&#xff08;arithmetic reasoning&#xff09;、常识推理&#xff08;commonsense reasoning&#xff09;、符号推理&#xff08;symbol…

数据结构--顺序表(图文)

顺序表的概念和特点 顺序表是一种线性数据结构&#xff0c;它由一组数据元素构成&#xff0c;这些元素具有相同的特性&#xff0c;并按照一定的顺序排列。在顺序表中&#xff0c;数据元素通常存储在连续的内存空间中&#xff0c;这使得通过索引可以直接访问到表中的任意元素。…

tiaoshixitong

data_interval : 当是ubus 时 重新赋值为 3&#xff1b;当是ws 时 重新赋值为 20&#xff1b; 1. 如何理解data_tik &#xff1f; 在函数can_packet_check_timer 定时can发送函数里面&#xff0c;data_tik 作为倒计时时间&#xff0c;当倒计时间到&#xff0c;则发送。…

Nuxt3页面开发实战探索

title: Nuxt3页面开发实战探索 date: 2024/6/19 updated: 2024/6/19 author: cmdragon excerpt: 摘要&#xff1a;这篇文章是关于Nuxt3页面开发实战探索的。它介绍了Nuxt3的基础入门&#xff0c;安装与配置&#xff0c;项目结构&#xff0c;内置组件与功能&#xff0c;以及页…

笔记本Win + v剪贴板打开失效问题解决

使用快捷键winv打开剪贴板时&#xff0c;突然没有了反应&#xff0c;原因是explorer.exe程序占用了winv键。解决方法&#xff1a; 1、管理员身份运行powershell 2、先杀掉explorer.exe程序&#xff1a;taskkill /f /im explorer.exe 3、重启explorer.exe程序 4、再使用winv …

变声方法大公开,变女声很自然的3款变声器推荐,值得收藏

将男声变成女声并且要很自然的变声器有吗&#xff1f;很多喜欢玩游戏的小伙伴们在进行游戏连麦时&#xff0c;可能为了增加趣味&#xff0c;想要试试变成女声来交流&#xff0c;或者喜欢视频剪辑创作的小伙伴们在进行视频配音时&#xff0c;不想用自己的声音出镜&#xff0c;需…

市值飙升!超微软、苹果,英伟达成为全球市值最高上市公司

KlipC报道&#xff1a;当地时间6月18日&#xff0c;英伟达股价再度大涨&#xff0c;盘后股价上涨3.51%&#xff0c;总市值达3.335万亿美元&#xff0c;报135.58美元再刷历史新高&#xff0c;超微软、苹果成为全球市值最高的上市公司。 值得一提的是&#xff0c;在本月初&#x…

vue3面试题八股集合——2024

vue3比vue2有什么优势&#xff1f; 性能更好&#xff0c;打包体积更小&#xff0c;更好的ts支持&#xff0c;更好的代码组织&#xff0c;更好的逻辑抽离&#xff0c;更多的新功能 描述Vu3生命周期 Options API的生命周期&#xff1a; beforeCreate: 在实例初始化之后、数据观…

Linux top 命令使用教程

转载请标明出处&#xff1a;https://blog.csdn.net/donkor_/article/details/139775547 文章目录 一、top 是什么二、top的基础语法三、top输出信息解读 一、top 是什么 Linux top 是一个在Linux和其他类 Unix 系统上常用的实时系统监控工具。它提供了一个动态的、交互式的实时…

云计算【第一阶段(16)】安装及管理程序

目录 一、linux 应用程序基础 1.1、应用程序与系统命令的关系 1.2、典型应用程序的目录结构 1.3、常见的软件包封装类型 二、RPM软件包管理工具 2.1、rpm命令的格式 2.2、安装&#xff0c;升级&#xff0c;卸载 rpm软件包 安装软件包 升级软件包 卸载软件包 查询软件…

Android OTA 升级基础知识详解+源码分析

前言&#xff1a; 本文仅仅对OTA升级的几种方式的概念和运用进行总结&#xff0c;仅在使用层面对其解释。需要更详细的内容我推荐大神做的全网最详细的讲解&#xff1a; https://blog.csdn.net/guyongqiangx/article/details/129019303?spm1001.2014.3001.5502 三种升级方式…

前端高级架构师课程(总共111门课程,1150GB)

由阿里P8前端架构师亲自精心筛选整理的全网最新最具价值的前端进阶学习课程&#xff01; 培训机构原版教程&#xff01; 课程知识点和一线大厂完美匹配&#xff01; 所有课程资源完整成套&#xff0c;不残缺&#xff0c;不拼凑&#xff0c;不拆开乱发&#xff01; 这系列课程包…

JavaScript-拓展简单和引用数据类型

学习目标&#xff1a; 掌握拓展简单和引用数据类型 学习内容&#xff1a; 拓展-术语解释拓展-基本数据类型和引用数据类型 拓展-术语解释&#xff1a; 拓展-基本数据类型和引用数据类型&#xff1a; 简单类型又叫做基本数据类型或者值类型&#xff0c;复杂类型又叫做引用类型…

如何快速在一台新电脑上安装 Python 环境

一、下载miniconda 1.下载 我们可以在清华大学开源软件镜像站下载最新版本的miniconda。如&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py38_4.9.2-Windows-x86_64.exe 2.安装 双击exe文件安装&#xff0c;如果没有特殊的需求&#x…

UML详解

1.what is the UML UML 全称是 Unified Modeling Language&#xff08;统一建模语言&#xff09;&#xff0c;它以图形的方式来描述软件的概念 2.它存在的目的 UML 的目标是通过一定结构的表达&#xff0c;来解决现实世界到软件世界的沟通问题。 3.什么是模&#xff0c;…

127.0.0.1与本机IP地址的区别

大家好&#xff0c;今天我们来聊聊一个在网络世界中常常被提及&#xff0c;但可能对于非专业人士来说还有些模糊的概念——127.0.0.1与本机IP地址。这两个地址在网络通信中都扮演着重要的角色&#xff0c;但它们之间又有着怎样的区别呢&#xff1f;让我们一起来探究一下。 一、…

《庆余年》在前,《玫瑰的故事》在后,阅文发现“新大陆”?

奋笔疾书的网文作家&#xff0c;即将迎来网络文学的高光时代。 近日&#xff0c;阅文集团于安徽省举办2024阅文创作大会。现场数据显示&#xff0c;2023年阅文活跃作家平均收入增长32%&#xff0c;创造近五年最大增幅。其中&#xff0c;中位数作家收入增幅达135%&#xff0c;已…

K8s的资源对象

资源对象是 K8s 提供的一些管理和运行应用容器的各种对象和组件。 Pod 资源是 K8s 中的基本部署单元&#xff0c;K8s通过Pod来运行业务应用的容器镜像 Job 和 CronJob 资源用于执行任务和定时任务&#xff0c;DaemonSet 资源提供类似每个节点上守护进程&#xff0c; Deployment…

Parallelize your massive SHAP computations with MLlib and PySpark

https://medium.com/towards-data-science/parallelize-your-massive-shap-computations-with-mllib-and-pyspark-b00accc8667c (能翻墙直接看原文&#xff09; A stepwise guide for efficiently explaining your models using SHAP. Photo by Pietro Jeng on Unsplash Int…