全美网站开发,在线flash相册网站源码,石狮制作网站,安卓毕业设计代做网站文章目录 1.目的#xff1a;通过绝对位置编码的方式实现相对位置编码2.理解RoPE#xff0c;在我看来有几个需要注意的点#xff1a;3.本文相关复数概念#xff1a;3.1.复数乘法的几何意义3.2.复数内积 VS. 复数乘法 4.REF#xff1a; 1.目的#xff1a;通过绝对位置编码的… 文章目录 1.目的通过绝对位置编码的方式实现相对位置编码2.理解RoPE在我看来有几个需要注意的点3.本文相关复数概念3.1.复数乘法的几何意义3.2.复数内积 VS. 复数乘法 4.REF 1.目的通过绝对位置编码的方式实现相对位置编码
绝对位置编码比较简单加或乘一个有次序的数实现相对位置编码也即意味着要蕴含位置差的信息 假设m是某个token的位置信息n是另一个token的位置信息要有类似 m − n m-n m−n的信息比较容易想到复数乘法会产生 m − n m-n m−n以及复数乘法和复数内积的性质。
2.理解RoPE在我看来有几个需要注意的点
最重要的是 e i m θ e^{im\theta} eimθ 的构造给二维的 q ⃗ \vec q q 或 k ⃗ \vec k k 乘这个量也即对 q ⃗ \vec q q 或 k ⃗ \vec k k 做了旋转旋转后再对二者进行内积便会产生 m − n m-n m−n的相对位置信息也就达成了相对位置编码的目的二维向量和复数平面存在一一对应的关系二维扩展到 2 ∗ N 2*N 2∗N维既然二维的向量旋转后再做内积有 m − n m-n m−n的相对位置信息那就直接把 q ⃗ \vec q q 和 k ⃗ \vec k k 都分成2维一组这样 q ⃗ \vec q q 和 k ⃗ \vec k k 做内积时就让分好的组与组之间做内积就自然让各位置携带相对位置信息了向量旋转有两种计算方式一种是复数乘取实部另一种是通过构造旋转矩阵计算
3.本文相关复数概念
3.1.复数乘法的几何意义
两个复数相乘得到的复数的模长是原来两个复数的模长的乘积得到的复数的幅角是原来两个复数的幅角的相加。
3.2.复数内积 VS. 复数乘法
复数内积 ⟨ ( a b i ) , ( c d i ) ⟩ a c b d {\left \langle (abi),(cdi)\right \rangle }acbd ⟨(abi),(cdi)⟩acbd不含i复数乘法 ( a b i ) ( c d i ) ( a c − b d ) ( b c − a d ) i (abi)(cdi)(ac-bd) (bc-ad)i (abi)(cdi)(ac−bd)(bc−ad)i复数内积的结果跟复数乘法的实部相差了一个正负号复数内积等于复数乘以另一个复数的共轭后取实部 ⟨ ( a b i ) , ( c d i ) ⟩ R E [ ( a b i ) ( c d i ) ∗ ] {\left \langle (abi),(cdi)\right \rangle }RE[(abi)(cdi)^*] ⟨(abi),(cdi)⟩RE[(abi)(cdi)∗]也即 ⟨ ( a b i ) , ( c d i ) ⟩ R E [ ( a b i ) ( c − d i ) ] {\left \langle (abi),(cdi)\right \rangle }RE[(abi)(c-di)] ⟨(abi),(cdi)⟩RE[(abi)(c−di)]
4.REF
[1].https://zhuanlan.zhihu.com/p/642884818 (这篇讲的很清楚了) [2].https://zhuanlan.zhihu.com/p/669797102 [3].https://zhuanlan.zhihu.com/p/647109286 [4].https://kexue.fm/archives/8265 [5].https://zhuanlan.zhihu.com/p/641865355 [6].https://zhuanlan.zhihu.com/p/646598747 [7].学习报告向量与复数的联系 [8].复向量的内积,想不明白? [9].https://arxiv.org/pdf/2104.09864.pdf