一、概述
神经网络训练好之后,只有通过优化才能达到我们想要的效果,也就是我们说的调参,使参数更加准确的更新。
神经网络训练过程一般为两个阶段:
- 第一个阶段先通过前向传播算法计算得到预测值,并将预测值与真实值作比较,得出两者之间的差距。
- 第二个阶段通过反向传播算法计算损失函数对每一个参数的梯度,再根据梯度和学习率使用梯度下降算法更新每一个参数。
二、优化网络的方法
1、学习率的优化
每一个参数对目标函数的依赖不同,有的参数已经优化到了极小值附近,有的参数仍然有很大的梯度,所以不能使用统一学习率,学习率太小,会有一个很慢的收敛速度,学习率很大,会使已经优化的差不多的参数不稳定,一般合理的做法是对每一个参数设置不同的学习率。有三种不同自适应学习率优化算法
- AdaGrad
AdaGrad算法,独立地适应所有模型参数的学习率,缩放每个参数反比于其所有梯度历史平均值总