【论文解读】在上下文中学习创建任务向量

一、简要介绍

大型语言模型(LLMs)中的上下文学习(ICL)已经成为一种强大的新的学习范式。然而,其潜在的机制仍未被很好地了解。特别是,将其映射到“标准”机器学习框架是具有挑战性的,在该框架中,人们使用训练集S在某些假设类中找到最佳拟合函数f (x)。在这里,论文通过展示ICL学习到的函数通常有一个非常简单的结构:它们对应于transformerLLM,它的唯一输入是查询x和从训练集计算出的单个“任务向量”。因此,ICL可以看作是将S压缩为一个单个的任务向量θ(S),然后使用这个任务向量来调制transformer以产生输出。论文通过对一系列模型和任务的全面实验来支持上述主张。

二、研究背景

大型语言模型在过去的几年中有了显著的改进。这些模型的一个显著特性是,它们可以从很少的演示中学习新的规则。例如,一个模型可以提示输入“苹果→红色,石灰→绿色,玉米→”,并产生输出“黄色”。因此,该模型仅学习了一个基于两个例子的映射,它可以正确地应用于新的例子。这种能力,被称为上下文学习(ICL),已被广泛使用,产生了令人印象深刻的实证结果。

目前还不清楚ICL是否以这种方式运行,因为预测是通过T([S,x])执行的,其中T通常是一个自回归transformer,而[S,x]是S和x中的令牌的连接。因此,在一般情况下,它可以是一个任意的函数,通过这个函数来产生输出。这可以包括“非参数”方法,如最近邻方法。最近的工作已经开始探索这个问题。例如,研究表明,当从头训练transformer在上下文中执行线性回归时,新兴的学习算法类似于随机梯度下降。然而,对于执行更复杂的自然语言任务的LLM,论文根本不清楚假设空间可能是什么。

论文的观点也与软提示有关,因为这两种方法都针对特定的任务调节transformer的功能。然而,在ICL中,任务向量是通过正向传递来计算的,而不是进行微调。

论文的贡献包括提出一个基于假设类的ICL机制观点,并进行实验来验证论文对一系列公开的LLM和一组不同的任务的看法。论文的研究结果进一步加深了对ICL的理解,并可能对LLM有效适应执行特定任务具有实际意义。

三、ICL的假设类视图(A Hypothesis Class View of ICL)

受学习理论的假设类观点的启发,论文的目标是了解ICL是否将演示集S映射到查询x上的一个函数,以及这个映射是如何发生的。具体来说,论文试图看看ICL是否将S转换为θ——某个假设空间内的函数的“参数”。论文的实证研究结果表明,这一观点是适用的,阐明了假设空间的结构,其中ICL可以被看作是运作的。

3.1理论框架

论文使用T表示仅限解码器的transformerLLM,S表示用作ICL输入的演示集(即训练示例)集,x表示要求ICL提供输出的查询。论文使用T([S,x])来表示ICL在S和x的连接上的输出。

为了证明ICL在一个假设空间内运作,论文的目的是证明其潜在的机制可以分为两部分:

一种“学习算法”(用A表示),它将S映射到一个“任务向量”θ,独立于查询x。考虑到注意层可以同时访问S和x,这种独立性并非简单。

一个“规则应用程序”(用f表示),它基于θ≡A (S)将查询x映射到输出,而不直接依赖于S。同样,这种独立性并非简单。

因此,论文考虑从一组演示和查询到预测输出的以下映射:

3.2一个被提出的假设类

上述框架有许多可能的实现,它们对应于A和f的不同选择。接下来,论文将描述论文所关注的实现,这自然地遵循transformer架构。论文考虑一个如图1所示的ICL设置,其中输入以一个查询x(即Corn)结束,后面跟着一个“→”符号。如上所述,论文认为学习由两个步骤组成:基于训练样本S计算一个参数向量θ,并将由该参数向量定义的规则应用于查询x。对于transformer来说,一个大概简单的方法是让→表示的第一个L层计算θ,然后让剩下的层将θ和x作为输入并产生一个输出。见图1。回想一下,S和x在任何层都可以访问transformer,这对论文的观点是一个挑战。

