八年来,Google首次挑战transformer模型,新框架一战成名

B站影视 2025-01-17 19:37 2

摘要:Transformer 模型是一种基于注意力机制的深度学习模型架构,首次在论文 “Attention is All You Need” 中提出。它主要用于处理序列数据,例如自然语言文本。与传统的循环神经网络(RNN)相比,Transformer 模型能够并行处

transformer 模型

Transformer 模型是一种基于注意力机制的深度学习模型架构,首次在论文 “Attention is All You Need” 中提出。它主要用于处理序列数据,例如自然语言文本。与传统的循环神经网络(RNN)相比,Transformer 模型能够并行处理序列中的所有元素,从而提高了训练效率和性能。

Transformer 的主要组成部分:

编码器(Encoder): 将输入序列转换为一个高维的向量表示,捕捉序列中的上下文信息。解码器(Decoder): 根据编码器的输出和已生成的序列,逐步生成输出序列。注意力机制(Self-Attention): 是 Transformer 的核心,它可以让序列中的每个元素都与其他元素进行交互,从而捕获它们之间的关系。

transformer 模型注意力机制

Transformer 的优点:并行计算: Transformer 模型允许对序列中的所有元素进行并行计算,显著缩短了训练时间。长距离依赖: 通过注意力机制,Transformer 模型能够捕捉序列中远距离元素之间的依赖关系,克服了 RNN 模型在长序列上的不足。强大的表示能力: Transformer 模型能够学习到丰富的上下文信息,从而在各种自然语言处理任务上取得卓越的性能。可扩展性: Transformer 模型结构简单,易于扩展,可以通过增加模型的层数、维度和注意力头数来提高模型的性能。

动画详解 transformer 模型

虽然 transformer 模型打破了传统的 RNN 循环神经网络模型,但是随着模型参数的增加,transformer 模型也慢慢体现出了自身条件的缺点。

Transformer 模型的缺点:

计算复杂度高: Transformer 模型的计算复杂度与序列长度呈平方关系,这使得它在处理非常长的序列时变得非常耗时和耗资源。内存占用高: 由于需要存储注意力矩阵,Transformer 模型在处理长序列时需要大量的内存。长度外推性差: Transformer 模型在训练过程中通常会限制输入序列的长度,导致模型在处理更长的序列时性能下降。无法有效利用历史信息: Transformer 的注意力机制主要关注当前上下文窗口,难以有效利用较远的历史信息。

从 transformer 模型发布后,至今也有 8 年时间了,8 年间,transformer 模型一跃成为了 AI 大模型的核心框架,虽然 transformer 模型存在一定的缺点,但是并没有一个更好的框架来取代 transformer 模型,因此主流的 LLM 大语言模型,甚至很多计算机视觉模型都是采用了 transformer 模型,当然,随着模型的使用,人们也相继推出了相关 transformer 模型的改善。

大模型不可能三角

线性注意力: 为了降低计算复杂度,许多研究尝试用线性函数代替 Softmax 注意力,例如 Reformer、Linformer、Performer 等模型,这些模型将注意力的计算复杂度从 O(n^2) 降低到 O(n)。

稀疏注意力: 通过稀疏化注意力矩阵,减少计算量,例如 Longformer、BigBird 等模型。这些模型只关注关键元素或局部元素之间的关联。分段注意力(Segment-based Attention): 将长序列划分为多个段,在段内计算注意力,段间进行信息传递,例如 Transformer-XL、Memory Transformer 等模型。引入循环机制(Recurrence): 将循环机制融入 Transformer 模型,让模型能够更好地利用历史信息,例如 Transformer-XL、Recurrent Memory Transformer ,retnet等模型。状态空间模型(State Space Models, SSMs): Mamba, 一种尝试使用状态空间模型来建模序列数据的框架,结合了 RNN 的长序列建模能力和 Transformer 的并行计算优点。

Mamba 模型

Flash attention:FlashAttention 是一种创新性的注意力机制优化算法,它通过分块计算和内存访问优化,显著提高了 Transformer 模型在处理长序列时的计算速度和内存效率。FlashAttention 的出现使得 Transformer 模型能够更加高效地应用于各种长序列数据处理任务。

flash attention

而就在 2025 年 1 月,Google 自家发布了 挑战transformer模型的Titans框架。Titans模型的论文名为 “Titans: Learning to Memorize at Test Time”,由 Google Research 的研究者发布。其核心贡献是提出了一种新型的神经长期记忆模块(Neural Long-Term Memory),旨在解决 Transformer 模型在处理长序列数据时遇到的挑战。并基于长期记忆模块构建了 Titans 模型架构。

该架构通过结合短期、长期和持久记忆,有效地解决了 Transformer 模型在处理长序列数据时遇到的挑战。论文的创新之处在于其基于“惊喜程度”的记忆机制、自适应遗忘机制、可并行化的训练方法以及在线元学习的训练范式。这些创新使得 Titans 模型在多种任务上都取得了优异的性能,展现出强大的长序列处理能力和良好的可扩展性。

Titans 模型

Titans模型框架的特点:

神经长期记忆模块(Neural Long-Term Memory): 论文提出了一个新颖的神经长期记忆模块,它可以学习如何存储和检索历史上下文信息。这个模块不是简单地压缩历史数据,而是学习如何基于输入数据的“惊喜程度”来存储信息。模型的记忆机制是基于输入数据的“惊喜程度”,使得模型更倾向于记住违反预期的信息。自适应遗忘机制: 该模块包含一个自适应遗忘机制,可以根据当前输入数据和历史信息的关联性来选择性地遗忘信息,从而提高内存利用率。

Titans模型表现

持久记忆(Persistent Memory)模块:一组可学习的、与输入无关的参数,用于存储任务相关的知识。它由可学习的任务特定参数组成,用于存储有关任务的知识。这种记忆与输入无关,可帮助模型在不同情况下维护与任务相关的信息。在线元学习: 长期记忆模块的训练被视为一个在线学习问题,模型在测试时学习如何更好地记忆数据,而不是过度拟合训练数据。效率和可扩展性:能够处理超过 200 万个标记的上下文窗口。内存模块使用快速、可并行的算法进行训练,该算法利用张量运算和小批量梯度下降。

Titans 提出了三种将内存模块整合到架构中的方法

记忆作为背景 (MAC):记忆被视为当前信息的背景,其中模型从长期记忆中检索历史信息并使用注意力将其与当前背景相结合。

记忆作为门(MAG):记忆模块与滑动窗口注意机制并行使用,其中记忆充当模型的衰减记忆。

记忆即层 (MAL):记忆模块用作神经网络中的一层,在将其传递给注意力模块之前压缩过去和当前的上下文。

Titans 模型表现

在语言建模、常识推理、基因组学和时间序列预测等任务上,Titans 架构都优于传统的 Transformer 和最新的线性循环模型以及Mamba 模型。Titans 模型在处理长序列时展现出更好的性能,可以有效地扩展到大于 2M 的上下文窗口。与 GPT-4 等大型模型相比,即使参数较小,该模型也表现出具有竞争力的性能,尤其是在需要长期记忆和推理的任务中。

更多内容,请参考Titans模型论文。

来源:人工智能研究所

相关推荐