假设我有一个这样的数据集:
[ [0, 0], [0, 1]
[0, 1], [1, 0]
[1, 0], [1, 0]
[1, 1], [0, 1] ]
实际上,y1 = x1 XOR x2,并且 y2 = not(x1 XOR x2),这似乎一点也不奇怪。
使用 Wikipedia 中提供的代码,它是用 Python 编写的,训练错误似乎没有收敛。
为什么会这样?这个数据集是否不可能用 (2, 2, 2) BP 网络进行训练?(2, 2, 2) 表示输入层节点数、隐藏层节点数和输出层节点数都是2(偏置节点除外)。
还是代码有问题?