0%

cs336-大语言模型架构:趋同演化与设计共识

Stanford CS336 lecture 3

这份讲座深入探讨了现代语言模型(LM)架构与超参数的演进,核心主题是“趋同演化”(Convergent Evolution),即现代大模型在大量实践中逐渐达成了一套共识架构(通常被称为“Llama 风格”架构)。

Recap:

  1. 现代架构的共识 (Modern Consensus) 讲座指出,虽然早期有许多变体,但目前主流模型已在以下设计上统一:
  • 层归一化位置 (Pre-norm): 几乎所有模型都将 Layer Norm 放在残差连接之外、计算块之前。这样做的目的是保持残差路径的“洁净”,允许梯度直接传播,从而提高深度网络的训练稳定性。
  • RMS Norm: 取代了传统的 Layer Norm。它去掉了均值计算和偏置项,虽然在表达能力上没有显著提升,但通过减少内存移动 (Memory Movement) 显著提高了运行速度。
  • SwiGLU 激活函数: 现代模型普遍转向门控线性单元 (GLU) 变体,尤其是 SwiGLU。实验证明,在相同参数量下,门控机制能提供持续的性能增益。
  • RoPE (旋转位置编码): 已成为位置编码的事实标准。它通过旋转向量来实现相对位置不变性,且能较好地支持长文本外推。
  • 移除偏置项 (No Bias): 许多现代实现彻底去掉了线性层和归一化层中的偏置项,以简化系统并增强超大规模训练的稳定性。
  1. 超参数选择的“拇指法则” (Rules of Thumb) 讲座强调,大多数成功模型并非随意选择参数,而是遵循稳定的比例:
  • FFN 扩展比例: 对于非门控模型(如 ReLU)通常为 4x;对于 GLU 模型,为了保持参数匹配,通常缩小至约 2.66x (8/3)。
  • 纵横比 (Aspect Ratio): 模型宽度( \(d_{model}\) )与深度(层数)的比例在 100 左右 是性能和硬件效率的“甜点区”。
  • 词汇表大小: 生产级多语言系统已从早期的 30k-50k 扩展到 100k-250k 级别,以覆盖更多语言并降低非英语文本的推理成本。
  1. 训练稳定性与效率优化 针对超大规模模型(如处理千万级 Token 的 Llama 4)训练中的困难,近期出现了关键技术:
  • 稳定性干预:
    • Z-loss: 在 Softmax 层增加辅助损失,强制归一化因子接近 1,防止数值爆炸。
    • QK Norm: 在计算注意力得分前对 Q 和 K 进行归一化,控制 Softmax 的输入范围。
    • 软截断 (Soft Capping): 利用 tanh 限制 Logit 的最大值(常见于 Google Gemma 系列)。
  • 注意力效率与长文本:
    • GQA (分组查询注意力): 在多头注意力与多查询注意力(MQA)之间取得平衡,显著降低 KV Cache 的内存开销,提升推理速度。
    • 混合注意力模式: 现代长文本模型(如 Llama 4, Gemma 4)常采用全量注意力与滑动窗口注意力(Sliding Window Attention)交替的结构,以平衡全局视野与计算成本。
  1. 正则化逻辑的转变
  • Dropout 已过时: 在单次遍历(One Epoch)的大规模预训练中,不存在过拟合风险,Dropout 反而可能干扰优化。
  • Weight Decay 的新角色: 现在使用权重衰减并非为了防止过拟合,而是作为一种优化干预,通过与学习率衰减的交互来帮助模型收敛到更优的最小点。 总的来说,现代大模型的设计哲学正在从追求精巧的理论转向追求硬件友好性、系统吞吐量以及极大规模训练下的数值稳定性。