神经网络学习模式、过拟合问题及TensorFlow实践
1. 神经网络的学习模式
1.1 批量模式(Batch mode)
在批量模式下,权重更新是在遍历完训练集中的所有示例之后进行的。这种技术使得优化过程更快,并且由于示例流的可变性,过程方差较小。不过,批量模式要求将所有示例都保存在内存(实际上是RAM)中,而不是流式处理。在批量模式中,反向传播会考虑所有示例的梯度总和。
1.2 小批量(或随机)模式(Mini - batch or stochastic mode)
小批量模式下,权重更新是在网络处理了随机选择的训练集示例的子样本之后进行的。这种方法结合了在线模式(低内存使用)和批量模式(快速收敛)的优点,同时引入了随机元素(子采样),以避免梯度下降陷入局部最小值(成本函数中的一个非真正最小值的下降)。
2. 神经网络的过拟合问题
2.1 过拟合的表现
给定神经网络架构,算法很容易从数据中学习几乎任何东西,尤其是当添加了过多层时。然而,这可能会导致过拟合问题,即预测受到高估计方差的影响。过拟合会使神经网络学习训练示例的每一个细节,从而在预测阶段能够复制这些示例,但对于不同的数据,它将无法正确预测。
2.2 应对过拟合的预防措施
在使用神经网络解决实际问题时,需要比其他算法更加谨慎。具体步骤如下:
- 数据分割 :将数据仔细地分割为训练集、验证集和测试集。
- 参数评估 :在算法从数据中学习之前,必须评估参数的优劣:
-