【发布时间】:2018-07-10 09:23:33
【问题描述】:
我正在使用适用于 Python 的出色 Keras 库来训练神经网络。我对一种我不理解的行为感到好奇。
通常更大的模型比更小的模型收敛到更大的错误。
为什么会这样?我希望更大的模型可以训练更长时间,但会收敛到更小或相同的错误。
我对模型进行了超优化,尝试了不同数量的 dropout 正则化,并让它训练了足够的时间。我用大约 10-20k 参数、5 层、10M 数据样本和 20-100 个 epoch 的模型进行了实验,同时 LR 递减。模型包含密集层,有时包含 LSTM 层。
【问题讨论】:
-
您能指定您在测试中使用的优化器吗?
-
@Manngo 我使用了 Adam 优化器。
-
“更大的神经网络”是什么意思?添加层、添加神经元还是其他?
-
@Manngo 更大的模型是指更多的参数。大多数情况下,我尝试将神经元添加到恒定数量的层中。
-
您能否举个例子以及您的环境(版本、后端)的详细信息?同样有趣的是,随着层大小的增加,误差会增加多少?
标签: python machine-learning neural-network keras