Transformer

本文章参考以下博客,如有不懂,可看原博客
参考文章1
参考文章2

整体架构
Transformer

Transformer其实是一个Seq2Seq模型,左边一个encoder把输入读进去,右边一个decoder得到输出
Transformer

Encoder(N=6层,每层包括2个layers)

主要是由self-attention和前馈神经网络构成Transformer
全连接有两层,第一层的**函数是ReLU,第二层是一个线性**函数,可以表示为:
Transformer
Transformer框架因为为了解决深度网络带来的退化问题,引入了残差网络部分(Residuals)如下所示:
Transformer
在transformer机制中加入位置信息主要是为了增加捕捉顺序序列的能力

Decoder(N=6层,每层包括3个layers)

Decoder部分和Encoder部分非常接近,但是多了一个Encoder-Decoder Attention单元Transformer
两个Attention分别用于计算输入和输出的权值:
Self-Attention:当前翻译和已经翻译的前文之间的关系;
Encoder-Decnoder Attention:当前翻译和编码的特征向量之间的关系
在encoder-decoder attention中, Q来自于解码器的上一个输出,K和V则来自于于编码器的输出,计算方式和self attention的计算方式是一致的