位置编码详解

简介: 位置编码为Transformer提供序列位置信息,弥补注意力机制无位置感知的缺陷。主要分绝对与相对两类:绝对编码如可学习和Sinusoidal,简单高效但外推性弱;相对编码如RoPE和ALiBi,通过旋转矩阵或线性偏置实现良好外推,支持长序列,广泛应用于LLaMA、BLOOM等大模型。

概述
位置编码为Transformer提供序列位置信息,因为注意力机制本身不包含位置概念。
🏗️ 位置编码类型
1️⃣ 绝对位置编码
可学习位置编码
● 原理:将位置作为可训练参数
● 优点:简单直接,可适应任务
● 缺点:固定长度,泛化性差
Sinusoidal位置编码
● 原理:使用正弦和余弦函数
● 公式:
$PE{(pos, 2i)} = \sin\left(\frac{pos}{10000^{2i/d{model}}}\right)$
$PE{(pos, 2i+1)} = \cos\left(\frac{pos}{10000^{2i/d{model}}}\right)$
2️⃣ 相对位置编码
RoPE (旋转位置编码)
● 原理:通过旋转矩阵编码相对位置
● 优点:支持任意长度,相对位置感知
● 应用:LLaMA、ChatGLM等
ALiBi (Attention with Linear Biases)
● 原理:在注意力分数中添加线性偏置
● 优点:外推能力强,计算高效
● 应用:BLOOM、MPT等
📊 编码方法对比
方法 类型 外推能力 计算效率 应用模型
可学习 绝对 差 高 早期Transformer
Sinusoidal 绝对 中 高 原始Transformer
RoPE 相对 好 中 LLaMA、Qwen
ALiBi 相对 极好 高 BLOOM、MPT

相关文章
|
传感器 机器学习/深度学习 自动驾驶
自动驾驶:BEV开山之作LSS(lift,splat,shoot)原理代码串讲
自动驾驶:BEV开山之作LSS(lift,splat,shoot)原理代码串讲
5496 1
自动驾驶:BEV开山之作LSS(lift,splat,shoot)原理代码串讲
Collection接口详解
Collection接口详解
|
存储 BI 数据库
PowerApps教程-实现简单的增删改查
PowerApps是Microsoft提供的低代码开发平台,允许用户无需编写大量代码,通过直观的界面设计快速创建应用程序。通过PowerApps的数据连接功能,系统可以轻松地与其他Microsoft 365服务(如SharePoint、Excel)进行集成,实现数据的无缝交互。本文详细介绍了如何使用PowerApps快速开发一个支持增删改查的报表页面,采用SharePoint上的List作为数据源。
641 0
|
7月前
|
存储 关系型数据库 数据库
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
本文通过一个 Agentic RAG 应用的完整构建流程,展示了如何借助 RDS Supabase 快速搭建具备知识处理与智能决策能力的 AI 应用,展示从数据准备到应用部署的全流程,相较于传统开发模式效率大幅提升。
附部署代码|云数据库RDS 全托管 Supabase服务:小白轻松搞定开发AI应用
|
11月前
|
机器学习/深度学习 存储 算法
强化学习:蒙特卡罗求解最优状态价值函数——手把手教你入门强化学习(五)
本文介绍了强化学习中的蒙特卡罗算法,包括其基本概念、两种估值方法(首次访问蒙特卡罗与每次访问蒙特卡罗)及增量平均优化方式。蒙特卡罗法是一种基于完整回合采样的无模型学习方法,通过统计经验回报的平均值估计状态或动作价值函数。文章详细讲解了算法流程,并指出其初期方差较大、估值不稳定等缺点。最后对比动态规划,说明了蒙特卡罗法在强化学习中的应用价值。适合初学者理解蒙特卡罗算法的核心思想与实现步骤。
648 4
|
4月前
|
存储 监控 API
Python datetime模块:时间处理的瑞士军刀
免费Python编程教程,深入讲解datetime模块核心用法:时间对象创建、格式化、运算及时区处理,附实战案例与避坑指南,助你高效掌握Python时间操作。链接:https://pan.quark.cn/s/2c17aed36b72
736 0
|
7月前
|
编解码 文字识别 API
InternVL3开源:7种尺寸覆盖文、图、视频处理,多模态能力扩展至工业图像分析
4月11日,OpenGVLab开源发布InternVL3系列多模态大模型,涵盖1B至78B共7个尺寸。相比InternVL 2.5,其在多模态感知与推理能力上表现更优,并新增工具使用、GUI代理等功能。得益于原生多模态预训练,文本性能超越Qwen2.5系列。
939 0
|
机器学习/深度学习 存储 人工智能
【AI系统】流水并行
在大模型训练中,单个设备难以满足计算和存储需求,分布式训练成为必要。模型并行是其中关键技术之一,通过将模型计算任务拆分至不同设备上执行,提高训练效率。模型并行主要包括朴素模型并行、张量并行和流水线并行。流水线并行通过将模型的不同层分配到不同设备上,采用微批次处理,提高设备利用率。Gpipe和PipeDream是两种流行的流水线并行方案,前者通过重叠前向和反向传播提升效率,后者则通过1F1B策略实现交错执行,最大化利用计算资源。
593 15
|
开发工具 git 开发者
解决fatal: not a git repository (or any of the parent directories): .git问题
解决fatal: not a git repository (or any of the parent directories): .git问题
2824 1

热门文章

最新文章