我怎么知道要向我的神经网络添加一个层?

How do I know to add a layer to my neural network?

当我开发带有 sigmoid 激活的单个隐藏层反向传播 NN 的小型原型时,我已经从使用非常基本的数据和输出训练它转变为想要训练著名的 Iris 数据。

(http://archive.ics.uci.edu/ml/datasets/Iris)

此数据有 3 个输出,并且已内置到许多示例 NN 实现中,几乎可以证明它有效。 4 个输入,1x6 隐藏,3 个输出(几乎可以理解为它是 3 个物种之一的机会)。

当我尝试在该数据上对其进行训练时,总输出误差波动很大,无论是 1000 次甚至 50000 次迭代。

我可以将此视为添加另一个隐藏层的指标吗?

简而言之 - 没有。 Iris 几乎是线性可分的,你不需要任何额外的隐藏层来解决它(具有接近 100% 的准确率)。