gpt4 book ai didi

neural-network - 神经网络和异或函数

转载 作者:行者123 更新时间:2023-12-04 21:08:47 27 4
gpt4 key购买 nike

我正在使用我自己实现的神经网络:它是一个简单的前向网络,使用 RPROP 作为学习算法,作为与基本设计相比唯一的“优势”。

当我针对 MNIST 对其进行测试或尝试进行图像压缩时,网络得分不错,但是当我尝试对像 XOR 函数这样简单的东西进行建模时,有时在学习过程中它会陷入局部最小值,并输出以下真值表:

0 XOR 0 = 1.4598413968251171e-171
1 XOR 0 = 0.9999999999999998
0 XOR 1 = 0.9999999999999998
1 XOR 1 = 0.5

通常训练后的结果是正确的,但有时 1 XOR 1 输出 0.5 而不是 1 应该的。它并不总是发生在 XOR(1,1) 上,但也发生在其他输入上。由于 XOR 函数是反向传播文献中的“经典”函数,我想知道这里发生了什么,特别是考虑到我的网络似乎可以学习更复杂(但可能不那么非线性)的任务就好了。

我的疯狂猜测是偏见有问题。

任何提示?

注1:上面的网络布局是2|3|1,但是当我使用更多隐藏单元时并没有太大变化,某些学习尝试仍然会出错。

注 2:我将实现放入 Gist: https://gist.github.com/antirez/e45939b918868b91ec6fea1d1938db0d

最佳答案

问题是由于我的实现中的一个错误:输出单元之前的 NN 偏置单元没有正确计算。修复代码后,XOR 函数始终计算正确。

关于neural-network - 神经网络和异或函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39633434/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com