在Matlab中使用更多神经网络训练数据增加误差

时间:2015-04-13 07:39:22

标签: matlab neural-network

我对Matlab NN工具箱有疑问。作为研究项目的一部分,我决定创建一个Matlab脚本,使用NN工具箱进行一些拟合解决方案。

我有一个正在加载到我系统的数据流。输入数据由5个输入通道和1个输出通道组成。我将这些配置上的数据训练了一段时间并尝试将输出(在一段时间内)作为新数据流进行调整。我不断重新训练我的网络以保持更新。

到目前为止一切正常,但在一段时间后,结果会变坏并且不能代表所需的输出。我真的无法解释为什么会发生这种情况,但我可以想象一定存在某种内存问题,因为数据集仍然很小,一切都还可以。

只有当它变大时,模拟的质量才会下降。有没有什么东西作为一个内存充满,或者只是巨大的数据集的结果是坏的SIM?我是这个工具的初学者,非常感谢您的反馈。最好的问候和提前感谢!

1 个答案:

答案 0 :(得分:0)

请详细说明使用新数据进行再培训的方法。你进行了进一步的迭代吗?您认为"时间"?你的意思是时代吗?

乍一看,假设时间意味着时代,我会说你过度拟合数据。神经网络应该用early stopping训练有限数量的时期。您可以尝试正则化,不同的梯度下降方法(如果您使用GD方法),GD动量。此外,根据您前几个训练数据集的值,您可能使用不正确的归一化范围训练了数据。如果我的假设是正确的,你应该检查这些问题。