-1

我决定以 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
4

1 回答 1

2

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

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

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

这是一个用于 XOR 近似的可能的简单 NN: 在此处输入图像描述

于 2018-03-07T20:36:05.703 回答