我正在尝试创建一个Backpropagation,但我不想使用TF的GradientDescentOptimizer。我只想更新自己的重量和偏见。问题是均方误差或成本没有接近零。它只剩下0.2xxx。是因为我的输入是520x1600(是的,每个输入有1600个单位,是的,有520个)或者隐藏层中的神经元数量有问题吗?我已经尝试使用GradientDescentOptimizer实现这一点并最小化(成本)工作正常(随着培训的进行,成本降低到接近零)但是我的代码中可能存在更新权重和偏差的问题。
这是我的代码:
origin
更新:我现在就开始工作了。一旦我增加隐藏层中的神经元数量,MSE几乎降至零。我尝试使用5200和6400神经元作为隐藏层,只有5000个时期,准确度几乎达到99%。此外,我使用的最大学习率是0.1,因为当高于此值时,MSE将不会接近于零。
答案 0 :(得分:0)
我不是这个领域的专家,但看起来你的权重是正确更新的。事实上,你的MSE从一些较高的值下降到0.2xxx是这一点的强有力的指标。我肯定会尝试用更隐蔽的神经元(例如500)来运行这个问题
顺便说一句,你的输入是否正常化了?如果没有,那显然可能是原因