位置编码

Transformer: 不可学习位置编码

可以看出不同的column(j)之间,周期不一样

不同的row(i)之间,值不一样

且相邻的column之间,相位不一样

特点:

相邻一定距离的位置,可以通过线性变换得到

\left[\begin{array}{cc}\cos \left(\delta \omega_{j}\right) & \sin \left(\delta \omega_{j}\right) \\-\sin \left(\delta \omega_{j}\right) & \cos \left(\delta \omega_{j}\right)\end{array}\right]\left[\begin{array}{c}p_{i, 2 j} \\p_{i, 2 j+1}\end{array}\right]=\left[\begin{array}{c}p_{i+\delta, 2 j} \\p_{i+\delta, 2 j+1}\end{array}\right]


BERT:可学习位置编码

直接设定为可学习的与序列等长的向量即可,可以用随机初始化

你可能感兴趣的:(位置编码)