Transformer深度解析:从经典架构到现代变种,一文读懂NLP大模型核心!
本文深入剖析了Transformer架构的核心原理从经典的Encoder-Decoder结构出发详细解释了Input Embedding、Positional Encoding、Multi-Head Attention、AddNorm、Feed Forward等关键组件的功能与作用。特别针对Decoder的Masked Multi-Head Attention和Encoder-Decoder Attention进行了重点阐述并通过实例说明了模型如何逐步生成输出。此外文章还对比了BERT、GPT、T5等现代模型的架构变体并探讨了当前大模型研究的趋势指出未来发展方向将更注重效率、长序列处理及推理能力提升。大家好我是小董哥。今天我们来一起了解一下Transfomer架构。上面这张图展示的是经典Transformer的Encoder-Decoder架构也就是论文Attention Is All You Need里最原始的结构。Transformer是一种基于注意力机制的深度学习模型架构自2017年被提出以来已在自然语言处理领域取得巨大成功并逐渐扩展到计算机视觉、生物序列建模、分子建模等多个领域。它最早主要用于机器翻译比如输入I love AI 输出我 喜欢 人工智能整张图可以分成三部分看左边Encoder负责理解输入右边Decoder负责生成输出上面Linear Softmax负责预测下一个token先看整体Transformer在做什么这张图的流程可以概括为输入文本 ↓ Input Embedding ↓ 加上Positional Encoding ↓ 进入Encoder多层 ↓ Encoder输出上下文表示向量 ↓ Decoder根据已生成内容 Encoder输出继续生成 ↓ Linear Softmax ↓ 输出下一个token的概率Encoder负责读懂原文Decoder负责根据原文一步步写出答案。左边Encoder负责理解输入图左边这一大块就是Encoder。它从底部开始Inputs ↓ Input Embedding ↓ Positional Encoding ↓ N × Encoder Block我们来详细走一遍这个流程Inputs输入tokens原始文本不会直接进入Transformer。比如一句话我喜欢大语言模型会先被tokenizer切成token我 / 喜欢 / 大语言 / 模型每个token再变成一个token ID。这些token ID才是模型真正处理的输入。Input Embedding把token变成向量图中的Input Embedding表示把token ID映射成向量。比如我 → [0.12, -0.33, 0.58, ...] 喜欢 → [0.41, 0.09, -0.72, ...]也就是说模型不能直接算文字它只能计算向量。Embedding的作用就是把离散的token编号变成连续的向量表示。Positional Encoding加入位置信息Transformer和RNN不一样。RNN是按顺序读的所以它天然知道谁在前、谁在后。但Transformer的Attention是同时看所有token。这就带来一个问题我 喜欢 你 你 喜欢 我这两句话用到的词差不多但顺序不同意思完全不同。所以Transformer必须额外加入位置信息。图里Input Embedding旁边有一个Positional Encoding然后通过一个加号⊕和embedding相加。意思是最终输入 token embedding position encoding可以简单理解为Embedding告诉模型这个token是什么Position Encoding告诉模型这个token在哪里。Encoder Block一个理解模块图中Encoder外面标了一个N×意思是这个Encoder Block会重复堆叠N次。在经典Transformer里N 6也就是6层Encoder Block。每个Encoder Block里有两个核心子层Multi-Head Attention Feed Forward每个子层后面都接一个Add Norm接下来我们来看一下每个Encoder Block里的几个东西Multi-Head Attention让token互相看Encoder里的Multi-Head Attention是多头自注意力Self-Attention。它的作用是让一句话里的每个token都去看其他token并判断谁对自己更重要。比如苹果 发布 了 新 手机当模型理解“苹果”时它会去看发布 新 手机如果“发布”和“手机”权重很高模型就更容易判断这里的“苹果”是苹果公司而不是水果。所以Self-Attention解决的是当前token应该参考上下文中的哪些token。为什么这里叫Multi-HeadMulti-Head的意思是多个注意力头。一个head可以理解成一种观察角度。比如一句话中不同head可能分别关注语法关系 语义关系 指代关系 远距离依赖 局部搭配关系一个head可能关注谁修饰谁另一个head可能关注谁和谁语义相关。所以Multi-Head Attention可以理解为多个注意力头从不同角度同时分析句子关系。AddNorm保留信息稳定训练图里每个子层后面都有AddNorm。它由两部分组成Add残差连接NormLayerNormAdd的意思是输出 子层输出 子层输入它的作用是保留原始信息。可以理解为子层负责学习新信息残差连接负责把原来的信息继续传下去。这样做可以缓解深层网络训练困难的问题。Norm层归一化Norm是LayerNorm。它的作用是让数值分布更稳定避免训练过程中某些数值过大或过小。Feed Forward对每个token进一步加工Encoder Block里的第二个模块是Feed Forward。它不是让token之间继续交流而是对每个token自己的表示进行加工。可以理解为Attention负责token和token之间的信息交互Feed Forward负责对每个token的信息进行非线性加工经典Transformer中Feed Forward通常是两个全连接层Linear ↓ ReLU ↓ Linear维度通常会先升高再降回来。比如原始论文中d_model 512 d_ff 2048也就是512 维 → 2048 维 → 512 维这样做可以增强模型表达能力。右边 Decoder负责生成输出图右边这一大块是Decoder。它的输入不是完整答案而是Outputs (shifted right)这个地方非常关键。Outputs shifted right是什么意思这也是很多人刚接触Transformer架构时容易迷糊的地方为什么Decoder右侧看起来有两个Output其实这两个Output不是一回事。图中下面的Outputs shifted right不是模型真正输出的结果而是Decoder的输入。它表示在训练Decoder时会把目标答案整体向右移动一位再送进Decoder让模型学习“根据前面的词预测下一个词”。在训练翻译任务时目标句子可能是我 喜欢 人工智能Decoder训练时不是一次性看到完整答案而是把输出序列右移一位。大概可以理解成输入给Decoderstart 我 喜欢 模型要预测 我 喜欢 人工智能也就是说Decoder学的是根据前面已经出现的token预测下一个token。这和GPT的训练方式很像。Outputs shifted right就是把正确答案错开一位输入给Decoder让它学会根据前文预测下一个词。Output Embedding Positional Encoding和Encoder 一样Decoder 输入也要先经过Output Embedding Positional Encoding也就是输出 token → 向量 再加上位置信息然后进入Decoder Block。Decoder Block比Encoder多一个模块图中Decoder Block里有三个核心子层Masked Multi-Head AttentionMulti-Head AttentionFeed Forward每个子层后面也都有Add Norm和Encoder相比Decoder多了一个中间的Attention。Masked Multi-Head Attention不能偷看未来Decoder的第一个模块是Masked Multi-Head Attention它和Encoder里的Self-Attention很像但多了一个Mask。Mask的作用是当前token只能看到自己和前面的token不能看到后面的token。比如目标句子是我 喜欢 人工智能当模型正在预测“喜欢”时它只能看到start 我不能提前看到人工智能否则就相当于考试时偷看答案。所以Masked Attention保证了模型是按顺序生成的。可以简单理解为Encoder可以看完整句子 Decoder只能看已经生成的部分中间的Multi-Head Attention连接Encoder和DecoderDecoder里的第二个Multi-Head Attention很重要。它不是普通的Self-Attention而是Encoder-Decoder Attention或者叫Cross-Attention它的作用是Decoder在生成输出时去参考Encoder对输入句子的理解结果。在图里可以看到左边Encoder的输出有一条线连到了右边Decoder中间的Multi-Head Attention。这表示Encoder的输出会作为Decoder的参考信息。这里的Q、K、V来源不一样Q来自DecoderK和V来自Encoder可以这样理解Decoder用Q提问我现在要生成下一个词应该参考输入句子的哪一部分Encoder用K和V提供信息这是我对输入句子的理解结果你可以来查。举个翻译例子输入I love AI 输出我 喜欢 ...当Decoder要生成“人工智能”时它会通过Cross-Attention去重点关注Encoder中与 “AI” 对应的信息。所以这个模块是Encoder和Decoder之间的桥梁。Feed Forward继续加工生成端的信息Decoder里的Feed Forward和Encoder里的Feed Forward作用一样。它负责对每个位置的表示进一步加工。可以理解为Attention负责找信息Feed Forward负责加工信息。顶部LinearSoftmax输出概率Decoder最后输出的仍然是一组向量。但我们最终要的是下一个token是谁所以还要经过图上方的两个模块Linear SoftmaxLinear映射到词表大小假设词表有50,000个token。Decoder输出的每个位置是一个向量比如 512维。Linear层会把这个向量映射成词表大小的分数512 维向量 → 50000个分数每个分数对应一个token。比如人工智能8.7 模型6.3 天气-1.2 苹果2.1 ......Softmax变成概率Softmax 会把这些分数变成概率。比如人工智能0.72 模型0.18 苹果0.04 天气0.01概率最高的token就可能被作为当前步的输出。这就是图最上面的Output Probabilities用一个翻译例子串起来假设任务是输入I love AI 输出我 喜欢 人工智能整个Transformer的工作过程是第一步Encoder读取输入I / love / AI ↓ Input Embedding ↓ 加 Positional Encoding ↓ 多层 Encoder Block ↓ 得到输入句子的上下文表示Encoder读完以后每个token都已经带有上下文信息。比如 “AI” 的表示里不只包含AI自己还包含它和 “I”“love” 的关系。第二步Decoder开始生成输出一开始Decoder输入start模型预测我下一步 Decoder 输入start 我模型预测喜欢下一步 Decoder 输入start 我 喜欢模型通过Cross-Attention去看Encoder的输出发现应该对应 “AI”于是预测人工智能最后生成完整结果我 喜欢 人工智能Transformer架构这张图里最容易混淆的几个点Encoder里的Attention和Decoder里的Attention不一样Encoder里的Attention是Self-Attention它只在输入句子内部计算token关系。Decoder里有两种AttentionMasked Self-Attention在输出句子内部看前文Encoder-Decoder Attention去看输入句子的编码结果Mask只在Decoder的自注意力里用图中Decoder最下面是Masked Multi-Head Attention。它的目的不是提高效果而是防止模型看到未来答案。Encoder不需要look-ahead mask因为Encoder是理解完整输入可以看全文。Add Norm不是一个小装饰很多人看图时会忽略Add Norm。但它非常重要。没有残差连接和LayerNorm深层Transformer会更难训练。它们的作用是残差连接保留信息缓解梯度问题LayerNorm稳定数值加快训练Positional Encoding是必须的因为Attention本身不关心顺序。如果没有位置编码模型很难区分类似这样的我喜欢你 你喜欢我所以位置信息必须额外加进去。为什么现在很多大模型图和这张不一样这张图是经典Encoder-Decoder Transformer。但现在的大模型会根据任务不同采用不同变体。BERT主要用左边EncoderBERT主要做理解任务比如分类、匹配、实体识别。它更像是只使用图左边的Encoder。特点是能双向看完整输入 适合理解任务GPT主要用右边Decoder的一部分GPT是Decoder-only架构。它主要使用带mask的自注意力不使用图中的Encoder-Decoder Attention。它的目标是根据前文预测下一个token所以GPT更适合生成任务。T5使用 Encoder-DecoderT5这类模型更接近这张图的完整结构。它把任务统一成文本到文本输入文本 → 输出文本比如翻译、摘要、问答都可以用这种结构处理。Encoder把输入句子读成一组带上下文的向量Decoder一边看已经生成的内容一边参考Encoder的理解结果逐步预测下一个token最后通过Linear和Softmax得到词表中每个token的概率。Encoder负责理解Decoder负责生成Attention负责找关系Feed Forward负责加工信息Add Norm负责稳定训练Positional Encoding负责告诉模型顺序Linear Softmax负责预测下一个token这就是经典Transformer架构的核心逻辑。Transformer仍然是大模型的核心架构但大家并没有停止改进。现在的架构研究主要包括更高效的Attention长序列建模MoE混合专家模型状态空间模型混合架构稀疏计算低成本推理结构目的不是简单推翻Transformer而是在保留其优势的基础上让模型更快、更省、更适合长上下文和复杂任务。这里说一下混合架构可以简单理解为别人发明了用筷子或者勺子吃饭你发明了用筷子夹着勺子吃饭。但是你得证明你的发明有价值比如吃的更快了或者同样的饭吃的更香。当前大模型研究已经从规模竞赛进入能力结构化提升阶段。模型参数仍然重要但已经不是唯一核心。真正的创新开始转向推理能力、多模态理解、长上下文、工具调用、知识增强、垂域适配、低成本部署和安全可控。最后我在一线科技企业深耕十二载见证过太多因技术更迭而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我整理出这套 AI 大模型突围资料包✅AI大模型学习路线图✅Agent行业报告✅100集大模型视频教程✅大模型书籍PDF✅DeepSeek教程✅AI产品经理入门资料完整的大模型学习和面试资料已经上传带到CSDN的官方了有需要的朋友可以扫描下方二维码免费领取【保证100%免费】为什么说现在普通人就业/升职加薪的首选是AI大模型人工智能技术的爆发式增长正以不可逆转之势重塑就业市场版图。从DeepSeek等国产大模型引发的科技圈热议到全国两会关于AI产业发展的政策聚焦再到招聘会上排起的长队AI的热度已从技术领域渗透到就业市场的每一个角落。智联招聘的最新数据给出了最直观的印证2025年2月AI领域求职人数同比增幅突破200%远超其他行业平均水平整个人工智能行业的求职增速达到33.4%位居各行业榜首其中人工智能工程师岗位的求职热度更是飙升69.6%。AI产业的快速扩张也让人才供需矛盾愈发突出。麦肯锡报告明确预测到2030年中国AI专业人才需求将达600万人人才缺口可能高达400万人这一缺口不仅存在于核心技术领域更蔓延至产业应用的各个环节。资料包有什么①从入门到精通的全套视频教程⑤⑥包含提示词工程、RAG、Agent等技术点② AI大模型学习路线图还有视频解说全过程AI大模型学习路线③学习电子书籍和技术文档市面上的大模型书籍确实太多了这些是我精选出来的④各大厂大模型面试题目详解⑤ 这些资料真的有用吗?这份资料由我和鲁为民博士共同整理鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。所有的视频教程由智泊AI老师录制且资料与智泊AI共享相互补充。这份学习大礼包应该算是现在最全面的大模型学习资料了。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念通过动态追踪大模型开发、数据标注伦理等前沿技术趋势构建起前沿课程智能实训精准就业的高效培养体系。课堂上不光教理论还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作把课本知识变成真本事如果说你是以下人群中的其中一类都可以来智泊AI学习人工智能找到高薪工作一次小小的“投资”换来的是终身受益应届毕业生无工作经验但想要系统学习AI大模型技术期待通过实战项目掌握核心技术。零基础转型非技术背景但关注AI应用场景计划通过低代码工具实现“AI行业”跨界。业务赋能 突破瓶颈传统开发者Java/前端等学习Transformer架构与LangChain框架向AI全栈工程师转型。获取方式有需要的小伙伴可以保存图片到wx扫描二v码免费领取【保证100%免费】**