在下面的章节中,作者将解决这个挑战,并提出实验来验证论文的观点。也就是说,论文证明了可以在执行ICL的LLMs的正向传递中隔离A和f。论文还表明,θ向量是可解释的,并对应于学习到的任务。

四、假设类视图的有效性(Validity of the Hypothesis Class View)

论文首先证明,将前向传递分离成3.2中定义的两个不同的分量A和f,保持了ICL的高精度。

4.1分离A和f

论文在常规的正向传递中面临着一些挑战:首先,对应于A的初始L层,更新→的表示来创建θ,可以处理查询x。因此,它们可能依赖于x,产生θ对x的不必要的依赖。第二,对应于f的其余层可以直接访问S,而不是只使用x和θ。

4.2任务和模型

论文考虑了横跨4个类别的18个任务:算法、翻译、语言和事实知识。为简单起见,论文将自己限制在单令牌输出中。在表1中描述了这些任务的一个具有代表性的子集。A.1提供了一个完整的详细表,以及关于数据的更多信息。

论文使用多个开放LLMs: LLaMA 7B、13B、30B和Pythia 2.8B、6.9B和12B。

4.3查找L

论文在3.2中描述的机制有一个自由参数——a结束和f开始的L层。论文使用不同选择L的(A,f)实现,并在开发集上评估准确性,以找到最佳层。

图3显示了L不同选择的开发集上的精度。论文在这里关注LLaMA模型。有趣的是,所有模型在相似的中间层都表现出性能峰值,而不管它们的参数和层数差异。

4.4基于假设的预测的准确性

接下来,论文比较(A,f)机制与执行ICL的准确性。对于每个模型和任务,论文评估了以下三个过程:

常规:LLM对演示S和查询x的应用程序。即T([S,x]),如常规ICL。

假设:论文从4.1中提出的过程,其中A使用一个虚拟x'生成θ,f(·;θ)通过在[x,→]上运行transformer,并在→的L层打θ补丁。

基线:LLM仅在x上的向前传递,没有演示s,即T([x,→])。这与论文分离的程序中f的应用相同,但没有修补θ。

图4显示了每个模型的所有任务的平均精度。完整的结果将在表6和A.2中报告。在所有模型中,论文的程序保持了常规ICL的80-90%左右的准确性,而基线仅达到10-20%。这表明论文提出的A和f分离提供了ICL的过程很好的经验近似。

五、任务向量的鲁棒性(Robustness of Task Vectors)

在论文的设置中,θ来自于S和一个虚拟查询x'。检查θ对这些输入的变化的鲁棒性是很自然的。直观地说,如果它代表任务,它应该在不同的S和x'值之间保持稳定。

为了验证这一点,论文使用LLaMA 7B生成每个任务50个不同的任务向量,并进行了两次分析。

θ的几何形状 t-SNE降维(图5)显示,任务向量形成了不同的集群,每个集群都包含单个任务的任务向量。图9进一步显示了同一类别任务之间的接近性,强化了它们封装任务理解的概念。

θ的可变性 图8显示了任务内和任务之间的距离的直方图。可以看出,同一任务中的向量比不同任务之间的向量更接近,说明θ在任务中是稳定的,不受x'或S的高度影响。

六、θ补丁的控制(Dominance of θ Patching)

论文阻止f直接访问S。然而,在ICL的常规向前传递中,最后一个令牌可以注意到S。论文验证了即使在这种情况下,f主要使用任务向量θ,而没有直接访问演示S。论文使用一对任务,a和B,共享输入空间但不同的输出。论文首先使用一个“常规”向前传递,其中论文为模型提供了任务A(表示为SA)的演示S,以验证模型是否可以使用ICL执行这个任务。然后,论文做一个“冲突”向前传递,仍然提供SA,同时注入θB。详见A.1中的图6。

