手撕 Transformer (1):Transformer 的结构拆解

在手撕 Transformer 之前,我们要先了解一下 Transformer 的结构。乍一看,它的结构有点复杂,其实还好。我们分开看就可以了,可以把 Transformer 看成四个部分:输入部分、输出部分、编码器部分、解码器部分。这篇文章不讲每个部分的作用只做拆解,每个部分的作用将在后续文章详细说明。可以带着问题去读后续文章。

输入部分

如下图所示,Transformer 的输入部分分为两部分,一部分是源文本嵌入层(图中 Inuput Embedding)+ 位置编码(图中 Positional Encoding),另一部分是目标文本嵌入层(图中 Output Embedding)+ 位置编码(图中 Positional Encoding)

输出部分

如下图所示,Transformer 的输出部分由 Linear 和 Softmax 组成。

编码器

如下图所示,Transformer 的编码器由 N 个编码器层(Encoder Layer)组成,每个编码器层由 2 个子层组成。第一个子层由一个多头自注意力 (Multi-Head Self-Attention,图中 Multi-Head Attention)和一个层归一化 (Layer Normalization,图中为 Norm),以及一个残差连接组成。第二个子层由一个前馈层 (图中 Feed Forward)和一个层归一化 (图中 Norm),以及一个残差连接组成。

解码器

如下图所示,Transformer 的解码器由 N 个解码器层(Decoder Layer)组成,每个解码器层由 3 个子层组成。第一个子层由一个掩码多头自注意力 (Masked Multi-Head Self-Attention,图中 Masked Multi-Head Attention)和一个层归一化,以及一个残差连接组成。第二个子层由一个多头注意力(不是自注意力,而是交叉注意力 ,图中 Multi-Head Attention)和一个层归一化,以及一个残差连接组成。第三个子层由一个前馈层 和一个层归一化,以及一个残差连接组成。

文章链接

相关推荐
fthux19 分钟前
“装闭”,让装修套路“装”不下去
人工智能·ai·开源·github·open source
andxe21 分钟前
安科士 AndXe 技术博客:400G QSFP112 SR4 光模块|AI 算力与超算短距互联最优方案
网络·人工智能·光模块·光通信
计算机魔术师1 小时前
Karpathy:用语音与LLM长谈可提升理解效率
人工智能·ai编程
甲维斯2 小时前
我要开始吹牛逼了!Kimi K3 “宇宙无敌”!
前端·人工智能
周末程序猿2 小时前
图解 120 个大语言模型(LLM)核心概念(61-90)
人工智能
科技圈快迅2 小时前
游戏投影仪和普通投影仪区别是什么?2026游戏投影仪测评
人工智能
陆枫Larry3 小时前
CPU 和 GPU 的核心区别与适用场景
人工智能
Aa99883343 小时前
AI视觉检测设备厂家的技术选型框架——密封件和磁材的缺陷分类与光学成像原理
人工智能
吴佳浩3 小时前
今天我们讲讲大模型的“核心”技术:蒸馏(Model Distillation)
人工智能·llm·agent