mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
613 字
2 分钟
PaLM 与 Scaling Law:大模型时代的开启
2025-05-10

2022 年,Google 发布了 PaLM(Pathways Language Model)。

这是一个拥有 5400 亿参数的巨型模型,不仅刷新了多项 SOTA,更重要的是验证了 Scaling Law:当模型足够大时,能力会非线性增长。

PaLM 标志着大模型时代的正式开启。

本文要点#

  • PaLM 论文背景与动机
  • Pathways 系统架构
  • 540B 模型设计
  • Scaling Law 验证
  • 涌现能力的发现
  • BIG-bench 基准测试

一、论文背景#

1.1 研究动机#

flowchart TB subgraph PaLM想要回答的问题 A[2022 年前的困惑] A --> A1[模型规模增长能带来多大提升?] A --> A2[Scaling Law 在多大程度上成立?] A --> A3[大模型是否有「涌现」能力?] B[Google 的尝试] B --> B1[构建当时最大的稠密语言模型] B --> B2[使用新的训练系统(Pathways)] B --> B3[系统性研究规模与能力的关系] C[核心发现] C --> C1[Scaling Law 在极大规模下依然成立] C --> C2[某些能力只在足够大的模型中出现] C --> C3[思维链推理能力显著提升] end

1.2 论文信息#

论文:PaLM: Scaling Language Modeling with Pathways
作者:Aakanksha Chowdhery, Sharan Narang, Jacob Devlin,
Maarten Bosma, Gaurav Mishra, ... (Google Research)
机构:Google Research
发表:2022 年
引用:5000+ 次

二、Pathways 系统#

2.1 设计目标#

flowchart TB subgraph 传统训练系统 A1[单任务模型] --> B1[孤立的 TPU 集群] A2[另一任务模型] --> B2[另一 TPU 集群] A3[更多任务模型] --> B3[更多集群] end subgraph Pathways 系统 C[统一的大模型] --> D[共享的 TPU Pod] D --> E[高效的多任务训练] E --> F[动态资源分配] end style C fill:#4285f4,color:#fff style D fill:#34a853,color:#fff
flowchart TB subgraph Pathways系统特点 A[大规模并行训练] A --> A1[6144 TPU v4 芯片] A --> A2[数据并行 + 模型并行] A --> A3[训练速度:57B tokens/小时] B[高效的通信] B --> B1[自定义高速互联] B --> B2[优化的梯度同步] C[容错设计] C --> C1[自动故障恢复] C --> C2[Checkpoint 管理] D[可扩展性] D --> D1[支持未来更大规模模型] D --> D2[灵活的资源配置] E[训练效率] E --> E1[训练时长:约 50 天] E --> E2[吞吐量:约 46.2% 硬件利用率] end

2.2 并行策略#

# PaLM 的并行策略
# 1. 数据并行
# 将批次数据分配到不同设备
data_parallel_size = 6144 // (model_parallel_size * pipeline_parallel_size)
# 2. 模型并行(张量并行)
# 将单层的计算分布到多个设备
model_parallel_size = 12 # 每层分到 12 个设备
# 3. 流水线并行
# 将不同层分配到不同设备
pipeline_parallel_size = 1 # PaLM 未使用流水线并行
# 总并行度
# 6144 = 12 * 512 (model_parallel * data_parallel)

三、PaLM 模型设计#

3.1 模型规格#

flowchart TB subgraph PaLM模型配置 A[核心参数] A --> A1[参数量:540B(5400 亿)] A --> A2[层数:118] A --> A3[隐藏维度:18432] A --> A4[注意力头:48] A --> A5[头维度:384] A --> A6[词汇表:256K] B[训练配置] B --> B1[训练数据:780B tokens] B --> B2[数据来源:网页、书籍、代码、对话、维基百科] B --> B3[上下文长度:2048] B --> B4[训练步数:255K] C[架构特点] C --> C1[Transformer Decoder only] C --> C2[SwiGLU 激活函数] C --> C3[Parallel Attention(注意力和 FFN 并行)] C --> C4[Multi-Query Attention] C --> C5[RoPE 位置编码] C --> C6[无偏置项] end

3.2 架构创新#

