PBT并非加速grokking,而是逃离超参数死区

PBT不加速grokking,但能帮助模型逃离无解超参数死区。
一项在模97加法任务上的对照实验重新审视了PBT在grokking中的作用。实验发现,当网格搜索已覆盖好区域时,最佳固定配置仅需317步达到95%验证准确率,而PBT平均需要2667步,每个种子都更慢。然而,从没有任何固定配置能grokking的超参数死区出发,快速PBT实现了3/3逃逸成功,而固定配置和慢速PBT均失败。消融实验表明选择机制对维持grokking状态必要;调度回放实验进一步证明,是超参数轨迹本身携带结果,而非PBT的权重复制。作者据此提出,PBT应被视为“坏区域中的救援工具”而非加速器,但结论受限于单一任务、模型和划分。
引言:PBT 在 grokking 中的真实角色
最近,一项由 Reddit 用户分享的实验(代码与结果已开源)对 Population Based Training(PBT)在 grokking 现象中的作用提出了反直觉的结论:PBT 并不会让 grokking 发生得更快,但它能帮助模型逃离一个“没有任何配置会 grokking”的超参数死区。
Grokking 指的是模型在训练集上早已过拟合后,验证集准确率突然从随机水平跃升至接近完美的一种现象。此前不少工作尝试用 PBT 等超参数优化方法来加速这一过程。但这项实验通过系统的对照,给出了更细致的图景。
![reddit source: PBT doesn’t make grokking faster, but it can escape a hyperparameter range where nothing groks [P]](/media/screenshots/source/47696_0.png)
Grokking 现象最早由 Power 等人于 2022 年系统描述:在小型算法数据集(如模加法、排列组合)上训练神经网络时,模型会先在训练集上达到 100% 准确率,但验证集准确率长期停留在随机猜测水平;继续训练很久之后,验证准确率会突然跃升至接近完美。这种“延迟泛化”通常伴随权重范数下降和表示结构的突变,被视为理解神经网络隐式正则化的重要窗口。由于 grokking 出现的步数高度依赖超参数(尤其是权重衰减和学习率),研究者自然希望用超参数优化方法来缩短等待时间,PBT 便是被尝试的工具之一。
实验设置:模加法任务与二十分钟训练
作者在模 97 的模加法任务上训练一个小型 MLP,训练集仅占 35%,使用全批量训练,共 20k 步。PBT 群体大小为 20,每个成员同时搜索学习率(lr)和权重衰减(wd)。基线是一个等计算量的网格搜索,每个配置跑 3 个随机种子。
这个设置刻意保持简单,以便隔离 PBT 的效应。但作者也提醒:结论仅基于一个任务、一个模型、一个划分,泛化性有待验证。
Population Based Training(PBT) 是一种进化式超参数优化方法:它维护一组并行训练的模型(群体),定期根据验证集表现淘汰表现差的成员,让它们复制表现好的成员的权重,并对超参数施加随机扰动(如学习率乘以 0.5 或 2)。与网格搜索或贝叶斯优化不同,PBT 不独立评估每个配置,而是让超参数在训练过程中动态演化,因此能在计算预算内探索非平稳的超参数轨迹。其核心超参数包括群体大小、探索间隔(exploit interval)和扰动幅度,这些设置会显著影响 PBT 是“加速”还是“逃逸”。
关键发现一:PBT 并不比网格搜索更快
在“网格搜索的角落已经包含答案”的场景下,最佳固定配置达到 95% 验证准确率仅需 317 ± 29 步,而 PBT 平均需要 2667 ± 2244 步。在每个种子上,PBT 都更慢。
这说明当超参数空间中存在一个“好区域”且网格搜索能覆盖它时,PBT 的群体探索反而带来了额外开销。它的优势不在“加速”,而在“逃逸”。
关键发现二:从死区出发,PBT 能逃逸而固定配置不能
作者设计了一个“死区”:lr 在 1e-4 到 1e-3 之间,wd 在 0.01 到 0.08 之间。在这个范围内,没有任何固定配置能 grokking(0/3 成功)。从死区启动的 PBT 也并非都能成功:慢速 PBT(每若干步更新一次)0/3 成功,但快速 PBT(每 100 步更新,lr 乘 0.5 或 2)达到了 3/3 成功,平均约 6850 步。
快速 PBT 的路径很有启发性:lr 先降到下限,然后 wd 升到上限,最后 lr 再回升。早期验证损失偏好“低 lr × 高 wd”的组合,而这恰好是 grokking 的错误方向,后期信号才翻转。
消融实验:选择机制是必要的
作者进行了几项消融实验:
- 随机捐赠者(不基于适应度选择,只随机复制参数)仍然能逃逸,但更晚。
- 无选择机制时,成员们 grokking 后又失去了这个能力。
- 在 10 个种子上,宽随机搜索达到 95% 准确率的中位步数为 300 步,而从死区出发的 PBT 需要 6650 步。
- PBT 有时会塌缩到“lr 下限 / wd 上限”的角落并永远不离开。
这些结果说明,PBT 的逃逸能力部分来自其探索机制,但选择压力对于维持 grokking 状态至关重要。
超参数死区(dead zone) 指超参数空间中不存在任何固定配置能让模型成功 grokking 的连续区域。在这项实验中,死区由学习率 1e-4 到 1e-3、权重衰减 0.01 到 0.08 界定。死区的存在意味着,如果初始超参数落在此范围内,无论训练多久、换多少随机种子,固定配置都无法泛化。PBT 的价值在于它不要求初始点位于好区域:通过周期性的选择与扰动,群体可以逐步将超参数推离死区边界,进入能够 grokking 的区域。这与“加速好区域内的收敛”是两种完全不同的能力。
关键发现三:调度本身携带结果,而非权重复制
一个重要的验证是“回放”实验:将胜出的 lr/wd 调度固定下来,不使用 PBT,在全新初始化上运行。结果 55/60 达到 95% 准确率。而使用该调度几何均值的固定超参数,0/60 成功。
这意味着,是调度(schedule)本身携带了结果,而不是 PBT 的权重复制机制。PBT 发现了一条有效的超参数轨迹,但这条轨迹可以被独立复现。
调度回放(schedule replay) 是一种因果检验手段:把 PBT 运行过程中胜出成员所经历的超参数序列(学习率和权重衰减随时间的变化)完整记录下来,然后在不使用 PBT 的情况下,用该序列作为固定调度从头训练新模型。如果回放能达到与 PBT 相近的成功率,就说明起作用的是超参数轨迹本身,而非 PBT 的权重复制或群体交互。本实验中回放成功率为 55/60,而使用该调度几何均值的固定超参数成功率为 0/60,有力支持了“调度携带结果”的结论。
多源视角与共识
该实验与社区中关于 PBT 的讨论形成交叉验证。据 Reddit 原帖和作者的交互式图表,核心共识是:PBT 应被视为“坏范围中的救援工具”,而非“加速器”。
一个分歧点在于 PBT 的随机搜索对比:作者指出,在完全没有 grokking 区域的超参数范围内,PBT 理论上应优于随机搜索,但这项实验尚未测试该场景。因此,当前结论不能外推到“无解”范围。
实践启示与局限
对于实践者,这项实验传递了几个信号:
- 不要默认 PBT 能加速 grokking。如果网格搜索能覆盖好区域,固定配置可能更高效。
- PBT 适合作为死区逃逸工具。当先验知识表明初始超参数可能落在“无解区”时,PBT 的探索机制有价值。
- 调度回放是低成本验证手段。找到有效调度后,可以脱离 PBT 独立使用。
局限性也很明显:单一任务、单一模型、单一划分,每个测试仅 3 到 10 个种子,多数 p 值高于 0.05。回放的调度是事后赢家,存在选择偏差。作者坦承,尚未测试“完全无 grokking 区域”的范围,而这正是 PBT 理论上应胜出的场景。
结语
这项实验提醒我们,超参数优化工具的效果高度依赖上下文。PBT 不是万能的加速器,而是一把在特定困境中有效的钥匙。理解它何时有用、何时无用,比盲目套用更重要。
代码与全部结果已在 GitHub 开源,交互式图表可在作者网站查看。
相关推荐

WorkBuddy智能体一句话跑通GEO数据库挖掘全流程
WorkBuddy智能体实现GEO数据库挖掘全自动化:从数据搜索、下载整理到批次校正、差异分析、共表达网络、特征基因筛选及免疫浸润分析,一句话提示词即可生成完整生信分析报告,大幅降低生信分析门槛。

PC内存被浪费?Hacker News热议集中式数据中心之争
Hacker News用户提出个人电脑内存被浪费、应集中到数据中心的观点,引发关于集中式与分布式计算资源分配的讨论。本文分析该观点背后的逻辑、集中化的代价,以及AI时代内存资源分配的新张力。

合理使用为何惠及所有人?OpenAI 发布多方案例解读
OpenAI 公开多份法院简报摘录,汇集创作者、学者、无障碍倡导者与法律专家的观点,解读合理使用如何支撑 AI 训练与创新,并分析其对开发者与内容从业者的实际影响。