神经网络训练:随机梯度下降及反向传播详解
1. 随机梯度下降与小批量训练
在数据集处理中,重复子集可得出一系列估计均值,如 135.7、131.7、134.2、128.1 等。这些估计均值虽非实际均值,但都与之接近。由此类推,我们可以用完整训练集的子集来估计损失函数的梯度。由于样本是随机选取的,得到的梯度值是随机变化的估计,这就是在梯度下降前加上“随机”一词的原因。
1.1 小批量训练的概念
- 批量训练:每次权重和偏置更新步骤都将完整训练集输入网络。
- 小批量训练:每次随机梯度下降步骤使用训练数据的子集。小批量训练更为常用,训练通常以多个轮次(epoch)进行,轮次与小批量的关系如下:
[1 \text{ epoch} = \frac{\text{训练集样本数}}{\text{小批量大小}} \text{ 个小批量}]
1.2 小批量的选取方式
实际操作中,我们不会直接从完整训练集中随机选取小批量,因为这样可能导致部分样本未被使用,而部分样本被过度选取。通常的做法是随机打乱训练样本的顺序,然后按顺序选取固定大小的样本块作为小批量。当所有可用训练样本都被使用后,可重新打乱完整训练集的顺序并重复该过程。部分深度学习工具包甚至会直接循环使用同一组小批量。
2. 凸函数与非凸函数
2.1 凸函数与非凸函数的定义
- 凸函数:函数上任意两点间的线段不会与函数在其他点相交。
- 非凸函数:存在两点间的线段与函数相交的情况。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