flowchart TB subgraph 传统 Transformer A1[LayerNorm] --> B1[Attention] B1 --> C1[残差连接] C1 --> D1[LayerNorm] D1 --> E1[FFN] E1 --> F1[残差连接] end subgraph PaLM 并行结构 G1[LayerNorm] --> H1[Attention] G1 --> I1[FFN] H1 --> J1["并行求和"] I1 --> J1 J1 --> K1[残差连接] end style J1 fill:#ea4335,color:#fff
flowchart TB subgraph PaLM架构创新 A[SwiGLU 激活函数] A --> A1[GLU(Gated Linear Unit)变体] A --> A2[性能优于 ReLU 和 GELU] A --> A3["FFN(x) = Swish(xW₁) ⊙ (xW₂)"] B[Parallel Attention] B --> B1[注意力和 FFN 并行计算而非串行] B --> B2[减少 LayerNorm 次数] B --> B3[训练更稳定,效率更高] C[Multi-Query Attention] C --> C1[多个 Query 共享一组 Key 和 Value] C --> C2[减少内存占用] C --> C3[推理速度更快] D[RoPE 位置编码] D --> D1[旋转位置嵌入] D --> D2[更好的长度外推能力] E[无偏置项] E --> E1[简化模型] E --> E2[训练更稳定] end

四、Scaling Law 验证#

4.1 Scaling Law 理论#

Kaplan et al. (2020) 提出的 Scaling Law:
L(N) = (N_c/N)^α_N
其中:
• L:损失
• N:参数量
• N_c, α_N:常数
核心结论:
• 损失随参数量幂律下降
• 模型性能可预测
• 「大力出奇迹」有理论支撑

4.2 PaLM 的验证#

xychart-beta title "模型规模与性能关系" x-axis ["8B", "62B", "540B"] y-axis "平均准确率 %" 20 --> 70 bar [28, 45, 65]
flowchart TB subgraph PaLM Scaling验证结果 A[不同规模模型对比] A --> A1["8B: MMLU 25%, 基线"] A --> A2["62B: MMLU 39%, +56%"] A --> A3["540B: MMLU 55%, +132%"] B[关键发现] B --> B1[性能随规模平滑提升] B --> B2[大模型的提升幅度更大] B --> B3[某些能力只在大模型涌现] C[与预测的对比] C --> C1[实际性能略高于 Scaling Law 预测] C --> C2[可能是数据质量和训练效率的提升] end

五、涌现能力#

5.1 什么是涌现能力?#

flowchart TB A["模型规模增长"] --> B{能力变化} B --> C["线性增长:常规能力"] B --> D["非线性跳跃:涌现能力"] D --> E["算术推理"] D --> F["多步逻辑"] D --> G["代码生成"] D --> H["语言理解"] style D fill:#ea4335,color:#fff
flowchart TB subgraph 涌现能力特点 A[定义] A --> A1[小模型不具备,大模型突然出现的能力] B[特征] B --> B1[非线性增长:性能曲线出现「跃迁」] B --> B2[难以预测:无法从小模型外推] B --> B3[任务特异性:不同任务的涌现阈值不同] C[典型涌现任务] C --> C1[算术运算:~10B 开始涌现] C --> C2[多步推理:~100B] C --> C3[思维链推理:~100B 显著提升] C --> C4[代码生成:~10B] D[PaLM 的涌现表现] D --> D1[BIG-bench 中 25% 的任务展现涌现] D --> D2[思维链推理能力大幅提升] D --> D3[多语言能力显著增强] end

5.2 思维链推理#

# PaLM 的思维链推理示例
# 问题
question = """
Roger has 5 tennis balls. He buys 2 more cans of tennis balls.
Each can has 3 tennis balls. How many tennis balls does he have now?
"""
# 标准回答(无思维链)
standard_answer = "11"
# 思维链回答
cot_answer = """
Roger started with 5 tennis balls.
2 cans of 3 tennis balls each is 2 × 3 = 6 tennis balls.
5 + 6 = 11 tennis balls.
The answer is 11.
"""
# PaLM 540B 结果:
# 无思维链:约 17% 准确率
# 有思维链:约 56% 准确率
# 提升超过 3 倍!
xychart-beta title "思维链对数学推理的影响" x-axis ["GPT-3 175B", "PaLM 62B", "PaLM 540B"] y-axis "准确率 %" 0 --> 60 bar [17, 15, 17] line [55, 36, 56]

六、BIG-bench 基准测试#

6.1 BIG-bench 简介#

BIG-bench (Beyond the Imitation Game benchmark):
• Google 主导的综合性基准
• 200+ 任务
• 涵盖语言学、推理、知识、常识等
• 专门设计用于测试涌现能力

6.2 PaLM 在 BIG-bench 的表现#

flowchart TB subgraph BIG-bench关键结果 A[总体性能] A --> A1[PaLM 540B 平均超越人类评估者] A --> A2[在 58% 的任务上达到或超过人类中位数] B[涌现能力示例] B --> B1[解释笑话] B1 --> B1a[需要理解隐含意义和幽默] B1 --> B1b[540B 显著优于小模型] B --> B2[情感分析(讽刺检测)] B2 --> B2a[需要理解上下文和言外之意] B2 --> B2b[大模型表现优异] B --> B3[数学推理] B3 --> B3a[多步计算需要推理能力] B3 --> B3b[思维链提示显著提升] B --> B4[代码理解] B4 --> B4a[需要程序逻辑理解] B4 --> B4b[540B 接近专业程序员水平] end

