视频封面

视频元信息

  • 课程模块:Professionalization of Deep Learning(《优化深度神经网络》/改善深层神经网络)
  • 章节:3.1 参数调整过程(Hyperparameter Tuning Process)
  • 时长:约 7 分钟

内容摘要(TL;DR)

本节讲解深度学习超参数调优的系统化流程:先分清哪些超参数更重要(学习率 α 最重要),再讲调参采样策略——不要用网格搜索,要用随机采样,因为事先不知道哪个超参数最关键;最后介绍由粗到细(coarse-to-fine) 的搜索策略,先大范围粗采样,再聚焦最优区域密集采样。


一、深度学习中的超参数清单 [00:23]

本节开头指出,训练深度网络令人头疼的一点就是需要处理的超参数数量众多。视频中列举了以下超参数:

  • 学习率 α(learning rate)
  • 动量项 β(momentum term):使用动量梯度下降时涉及
  • Adam 优化算法的超参数:β₁、β₂、ε
  • 网络层数(number of layers)
  • 各层的隐藏单元数(number of hidden units)
  • 学习率衰减(learning rate decay):即不只用一个固定的 α
  • 小批量大小(mini-batch size)

易错点:很多人一开始会试图把所有超参数都同等对待、一起调,这会导致计算资源被大量浪费在无关紧要的参数上。

理解:这一节的核心铺垫是——超参数太多,不可能全部同等精细地调,必须分清主次、有策略地分配算力。


二、超参数的重要性分级 [01:06]

吴恩达给出了一套经验性的重要性排序,用颜色区分:

第一梯队(最重要,红色重点)

  • α(学习率):最重要的超参数,没有之一。在绝大多数应用中,调整 α 带来的收益最大。

第二梯队(橙色,仅次于 α)

  • 动量项 β:默认值 0.9 通常就不错
  • 小批量大小(mini-batch size):保证优化算法高效运行
  • 隐藏单元数(hidden units):也常需要调

第三梯队(紫色,次要)

  • 层数(number of layers):有时会带来巨大差异
  • 学习率衰减(learning rate decay)

几乎不用调(Adam 的 β₁、β₂、ε)

  • 吴恩达表示自己几乎从不调 β₁、β₂、ε,默认用:
    • β₁ = 0.9
    • β₂ = 0.99
    • ε = 10⁻⁸

提醒:以上排序不是铁律(not a hard-and-fast rule),其他深度学习从业者可能有不同直觉或不同看法。它只是帮助你分配调参精力的经验参考。

思考:为什么 α 最重要?因为学习率直接决定每步更新幅度——太大导致震荡不收敛,太小导致收敛极慢。它是"优化能否跑起来"的开关,而 Adam 的 ε 只是防止除零的数值稳定项,影响微乎其微。

拓展【拓展】:在 Adam 中,β₁ 控制一阶矩(动量)的指数衰减率,β₂ 控制二阶矩(梯度平方)的指数衰减率,ε 是防止分母为零的小常数。它们的设计初衷就是"鲁棒",因此在大多数任务上默认值即可,除非遇到极端梯度尺度问题才考虑微调 ε。


三、调参采样策略:网格搜索 vs 随机采样 [02:33]

在早期机器学习时代,若有两个超参数,常见做法是在网格上采样,例如画一个 5×5 的网格,系统性地尝试全部 25 个点,然后选表现最好的组合。

这种做法在超参数数量较少时效果尚可。

深度学习推荐做法:随机采样(Random Sampling)

在深度学习中,推荐随机选择点,同样取 25 个点,但随机分布,然后在这些随机点上尝试超参数。

为什么随机采样更好?——关键论证 [03:47]

核心原因:事先很难知道哪个超参数对当前问题最重要。

举一个极端例子:

  • 假设超参数 1 是 α(学习率)——非常重要
  • 假设超参数 2 是 Adam 中的 ε——几乎不重要

如果用网格搜索(5×5):

  • 你实际上只尝试了 5 个不同的 α 值
  • 而不同 ε 值给出几乎相同的结果(因为 ε 不重要)
  • 结果:训练了 25 个模型,却只试了 5 个 α 值——而 α 恰恰是最该多试的

如果用随机采样:

  • 你会尝试 25 个不同的 α 值
  • 因此更有可能找到一个真正好用的 α

考点(本节最核心结论):在深度学习中用随机采样,而不是网格搜索。 因为随机采样能让你对"最重要的那个超参数"探索到更多的取值,而事先你并不知道哪个最重要。

推导:网格搜索的问题是"维度耦合"——每个维度的采样点数被其他维度的网格数稀释。在 N 维、每维 k 个点的情况下,网格只有 k 个不同取值/维;而随机采样在相同总点数下,每维可得到接近 k^N 个不同取值。


四、多维情形:从正方形到立方体再到更高维 [04:43]

  • 2 个超参数:在正方形中搜索
  • 3 个超参数:在立方体中搜索(第三维是超参数 3)
  • 实践中可能搜索更多超参数

通过在三维立方体内随机采样,你能对每个超参数尝试更多的取值。由于事先不知道哪几个是关键超参数,随机采样能保证更充分地探索最重要超参数的取值空间。

理解:维度越高,网格搜索的劣势越明显——因为网格点数随维度指数增长,而随机采样在同等预算下对每个维度的覆盖更均匀。


五、由粗到细搜索(Coarse-to-Fine Search)[05:31]

另一种常见实践是由粗到细的搜索方案:

  1. 粗采样:先在较大范围内随机采样一批点
  2. 观察结果:发现某个点表现最好,且它周围几个点也表现不错
  3. 聚焦缩小:放大到该点附近更小的区域
  4. 密集采样:在这个小区域内更密集地采样

即:先对整个大方框做粗采样,确定最优区域后,再聚焦到小方框内密集搜索,把资源集中在"最可能藏着最优超参数"的区域。

最终选择标准:尝试不同超参数值后,选择在训练集目标或开发集(dev set) 上表现最好的那个值——取决于你在调参过程中想优化什么。

易错点:由粗到细是可选(optional) 的策略,不是必须。它的前提是你对"最优区域大概在哪"有了初步判断,否则盲目缩小范围可能错过全局最优。

思考:由粗到细本质上是一种"资源再分配"——把算力从低价值区域转移到高价值区域,类似贝叶斯优化的朴素版本。


六、本节两大核心要点总结 [06:46]

  1. 用随机采样,而不是网格搜索(use random sampling, not grid search)
  2. 考虑(可选)实现由粗到细的搜索流程(consider implementing a coarse-to-fine search process)

视频结尾预告:下一节将讨论如何在正确的尺度上对超参数采样(how to choose the right scale on which to sample your hyperparameters)——这涉及均匀分布 vs 对数分布等取值尺度问题。


关键标签 / 关键词

超参数调优、Hyperparameter Tuning、学习率 α、动量 β、Adam(β₁/β₂/ε)、隐藏单元数、层数、学习率衰减、小批量大小、随机采样、网格搜索、Grid Search、Random Sampling、由粗到细搜索、Coarse-to-Fine Search、开发集、吴恩达深度学习、改善深层神经网络


生成时间:2026-10-10 22:14:23 生成平台:VideoNote www.xygy.top