线性回归:超参数

超参数是变量 可以控制训练的不同方面。三个常见的超参数包括:

相比之下,参数则是 作为模型本身一部分的变量,例如权重和偏差。在 换言之,超参数是您可以控制的值;参数是值 模型在训练期间计算的值。

学习速率

学习速率为 您设置的浮点数,它会影响 收敛。如果学习速率过低,模型可能需要很长时间 进行收敛。但是,如果学习速率过高, 会收敛,但会围绕权重和偏差弹跳,从而最大限度减少 损失。我们的目标是选择合适的学习速率 能够快速收敛。

学习速率决定了权重变化的幅度 和偏差。模型会相乘, 根据学习速率确定梯度,以确定模型的参数(权重 和偏差值)进行下一次迭代。在梯度的第三步中, 下降、“少量”朝着这个方向前进 负斜率表示学习速率。

旧模型参数与新模型参数之间的区别如下: 与损失函数的斜率成正比。例如,如果斜率为 那么模型会走一大步。如果较小,则需执行一小步。对于 假设梯度的幅度为 2.5,学习速率为 0.01,那么 模型会将该参数更改 0.025。

理想的学习速率有助于模型在合理的数量内收敛 迭代。在图 21 中,损失曲线显示该模型 在开始收敛之前的前 20 次迭代中有所改进:

图 21显示趋于平缓的陡坡的损失曲线。

图 21. 损失图,显示使用学习速率训练的模型, 会快速收敛。

相比之下,如果学习速率过小,可能需要进行太多迭代, 收敛。在图 22 中,损失曲线显示该模型仅产生少量 每次迭代后改进的方面:

图 22.显示接近 45 度斜率的损失曲线。

图 22. 显示使用小学习速率训练的模型的损失图。

过大的学习速率永远不会收敛,因为每次迭代 导致损失反弹或不断增加。在图 23 中, 曲线显示,模型在每次迭代后损失逐渐减小,然后逐渐增大, 在图 24 中,损失在之后的迭代中有所增加:

图 23显示上/下锯齿线的损失曲线。

图 23. 损失图,显示使用 损失曲线会急剧变化, 迭代次数增加。

图 24损失曲线,显示损失在后续迭代中增加

图 24. 损失图,显示使用 损失曲线在以后的迭代中急剧增加。

练习:检查您的理解情况

理想的学习速率是多少?
理想的学习速率取决于问题。
每个模型和数据集都有自己的理想学习速率。
0.01
1.0 版

批次大小

批量大小是一个超参数, 指的是模型在更新权重之前处理的样本数 和偏差。您可能认为,模型应该计算每个 样本,然后再更新权重和偏差。但是,当 数据集包含数十万甚至数百万个样本, 全批量并不现实。

两种常用方法,无需 先查看数据集中的每个样本,然后再更新权重和偏差, 随机梯度下降法小批次随机梯度 descent

  • 随机梯度下降法 (SGD):仅使用随机梯度下降法 每次迭代一个样本(批量大小为一)。已足够 SGD 可以正常工作,但非常嘈杂。“噪音”指的是 在训练期间,损失增加而非减少。 迭代。术语“随机”表示包含 都是随机选择的。

    请注意,在下图中,损失随着模型的变化而略有波动 使用 SGD 更新权重和偏差,这可能会导致损失中出现噪声 图表:

    图 25陡峭的损失曲线,趋于平缓,但波动很大。

    图 25. 使用随机梯度下降法 (SGD) 训练的模型显示 噪声。

    请注意,使用随机梯度下降法可能会产生噪声, 而不只是接近收敛。

  • 小批次随机梯度下降法(小批次 SGD):小批次 随机梯度下降法是全批量和 SGD 之间的折衷方案。对于 $ N $ 数据点,批量大小可以是大于 1 的任意数字 且不到 N 美元。模型选择每个批次中包含的样本 计算其梯度的平均值,然后更新权重和偏差 每次迭代一次。

    确定每批样本的数量取决于数据集和 可用的计算资源一般来说,小批次大小的行为 SGD 和较大的批量大小类似于全批量梯度下降法。

    图 26开始趋于平缓的陡峭损失曲线,在接近收敛的波动较小。

    图 26. 使用小批量 SGD 训练模型。

在训练模型时,您可能会认为噪声 其他特征。不过,一定程度的噪声 是件好事。在后续单元中,您将了解噪声如何帮助模型 更好地泛化,并找到 最优权重和偏差, 网络

周期

在训练期间,一个周期表示 模型已处理训练集中的每个样本一次。例如,假设 一个包含 1,000 个样本和 100 个样本的小批次大小的训练集, 将对模型进行 10 次迭代, 完成一个周期。

训练通常需要多个周期。也就是说,系统需要 对训练集中的每个样本进行多次迭代。

周期数是您在模型开始之前设置的超参数 训练。在许多情况下,您需要尝试用多少次周期 使模型收敛。一般来说,周期越多产生更好的模型,但 也可能需要更多的训练时间。

图 27全批次表示整个数据集,小批次表示数据集的一部分,而周期表示通过十个小批次。

图 27. 全批量与小批量。

下表说明了批次大小和周期与数量 模型更新其参数的次数。

批次类型 何时发生权重和偏差更新
全批次 模型查看数据集中的所有样本之后。例如, 如果数据集包含 1,000 个样本,且模型训练了 20 个周期, 模型会更新权重和偏差 20 次,每个周期一次。
随机梯度下降法 模型查看数据集中的单个样本之后。 例如,如果数据集包含 1,000 个样本, 20 个周期,模型就会更新权重和偏差 20,000 次。
小批量随机梯度下降法 模型查看每个批次中的样本之后。例如, 如果数据集包含 1,000 个样本,批次大小为 100,以及 模型训练 20 个周期后,模型会更新权重, 偏差达到 200 倍。

练习:检查您的理解情况

1. 使用小批次 SGD 时,最佳批次大小是多少?
视情况而定
理想的批次大小取决于数据集和可用的 计算资源
每批次 10 个样本
每批次 100 个样本
2. 下列哪项陈述是正确的?
较大的批次不适合具有许多离群值的数据。
这个说法不正确。将更多的梯度相加, 批次大小有助于减少具有离群值带来的负面影响 数据中。
将学习速率加倍可能会减慢训练速度。
这个说法是正确的。将学习速率加倍可能会导致 学习速率过大,从而导致权重 来回弹从而增加收敛时间。 与往常一样,最佳超参数取决于您的数据集和 可用的计算资源