当前位置: 首页 > news >正文

RoPE, 2D RoPE, 3D RoPE和复数

旋转位置编码是一种用于Transformer架构中的位置编码方法,从复数的角度来看,其主要利用了复数的乘法性质来实现位置编码,以下作为学习记录:

1. 旋转位置编码

1)对于输入序列的每个位置的嵌入向量x_i,将嵌入向量分到(1, d)和(d,n)两部分,即:

x_i=(x_i^1,x_i^2,x_i^3,...,x_i^d,x_i^{n-d+1},x_i^{n-d+2},...,x_i^{n-1},x_i^n)

2)复数表示:将分割后的位置嵌入向量两两组合为复数形式:z_i^k=x_i^{2k}+x_i^{2k+1}*i

3)旋转位置:对于每个位置i,定义一个旋转角度:

\theta_i=\theta \times i

\theta是一个预定义的常数,通过复数乘法来实现对复数向量的旋转变换,对每个嵌入向量进行旋转变换:

z_i^k \mapsto z_i^k \times (\theta_i*i)

根据欧拉公式:e^{i\theta}=cos(\theta)+i\times sin(\theta)

将上式展开后得:

(x_i^{2k}+i*x_i^{2k+1})\times (cos(i\theta)+i*sin(i\theta))

即实现对向量的旋转操作。

4)理解:通过对query和key向量进行上述复数旋转操作,使得模型能够捕捉到相对位置信息。因为旋转矩阵的乘积对应角度的相加,所以经过旋转后的query和key向量的内积包含了相对位置的信息。

5)理解旋转矩阵的乘积等于对应角度的相加,旋转矩阵形式:

R(\theta)=\bigl(\begin{smallmatrix} cos(\theta) & -sin(\theta)\\ sin(\theta) & cos(\theta) \end{smallmatrix}\bigr)

理解旋转矩阵的乘积就等于对应角度的相加:

R(\theta) \times R(\beta)=\bigl(\begin{smallmatrix} cos(\theta) & -sin(\theta)\\ sin(\theta) & cos(\theta) \end{smallmatrix}\bigr) \times \bigl(\begin{smallmatrix} cos(\beta) & -sin(\beta)\\ sin(\beta) & cos(\beta) \end{smallmatrix}\bigr)

将上式展开,可得:

R(\theta) \times R(\beta)=R(\theta+\beta)

几何意义:两次旋转的效果等于一次旋转。

http://www.dtcms.com/a/342215.html

相关文章:

  • 安卓app、微信小程序等访问多个api时等待提示调用与关闭问题
  • 为什么会“偶发 539/500 与建连失败”
  • 如何通过传感器选型优化,为设备寿命 “续航”?
  • 微服务介绍及Nacos中间件
  • java⽇志体系
  • 桌面挂件不能承受之重——GIF
  • Windows 系统中,添加打印机主要有以下几种方式
  • 聚铭安全管家平台2.0实战解码 | 安服篇(四):重构威胁追溯体系
  • 新手向:Python开发简易网络服务器
  • 解决springai 项目中引入多个chatModel存在冲突问题
  • 服务器间大文件迁移
  • SparkSQL、FlinkSQL与普通sql比较
  • Git项目报错git@gitlab.com: Permission denied (publickey).【已解决】
  • Jenkins+GitLab在CentOS7上的自动化部署方案
  • iOS混淆工具实战 金融支付类 App 的安全防护与合规落地
  • 飞牛系统总是死机,安装个工具查看一下日志
  • Python爬虫的基础启航
  • 微算法科技(NASDAQ:MLGO)构建去中性化区块链预言机,实现跨链信息互通
  • 消息中间件(RocketMQ+RabbitMQ+Kafka)
  • 14. 多线程(进阶1) --- 常见的锁策略和锁的特性
  • 大模型自我进化框架SE-Agent:开启软件工程自动化新时代
  • Confluent 实时代理:基于 Kafka 流数据的创新实践
  • git 常用命令整理
  • 拂去尘埃,静待花开:科技之笔,勾勒城市新生
  • Linux基础(1) Linux基本指令(二)
  • 大模型推理并行
  • 机器学习7
  • 以往内容梳理--HRD与MRD
  • 《深入探索 Java IO 流进阶:缓冲流、转换流、序列化与工具类引言》
  • 事件驱动流程链——EPC