【问题标题】:Can a back propagation train two xor problems at one time?反向传播可以一次训练两个异或问题吗?
【发布时间】:2013-04-20 03:20:29
【问题描述】:

假设我有一个这样的数据集:

[   [0, 0], [0, 1]
    [0, 1], [1, 0]
    [1, 0], [1, 0]
    [1, 1], [0, 1]   ]

其实y1 = x1 XOR x2, and y2 = not(x1 XOR x2),看起来一点都不奇怪。

使用 Wikipedia 中提供的code,它是用 Python 编写的,训练误差似乎没有收敛。

为什么会这样?这个数据集是否不可能用 (2, 2, 2) BP 网络进行训练? (2, 2, 2) 表示输入层节点数、隐藏层节点数和输出层节点数都是2(偏置节点除外)。

还是代码有问题?

【问题讨论】:

    标签: algorithm machine-learning artificial-intelligence neural-network backpropagation


    【解决方案1】:

    可以很容易地为此训练一个 (2,2,2) 神经网络。我刚刚在 Encog 中尝试过,它的训练时间与单输出版本相同。实际上,您上面所拥有的是配置为 n 之一分类的网络。也就是说,每个期望值都有一个输出神经元。

    我对 Python 不是很流利,但我猜这是代码改编的某个地方的问题。这不是 ANN 的固有限制。

    【讨论】:

      猜你喜欢
      • 2011-01-09
      • 1970-01-01
      • 2012-03-28
      • 1970-01-01
      • 2012-04-14
      • 2011-11-20
      • 2012-02-19
      • 2016-06-03
      • 1970-01-01
      相关资源
      最近更新 更多