11.4.4 随机梯度和有限样本
这段文字主要讨论 随机梯度下降(SGD)中不同的数据采样方式及其影响,具体涉及以下几点:
1. 核心问题:有替换采样 vs. 无替换采样
- 有替换采样:每次从数据集中随机抽取一个样本后,将其放回原数据集。这意味着同一样本可能被多次选中。
- 无替换采样:每次从数据集中抽取一个样本后不再放回,直到所有样本都被遍历一次(即一个完整的“epoch”)。
文中指出,实践中默认使用无替换采样。
2. 为什么无替换采样更优?
- 方差更小:有替换采样时,某些样本可能被重复选中,而另一些可能完全未被选中(概率约 37%)。这会导致梯度估计的方差增大,模型训练不稳定。
- 数据效率更高:无替换采样确保每个 epoch 中所有样本都被使用一次,避免了数据浪费。
3. 关键公式的解释
- 选择某一样本至少一次的概率(有替换采样):
[
P(\text{选择样本} i) = 1 - (1 - 1/n)^n \approx 1 - e^{-1} \approx 0.63
]
这意味着即使有替换采样,仍有约 37% 的样本可能未被选中。 - 选择某一样本恰好一次的概率(无替换采样):
[
P(\text{恰好一次}) = \frac{1}{n} \left(1 - \frac{1}{n}\right)^n \approx e^{-1} \approx 0.37
]
这表明无替换采样能更均匀地利用数据。
4. 对随机梯度下降的影响
- 有替换采样:梯度估计的方差较高,可能导致收敛速度慢或不稳定。
- 无替换采样:方差较低,训练更稳定,且能充分利用所有数据。
因此,实际训练中通常以无替换的方式遍历数据,并通过每个 epoch 随机打乱数据顺序来引入随机性。
5. 总结
这段话的核心观点是:
在随机梯度下降中,无替换采样(默认方式)优于有替换采样,因为它在保证随机性的同时降低了方差,提高了数据利用效率。此外,每个 epoch 中随机打乱数据顺序能进一步平衡模型的泛化能力和稳定性。
在 有替换采样 中,方差增加的原因可以通过以下分析理解:
1. 样本独立性导致重复与遗漏
- 有替换采样 的每次抽样是独立的,同一样本可能被多次选中,而其他样本可能完全未被选中。
- 无替换采样 确保每个样本在一个 epoch 中仅被选中一次,避免了重复和遗漏。
关键影响:
有替换采样的样本分布更不均匀,导致梯度估计的波动性更大。
2. 数学推导:方差对比
假设数据集中有 (n) 个样本,梯度估计的方差由以下公式决定:
- 有替换采样 的方差:
[
\text{Var}_{\text{有替换}} = \frac{1}{n} \text{Var}(g_i)
]
其中 (g_i) 是单个样本的梯度。 - 无替换采样 的方差:
[
\text{Var}_{\text{无替换}} = \left(1 - \frac{1}{n}\right) \text{Var}(g_i)
]
结论:
无替换采样的方差比有替换采样小 (\frac{1}{n}) 倍,即:
[
\text{Var}{\text{无替换}} = \left(1 - \frac{1}{n}\right) \text{Var}{\text{有替换}}
]
3. 直观解释:样本覆盖的稳定性
- 有替换采样 时,每个 epoch 中部分样本被重复选中(概率约 63%),另一部分未被选中(概率约 37%)。
这导致每次迭代的样本集差异较大,梯度估计的波动性增强,方差上升。 - 无替换采样 保证每个样本都被均匀使用,梯度估计更稳定,方差更低。
4. 举例说明
假设数据集有 3 个样本:(A, B, C)。
- 有替换采样 可能生成样本序列:(A, A, B)((C) 未被选中)。
梯度估计会偏向 (A) 和 (B),忽略 (C),导致方差增大。 - 无替换采样 每次遍历顺序不同(如 (B, C, A) 或 (C, A, B)),所有样本均被使用一次,梯度估计更均衡。
5. 核心结论
方差增加的根源在于:
- 有替换采样引入了样本间的独立性和重复性,导致梯度估计的分布更不稳定;
- 无替换采样通过强制均匀覆盖所有样本,抑制了这种不稳定性,从而降低了方差。
因此,在随机梯度下降中,无替换采样是默认选择,以平衡随机性与稳定性。

浙公网安备 33010602011771号