技术指南

线性注意力和表演者核

线性注意力用随序列长度线性缩放的数学技巧取代了 Transformers 中的二次 softmax 注意力。

概述

线性注意力用随序列长度线性缩放的数学技巧取代了 Transformers 中的二次 softmax 注意力。 Performer 是一种具有里程碑意义的方法,它使用随机特征内核来近似 softmax,使得非常长的序列在计算上是可以承受的。

线性注意力和执行者内核是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。

深入探讨

标准 Transformer 注意力计算每对标记之间的分数,花费的时间和内存随着序列长度的平方 (O(n^2)) 增长。线性注意力重写了计算,因此成本仅线性增长 (O(n))。关键思想:softmax注意力是softmax(QK^T)V,但是如果用内核特征图phi替换softmax,你会得到phi(Q)(phi(K)^T V)。由于矩阵乘法是关联的,因此您首先计算 phi(K)^T V (一个小的 d×d 矩阵),完全避免了巨大的 n×n 分数矩阵。 Performer,来自 2020 年的 Google,使用 FAVOR+(通过正正交随机特征进行快速注意力)使其成为真正的 softmax 的忠实近似,绘制随机投影以保持内核估计的无偏和稳定。

技术洞察

Performer 的 FAVOR+ 使用正随机特征来近似 softmax 内核 exp(q.k):它通过包裹在指数中的随机高斯投影映射查询和键,保证非负注意力权重并避免早期估计器的数值不稳定性。使用正交随机特征可以减少方差。至关重要的是,n×n 注意力矩阵从未具体化,因此内存从二次下降到线性,从而支持数万个标记的序列。

掌握线性注意力和表演者内核

线性注意力用随序列长度线性缩放的数学技巧取代了 Transformers 中的二次 softmax 注意力。 Performer 是一种具有里程碑意义的方法,它使用随机特征内核来近似 softmax,使得非常长的序列在计算上是可以承受的。线性注意力和执行者内核是一个技术构建块,会大规模影响模型质量、基础设施成本、延迟和可靠性。为了建立深入的理解,请将线性注意力和执行者内核视为一种操作模型,而不是单个功能:定义期望的结果,澄清假设,并将系统可以可靠地完成的任务与仍需要专家判断的任务分开。

在实践中,强大的团队使用线性注意力和执行者内核根据可靠性和成本优化架构、数据和基础设施选择。他们记录明确的成功标准,根据实际数据和工作流程进行测试,并根据观察到的失败模式而不是一次性基准测试胜利进行迭代。这就是理论理解转变为跨产品、政策和运营的持久能力的地方。

多年来,架构决策决定着性能和运营成本。与此同时,优化一个基准测试可以隐藏更广泛的系统弱点。最具弹性的方法是将实验速度与治理规则结合起来:运行试点、捕获证据、发布决策日志,并随着模型行为、用户期望和监管要求的发展不断更新保障措施。

战略影响

多年来,架构决策决定着性能和运营成本。

多年来,架构决策决定着性能和运营成本。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

更好的工程选择可以减少生产中的可靠性事故。

更好的工程选择可以减少生产中的可靠性事故。在高质量部署中,这会转化为可衡量的操作规则、所有权边界和定期审查仪式,以便团队可以增强信心,而不是扩大模糊性。

线性注意力和表演者内核的未来

纯线性注意力通常在质量上落后于 softmax,因此该领域正在向混合型方向发展:状态空间模型 (Mamba)、门控线性注意力以及将一些全注意力层与许多线性注意力层混合在一起的架构。随着上下文窗口向数百万个令牌推进,线性和次二次机制对成本越来越有吸引力,并且正在重新审视循环式线性注意力以实现高效的流式推理和设备上模型。

现实世界的实施

处理长基因组或蛋白质序列,其中完全二次注意力会耗尽 GPU 内存

使用 Performer 风格的主干,对很长的报告进行文档级摘要,无需分块

高效的长格式音频或时间序列建模,其中序列跨越数万个步骤

通过用线性注意力变体替换一些 softmax 层来降低长上下文聊天模型中的推理成本

实施模式

实践中的线性注意力和表演者核

处理长基因组或蛋白质序列,其中完全二次注意力会耗尽 GPU 内存。

处理长基因组或蛋白质序列,其中完全二次注意力会耗尽 GPU 内存。当团队预先定义质量阈值、为边缘情况保留人工升级路径并跟踪一段时间内的生产力增益和错误成本时,通常会得到更好的结果。

实践中的线性注意力和表演者核

使用 Performer 风格的主干,对很长的报告进行文档级摘要,无需分块。

使用执行者风格的主干,对很长的报告进行文档级摘要,无需分块。当团队预先定义质量阈值、为边缘情况保留人工升级路径并跟踪一段时间内的生产力增益和错误成本时,通常会获得更好的结果。

实践中的线性注意力和表演者核

高效的长格式音频或时间序列建模,其中序列跨越数万个步骤。

高效的长格式音频或时间序列建模,其中序列跨越数万个步骤当团队预先定义质量阈值、为边缘情况保留人工升级路径并跟踪一段时间内的生产力增益和错误成本时,通常会获得更好的结果。

实践中的线性注意力和表演者核

通过用线性注意力变体替换一些 softmax 层来降低长上下文聊天模型中的推理成本。

通过用线性注意力变体替换一些 softmax 层来降低长上下文聊天模型中的推理成本当团队预先定义质量阈值、为边缘情况保留人工升级路径并随着时间的推移跟踪生产力增益和错误成本时,通常会获得更好的结果。

风险与防护栏

!

优化一项基准测试可以隐藏更广泛的系统弱点。

!

基础设施和维护成本常常被低估。

!

随着系统变得更加复杂,安全性和可观察性差距可能会扩大。

实施路线图

1

在实施之前定义延迟、质量和成本目标。

在实施之前定义延迟、质量和成本目标。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

2

在实际负载和数据条件下进行基准测试。

在实际负载和数据条件下进行基准测试。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

3

仪器监控错误、漂移和用户影响。

仪器监控错误、漂移和用户影响。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

4

在扩展之前准备回滚和事件响应路径。

在扩展之前准备回滚和事件响应路径。将每个步骤视为证据门:如果不满足标准,则暂停推出,缩小差距,然后再扩大使用。

不断探索