1. 输入层:将输入的词向量输入到Embedding层。
2. Embedding层:将输入的词转换成词向量,便于计算机处理。
3. 编码器部分:由多个相同的Transformer编码器构成,每一个编码器包含多个子层(Multi-Head Attention层和Feed-forward层)和一个残差连接(Residual Connection)和正则化(Layer Normalization)。
(1) Multi-Head Attention层:是指将输入分成多份,然后分别计算注意力矩阵,并将结果拼接在一起。这种方式可以让模型在学习不同的语法和上下文表示时更加准确。
(2) Feed-forward层:是指将Multi-Head Attention输出后的结果进行全连接,并且加上一个激活函数,例如ReLU。
(3) 残差连接(Residual Connection):在每个子层中,输入信号会跳过每个子层的计算,直接传递到后续的子层,这保证模型可以捕捉到更多的局部特征。
(4) 正则化(Layer Normalization):是指为了让模型学习更加平稳,将每个子层的输出进行标准化处理,从而提高了模型的鲁棒性。
4. 解码器部分:在训练阶段GPT是一个自回归模型,因此需要一个解码器来预测下一个词。解码器部分与编码器类似,但不同的是:解码器的每个编码器通过对先前词的输入进行学习,然后在预测下一个单词时使用上下文和先前的预测来指引它。
5. 输出层:将解码器的输出映射到预测的单词中。
6. 损失函数:在训练阶段,使用对数损失函数计算预测单词和真实单词之间的距离,并更新模型权重。