binary - 为什么我们使用 -1 和 +1 作为二进制输入而不是 0 和 1

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

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

最佳答案

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

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

关于binary - 为什么我们使用 -1 和 +1 作为二进制输入而不是 0 和 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19114946/

相关文章:

python - 按列(对象)分割分层

machine-learning - 使用 XGBoost H2O 的性能很糟糕

algorithm - 如果您缺少一个单词的某些字母,如何确定它是哪个单词?

machine-learning - 批量归一化而不是输入归一化

python - 将Matlab的bitget()极值转换为python

C中十进制转二进制

process - 从 Node.js 中的子进程读取二进制数据

language-agnostic - 从句子中提取 'useful'信息?

machine-learning - 使用循环神经网络进行外推

unix - 如何通过 Connect :Direct NDM? 传输二进制文件