七、多语言与代码能力#

7.1 多语言能力#

flowchart TB subgraph PaLM多语言能力 A[训练数据多语言分布] A --> A1[英语:约 80%] A --> A2[其他语言:约 20%] A --> A3[涵盖 100+ 语言] B[翻译能力] B --> B1[英译外:与专业翻译系统可比] B --> B2[外译英:接近人类水平] B --> B3[低资源语言:显著优于小模型] C[多语言问答] C --> C1[高资源语言:接近英语水平] C --> C2[低资源语言:仍有差距但提升明显] end

7.2 代码能力#

xychart-beta title "HumanEval 代码生成通过率" x-axis ["GPT-3", "Codex 12B", "PaLM 62B", "PaLM 540B"] y-axis "通过率 %" 0 --> 40 bar [0, 28, 26, 36]
代码能力亮点:
• 训练数据包含大量代码
- GitHub 开源代码
- 编程教程和文档
• 编程语言覆盖
- Python, Java, JavaScript, C++, Go 等
- 多语言代码理解
• 任务能力
- 代码补全
- 代码解释
- Bug 修复
- 代码翻译

八、与其他大模型对比#

flowchart TB subgraph 2022年大模型对比 A[GPT-3] A --> A1[175B] A --> A2[43.9%] A --> A3[Few-Shot] B[Gopher] B --> B1[280B] B --> B2[44.4%] B --> B3[DeepMind] C[Chinchilla] C --> C1[70B] C --> C2[51.2%] C --> C3[计算最优] D[PaLM] D --> D1[540B] D --> D2[55.0%] D --> D3[涌现能力] E[PaLM-2] E --> E1[~340B] E --> E2[~62%] E --> E3[多语言增强] end

8.1 PaLM 的优势#

1. 规模最大
• 540B 参数,当时最大
• 充分验证 Scaling Law
2. 训练高效
• Pathways 系统支持
• 高硬件利用率
3. 涌现能力
• 思维链推理显著提升
• 多项任务展现涌现
4. 多能力
• 语言、代码、推理、多语言
• 综合能力强

九、对后续研究的影响#

flowchart TB subgraph PaLM的深远影响 A[技术层面] A --> A1[验证了大规模模型的可行性] A --> A2[发现了涌现能力现象] A --> A3[推动了 Scaling Law 研究] B[工程层面] B --> B1[Pathways 系统成为训练大模型的范式] B --> B2[并行训练策略被广泛采用] B --> B3[高效训练成为可能] C[研究方向] C --> C1[涌现能力的机制研究] C --> C2[思维链提示技术] C --> C3[多模态扩展] D[后续模型] D --> D1[PaLM-2:更强的多语言能力] D --> D2[Gemini:多模态融合] D --> D3[GPT-4:涌现能力进一步提升] end

常见问题 FAQ#

Q1:PaLM 和 GPT-3 哪个更强?

A:PaLM 540B 在大多数基准上超越 GPT-3 175B,尤其在推理和代码能力上。但 PaLM 未公开 API,实际应用较少。

Q2:为什么 PaLM 用 Decoder only?

A:Decoder only 架构更简单,规模化更容易,且 GPT 系列已证明了其有效性。Google 也有 Encoder-Decoder 的 T5。

Q3:Pathways 系统有什么独特之处?

A:Pathways 支持超大模型的高效训练,实现了 6144 TPU v4 的协调工作,是训练 PaLM 的基础设施保障。

Q4:涌现能力是如何被发现的?

A:通过对比不同规模模型在各种任务上的表现,发现某些任务在模型达到一定规模后性能突然跃升。

Q5:PaLM 可以本地部署吗?

A:PaLM 未开源,无法本地部署。但 Google 通过 API 提供服务,也有蒸馏版本可供研究。


小结#

PaLM 验证了 Scaling Law,发现了涌现能力,开启了真正的大模型时代。

核心贡献:

flowchart TB subgraph PaLM核心总结 A[540B 参数] --> A1[当时最大规模的稠密语言模型] B[Pathways] --> B1[高效的大规模训练系统] C[Scaling Law] --> C1[验证了规模与性能的关系] D[涌现能力] --> D1[发现并定义了这一重要现象] E[思维链推理] --> E1[显著提升复杂推理能力] end

「大力出奇迹」在 PaLM 上得到了充分验证。


参考资料#

支持与分享

如果这篇文章对你有帮助,欢迎支持作者或分享给更多人

PaLM 与 Scaling Law:大模型时代的开启
https://blog.souloss.com/posts/machine-learning/llm-paper-history/palm-and-scaling-law/
作者
Souloss
发布于
2025-05-10
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时