<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>注意力机制 on KnightLi的博客</title>
        <link>https://www.knightli.com/tags/%E6%B3%A8%E6%84%8F%E5%8A%9B%E6%9C%BA%E5%88%B6/</link>
        <description>Recent content in 注意力机制 on KnightLi的博客</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <lastBuildDate>Sun, 17 May 2026 08:53:29 +0800</lastBuildDate><atom:link href="https://www.knightli.com/tags/%E6%B3%A8%E6%84%8F%E5%8A%9B%E6%9C%BA%E5%88%B6/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>2023-2026 大模型架构演进全复盘：分词器、位置编码、注意力机制、MoE、归一化与激活函数</title>
        <link>https://www.knightli.com/2026/05/17/llm-architecture-evolution-2023-2026/</link>
        <pubDate>Sun, 17 May 2026 08:53:29 +0800</pubDate>
        
        <guid>https://www.knightli.com/2026/05/17/llm-architecture-evolution-2023-2026/</guid>
        <description>&lt;p&gt;2023 到 2026 年，大模型架构看起来变化很多：分词器变大，位置编码换成 RoPE，注意力机制从 MHA 走向 GQA、滑动窗口和 MLA，MoE 重新成为主流，归一化和激活函数也从传统写法变成 RMSNorm、SwiGLU 这类组合。&lt;/p&gt;
