注意力机制中存在一个缺陷,就是没有位置信息,所以给注意力机制引入了一个one-hot结构的位置矩阵.
将权重矩阵W拆分成WI和WP,然后与输入值x和位置信息p进行点乘,得到ei和
α
\alpha
αi
以机器翻译为例,输入一个机器学习,首先会经过编码,然后再经过解码,得到你想要的信息,tansformer机制就是一个编码和解码的过程.
输入的信息x会与一个one-hot编码的位置信息相结合,然后输入进一个self-attention多头注意力机制.然后将编码的结果作为解码的输入,将输入放到一个masked多头注意力机制,然后在经过self-attention注意力机制,最后经过一系列的操作得到最后的输出.
其中在编码的时候,添加了一个Norm层,Norm和Layer的区别就是,Norm是横向的,Layer是纵向的.
如图所示:
文中的it是一个代词,在这段文本中,it指代的是animal,所以它与animal的依赖更多一点,他们之间的关系线颜色更深.
上面绿色的是多头注意力机制,下面红色的是单头注意力机制,从图中可以看出,多头注意力机制关注的信息跟多一些.