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

【必学收藏】位置嵌入(Positional Embedding):Transformer模型理解词序的核心技术

之前我们探讨了 词嵌入(Word Embedding) ,它根据词嵌入矩阵将文本序列转换为数值向量,使得计算机能够理解和处理自然语言。现在,让我们进一步了解位置嵌入(Positional Embedding),这是让 Transformer 模型“知晓”词语顺序的关键。

1. 位置嵌入的作用


想象一下,如果我们只用词嵌入,那么无论一个词出现在句子的开头还是结尾,它的表示都是相同的。然而,在自然语言中,词语的位置往往影响其意义。例如,“苹果”在“我吃了一个苹果”和“苹果公司发布了新产品”这两个句子中的含义截然不同。因此,我们需要一种机制来告诉模型这些信息,这就是位置嵌入的作用。

位置嵌入通过给每个词赋予一个与它在句子中位置相关的独特向量,使得模型不仅能够捕捉到词语的语义,还能理解它们之间的相对顺序,从而更好地建模句子结构和依赖关系。

2. 位置嵌入的原理


为了让模型能够学习到位置信息,最直接的方法是为每个位置分配一个固定的、预定义的向量。在原始的 Transformer 模型中,位置嵌入是由正弦余弦函数组成的,这样设计的原因在于它具有周期性,可以帮助模型处理比训练时更长的序列,同时保持一定的泛化能力。

具体来说,对于模型维度 *d*、位置 *pos*和维度 *i*,位置嵌入 *PE(pos, 2i)*(偶数维)和 *PE(pos, 2i+1)*(奇数维)分别由以下公式计算:

下面是位置嵌入计算的 Python 代码实现:

importtorchimporttorch.nnasnnimportmath classPositionalEncoding(nn.Module):def__init__(self,d_model,max_len=5000):super(PositionalEncoding,self).__init__()# 创建一个位置编码矩阵 [max_len, d_model]pe=torch.zeros(max_len,d_model)position=torch.arange(0,max_len,dtype=torch.float).unsqueeze(1)# [max_len, 1]div_term=torch.exp(torch.arange(0,d_model,2).float()*(-math.log(10000.0)/d_model))# [d_model/2]pe[:,0::2]=torch.sin(position*div_term)# 偶数维pe[:,1::2]=torch.cos(position*div_term)# 奇数维pe=pe.unsqueeze(0)# [1, max_len, d_model]self.register_buffer('pe',pe)# 不作为模型参数更新defforward(self, x):seq_len=x.size(1)x=x+self.pe[:,:seq_len,:]returnx

这段代码创建了一个PositionalEncoding类,用于生成位置嵌入,并将其添加到输入的词嵌入上。d_model是模型的维度,而max_len则是可以处理的最大序列长度。

3. 词嵌入和位置嵌入的作用


为了更好地理解词嵌入和位置嵌入是如何协作的,我们以一句简单的英语句子为例:“The cat sat on the mat.”。首先,我们会将每个词转换成对应的词嵌入向量;然后,为每个词添加与其位置相关的位置嵌入;最后,我们将两者相加,得到最终的隐藏层输入向量。

特别注意:

  • 为了方便演示,老牛同学此处简化为2 维,实际预训练模型的隐藏层远不止 2 维(如:Qwen2.5 有 1536 维)。
  • 同时,我们把 Token 简化为单词,实际使用的分词算法,如BPE 分词算法,Token 可能并不一定与单词相同。

步骤一:词嵌入

首先,我们需要将句子中的每个词转换为词嵌入,假设我们得到了如下简化版的词嵌入向量(实际预训练模型的维度远高于此):

W{The} = [0.1, 0.2] W{cat} = [0.3, 0.4] W{sat} = [0.5, 0.6] W{on} = [0.7, 0.8] W{the} = [0.9, 1.0] W{mat} = [1.1, 1.2]

步骤二:位置嵌入