在表2“常规”向前传递在任务A上显示出较高的准确性(90%+)。然而,“冲突”向前传递在任务B上产生较高的精度,对应于注入的任务向量θ。这意味着该模型主要依赖于θ,在很大程度上忽略了任务A的演示S。论文注意到任务B的准确性略低,可能与图6中看到的性能下降一致,并可能进一步受到S的影响。

七、解释θ(Interpreting θ)

学习到的向量θ直观地捕获了关于S所证明的任务的信息。在这里,论文提供了支持这种解释的证据。由于θ是transformer的中间隐藏状态,论文可以使用词汇投影方法。也就是说,论文检查了由隐藏状态引起的词汇表分布中的顶部令牌。

表3显示了LLaMA 13B的三个任务的顶部令牌(图7中提供了更多的模型和任务。)。在多种情况下,论文会观察到直接描述任务的令牌。重要的是,这些术语从未明确地出现在上下文中。例如,在从法语到英语的翻译任务中,论文观察到诸如“英语”和“翻译”等标记。这支持了论文的观点,即θ携带关于任务的典型的、重要的语义信息。

八、结论

通过对LLM中ICL的探索,论文揭示了ICL学习机制的新视角。论文揭示了一个简单而优雅的结构: ICL通过将给定的训练集压缩为一个单一的任务向量来实现函数,然后指导transformer生成给定查询的适当的输出。论文的工作为理解LLM如何执行ICL提供了一个垫脚石。根据论文的发现,未来的工作可以集中在理解如何构造任务向量,以及如何使用它来计算输出。

九、附录

见原文:https://arxiv.org/abs/2310.15916

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视频录制工具有哪些?收藏起来,需要的时候用起来

视频录制工具顾名思义:用于捕获视频片段的软件。使用视频录制工具,你可以创建属于自己的视频内容。市面上的录屏工具五花八门,有哪些才是适合自己的呢? 虽然有许多视频录制工具可供选择,甚至有很多是免费的&#xff0…

智安网络|如何最大限度地提高企业网络安全水平

在当今数字化时代,企业面临着日益复杂和智能化的网络威胁。为了保护企业的机密信息和客户数据,漏洞扫描成为了一个至关重要的安全措施。然而,对于企业来说,他们最关心的是什么问题呢? 一、漏洞的发现和修复 在网络安全…

SOAP 协议和 HTTP 协议:深入解读与对比

SOAP 和 HTTP 协议 SOAP 协议 SOAP( Simple Object Access Protocol)是一种用于在节点之间交换结构化数据的网络协议。它使用XML格式来传输消息。它在 HTML 和 SMTP 等应用层协议的基础上进行标记和传输。SOAP 允许进程在整个平台、语言和操作系统中进…

【ChatGLM3-6B】Docker下部署及微调

