我正在研究人工神经网络(ANN)。我正在尝试训练许多不同的人工神经网络,主要研究重点是结构变化和预测率之间的相关性。
我注意到,由于训练步长太小,训练算法在前 100 次左右的迭代中收敛到接近初始状态是很常见的。我不清楚为什么会发生这种情况。有没有人遇到过同样的问题?这可能是什么原因?有没有更好的方法来克服这个问题,而不是仅仅强制迭代方案从问题所在的地方开始工作?
我一直在使用 fmincg 和 fminunc 在 Octave 中训练我的网络。反向传播。获得梯度和成本函数与逻辑回归相同。问题出现在第一隐藏层 10 个神经元和第二隐藏层 10 个神经元的网络结构上。MNIST 数据库同时用于训练和测试集。
加法:Fminunc 似乎在三层 ANN 上表现不佳,但在一些随机变量下,两层 ANN 似乎收敛没有问题。如果强制通过初始阶段,共轭梯度似乎起作用。
问题可能是权重的随机初始化吗?可能具有太低的可变性 [-0.12; 0;12] 导致问题?
编辑:使网络结构部分更加清晰。