网站开发亮点,中小型网站建设哪家好,网站图怎么做会高清,增加访客的网站为什么需要位置表示 对比CNN、RNN和Self-Attention:
CNN处理相邻窗口的内容#xff1b;RNN天然是序列操作#xff0c;考虑了位置先后关系#xff1b;Self-Attention的计算时是无序的#xff0c;所以需要位置表示来知道Token之间的位置信息。 绝对位置表示
典型如#xf…为什么需要位置表示 对比CNN、RNN和Self-Attention:
CNN处理相邻窗口的内容RNN天然是序列操作考虑了位置先后关系Self-Attention的计算时是无序的所以需要位置表示来知道Token之间的位置信息。 绝对位置表示
典型如Bert/Roberta/GPT2的位置表示将位置如 0512 像词一样做embedding需要训练position向量矩阵 不同模型训练出来的位置表示之间的相似性对角线是1
优势简单
劣势无法处理超出长度的句子必须截断 相对位置表示
位置n的旋转位置编码RoPE本质上就是数字n的β进制编码- 苏剑林
为什么需要进制编码我们先看进制编码的格式 我们再回到RoPE的公式pos是位置i是表示向量的维度 令 \beta10000^2那么RoPE就是下面这种表示也就是完整的进制编码表示 我们再看下位置表示的可视化发现当表示向量的维度上升曲线更加稠密 为什么要用周期进制表示 进制在表示相对位置时和绝对位置表示是一样的效果如「我们知道10的相邻数据是9和11」 周期进制表示方式更加的稠密就像10/16进制一样进制越高表示信息越大 周期进制可以做推理假设我们已经学习过0200的表示那么对于200299直接就知道他们的位置和关系甚至于200999也是可以直接知道含义的 如何扩展位置表示
直接外推
如果我们学习过position 在0200之间的表示那么对于200299的长度可以直接扩展甚至 200999的位置表示也可以直接外推。但是如果是1000以上的范围那么效果就不好了因为千位的维度没有训练过。
优点是在预留的维度上是可以直接外推不需要训练的
缺点超出范围的性能下降极大 线性内插
如果我们学习过position 在0200之间的表示我们需要表示更长一种是我们每隔0.5就做一个表示这样表示能力扩展到 0400了这样还是保持学习范围之内但是问题是表示更加拥挤当处理范围进一步增大时相邻差异则更小这样位置表示的作用就减弱了。
优点是原则上可以无限内插下去
缺点差异小了PE的效果降低 Neural Tangent Kernel—NTK-aware
内插 外插叠加在低位的时候基本和原来一致不影响原始表示这个就是外插在高位的时候往里面内插虽然信息降低但是也可以表示