【问题标题】:Brain.js exampleBrain.js 示例
【发布时间】:2018-03-08 04:36:05
【问题描述】:

我决定通过 js 中的神经网络来广为人知。我以brain.js 库为例。这取自他们的 GitHub 页面。我可以理解我们有两个输入神经元 1 和 0。我是否也得到两个输出 1 和 0?我读到了重量,它们在哪里,我真的不明白它们是什么?在输出中我们传递了什么?

var net = new brain.NeuralNetwork();

net.train([{input: [0, 0], output: [0]},
           {input: [0, 1], output: [1]},
           {input: [1, 0], output: [1]},
           {input: [1, 1], output: [0]}]);

var output = net.run([1, 0]);  // [0.987

【问题讨论】:

  • 只有一个输出神经元。该神经元返回 0 到 1 之间的预测值。

标签: node.js neural-network brain.js


【解决方案1】:

这是一个近似 XOR 逻辑运算符的简单神经网络。 网络的结果将在 0 到 1 的范围内。

训练集越大,结果将(数学上)接近 1。 因为这是一个简单的例子,所以预测的值足够接近。

通常,人们会使用像 sigmoid 函数这样的阈值/步进函数,将输出从线性可分转换为近似二元。

这是一个用于 XOR 近似的可能的简单 NN:

【讨论】:

    猜你喜欢
    • 2018-11-24
    • 1970-01-01
    • 2018-12-20
    • 2019-09-07
    • 1970-01-01
    • 2018-11-26
    • 2020-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多