【ChatGLM2-6B】小白入门及Docker下部署 注意:Docker基于镜像中网盘上上传的有已经做好的镜像,想要便捷使用的可以直接从Docker基于镜像安装看Docker从0安装前提下载启动访问 Docker基于镜像安装容器打包操作(生成镜像时使用的命令&#xff0…

火爆火爆!影响超250万读者,Python入门圣经全新升级!

人生苦短,快学Python! 什么?你没用过,也没开始学习,甚至没有认真了解过这门语言?那你一定这一秒就开始发力——下面让我们先简单看看 Python 有多火。权威编程语言排行榜 TIOBE,2022 和 2023 都…

案例015:Java+SSM+uniapp基于微信小程序的校园防疫系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

化学气相沉积(CVD)中的TEOS

在半导体制程中,薄膜的沉积是核心的步骤之一,有接触过CVD的小伙伴应该或多或少听过TEOS这种物质,TEOS作为一种重要的沉积源,尤其在低温氧化硅的生成过程中,发挥了无可替代的角色。今天我们就来聊聊这种物质。 什么是TE…

勒索病毒:数字化时代的“黑帮敲诈”,如何防范避免成为下一个受害者?

近日,加拿大政府披露了一起重大黑客攻击事件。据官方消息,两家政府承包商BGRS和SIRVA Canada沦为黑客攻击目标,导致数量不明的政府雇员敏感信息泄露。此次泄露的信息不仅涉及普通政府雇员,还牵扯到加拿大皇家骑警(RCMP…

【论文阅读笔记】Smil: Multimodal learning with severely missing modality

Ma M, Ren J, Zhao L, et al. Smil: Multimodal learning with severely missing modality[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2021, 35(3): 2302-2310.[开源] 本文的核心思想是探讨和解决多模态学习中的一个重要问题:在训练和测…

Mobaxterm 使用lrzsz传输文件(rz/sz)

Mobaxterm 使用lrzsz传输文件报错 1. 现象 最近从xshell切换到Mobaxterm其他一切正常,就是使用rz传输文件时会出现错误,比较苦恼. 会出现以下错误 [rootcentos7 rpmbuild]# rz ▒CCCCCCCCCCC23be50ive.**B0100000023be502. 解决方法 去官网(https://mobaxterm.mobatek.net…

136. 只出现一次的数字

136. 只出现一次的数字 题目: 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空…

【超详细】手搓一个微信日记本

🎀 文章作者:二土电子 🌸 关注公众号获取更多资料! 🐸 期待大家一起学习交流! 这里对之前的微信记事本小程序进行了重新编写,增加了更加详细的步骤描述,将全部图片都改成了本地图…

VMware vShere download

VMware 前言 VMware vSphere 是 VMware 的虚拟化平台,可将数据中心转换为包括 CPU、存储和网络资源的聚合计算基础架构。vSphere 将这些基础架构作为一个统一的运行环境进行管理,并为您提供工具来管理加入该环境的数据中心。 vSphere 的两个核心组件是 ESXi 和 vCenter Ser…

css图片缩放属性object-fit说明

object-fit 属性可以设置以下值: 属性值说明例子fill填充容器,可能会改变图片的比例。object-fit: fill;contain保持图片的原始比例,确保图片完全包含在容器内。object-fit: contain;cover保持图片的原始比例,确保图片覆盖整个容…

OpenMLDB SQL 开发调试神器 - OpenMLDB SQL Emulator

今天为大家介绍一款来自 OpenMLDB 社区的优秀独立工具 - OpenMLDB SQL Simulator(https://github.com/vagetablechicken/OpenMLDBSQLEmulator) ,可以让你更加高效方便的开发、调试 OpenMLDB SQL。 为了高效的实现时序特征计算,Op…

将对象转成URL参数

背景 有的时候前端跳转到其他平台的页面需要携带额外的参数,需要将对象转成用 & 连接的字符串拼接在路径后面。 实现方法

使用 pycryptodome 代替 pycrypto 2.6.1

老板认为加班是解决bug的良方,我的枕头却不这么认为。在这个被数字化和快速创新的时代,技术问题和bug是不可避免的。 老板建议我们继续加班,直到找到一个解决方案。然而,我有一个更好的建议:我们应该使用pycrypt…

下一代ETL工具:微服务架构的全新数据集成平台

当前对于大型企业来说数据的整合和加工变得越来越重要。随着业务需求的不断增长,企业数据量越来越大,数据管道越来越多,现有的ETL(抽取、转换、加载)工具已不再满足实时、高性能和微服务架构等现代化需求。因此&#x…

用EasyAVFilter将网络文件或者本地文件推送RTMP出去的时候发现CPU占用好高,用的也是vcodec copy呀,什么原因?

最近同事在用EasyAVFilter集成在EasyDarwin中做视频拉流转推RTMP流的功能的时候,发现怎么做CPU占用都会很高,但是视频没有调用转码,vcodec用的就是copy,这是什么原因呢? 我们用在线的RTSP流就不会出现这种情况&#x…

性能优化中使用Profiler进行页面卡顿的排查及解决方式

文章目录 一、前言二、页面卡顿的排查方式1、耗时操作的监控2、页面卡顿的监控 三、参考链接 一、前言 程序的优化在做过线上bug处理,布局层级优化,项目依赖库版本更新,重复库合并,删除未使用的资源,删除冗余的库&…