1. 概要
Transformer模型完全基于注意力机制,没有任何卷积层或循环神经网络层
2. 整体架构
Transformer作为编码器-解码器架构的一个实例
1. transformer架构
- Transformer的编码器和解码器是基于自注意力的模块叠加而成的,源(输入)序列和目标(输出)序列的嵌入(embedding)表示将加上位置编码(positional encoding),再分别输入到编码器和解码器中。
-
Transformer的编码器是由多个相同的层叠加而成的,每个层都有两个子层(子层表示为sublayer)。
-
第一个子层是多头自注意力(multi‐head self‐attention)汇聚;第二个子层是基于位置的前馈网络(position wise feed‐forward network)。
-
在计算编码器的自注意力时,查询、键和值都来自前一个编码器层的输出。
-
Transformer解码器也是由多个相同的层叠加而成的,并且层中使用了残差连接和层规范化。
-
除了编码器中描述的两个子层之外,解码器还在这两个子层之间插入了第三个子层,称为编码器-解码器注意力(encoder‐decoder attention)层。
-
在编码器-解码器注意力中,查询来自前一个
解码器层
的输出,而键和值来自整个编码器
的输出。在解码器自注意力中,查询、键和值都来自上一个解码器层的输出。但是,解码器中的每个位置只能考虑该位置之前的所有位置。
2. 多头注意力
3. 有掩码的多头注意力
4. 前馈网络
5. 层归一化
-
Layer:每一个batch里面给样本。单样本里面,不管批量多少。
-
有b句话,每句话有len个词,每个词由d个特征表示,BN是对所有句子所有词的某一特征做归一化,LN是对某一句话的所有词所有特征做归一化
6. 信息传递
3. 预测
4. 小结
-
• Transformer是编码器-解码器架构的一个实践,尽管在实际情况中编码器或解码器可以单独使用。
-
• 在Transformer中,多头自注意力用于表示输入序列和输出序列,不过解码器必须通过掩蔽机制来保留
自回归属性。 -
• Transformer中的残差连接和层规范化是训练非常深度模型的重要工具。
-
• Transformer模型中基于位置的前馈网络使用同一个多层感知机,作用是对所有序列位置的表示进行转
换。