1、目的
提出一种新的网络结构,不用CNN或者RNN,只基于self-attention
2、方法
* Norm: Layer Normalization
1)Encoder
->
-> self-attention的k、v、q来自上一个encoder层
2)Decoder
-> 由于每个位置i的预测只能参考i以前的输出结果(auto-regressive),因此输出的embedding有一个位置的偏移。masked multi-head attention可以遮盖掉softmax的input中的illegal connections
-> encoder-decoder attention的q来自前一个decoder层,k和v来自encoder的输出
3)Attention
关于注意力机制的分析,可以参考以下博客:
注意力机制真的可以“集中注意力”吗? - 科学空间|Scientific Spaces
-> Scaled Dot-Product Attention
关于公式形式的分析,可以参考以下博客:
浅谈Transformer的初始化、参数化与标准化 - 科学空间|Scientific Spaces
线性Attention的探索:Attention必须有个Softmax吗? - 科学空间|Scientific Spaces
听说Attention与Softmax更配哦~ - 科学空间|Scientific Spaces
注意力和Softmax的两点有趣发现:鲁棒性和信息量 - 科学空间|Scientific Spaces
-> Multi-Head Attention
由于每个head的dimension减少了,总的计算量和single-head attention相近
4)Point-wise Feed-Forward Network
5)Embeddings and softmax
两个embedding层和pre-softmax linear transformation共享参数。其中,embedding层的weight会乘
关于embedding的分析,可以参考以下博客:
语言模型输出端共享Embedding的重新探索 - 科学空间|Scientific Spaces
6)Positional Encoding
其中pos是postion,i是dimension;维度与输入向量编码的维度一致,两者相加
关于位置编码的分析,可以参考以下博客:
让研究人员绞尽脑汁的Transformer位置编码 - 科学空间|Scientific Spaces
Transformer升级之路:1、Sinusoidal位置编码追根溯源 - 科学空间|Scientific Spaces
相对位置编码Transformer的一个理论缺陷与对策 - 科学空间|Scientific Spaces
Transformer升级之路:8、长度外推性与位置鲁棒性 - 科学空间|Scientific Spaces
Transformer升级之路:7、长度外推性与局部注意力 - 科学空间|Scientific Spaces
总结一下,sinusoidal位置编码的主要优点是:
-> 距离越远的位置编码,点积越小。符合直觉:距离越远的文本之间的相关性越弱
-> 适用于不定长的文本场景
3、优点
可以用constant number of sequentially executed operations来连接所有的位置。当sequence长度n小于representation维度d时,self-attention比recurrent layer要快;对于特别长的句子,可以限定只在r范围内计算self-attention
4、其他
训练1000层的Transformer究竟有什么困难? - 科学空间|Scientific Spaces