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

超长上下文处理:基于Transformer上下文处理常见方法梳理

原文链接:芝士AI吃鱼

目前已经采用多种方法来增加Transformer的上下文长度,主要侧重于缓解注意力计算的二次复杂度。

例如,Transformer-XL通过缓存先前的上下文,并允许随着层数的增加线性扩展上下文。Longformer采用了一种注意力机制,使得token稀疏地关注远距离的token,从而降低计算复杂度。BigBird和LongT5也利用稀疏注意力机制来处理长序列。Hourglass通过对中间层的激活单元进行下采样,以减少计算量并实现更长的上下文。COLT5提出了条件计算的方法,以节省内存并实现更大的上下文。Memorizing Transformer使用k近邻查找来选择最相关的token,这也可以看作是减少注意力计算复杂度的一种方式。

我们的工作遵循了Memorizing Transformer的方法,旨在训练一个能够处理更长注意力上下文长度的模型(例如,通过缓解分心问题),从而具有更好的长上下文处理能力。

针对更长的上下文微调LLM。之前的工作,如RETRO和Memorizing Transformer,已经展示了一条有前途的道路,可以在不需要重新训练整个模型的情况下微调现有的LLM以添加新的功能。

最近,一些工作已经探索了通过微调LLaMA来增加其上下文长度。Landmark attention提出了一种将LLM的上下文压缩成landmarks的压缩方案,将LLaMA-7B的上下文长度增加到32K。

位置插值引入了对旋转位置编码方案的修改,使其能够微调32K上下文。与这项工作相比,我们的方法不依赖于位置编码,通过在内存中删除位置编码使我们能够推广到256k个token,尽管该模型只在长度为8K的序列上进行了训练,但依然产生了理论上无限的上下文长度。

对比学习。对比学习旨在通过比较正负样本来学习得到更好的表征。CLIP和SimCLR是两种在图像领域取得最先进性能的流行对比学习方法。

在对比预训练期间,负样本被保留在同一批次中,通过学习将它们与正样本区分开。在对比学习中扩展批次大小已被证明可以提高表征的质量,而且一些研究人员也发现语言建模过程中的嵌入空间很容易遭受退化,其中嵌入会被紧密地压缩在一个狭窄的锥体中,使得难以区分它们。TRIME提出了一种训练方法,旨在训练具有记忆增强功能的语言模型,它使用batch内的负样本来提高表征的质量。

注意力集中的Transformer(Focused Transformer,FoT)是Transformer模型的一个简单的即插即用扩展,既可以用于训练新模型,也可以用于微调现有的具有更长上下文的大模型。为此,FoT使用记忆注意力网络(memory attention layers)和跨批次训练。如图2所示,记忆注意力网络使模型能够在推理时从外部内存中检索信息,有效地扩展了上下文。跨批次训练过程使模型倾向于学习key-value的表征,这些表征可以很容易被记忆注意力网络使用。

http://www.lryc.cn/news/94635.html

相关文章:

  • ChatGPT爆火 但生成式AI并非全新产物
  • 深度学习循环神经网络
  • 如何规范的设计数据库表
  • 【CSS】跳动文字
  • arm海思启动udev的错误
  • 网络协议与攻击模拟-15-DNS协议
  • ChatGPT将改变教育,而不是摧毁它
  • springboot在线考试
  • C国演义 [第三章]
  • 数字化时代,企业的数据指标体系
  • 三分钟了解 RocketMQ消息队列
  • golang redis第三方库github.com/go-redis/redis/v8实践
  • 校园网WiFi IPv6免流上网
  • java 阿里云直播配置及推拉流地址获取
  • PostgreSql 限制
  • 2023年java还是golang还是c#?
  • 微服务、SpringBoot、SpringCloud 三者的区别
  • 2023-07-10 cmake管理的项目中使用vcpkg管理第三方库
  • 【剑指offer】学习计划day3
  • QT DAY1
  • Mybatis-puls——条件查询的三种格式+条件查询null判定+查询投影
  • 网络安全(黑客)自学
  • 通过一个实际例子说明Django中的数据库操作方法OneToOneField()的用法【数据表“一对一”关系】
  • HarmonyOS学习路之开发篇—数据管理(对象关系映射数据库)
  • 实验:验证TCP套接字传输的数据不存在数据边界
  • 【网络】协议的定制与Json序列化和反序列化
  • 浙大数据结构第一周最大子列和问题
  • Selenium基础 — Selenium自动化测试框架介绍
  • 力扣竞赛勋章 | 排名分数计算脚本
  • win10 远程 ubuntu 18.04 桌面