目录
总体结构
1:输入层
Tokenization:文本输入首先经过分词处理,将文本转换为Token序列。这通常涉及将文本分割成单词、子词或其他基本单位。
Embedding:分词后的Token序列通过Embedding层转换为固定维度的向量表示。Embedding层将每个Token映射到一个高维空间中,捕捉其语义信息。
2:transformer对叠层
GPT的核心是多个Transformer解码器的堆叠。每个解码器都包含以下几个关键组件:
自注意力机制:自注意力机制允许模型在处理序列时关注不同位置的Token。通过计算Token之间的注意力权重,模型能够捕捉输入序列中的依赖关系,并为每个位置生成上下文相关的表示。
前馈神经网络:除了自注意力机制外,每个解码器还包含一个前馈神经网络。该网络对自注意力机制的输出进行进一步转换,以提取更高级别的特征。
残差连接和层归一化:为了提高模型的训练稳定性和效果,每个解码器都使用了残差连接和层归一化。这些技术有助于缓解梯度消失和梯度爆炸问题,并加速模型的收敛。
3:输出层
经过多个Transformer解码器堆叠处理后,最后一层的输出被用作生成文本的依据。对于每个位置,模型预测下一个Token的概率分布。这通常通过一个线性层和一个Softmax激活函数来实现,将解码器的输出转换为概率值。
中间核心就是12个Decoder(准确来说不是,只是类似而已,用Encoder也是可以实现的)
1:预训练阶段
在预训练阶段,模型使用大规模的无标注文本数据进行训练,以学习语言的统计规律和生成能力。通过自回归的方式,模型预测输入序列中的下一个Token,并最大化在训练数据上的似然性。7-2,7-3,7-4三个式子对应之前的GPT结构图,输出P(x)为输出,每个词被预测到的概率,再利用7-1式,计算最大似然函数,据此构造损失函数,即可以对该语言模型进行优化。
2:下游任务精调阶段(微调)
模型使用特定任务的标注数据进行训练,以适应各种NLP任务。通过在模型的顶部添加适当的输出层,并使用任务特定的目标函数进行训练,模型能够学习将输入文本映射到特定任务的输出空间
参考: