神经网络loss不收敛问题
发布网友
发布时间:2023-04-30 22:19
我来回答
共1个回答
热心网友
时间:2023-10-10 01:03
这几天在训练一个网络,本来是两部分分开做的,分别调参到了最优,但是将两部分合在一起训练时,发现经过100轮后神经网络还是不收敛,于是很认真的检查了网络有没有问题,但是并没有发现什么问题,那么最大的可能就是超参数设置不合理,于是开始疯狂调参哈哈哈。
趁着还在训练,我总结一下可能 导致 神经网络不收敛的原因 :
1、 理论上就不收敛 ,也就是说你设计的网络本身就存在问题,这也是首先应该考虑的因素:
1) 梯度是否存在 ,即反向传播有没有断裂;
2、如果确认你的网络应该没有问题,那也就是在 假设理论上是收敛的 :
1) 学习率设置不合理 (大多数情况),学习率设置太大,会造成不收敛,如果太小,会造成收敛速度非常慢;
2) Batchsize太大 ,陷入到局部最优,无法达到全局最优,故而无法继续收敛;
3) 网络容量, 浅层网络完成复杂的任务loss不下降是肯定的,网络设计太简单,一般情况下,网络的层数和节点数量越大,拟合能力就越强,如果层数和节点不够多,无法拟合复杂的情况,也会造成不收敛。
大概也许可能,这应该是绝大部分神经网络不收敛的原因了吧,还有什么可能的原因,希望大家能够在下方留言,共同学习。