上节课,给大家介绍了整个课程的内容安排,知识点还是比较多的。接下来,我们就抓紧时间,直接进入正题了。这节课的课程目标,是从宏观上了解 Transformer 的模型结构。

Transformer简介

关于这个模型,网上的内容可以说是铺天盖地,因为这个模型无比的重要,可以说没有他,就没有现在当红的 ChatGPT 和 AIGC 的应用,同时,也是现在 AI 相关岗位面试的最重要必考点,没有之一,所以,这个模型的重要性怎么强调都不为过。

Transformer 是一种用于自然语言处理和机器翻译等任务的深度学习模型架构,它由Google的研究人员在2017年提出。相比于传统的循环神经网络(RNN)和卷积神经网络(CNN),Transformer 使用了全新的架构,通过注意力机制(Attention)来捕捉输入序列中的上下文关系。

论文地址:https://arxiv.org/abs/1706.03762

模型结构

这一部分内容,可以对照论文中的模型结构图,来理解消化。

  1. 输入嵌入层(Input Embedding Layer):将输入序列中的单词或符号转换为向量表示,以便模型能够处理。

  2. 位置编码层(Positional Encoding Layer):为输入序列中的每个位置添加位置信息,以便模型能够捕捉序列中的顺序关系。

  3. 编码器(Encoder):由多个相同的编码器层堆叠而成,每个编码器层包含以下子层:

    • 多头自注意力机制(Multi-head Self-Attention):通过计算每个位置与其他位置之间的注意力权重,捕捉输入序列中的全局依赖关系。

    • 前馈神经网络(Feed-forward Neural Network):对每个位置的特征进行独立的映射和处理,增强模型的非线性表达能力。

    • 残差连接(Residual Connection)和层归一化(Layer Normalization):用于加强模型的梯度流动和减轻训练过程中的梯度消失问题。

  4. 解码器(Decoder):由多个相同的解码器层堆叠而成,每个解码器层包含以下子层:

    • 带掩码的多头自注意力机制(Masked Multi-head Self-Attention):帮助解码器在生成输出序列时对输入序列进行关注。

    • 编码器-解码器注意力机制(Encoder-Decoder Attention):帮助解码器在生成每个位置的输出时关注输入序列的相关信息。

    • 前馈神经网络(Feed-forward Neural Network):对每个位置的特征进行独立的映射和处理。

    • 残差连接(Residual Connection)和层归一化(Layer Normalization):加强梯度流动和减轻梯度消失问题。

  5. 输出层(Output Layer):将解码器的最后一层输出映射为最终的目标序列概率分布,用于生成翻译结果或进行其他自然语言处理任务。

对初学者来说,只看模型结构图,还是会有很多困惑。下节课,我们再用一个翻译任务的具体例子,结合数据,来给大家直观介绍一下 Transformer 的各个层的实现细节。

本文链接:http://www.ichenhua.cn/edu/note/649

版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!