【问题标题】:Why do we have -1 and +1 as binary inputs instead of 0 and 1为什么我们有 -1 和 +1 作为二进制输入而不是 0 和 1
【发布时间】:2013-10-01 11:25:59
【问题描述】:

我正在尝试开始使用神经网络并实现 AND/OR 等布尔函数。 他们不使用 0 和 1 作为二进制输入,而是使用 -1 和 +1。我们不能使用 (0, 1) 有什么原因吗? 例如:http://www.youtube.com/watch?v=Ih5Mr93E-2c

【问题讨论】:

标签: binary machine-learning artificial-intelligence neural-network bias-neuron


【解决方案1】:

如果你真的是指输入,那么使用{-1,1} 没有任何限制。您可以轻松地使用{0,1} 或任何其他实数对(例如{6,42})来定义您的真/假输入值。

图表中可能让您感到困惑的是{-1,1} 被用作神经元的输出。正如@Memming 所说,其原因在于用于神经元的激活函数。如果tanh 用于激活函数,则神经元的输出将在 (-1,1) 范围内,而如果您使用 logistic function,其输出将在 (0,1) 范围内。两者都适用于多层感知器 - 您只需相应地定义目标值(预期输出)。

【讨论】:

    【解决方案2】:

    在大多数情况下没有区别。只需使用逻辑函数激活而不是tanh。在某些特殊形式中,例如 Ising 模型,它可以不平凡地改变参数空间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-28
      • 2014-11-11
      • 1970-01-01
      • 2013-01-09
      • 1970-01-01
      相关资源
      最近更新 更多