当前位置:首页 > AI技术 > 正文内容

带你搞懂 Transformer 的编码逻辑深度解析|Duuu笔记

admin3周前 (03-28)AI技术20

必须剖析Transformer编码器机制:一、词嵌入与位置编码相加注入词序;二、多头自注意力并行建模多类依赖;三、前馈网络引入非线性增强;四、多层堆叠实现层级语义演化;五、掩码机制约束信息流向。

如果您希望深入理解 AI 语言模型如何将输入文本转化为可计算的向量表示,并准确捕捉词序、语法与语义关系,则必须剖析 Transformer 架构中编码器(Encoder)的核心运作机制。以下是解析 Transformer 编码逻辑的关键步骤:

一、理解词嵌入与位置编码的协同作用

Transformer 不依赖循环或卷积结构,因此无法天然感知词序;它通过将词嵌入(Token Embedding)与位置编码(Positional Encoding)相加,为每个词注入其在序列中的绝对与相对位置信息,使模型具备处理变长序列的能力。

1、将输入句子按词元(token)切分,例如“AI 模型很强大”切分为 [“AI”, “模型”, “很”, “强大”, “

”]。

2、查表获取每个词元对应的 d_model 维向量(如 512 维),形成词嵌入矩阵。

3、生成预设公式计算的位置编码矩阵:对偶数维度使用 sin 函数,奇数维度使用 cos 函数,频率随位置指数衰减。

4、将词嵌入矩阵与位置编码矩阵逐元素相加,得到含位置信息的初始表示

二者必须维度相同且直接相加,不可拼接或替换

二、多头自注意力机制的并行计算路径

自注意力允许每个词元动态聚合上下文中所有词元的信息,而“多头”设计则让模型在不同子空间中独立学习多种依赖关系(如语法主谓、指代消解、修饰限定等),提升表征鲁棒性。

1、对输入矩阵 X 分别乘以三组可学习权重矩阵 W

Q

、W

K

、W

V

,得到查询(Q)、键(K)、值(V)矩阵。

2、将 Q 与 K

T

点积后缩放(除以 √d

k

),再经 softmax 得到注意力权重矩阵 A。

3、用 A 加权求和 V,输出单头注意力结果。

4、重复上述过程 h 次(如 h=8),各头使用独立参数,最后将 h 个输出拼接并通过线性层投影,得到最终多头输出

每个头关注不同语义粒度,拼接前不得归一化或平均

三、前馈神经网络的非线性增强结构

在自注意力输出之后接入两层全连接网络,引入强非线性变换能力,弥补注意力机制本身线性组合的局限,强化特征抽象与模式识别深度。

1、将多头注意力输出送入第一层线性变换,映射至隐藏层维度(通常为 4×d_model)。

独响

一个轻笔记+角色扮演的app

下载

2、应用 GELU 激活函数进行非线性映射。

3、再经第二层线性变换,还原至原始维度 d_model。

4、该模块前后均配有残差连接与 Layer Normalization,确保梯度稳定传播

LayerNorm 在特征维度上归一化,而非 batch 维度

四、编码器堆叠中的层级语义演化

单个编码器层仅能建模局部交互,多层堆叠使高层输出逐步融合更广范围的上下文,实现从词法→短语→句法→语义的渐进式抽象。

1、将输入序列依次通过 N 层(如 N=6)相同结构但参数独立的编码器模块。

2、每一层输出作为下一层输入,且每层内部均包含自注意力子层与前馈子层两个带残差的子块。

3、第 L 层输出的任一位置向量,已隐式编码了从第 1 层到第 L 层逐步聚合的跨距信息

层数越多,感受野越大,但并非线性叠加,存在信息稀释风险

五、掩码机制在编码阶段的隐式约束

标准 Transformer 编码器默认允许任意位置间双向交互,但实际任务中需通过掩码控制信息流向,确保训练目标与推理逻辑一致,尤其在编码-解码联合架构中至关重要。

1、若编码器用于仅编码任务(如 BERT),不启用任何掩码,所有位置可自由 attending。

2、若编码器与因果解码器联合训练(如 T5 的 encoder-decoder 模式),编码器仍无掩码,但需确保其输出不泄露未来 token 信息给解码器侧。

3、在特定变体(如 Encoder-Only 自回归建模)中,需手动添加上三角掩码于 QK

T

矩阵,强制单向依赖

掩码必须在 softmax 前施加,且值为 -∞(非 0)以消除非法位置影响

相关文章

Unity 机器学习 基础

ML-Agents 资产导入 Unity 场景创建 Unity 代码部分 Anaconda 执行 rollerball_config.yaml 机器学习逻辑处理...

使用 ESP

针对该分类问题,我们使用了 Kaggle 手势识别数据集 中的一个开源数据集。原始数据集包括 10 个类别,我们只使用了其中 6 个。这些类别更容易识别,且日常生活中更有用,如...

神经网络分类总结

从网络性能角度可分为连续型与离散型网络、确定性与随机性网络。 从网络结构角度可为前向网络与反馈网络。 从学习方式角度可分为有导师学习网络和无导师学习网络。 按连续突触性...

神经网络中的单层神经网络

神经网络是一种模拟人脑的神经网络以期能够实现类人工智能的机器学习技术。人脑中的神经网络是一个非常复杂的组织。成人的大脑中估计有1000亿个神经元之多。 看一个经典的神经网络。这是一个包...

跨平台机器学习:ML.NET架构及应用编程

平台上的一个机器学习框架,它提供了一套丰富的算法和工具,使得开发人员可以轻松地构建和部署机器学习模型。支持多种编程语言,包括等,这使得它成为跨平台机器学习的理想选择。的架构主要包括三个部分:数据读取、...

bp神经网络是什么网络,神经网络和bp神经网络

1、前馈神经网络:一种最简单的神经网络,各神经元分层排列。每个神经元只与前一层的神经元相连。接收前一层的输出,并输出给下一层.各层间没有反馈。 2、BP神经网络:是一种按照误差逆向传播...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。