&lt;p&gt;但如果用一句话概括，这几年的主线并不是“Transformer 被推翻了”，而是：在 Transformer 主体不变的前提下，围绕更长上下文、更低推理成本、更高训练效率和更强多语言能力做工程优化。&lt;/p&gt;
&lt;h2 id=&#34;先理解一张大图&#34;&gt;先理解一张大图
&lt;/h2&gt;&lt;p&gt;大模型可以先粗略拆成几层：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;分词器：把文字切成模型能理解的 token。&lt;/li&gt;
&lt;li&gt;位置编码：告诉模型每个 token 在句子里的位置。&lt;/li&gt;
&lt;li&gt;注意力机制：决定每个 token 要看哪些上下文。&lt;/li&gt;
&lt;li&gt;前馈网络：对每个位置做更复杂的非线性变换。&lt;/li&gt;
&lt;li&gt;归一化：让训练过程更稳定。&lt;/li&gt;
&lt;li&gt;激活函数：决定网络如何表达非线性关系。&lt;/li&gt;
&lt;li&gt;MoE：把一部分前馈网络拆成多个专家，每次只调用少数几个。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;2023-2026 年的演进，基本就是这些部件轮流被优化。&lt;/p&gt;
&lt;h2 id=&#34;分词器从能切词到更省-token&#34;&gt;分词器：从“能切词”到“更省 token”
&lt;/h2&gt;&lt;p&gt;分词器的任务，是把自然语言变成 token 序列。模型看到的不是“你好世界”四个字，而是一串 token ID。&lt;/p&gt;
&lt;p&gt;早期模型的分词器常常对英文更友好，对中文、代码、多语言文本不够省 token。同样一段中文或代码，如果被切得很碎，就会占用更多上下文窗口，也会增加训练和推理成本。&lt;/p&gt;
&lt;p&gt;这几年一个明显趋势是词表变大、多语言支持变强。Llama 3 使用 128K token 词表，Meta 明确提到这样可以更高效地编码语言，提高模型表现。Qwen、DeepSeek 等模型也很重视中文、代码和多语言场景下的 token 效率。&lt;/p&gt;
&lt;p&gt;零基础可以这样理解：分词器越合适，同样一句话越不容易被切得支离破碎，模型能在同样上下文长度里装下更多有效信息。&lt;/p&gt;
&lt;h2 id=&#34;位置编码rope-成为主流&#34;&gt;位置编码：RoPE 成为主流
&lt;/h2&gt;&lt;p&gt;语言是有顺序的。“狗咬人”和“人咬狗”词差不多，但位置不同，意思完全不一样。位置编码就是把顺序信息注入模型。&lt;/p&gt;
&lt;p&gt;早期 Transformer 使用绝对位置编码，位置 1、位置 2、位置 3 各有自己的向量。后来大模型更常用 RoPE，也就是 Rotary Positional Embedding。RoPE 的特点是把位置信息融合进注意力计算中，对长上下文扩展更友好。&lt;/p&gt;
&lt;p&gt;从 Llama 系列到很多开源模型，RoPE 已经成为事实标准之一。后来为了支持更长上下文，模型还会调整 RoPE 的 base frequency、做 RoPE scaling，或者配合滑动窗口、分块注意力等方案。&lt;/p&gt;
&lt;p&gt;简单说，RoPE 不是让模型“突然变聪明”，而是让模型在更长文本里更好地理解相对位置关系。&lt;/p&gt;
&lt;h2 id=&#34;注意力机制从-mha-到-gqa滑动窗口和-mla&#34;&gt;注意力机制：从 MHA 到 GQA、滑动窗口和 MLA
&lt;/h2&gt;&lt;p&gt;注意力机制是 Transformer 的核心。它让每个 token 可以根据当前任务，去关注上下文里最相关的 token。&lt;/p&gt;
&lt;p&gt;最经典的是 MHA，也就是 Multi-Head Attention。它会有多个注意力头，每个头学习不同的关注方式。问题是，模型越大、上下文越长，KV cache 占用越高，推理成本也越高。&lt;/p&gt;
&lt;p&gt;所以 2023 之后，注意力机制的主要优化方向是降低推理成本。&lt;/p&gt;
&lt;p&gt;GQA，也就是 Grouped-Query Attention，是非常重要的一步。它让多个 query head 共享较少的 key/value head，从而降低 KV cache 压力。Meta 在 Llama 3 中明确采用了 GQA，以提高推理效率。&lt;/p&gt;
&lt;p&gt;Mistral 7B 代表了另一个方向：滑动窗口注意力。它不让每个 token 都看完整历史，而是主要看附近窗口里的上下文，从而降低长序列计算压力。对于很多任务来说，局部上下文已经足够有用。&lt;/p&gt;
&lt;p&gt;DeepSeek-V2/V3 则把注意力优化推到更激进的方向：MLA，也就是 Multi-head Latent Attention。它的重点是压缩 KV cache，把推理时的显存压力降下来。DeepSeek-V3 技术报告把 MLA 和 DeepSeekMoE 列为架构核心。&lt;/p&gt;
&lt;p&gt;可以把这几种方法放在一起理解：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;MHA：经典做法，效果好但成本高。&lt;/li&gt;
&lt;li&gt;GQA：牺牲很少表达能力，明显降低 KV cache 成本。&lt;/li&gt;
&lt;li&gt;滑动窗口注意力：减少长上下文中全局注意力的计算压力。&lt;/li&gt;
&lt;li&gt;MLA：进一步压缩注意力缓存，面向高效推理。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;moe让模型参数很多但每次只用一部分&#34;&gt;MoE：让模型“参数很多，但每次只用一部分”
&lt;/h2&gt;&lt;p&gt;MoE 是 Mixture of Experts，中文常叫混合专家模型。&lt;/p&gt;
&lt;p&gt;普通 Dense 模型会在每个 token 上激活全部参数。MoE 的思路是：模型里放很多专家，但每个 token 只路由到少数几个专家。这样总参数量可以很大，但单次推理激活的参数量相对小。&lt;/p&gt;
&lt;p&gt;2023 年底的 Mixtral 8x7B 是 MoE 重新进入大众视野的重要节点。Mistral 的论文说明，Mixtral 8x7B 基本沿用 Mistral 7B 架构，但把每层前馈网络换成 8 个专家，并通过稀疏路由选择部分专家参与计算。&lt;/p&gt;
&lt;p&gt;后来的 DeepSeek-V3 进一步把 MoE 做成核心路线。它总参数量很大，但每个 token 只激活其中一部分参数，通过 DeepSeekMoE 降低训练和推理成本。Qwen3 等模型也同时提供 Dense 和 MoE 路线，说明 MoE 已经从“研究技巧”变成了主流工程选项。&lt;/p&gt;
&lt;p&gt;零基础可以这样理解：Dense 模型像一个全员开会的公司，任何问题都让所有人参与；MoE 像把公司分成多个专家小组，每次只叫最相关的小组来处理。&lt;/p&gt;
&lt;p&gt;MoE 的难点也很明显：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;路由器要学会把 token 分给合适专家。&lt;/li&gt;
&lt;li&gt;专家负载要均衡，不能所有 token 都挤到少数专家。&lt;/li&gt;
&lt;li&gt;分布式训练和推理会更复杂。&lt;/li&gt;
&lt;li&gt;总参数大，不等于每次推理都便宜，部署仍然有门槛。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;归一化rmsnorm-成为常见选择&#34;&gt;归一化：RMSNorm 成为常见选择
&lt;/h2&gt;&lt;p&gt;归一化的作用，是让神经网络中间层的数值分布更稳定。训练大模型时，如果数值波动太大，训练会更难收敛，也更容易不稳定。&lt;/p&gt;
&lt;p&gt;早期 Transformer 常用 LayerNorm。后来很多 Llama 系模型改用 RMSNorm。RMSNorm 相比 LayerNorm 更简化，不计算均值，只关注均方根尺度，计算更轻，也足够稳定。&lt;/p&gt;
&lt;p&gt;对普通读者来说，不需要记公式，只要知道：RMSNorm 是一种更轻量的稳定器。它不能单独决定模型能力，但会影响训练稳定性、速度和工程实现。&lt;/p&gt;
&lt;h2 id=&#34;激活函数从-relugelu-到-swiglu&#34;&gt;激活函数：从 ReLU/GELU 到 SwiGLU
&lt;/h2&gt;&lt;p&gt;激活函数负责给神经网络加入非线性能力。没有激活函数，多层网络很容易退化成线性变换。&lt;/p&gt;
&lt;p&gt;早期很多 Transformer 使用 GELU。Llama 系列、Mistral、Qwen、DeepSeek 等现代大模型中，更常见的是 SwiGLU 或类似 GLU 变体。SwiGLU 通常出现在前馈网络里，通过“门控”方式控制信息流。&lt;/p&gt;
&lt;p&gt;可以粗略理解为：普通激活函数像一个固定开关，而 SwiGLU 更像一个可学习的阀门。它不只是决定信息过不过，还能学习哪些信息更应该被放大。&lt;/p&gt;
&lt;p&gt;SwiGLU 的代价是前馈层结构稍复杂，参数和计算形式也不同，但在大模型实践中，它已经成为高性能架构的常见组件。&lt;/p&gt;
&lt;h2 id=&#34;2023-2026-的整体趋势&#34;&gt;2023-2026 的整体趋势
&lt;/h2&gt;&lt;p&gt;如果按时间线看，可以这样总结：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;2023：Llama、Mistral 7B、Mixtral 等开源模型让 RoPE、RMSNorm、SwiGLU、GQA、滑动窗口、MoE 等组合走向普及。&lt;/li&gt;
&lt;li&gt;2024：Llama 3、Qwen2.5、DeepSeek-V2/V3 等模型继续扩大词表、改进长上下文、强化推理效率，MoE 和高效注意力成为重点。&lt;/li&gt;
&lt;li&gt;2025：DeepSeek-V3/R1 引发更多人关注 MLA、DeepSeekMoE、FP8、MTP 等训练和推理效率设计，架构优化和系统工程深度绑定。&lt;/li&gt;
&lt;li&gt;2026：趋势仍然是高效化和工程化：Dense 模型继续追求稳定通用，MoE 模型负责扩大容量，高效注意力负责降低长上下文成本。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这几年最重要的变化，不是某个单点组件取代了 Transformer，而是大家越来越清楚：只堆参数不够，架构、数据、训练系统、推理服务必须一起优化。&lt;/p&gt;
&lt;h2 id=&#34;新手应该怎么学&#34;&gt;新手应该怎么学
&lt;/h2&gt;&lt;p&gt;如果你是零基础，不建议一开始就硬啃所有论文。更好的顺序是：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;先理解 Transformer 的基本结构：token、embedding、attention、FFN。&lt;/li&gt;
&lt;li&gt;再理解 RoPE、RMSNorm、SwiGLU 为什么会成为常见组合。&lt;/li&gt;
&lt;li&gt;接着看 GQA 和 KV cache，理解推理为什么会吃显存。&lt;/li&gt;
&lt;li&gt;再学 MoE，重点理解“总参数”和“激活参数”的区别。&lt;/li&gt;
&lt;li&gt;最后看 DeepSeek-V3、Mixtral、Llama 3 这类模型报告，把组件放回真实模型里理解。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;不要把这些名词当成孤立知识点。它们大多是在回答同一个问题：如何让模型更强，同时还能训练得起、部署得动、推理得快。&lt;/p&gt;
&lt;h2 id=&#34;总结&#34;&gt;总结
&lt;/h2&gt;&lt;p&gt;2023-2026 年的大模型架构演进，可以看成 Transformer 的工程成熟期。分词器负责减少 token 浪费，RoPE 负责更好表达位置，GQA、滑动窗口和 MLA 负责降低注意力成本，MoE 负责扩大容量但控制激活计算，RMSNorm 和 SwiGLU 则让训练和表达更稳定高效。&lt;/p&gt;
&lt;p&gt;对新手来说，最重要的不是背名词，而是抓住主线：现代大模型架构的每一次改动，几乎都在围绕成本、效率、上下文长度和可扩展性做权衡。&lt;/p&gt;
&lt;p&gt;参考链接：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://ai.meta.com/blog/meta-llama-3/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Meta：Introducing Meta Llama 3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://mistral.ai/en/news/mixtral-of-experts&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Mistral AI：Mixtral of experts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://arxiv.org/abs/2401.04088&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;arXiv：Mixtral of Experts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://arxiv.org/abs/2412.19437&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;arXiv：DeepSeek-V3 Technical Report&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://huggingface.co/deepseek-ai/DeepSeek-V3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Hugging Face：DeepSeek-V3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
