为什么神经网络会突然收敛到固定的结果?

时间:2018-01-04 02:27:52

标签: tensorflow deep-learning

我正在使用张量流来训练MLP& CNN使用AdamOptimizer作为默认参数。 我发现它运作良好但经过一些训练后,它会收敛到固定的结果。 例如,只有两个类别,

training step 0: 0.5
training step 1000:0.9
training step 2000: 0.953
..........
training step 100000: 0.99995
training step 110000: 0.5
.................
training step 200000: 0.5

在一些步骤之后,它会收敛到一些指示所有label1或所有label2的值

原因是什么?如何解决?

1 个答案:

答案 0 :(得分:0)

因为没有发布代码,我们只能假设asnswers。根据我的经验,当这样的事情发生时(例如训练崩溃),这与网络中的某种溢出有关。你有培养nans的训练样例吗?在网络出现分散之前不久绘制出来的输出有助于解决该问题。你的网络溢出了吗?绘制梯度范数在这里很有用。如果它走向无限,你会受到爆炸梯度的影响。

然而,没有代码,知道域名,训练数据或任何其他内容只是一个猜谜游戏。