从0开始LLM-注意力机制-0

163 阅读3分钟

image.png LLM的三个阶段:

  1. 构建模型:
  • 数据准备和采样
  • 注意力机制
  • LLM架构
  1. 预训练模型
  • 训练
  • 模型评估
  • 权重
  1. 微调模型
  • 在标记数据集上进行微调

image.png 从简化版本的自我注意力开始,然后添加可训练的权重。因果注意机制为自我注意力添加了一个掩码,允许 LLM 一次生成一个单词。最后,多头注意力将注意力机制组织成多个头,使模型能够并行捕获输入数据的各个方面。

长序列建模的问题

image.png 为了解决我们无法逐字翻译文本的问题,通常使用具有两个子模块的深度神经网络,即所谓的编码器和解码器。编码器的工作是首先读取并处理整个文本,然后解码器生成翻译后的文本。

在 Transformer 出现之前,递归神经网络 (RNN) 是语言翻译中最流行的编码器-解码器架构。RNN 是一种神经网络,其中先前步骤的输出作为输入馈送到当前步骤,使其非常适合文本等顺序数据。在编码器-解码器 RNN 中,输入文本被馈送到编码器中,编码器按顺序对其进行处理。编码器在每个步骤中更新其隐藏状态(隐藏层的内部值),试图在最终隐藏状态下捕获输入句子的全部含义,如图所示。然后,解码器采用这种最终的隐藏状态开始生成翻译的句子,一次一个单词。它还会在每一步更新其隐藏状态,这应该携带下一个单词预测所需的上下文。

image.png 编码器将源语言中的一系列标记作为输入,其中编码器的隐藏状态(中间神经网络层)对整个输入序列的压缩表示进行编码。然后,解码器使用其当前隐藏状态开始逐个标记的转换。

 使用注意力机制捕获数据依赖关系

在 transformer LLM 之前,通常将 RNN 用于语言建模任务,例如语言翻译。RNN 适用于翻译短句,但不适用于较长的文本,因为它们无法直接访问输入中的先前单词。 这种方法的一个主要缺点是,RNN 在将整个编码输入传递到解码器之前,必须记住处于单个隐藏状态的整个编码输入。

自注意力是一种机制,它允许输入序列中的每个位置在计算序列的表示时关注同一序列中的所有位置。自我注意力是基于 transformer 架构的当代 LLM 的关键组成部分,例如 GPT 系列。 自注意力是变压器中的一种机制,用于计算更有效的输入表示,允许序列中的每个位置与同一序列中的所有其他位置交互并权衡其重要性。

image.png