26、深度学习训练结果诊断
1、学习曲线
在神经网络的训练过程中,一定要养成绘制训练曲线的习惯,从而监测自己的神经网络是否存在欠拟合或过拟合的问题:
- 如果训练损失明显小于测试损失,那么网络很有可能存在过拟合,此时需要应用regularization或更换归一化方法;
- 如果训练损失和测试损失都很大,那么网络有可能存在欠拟合,此时可以尝试增加网络容量或迭代次数;
- 如果像下图一样存在一个反超点,那么可能需要提前停止。
2、学习率
选择了合适的学习率会在一定程度上降低网络收敛到的损失。需要注意的是,学习率是与迭代次数、batch size、优化方法等协同工作的。
不同学习率对应的训练曲线的趋势: