打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
人大高瓴提出“注意力波”方法,70 亿参数 Llama 比肩 GPT-4
 大数据文摘受权转载自夕小瑶科技说
 作者 | 智商掉了一地、python

最近,随着大型语言模型(LLM)在人机交互、多模态任务和语言应用等领域的广泛应用,研究者们纷纷致力于提升这些模型在处理复杂上下文时的性能。
来自人大高瓴的作者以一种新的视角出发,着眼于注意力机制在上下文中不同位置的关注程度,就好像木桶里的水在不同木板上停留或流动一样。作者将模型在每个角度基准处对上下文中特定位置的有限认知比作木桶上的较短木板,这些木板的长度不同反映了模型对不同位置的关注程度。形象地说,一个位置的注意力波可能表现为槽,而另一个位置可能表现为峰,就像木桶中的较长木板弥补了较短木板的缺陷。
为了解决语言模型在处理复杂上下文时的局限性,作者提出了 Attention Buckets 这一概念,旨在通过不同角度的处理方式来弥补注意力机制的局限性,从而提高对多个上下文位置的关注,使得模型能够更全面、更灵活地理解和处理复杂的上下文信息,降低 LLM 错过注意力槽内关键信息的风险。在实验中,甚至当 Attention Buckets 与 DFSDT-Retriever 设置配对时,不仅与 GPT-4 的性能水平相匹配,而且在许多情况下有所超越。
论文题目:
Fortify the Shortest Stave in Attention: Enhancing Context Awareness of Large Language Models for Effective Tool Use
论文链接:
https://arxiv.org/abs/2312.04455
GitHub 地址:
https://github.com/AlibabaResearch/DAMO-ConvAI/attention-buckets

什么是注意力波?

注意力波是指模型在处理上下文时,注意力分数的波动模式,即在 Softmax 操作之前的注意力分数波动。这表示在输入序列的不同位置上,模型对信息的关注程度不固定,而是随着位置的变化而波动。
注意力分数的波动与具体单词或语义内容无关,更加关注模型对位置的关注程度,而非具体内容。
通过观察注意力波,可以确定在波峰和波槽中关键信息的位置。如果关键信息恰好位于波槽中,模型可能在该位置上的关注较低,有可能导致性能下降。

旋转位置嵌入(RoPE)

旋转位置嵌入(RoPE):是一种在具有 Transformer 基础架构的 LLM 中进行位置编码的技术。

RoPE 的构造:通过维度为  的旋转矩阵将位置信息编码到向量中。这个矩阵表示为,其中  是旋转角度, 是位置。矩阵  被构造为分块对角矩阵,由维度为 2×2 的块组成,共有  个这样的块。
具体而言,每个块定义为:
其中  为旋转角的基。
在每个 Transformer 层中,RoPE 通过将旋转矩阵乘以位置  处的键(Key)向量  和位置  处的查询(Query)向量 ,将相对位置纳入它们的内积(Softmax 之前的注意力分数)中。
当相对距离  增加时,Softmax 之前的注意力分数上限表现出长期衰减的趋势,即该值随着相对距离的增加而普遍减小。这种趋势伴随着一个波,如图 1(b) 所示。
作为 LLM 中广泛使用的位置嵌入技术,RoPE 在包括对模型的外推、高效的长上下文模型训练和更好地理解训练数据等方面,都有着不错的表现。
提出 Attention Buckets

作者设计实验,通过改变目标键在上下文中的位置来观察模型的行为。如图 1(a) 所示,当目标键在上下文中的位置发生变化时,观察到生成值(Value)的准确性发生明显的变化。此外,他们还观察到注意力分数的上限呈波形模式,在图 1(b) 中,注意力波显示了模型在处理上下文时对不同位置的关注程度随着位置的变化而波动。

▲图1 在不同位置的目标键对于模型性能有显著影响

作者认为 LLM 在处理上下文时存在关键细节被忽略的风险,特别是当关键信息位于注意力波的槽区域时。通过将关键信息从这些槽区域移出,可以降低模型错过关键细节的风险。

为实现 Attention Buckets,作者选择修改 Relative Positional Encoding(RoPE)的旋转角度基准。RoPE 是影响波形模式的关键因素,通过调整它来改变注意力分配的模式。使得不同的注意力分配,让每个执行中的 LLM 能够关注多个上下文位置。

假设验证

作者设计了一项上下文检索测试,根据生成的值的准确性评估模型的上下文意识,图 2 为测试示例,模型要从较长的上下文中检索正确的键并精确生成它。

▲图2 生成给定键的值的任务说明

表 1 的实验结果表明,随着 RoPE 基数的变化,模型的性能呈现出一个初期上升然后下降的趋势。这表明 RoPE 基数的选择对于模型性能具有影响,此外,最佳的 RoPE 基值因上下文长度而异。

▲表1 上下文键值检索的结果
  • 结论:增强对位于注意力波槽中的信息关注可以使大型语言模型的上下文意识鲁棒性更强,并有可能提高整体性能。
  • 挑战:在实际应用中,确定关键信息的准确位置是一项困难的任务。这使得选择确保对关键信息关注的 RoPE 基数具有挑战性,因为不同上下文长度可能需要不同的最佳基值。

    通过交错的注意力波增强上下文意识
