TransFormer--注意力机制:位置编码

TransFormer--注意力机制:位置编码

我们还是以I am good(我很好)为例。在RNN模型中,句子是逐字送入学习网络的。换言之,首先把I作为输入,接下来是am,以此类推。通过逐字地接受输入,学习网络就能完全理解整个句子。然而,Transformer网络并不遵循递归循环的模式。因此,我们不是逐字地输入句子,而是将句子中的所有词并行地输入到神经网络中。并行输入有助于缩短训练时间,同时有利于学习长期依赖。

不过,并行地将词送入Transformer,却不保留词序,它将如何理解句子的意思呢

Transformer也需要一些关于词序的信息,以便更好地理解句子。但这将如何做到呢?

对于给定的句子I am good,我们首先计算每个单词在句子中的嵌入值。嵌入维度可以表示为 d m o d e l d_{model} dmodel。比如将嵌入维度 d m o d e l d_{model} dmodel设为4,那么输入矩阵的维度将是[句子长度×嵌入维度],也就是[3 × 4]。

同样,用输入矩阵X(嵌入矩阵)表示输入句I am good。假设输入矩阵X如下图所示。

如果把输入矩阵X直接传给Transformer,那么模型是无法理解词序的。因此,需要添加一些表明词序(词的位置)的信息,以便神经网络能够理解句子的含义。所以,我们不能将输入矩阵直接传给Transformer。这里引入了一种叫作位置编码的技术,以达到上述目的。顾名思义,位置编码是指词在句子中的位置(词序)的编码。

位置编码矩阵P的维度与输入矩阵X的维度相同。在将输入矩阵直接传给Transformer之前,我们将使其包含位置编码。我们只需将位置编码矩阵P添加到输入矩阵X中,再将其作为输入送入神经网络,如下图所示。这样一来,输入矩阵不仅有词的嵌入值,还有词在句子中的位

置信息。

位置编码矩阵究竟是如何计算的呢?如下所示,Transformer论文"Attention Is All You Need"的作者使用了正弦函数来计算位置编码:

P ( p o s , 2 i ) = s i n ( p o s 1000 0 2 i / d m o d e l ) P(pos, 2i) = sin(\frac{pos}{10000^{ 2i / d_{model} }}) P(pos,2i)=sin(100002i/dmodelpos)

P ( p o s , 2 i + 1 ) = c o s ( p o s 1000 0 2 i / d m o d e l ) P(pos, 2i + 1) = cos(\frac{pos}{10000^{ 2i / d_{model} }}) P(pos,2i+1)=cos(100002i/dmodelpos)

在上面的等式中,pos表示该词在句子中的位置,i表示在输入矩阵中的 位置。下面通过一个例子来理解以上等式,如下图所示。

可以看到,在位置编码中,当i是偶数时,使用正弦函数;当i是奇数时,则使用余弦函数。通过简化矩阵中的公式,可以得出下图所示的结果。

我们知道I位于句子的第0位 ,am在第1位,good在第2位。代入pos值,我们得到下图所示的结果。

最终的位置编码矩阵P如下图所示。

只需将输入矩阵X与计算得到的位置编码矩阵P进行逐元素相加,并将得出的结果作为输入矩阵送入编码器中。

让我们回顾一下编码器架构。下图是一个编码器模块,从中我们可以看到,在将输入矩阵送入编码器之前,首先要将位置编码加入输入矩

阵中,再将其作为输入送入编码器。

以上就是位置编码的全部内容啦!

相关推荐
枫叶林FYL6 小时前
【强化学习】3 双系统持续强化学习:快速迁移与元知识整合架构手册
人工智能·机器学习·架构
189228048616 小时前
NY382固态MT29F32T08GSLBHL8-24QM:B
大数据·服务器·人工智能·科技·缓存
AI科技星6 小时前
哥德巴赫猜想1+1基于平行素数对等腰梯形网格拓扑与素数渐近密度的大偶数满填充完备性证明
人工智能·线性代数·架构·概率论·学习方法
GIS数据转换器6 小时前
农村生活污水治理智慧管控平台
大数据·人工智能·分布式·数据分析·生活·智慧城市
常威正在打来福6 小时前
frontend-design 入门指南:OpenClaw / Claude Code / Codex 三平台安装教程
人工智能·ai·ai编程
张登杰踩6 小时前
DINOv2 with Registers 系列模型详解:Giant 版本规格、Register Token 机制与使用指南
python·numpy
MediaTea6 小时前
AI 术语通俗词典:Dropout 层
人工智能
武子康6 小时前
调查研究-140 全球机器人产业深度调研报告【02篇】:全球机器人产业格局分析:五个阶段并存与商业化路径 2026
人工智能·ai·机器人·具身智能·智能化
木心术16 小时前
Windows系统下MySQL与AI工具集成方案:数据存储与调用实践
人工智能·windows·mysql
隐于花海,等待花开6 小时前
9. Python 文件与输入输出 深度解析
python