规范化和残差连接

在前面的章节中,我们了解了 Transformer 的架构、其子层以及有助于提高其效率和有效性的几个关键组件。在 Transformer 设计的核心,还有另一个关键组件,称为"add & norm",即紧接着层规范化残差连接。它通过避免梯度消失和稳定训练过程来提高 Transformer 模型的性能。

在本章中,我们将了解层规范化和残差连接的作用、它们的工作原理、它们的好处以及将它们实现到 Transformer 模型中的一些实际考虑因素。

层规范化和残差连接的作用

在研究规范化和残差连接的作用之前,让我们回顾一下 Transformer 架构的基础知识。

Transformer 由两部分组成:编码器解码器。编码器和解码器都由多个层组成,每个层包括两个主要子层:多头注意力全连接前馈神经网络。此外,残差连接和层归一化应用于这些子层,以保持稳定性并提高训练性能。

残差连接

残差连接,也称为跳过连接,是为了解决梯度消失问题而引入的。它绕过一些层,让梯度直接通过网络。简而言之,残差连接通过允许梯度通过层而不丢失太多信息,帮助网络更有效地学习。

从数学上讲,残差连接可以表示为 −

$$\mathrm{Output \: = \: Layer \: Output \: + \: Input}$$

上面的等式表明我们将一层的输出添加到其输入中。它基本上有助于模型学习输入和输出之间的差异(或残差)。通过这种方式,残差连接使模型训练变得更容易、更有效。

层归一化

层归一化是一种在整个训练过程中将输入保持在一定范围内的技术。此归一化步骤可保持训练过程稳定,尤其是在处理深度神经网络时。

从数学上讲,给定输入向量 x 的层归一化公式为 −

$$\mathrm{\hat{x} \: = \: \frac{x \: - \: \mu}{\sigma}}$$

其中 μ 是平均值,σ 是输入向量的标准差 (SD)。归一化后,使用可学习参数对输出进行缩放和移位,如下所示 −

$$\mathrm{y \: = \: \gamma \: \dot \: \hat{x} \: + \: \beta}$$

这种缩放和移位机制的好处如下 −

  • 它允许网络保持输入的表示能力。
  • 它还确保激活在整个训练过程中保持在一定范围内。

归一化和残差连接的工作原理

在 Transformer 架构中,归一化和残差连接应用于多头注意力和前馈神经网络 (FFNN) 子层。让我们看看它们是如何工作的 −

  • 首先,输入 x 经过多头注意力子层。
  • 然后将自注意力机制的输出添加到原始输入 x。这形成了残差连接。
  • 之后,将层规范化 (LN) 应用于输入和多头注意力输出的总和。从数学上讲,此操作可以总结如下 −

$$\mathrm{Normal(x \: + \: Multi \: - \: head \: attention \: (x))}$$

  • 现在,多头注意力子层的输出通过 FFNN 子层。
  • 然后将 FFNN 的输出添加到自注意力机制的输入中。这再次形成残差连接。

之后,将层规范化 (LN) 应用于输入和 FFNN 输出的总和。从数学上来说,此操作可以总结如下 −

$$\mathrm{Norm2 \: \left(FFNN \: \left(Norm1 \:(x \: + \: Multi \: - \: head \:tention \: (x)) \right) \right)}$$

规范化和残差连接的好处

残差连接和层规范化的组合提供了以下好处 −

  • 稳定训练 − 层规范化通过确保激活函数保持在一致范围内来保持训练过程的稳定。它可以防止梯度消失的问题。
  • 允许构建更深的网络 − 残差连接允许构建更深的网络,这对于捕获复杂模式至关重要。
  • 提高学习速度 − 残差连接允许梯度直接流过网络。它提高了模型的收敛速度,从而加快了训练速度并提高了性能。
  • 增强模型性能 − 层规范化 (LN) 和残差连接的结合增强了模型学习复杂函数的能力,从而提高了准确性和泛化能力。

关于归一化和残差连接的考虑

在 Transformer 模型中实现残差连接和层归一化组合时,我们应该考虑以下几点 −

  • 初始化 − 我们应该对层归一化参数 γ 和 β 的权重进行适当的初始化。两种常用技术是 He 初始化和 Xavier 初始化。
  • 超参数 − 我们需要仔细调整超参数,例如隐藏层的大小、注意力头的数量和 dropout 率,因为它们会影响模型的性能。
  • 计算效率 − 我们应该平衡模型的复杂性和可用的计算资源,因为残差连接和层归一化的实现会增加计算开销。

结论

"Add & Norm"组件是紧接着层规范化残差连接,是 Transformer 架构的一个基本方面。

在本章中,我们讨论了层规范化和残差连接在 Transformer 模型中的作用。通过实现它们,Transformer 模型可以有效地训练更深的网络,缓解梯度消失问题,并提高模型训练速度。但在实现它们之前,需要对权重进行适当的初始化并调整超参数。

对于想要处理高级 NLP 任务的人来说,理解 Add & Norm 组件的概念非常重要。随着研究的进展,我们可以期待规范化和残差连接的进一步改进,从而增强基于 Transformer 的架构的能力。