Python:神经网络成本函数停留在ln(2)

时间:2017-10-18 06:39:41

标签: python neural-network

只是想知道其他人之前是否遇到过这种行为。我无法在搜索中发现这个具体问题。我使用numpy编写了我自己的神经网络(一个非常简单的神经网络),它似乎工作,成本函数随着迭代而减少。但是,当我改变权重的随机初始化时,使用np.random.randn(shape)到np.random.randn(shape)* 0.01(我听说使用较小的初始权重可能会加快学习速度,因为我' m使用sigmoid层),我的成本函数从.69~ln(2)开始,几乎卡在那里。无论我重启神经网络多少次,无论我投入什么样的输入,都会发生这种情况。我发现这确实很奇怪。我应该补充一点,如果我在没有0.01倍增因子的情况下开始,成本函数将减少到小于0.69。

神经网络使用交叉熵成本函数,并使用梯度下降来制作步骤。没有实施正规化。这种行为似乎并不取决于神经网络的维度(层数,每层神经元数量)或学习率,仅取决于我是否初始化起始权重,无论是否乘以它们0.01。

0 个答案:

没有答案