Transformer笔记
Transformer是由编码器和解码器组成,编码器和解码器是基于自注意力的模型叠加而成。
编码器
编码器由多个相同的层叠加而成,每个层都有两个子层:多头注意力层和基于位置的前馈神经网络层,每个子层都采用残差连接并进行层归一化
解码器
解码器由多个相同的层叠加而成,每个层都有三个子层:遮蔽多头注意力层、编码器-解码器注意力层和基于位置的前馈神经网络层,每个子层都采用残差连接并进行层归一化
细节
- 编码器输入为词向量与位置编码的和
- 解码器中遮蔽多头注意力数据为前一个解码器层的输出,每个位置只能考虑该位置之前的所有的位置(遮蔽)
- 编码器-解码器注意力层查询来自前一个解码器层的输出,键和值来自整个编码器的输出
- transformer对长序列建模能力强,但参数过多,难以训练