批量梯度下降
-
定义:批量梯度下降的一次训练喂入训练集中的所有数据,使用所有数据来更新权重,也就是batch_size=训练集大小
-
算法
3. 特点
- 求和中的运算都是向量运算
- 参数的更新需要计算所有数据的平均值之后才能进行更新,更新缓慢,时间复杂度是O(n),但是下降路径十分平滑
随机梯度下降
-
定义:每次进行参数更新的时候仅仅使用数据集中的一个数据,也即batch_size = 1
-
算法
-
特点
- 更新参数的时候每次只用计算一个数据,因此能够更快地更新参数
- 但是因为每次只使用了一个数据,所以更新参数的时候受单个数据的影响较大。所以学习中不确定性和震荡性会增大,收敛路径不平滑
小批量梯度下降
-
定义:结合了前面两种方式的优点
-
算法
-
特点
- 下降迅速并且稳定
- 容易进行并行化的操作