Representing The Order of The Sequence Using Positional Encoding
正如我们到目前为止所描述的那样,模型中缺少的一件事是解释输入序列中单词顺序的方法。
为了解决这个问题,transformer 在每个输入嵌入中添加一个矢量。这些向量遵循模型学习的特定模式,这有助于它确定每个单词的位置,或序列中不同单词之间的距离。这里的直觉是,将这些值添加到嵌入中,一旦它们投射到Q/K/V矢量中,并在点积 attention 期间,嵌入向量之间会提供有意义的距离。
如果我们假设嵌入的维数为4,那么实际的位置编码将是这样的
这个模式会是什么样子呢?
在下面的图中,每一行对应一个向量的位置编码。所以第一行就是我们对输入序列中第一个单词的嵌入加上的向量。每行包含512个值,每个值在1到-1之间。我们对它们进行了颜色编码,这样图案就可以看到了。