我在使用神经网络时遇到了一些问题。我对隐藏层使用非线性激活函数,对输出层使用线性函数。在隐藏层中添加更多的神经元应该会增加 NN 的能力,并使其更适合训练数据/训练数据的错误更少。
但是,我看到了不同的现象。即使在训练集上,添加更多神经元也会降低神经网络的准确性。
这是随着神经元数量增加的平均绝对误差图。训练数据的准确性正在下降。这可能是什么原因?
是不是我使用的 matlab 的 nntool 将数据随机拆分为训练、测试和验证集以检查泛化而不是使用交叉验证。
我还可以看到很多 -ve 输出值添加了神经元,而我的目标应该是正数。会不会是另一个问题?
我无法在这里解释 NN 的行为。有什么建议么?这是指向我的数据的链接,其中包含协变量和目标