接下来,我们需要为每个词添加位置嵌入。我们可以根据上述公式计算出每个位置的嵌入向量。假设我们得到了如下位置嵌入向量(同样简化为2 维):

P_0 = [0.0, 1.0] P_1 = [0.8, 0.6] P_2 = [0.5, 0.8] P_3 = [0.2, 0.9] P_4 = [0.9, 0.4] P_5 = [0.7, 0.2]

步骤三:词嵌入 + 位置嵌入

现在,我们将词嵌入和位置嵌入相加,得到最终的输入向量。这一步操作使得每个词的表示不仅包含了其语义信息,还包含了它在句子中的位置信息。具体来说,我们有:

X{The} = W{The} + P_0 = [0.1, 0.2] + [0.0, 1.0] = [0.1, 1.2] X{cat} = W{cat} + P_1 = [0.3, 0.4] + [0.8, 0.6] = [1.1, 1.0] X{sat} = W{sat} + P_2 = [0.5, 0.6] + [0.5, 0.8] = [1.0, 1.4] X{on} = W{on} + P_3 = [0.7, 0.8] + [0.2, 0.9] = [0.9, 1.7] X{the} = W{the} + P_4 = [0.9, 1.0] + [0.9, 0.4] = [1.8, 1.4] X{mat} = W{mat} + P_5 = [1.1, 1.2] + [0.7, 0.2] = [1.8, 1.4]

词嵌入+位置嵌入

步骤四:隐藏层的输入

最终,这些带有位置信息的词嵌入向量XThe,Xcat,Xsat,Xon,Xthe,Xmat将作为 Transformer 模型的隐藏层的输入。通过这种方式,模型不仅能够理解每个词的语义,还能捕捉到它们在句子中的相对位置,从而更好地建模句子的结构和依赖关系。

  1. 总结

位置嵌入是现代 NLP 模型中不可或缺的一部分,它使得模型能够理解词语的顺序,进而提升对文本的理解能力。通过引入位置嵌入,Transformer 架构克服了传统自注意力机制对词序“不可知”的局限,为各种自然语言处理任务提供了强有力的支持。

普通人如何抓住AI大模型的风口?

领取方式在文末

为什么要学习大模型?

目前AI大模型的技术岗位与能力培养随着人工智能技术的迅速发展和应用 , 大模型作为其中的重要组成部分 , 正逐渐成为推动人工智能发展的重要引擎 。大模型以其强大的数据处理和模式识别能力, 广泛应用于自然语言处理 、计算机视觉 、 智能推荐等领域 ,为各行各业带来了革命性的改变和机遇 。

目前,开源人工智能大模型已应用于医疗、政务、法律、汽车、娱乐、金融、互联网、教育、制造业、企业服务等多个场景,其中,应用于金融、企业服务、制造业和法律领域的大模型在本次调研中占比超过30%。

随着AI大模型技术的迅速发展,相关岗位的需求也日益增加。大模型产业链催生了一批高薪新职业:

人工智能大潮已来,不加入就可能被淘汰。如果你是技术人,尤其是互联网从业者,现在就开始学习AI大模型技术,真的是给你的人生一个重要建议!

最后

只要你真心想学习AI大模型技术,这份精心整理的学习资料我愿意无偿分享给你,但是想学技术去乱搞的人别来找我!

在当前这个人工智能高速发展的时代,AI大模型正在深刻改变各行各业。我国对高水平AI人才的需求也日益增长,真正懂技术、能落地的人才依旧紧缺。我也希望通过这份资料,能够帮助更多有志于AI领域的朋友入门并深入学习。

真诚无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发

大模型全套学习资料展示

自我们与MoPaaS魔泊云合作以来,我们不断打磨课程体系与技术内容,在细节上精益求精,同时在技术层面也新增了许多前沿且实用的内容,力求为大家带来更系统、更实战、更落地的大模型学习体验。