给定输入上下文 C,将其复制为 N 份形成一个 batch,以便让 LLM 能够同时处理多个并行任务。在每个并行处理中,每个副本使用来自基本集合  的不同 RoPE 基数  进行独立处理,生成与词汇 V 相关的 N 个相应的预测分布 p。
作者选择  的目的是确保在一个并行处理中,如果注意力波的槽在一个副本中,它将在另一个副本中由峰值进行补偿。这有效地降低了 LLM 在注意力槽中遗漏关键信息的风险。
假设在由索引 j 标识的并行运行中,如果模型能够将注意力集中在当前需要的关键信息上,那么它在回复 R 中的下一个 token 上的准确预测置信度  将更高。计算每个运行的输出分布  的加权和,得到最终的预测分布 
最终,从  中解码出预测的 token,这个 token 被合并到先前的上下文中,形成一个自回归的过程,直到当前轮次结束。通过这种并行处理和加权策略,旨在提高 LLM 在处理多个任务时的整体性能。

搜索

  1. 初始化阶段: 在搜索的初始阶段,将  初始化为包含一个基本基数,即 
  2. 迭代搜索过程: 在接下来的  次迭代中,进行搜索以确定要包含在  中的候选基。每轮搜索考虑候选基的峰值位置与已存在于  中的基的波形槽位置的接近程度,旨在确保候选基的波形槽与现有基的波峰值对齐。
  3. 搜索标准: 有两个关键标准来选择候选基:
    • 峰值和槽的接近程度: 候选基的峰值位置应该与已存在基的波形槽位置接近。
    • 波对齐: 候选基的槽应该与现有基的波峰值紧密对齐。
  4. 选择最佳候选基: 根据上述标准,选择与这些标准最符合的候选基,并将其合并到  中。
具体如算法 1 所示,通过这种搜索算法,可以动态调整 ,以确保它包含对于当前任务和上下文环境最为有效的基本集合
▲算法1  的搜索算法
算法 1 的可视化如图 4(a) 展示,可以直观地了解 RoPE 基数搜索的运行方式,以及在搜索过程中如何选择最优的基本集合 。图 4(a) 突显了在不同基之间的距离计算,而图 4(b) 通过平行四边形形象地描绘了注意力波的交织情况。
▲图4 RoPE 基数搜索和注意力分数的描绘
实验
实验用评估 LLM 工具使用熟练度的大型基准 Toolbench,使用两个评估指标:
  • 通过率:评估有多少用户的提问得到了满足。
  • 胜率:由 ChatGPT 确定,评估模型的解决方案相对于 ChatGPT-ReACT 提供的解决方案的优越性。
表 2 呈现了在 ToolBench 上的工具使用性能实验结果。Attention Buckets 在 ToolBench 基准测试中取得了 SOTA 结果,显示了其在工具使用性能上的卓越表现。
▲表2 在 ToolBench 上的工具使用性能
当 Attention Buckets 与 DFSDT-Retriever 设置配对时,该方法不仅与 GPT-4 的性能水平相匹配,而且在许多情况下有所超越。而且具有多功能性和兼容性,适用于不同的推理方法。
利用检索增强生成的应用探索
作者用一个开放域问答(ODQA)任务探索 Attention Buckets 的有效性和通用性。

ODQA 实验

如表 3 的实验结果所示,通过使用 Attention Buckets 方法增强 Llama-2-7B,可以在 ODQA 任务中取得显著的性能提升,甚至超越专门设计的 ODQA 模型 FiD-XL。这表明 Attention Buckets 对于提高语言模型在特定问答任务中的性能具有潜力。
▲表3 NQ 和 WebQ 上的准确性

 消融

为评估  对搜索算法效果的影响,作者进行了一项消融研究,考虑到成本问题使用 NQ 数据集,实验结果如表 4 所示:
▲表4 由不同搜索算法搜索得到的基值
作者对各种  变体进行比较,并通过图 5 展示了它们之间的准确性差异。实验结果支持了组合基值在  中的有效性,并提出了在搜索算法中选择 N( 的大小)和 T(搜索步长/粒度)以提高准确性的重要性。这种差异可为进一步优化搜索算法提供指导。
▲图5 单基值、BA.S.和由算法 1 搜索得到的 之间的准确性差异

总结

本文作者提出的 Attention Buckets 方法,通过将关键信息移到注意力波的不同区域,提高了对上下文的理解和工具使用的效果。
模型以不同的角度基准处理上下文,类似于一个桶中的较长木板补偿另一个桶中的较短木板,一个注意力波的槽由另一个注意力波的峰强化。
这种独特的思路让我们更深入地理解了 LLM 在复杂上下文中的表现,并通过实验证明了这一方法的有效性。期待这项研究能够启发更多对语言模型潜力的挖掘,为未来的研究和应用提供更多可能性~


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
全新近似注意力机制HyperAttention:对长上下文友好、LLM推理提速50%
科普神文,一次性讲透AI大模型的核心概念
ChatGPT以及其对汽车有什么影响?
万字长文!何谓Agent,为何Agent?
Transformer的上下文学习能力是哪来的?
经逆向工程,Transformer「翻译」成数学框架 | 25位学者撰文
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服