【发布时间】:2020-03-28 16:22:13
【问题描述】:
我尝试编写 XOR 神经网络有几个星期了,但我总是遇到同样的问题。首先你必须知道,我花了 几个小时 尝试了我在网上找到的所有东西,但没有任何效果。
在尝试使用有关该主题的 3Blue1Brown 视频但没有成功后,我现在使用此 http://neuralnetworksanddeeplearning.com/chap2.html。我编写了一个矩阵库 具有所有必要的功能。
我的网络确实有 3 层:2 个输入神经元,2 个隐藏神经元,1 个输出神经元。 此外,我有 2 个偏置指向隐藏神经元,一个指向输出神经元。我使用 sigmoid 函数来获得 0 和 1 之间的值,以及二次成本函数。每次我训练网络(即每次我使用反向传播)时,我都会选择一个随机输入及其对应的输出。
问题是,无论我训练了多少次,输出都不会接近 0 或 1,而是总是在 0.5 左右混乱,而我的成本函数卡在 0.14 左右。
感谢任何提示或帮助——我真的不明白问题出在哪里,我觉得我已经尝试了所有方法。 PS:这里没有展示任何代码,如果需要,不要犹豫,说出来。
【问题讨论】:
-
您是否根据已知输入验证了矩阵库的输出?
-
@visibleman 如果您的意思是验证我的矩阵库中的每个函数都运行良好,是的,我做到了。无论如何,谢谢你的想法!
-
与别人的nn比较。这是一个:github.com/glouw/tinn
-
@BobRun 谢谢你的例子!
标签: c neural-network xor backpropagation