希望这份系统、实用的大模型学习路径,能够帮助你从零入门,进阶到实战,真正掌握AI时代的核心技能!

01教学内容

  • 从零到精通完整闭环:【基础理论 →RAG开发 → Agent设计 → 模型微调与私有化部署调→热门技术】5大模块,内容比传统教材更贴近企业实战!

  • 大量真实项目案例:带你亲自上手搞数据清洗、模型调优这些硬核操作,把课本知识变成真本事‌!

02适学人群

应届毕业生‌:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。

零基础转型‌:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界‌。

业务赋能突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型‌。

vx扫描下方二维码即可

本教程比较珍贵,仅限大家自行学习,不要传播!更严禁商用!

03入门到进阶学习路线图

大模型学习路线图,整体分为5个大的阶段:

04视频和书籍PDF合集

从0到掌握主流大模型技术视频教程(涵盖模型训练、微调、RAG、LangChain、Agent开发等实战方向)

新手必备的大模型学习PDF书单来了!全是硬核知识,帮你少走弯路(不吹牛,真有用)

05行业报告+白皮书合集

收集70+报告与白皮书,了解行业最新动态!

0690+份面试题/经验

AI大模型岗位面试经验总结(谁学技术不是为了赚$呢,找个好的岗位很重要)

07 deepseek部署包+技巧大全

由于篇幅有限

只展示部分资料

并且还在持续更新中…

真诚无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发

http://www.jsqmd.com/news/210130/

相关文章:

  • MCP架构设计常见陷阱:90%工程师都会忽略的5个关键问题
  • 零基础学Docker:5分钟用AI创建你的第一个镜像
  • 专业电气设计plc仓库系统设计方案
  • 从入门到精通:收藏这份Anthropic构建高效AI智能体的完整指南,三层解决方案助你少走弯路!
  • 如何将阿里万物识别模型集成到自有项目中
  • 揭秘AI识图黑科技:如何用预置镜像快速复现顶级识别模型
  • FURION框架:AI如何革新.NET开发体验
  • 揭秘MCP平台下的云原生转型之路:如何3个月内完成传统应用现代化升级
  • 铠大师AI vs 传统开发:效率提升对比
  • LabelImg自动保存:定时备份万物识别标注进度
  • 婚礼摄影辅助:精彩瞬间AI自动抓拍系统
  • 低成本高效率!Hunyuan-MT-7B-WEBUI适合中小企业国际化落地
  • 揭秘量化交易:为什么“趋势跟踪”是散户的最佳选择?
  • Hunyuan-MT-7B能否部署在树莓派上?边缘计算尝试
  • 为什么你的MCP系统总出现通信中断?:根源竟是IP地址冲突!
  • Hunyuan-MT-7B与低代码平台如Dify集成可视化操作
  • 树莓派部署实验:超低功耗设备上的运行效果
  • BeautifulSoup爬取网页数据:从安装到实战提取全指南
  • 用AI加速API开发:POSTMAN中文版智能调试指南
  • 小白也能懂:用云端GPU轻松训练你的第一个识别模型
  • MCP云原生开发必知的12个核心技术组件(资深架构师内部分享)
  • MCP认证专家亲授:Azure容器部署全流程(从零到上线大揭秘)
  • 【好写作AI】“阴阳怪气”高级黑:如何用AI优雅地撰写辩论稿与评论
  • Windows Server自动化管理终极方案(基于MCP认证体系的PowerShell实践)
  • Hunyuan-MT-7B能否用于国际体育赛事实时播报翻译
  • 水产捕捞规格筛选:图像识别大小分级
  • 2026年最新流出!8款AI论文神器速测,维普查重一把过,AIGC痕迹全无!
  • 传统VS现代:音乐插件开发效率提升10倍的秘密
  • Hunyuan-MT-7B能否运行在消费级显卡上?显存需求实测
  • 导师严选2026 TOP8 AI论文软件:专科生毕业论文必备测评