文章目錄
- 摘要
-
- **稀疏化與專家系統**
- **注意力機制優化**
- **歸一化與穩定性設計**
- 模型架構對比詳析
-
- DeepSeek-V3 vs Llama 4 Maverick
- Qwen3 vs SmolLM3
- Kimi 2的突破
- 1 DeepSeek V3/R1
-
- 1.1 多頭潛在注意力(MLA)
- 1.2 混合專家系統(MoE)
- 1.3 DeepSeek 總結
- 2 OLMo 2
-
- 2.1 歸一化層位置
- 2.2 QK-Norm
- 2.3 OLMo 2 總結
- 3 Gemma 3
- 3.1 滑動窗口注意力
- 3.2 Gemma 3的歸一化層位置
- 3.3 Gemma 3總結
- 3.4 彩蛋:Gemma 3n
- 4 Mistral Small 3.1
- 5 Llama 4
-
- 6 Qwen3
- 6.1 Qwen3(密集版)
- 6.2 Qwen3(MoE版)
- 7 SmolLM3
-
- 7.1 無位置嵌入(NoPE)
- 8 Kimi 2
- 總結與展望
摘要
本文系統性梳理了2025年主流開源LLM的架構創新,涵蓋從DeepSeek-V3到Kimi K2的代表性設計。這些模型在保持高效推理的同時,通過差異化技術路徑實現了性能突破,核心趨勢可歸納為以下三類:
稀疏化與專家系統
- 混合專家系統(MoE):DeepSeek-V3(671B)、Llama 4 Maverick(400B)、Qwen3(235B)均采用MoE架構,通過激活部分專家(如DeepSeek的9專家/2048隱藏層,Llama 4的2專家/8192隱藏層)平衡計算效率與模型容量。
- 動態路由:MoE通過路由模塊選擇激活專家,DeepSeek-V3在每層使用9專家,而Qwen3 235B-A22B則采用8專家設計,放棄共享專家(與DeepSeek-V3不同)。
注意力機制優化
- 多頭潛在注意力(MLA):DeepSeek-V3首創MLA替代傳統MHA,通過低秩投影減少KV緩存(37B激活參數 vs MHA的671B總參數),提升推理效率。
- 滑動窗口注意力(Sliding Window):Gemma 3(27B)采用局部注意力窗口(1024上下文),Mistral Small 3.1(24B)則回歸傳統GQA,推測因FlashAttention等優化庫更適配全局注意力。
- 無位置嵌入(NoPE):SmolLM3(3B)嘗試移除顯式位置編碼,依賴因果掩碼隱式學習順序,實驗顯示其長度泛化能力更優(序列延長時性能衰減更慢)。
歸一化與穩定性設計
- RMSNorm變體:
- OLMo 2采用后歸一化(Post-Norm),將RMSNorm置于注意力與前饋模塊后,結合QK-Norm(查詢鍵歸一化)穩定訓練。
- Gemma 3創新性采用前歸一化(Pre-Norm)與后歸一化混合設計,兼顧梯度穩定性與計算效率。
- 訓練優化:Kimi 2(1T參數)首次在萬億規模模型中采用Muon優化器替代AdamW,實現更平滑的損失衰減(盡管梯度L2范數分析顯示其平滑性未顯著超越OLMo 2)。
模型架構對比詳析
DeepSeek-V3 vs Llama 4 Maverick
維度 | DeepSeek-V3 | Llama 4 Maverick |
---|---|---|
總參數 | 671B | 400B |
激活參數 | 37B(9專家,2048隱藏層) | 17B(2專家,8192隱藏層) |
MoE層分布 | 除前3層外全采用MoE | 交替使用MoE與密集模塊 |
注意力機制 | MLA(多頭潛在注意力) | GQA(分組查詢注意力) |
Qwen3 vs SmolLM3
維度 | Qwen3 235B-A22B | SmolLM3 3B |
---|---|---|
架構類型 | MoE(8專家,無共享專家) | 密集(每4層省略RoPE) |
位置編碼 | RoPE(旋轉位置編碼) | NoPE(無顯式位置嵌入) |
性能亮點 | 32B-A3B/235B-A22B雙版本 | 3B規模下勝過更大模型(圖20) |
Kimi 2的突破
- 規模與創新:1T參數,采用DeepSeek-V3架構擴展(更多MoE專家、MLA頭數調整),訓練損失曲線衰減顯著(圖24)。
- 開源策略:繼Kimi 1.5(未公開權重)后,Kimi 2成為首個萬億級開源模型,性能比肩專有模型(Gemini、Claude、ChatGPT)。
1 DeepSeek V3/R1
你可能已經多次聽說過,2025年1月發布的DeepSeek R1引起了巨大反響。該模型是基于2024年12月推出的DeepSeek V3架構構建的推理型模型。
雖然本文聚焦2025年發布的架構,但我認為將DeepSeek V3納入討論是合理的,因為它在2025年伴隨DeepSeek R1的發布才獲得廣泛關注和應用。
如果你對DeepSeek R1的訓練細節感興趣,可以參考我今年早些時候發布的文章。
本節將重點分析DeepSeek V3引入的兩項關鍵架構技術,它們提升了計算效率并使其區別于其他LLM:
- 多頭潛在注意力(MLA)
- 混合專家系統(MoE)
1.1 多頭潛在注意力(MLA)
在討論多頭潛在注意力(MLA)之前,先簡要回顧相關背景以說明其動機。我們從分組查詢注意力(GQA)說起,它近年來已成為替代多頭注意力(MHA)的高效方案,在計算和參數效率上更具優勢。
以下是GQA的簡要總結:與MHA中每個注意力頭獨立擁有鍵(Key)和值(Value)投影不同,GQA通過讓多個頭共享同一組鍵和值投影來減少內存占用。
例如,假設有2個鍵值組和4個注意力頭(如圖2所示),頭1和頭2可能共享一組鍵和值,頭3和頭4則共享另一組。這減少了鍵值計算的總次數,從而降低內存消耗并提升效率(消融實驗表明,此舉對模型性能影響可忽略)。
因此,GQA的核心思想是通過讓多個查詢頭共享同一組鍵值頭,來減少鍵值頭的數量。這(1)降低了模型的參數數量,(2)減少了推理時鍵值張量對內存帶寬的占用——因為需要從KV緩存中存儲和檢索的鍵值數量更少。
(如果你對GQA的代碼實現感興趣,可以參考我的《GPT-2到Llama 3轉換指南》(無KV緩存版本)以及《KV緩存變種指南》。)
雖然GQA主要是對MHA的一種計算效率優化,但消融實驗(如原始GQA論文和Llama 2論文中的實驗)表明,其在LLM建模性能上與標準MHA相當。
而多頭潛在注意力(MLA)則提供了另一種節省內存的策略,且與KV緩存特別適配。與GQA共享鍵值頭不同,MLA在將鍵值張量存入KV緩存前,會先將其壓縮到低維空間。
如圖3所示,在推理時,這些壓縮后的張量會被投影回原始尺寸后再使用。這一操作增加了一次矩陣乘法,但減少了內存占用。
(附帶說明,查詢(queries)也會被壓縮,但僅在訓練期間,推理時不會。)
順便一提,MLA并非DeepSeek V3的新特性,因為其前身DeepSeek-V2也使用了(甚至引入了)它。
此外,V2論文中包含了一些有趣的消融實驗,可能解釋了為何DeepSeek團隊選擇MLA而非GQA(見圖4)。
如上圖4所示,GQA的性能似乎比MHA更差,而MLA的建模性能優于MHA,這可能就是DeepSeek團隊選擇MLA而非GQA的原因。(若能比較MLA與GQA在“每標記KV緩存”節省量上的差異,也會很有趣!)
總結本節內容,在進入下一個架構組件前:MLA是一項巧妙的技術,既減少了KV緩存的內存占用,又在建模性能上略微超越了MHA。
1.2 混合專家系統(MoE)
DeepSeek中另一個值得強調的主要架構組件是其使用的混合專家系統(MoE)層。雖然DeepSeek并非MoE的發明者,但該技術今年重新興起,且我們后續將討論的許多架構也采用了它。
你可能已經熟悉MoE,但快速回顧一下可能會有幫助。
MoE的核心思想是:將Transformer塊中的每個前饋(FeedForward)模塊替換為多個專家層,其中每個專家層本身也是一個前饋模塊。這意味著我們用多個前饋模塊替代了單個前饋模塊,如圖5所示。
Transformer塊內部的前饋模塊(如上圖中的深灰色塊)通常包含模型總參數的很大一部分。(注意:Transformer塊(因此前饋模塊)在大型語言模型中會多次重復;以DeepSeek-V3為例,重復了61次。)
因此,用多個前饋模塊替代單個前饋模塊(如MoE設置中所做的)會大幅增加模型的總參數數量。但關鍵技巧在于:我們不會對每個標記都使用(“激活”)所有專家。相反,路由模塊會為每個標記僅選擇一小部分專家。(為節省篇幅,路由模塊的