【问题标题】:Brain.js neural network not returning resultsBrain.js 神经网络不返回结果
【发布时间】:2020-03-21 20:36:32
【问题描述】:

我在浏览器环境中使用 Brain.js 制作了一个人工神经网络。 我试图改变 ANN 的结构(尤其是网络训练部分)以获得可接受的输出。

问题是神经网络一旦运行就会输出“object Object”。

const net = new brain.NeuralNetwork({ hiddenLayers: [] });


const i1 = {
variable1: 32532,
variable2: -3500
}

const i2 = {
variable1: 38295,
variable2: 5763
}

const i3 = {
variable1: 41729,
variable2: 3434
}

const i4 = {
variable1: 45661,
variable2: 3932
}

const i5 = {
variable1: 43789,
variable2: -1872
}

const i6 = {
variable1: 46013,
variable2: 2224
}



const training_set = [
{ input: i1, output: 10.49},
{ input: i2, output: 16.23},
{ input: i3, output: -28.76},
{ input: i4, output: 46.58},
{ input: i5, output: 17.09}
];

net.train(training_set);

alert(net.run(i6));

【问题讨论】:

    标签: javascript browser neural-network brain.js


    【解决方案1】:

    你可以试试这个

    alert(JSON.stringify(net.run(i6));
    

    您还可以将结果打印到控制台以提高可读性

    console.log(JSON.stringify(net.run(i6), null, 4));
    

    【讨论】:

    • 尝试了你的两种方法,它们导致输出为 "{}" 。仅供参考:您在代码末尾又忘记了一个右括号。
    • 我尝试运行您的代码。 net.train 语句给出以下输出 {error: NaN, iterations: 20000}。也许这就是net.run 语句给出空响应的原因。
    • 所以培训部分是问题所在。您将如何调整它以获得所需的输出?
    • 我不太确定您的用例和所需的输出,您可以查看github.com/BrainJS/brain.js#for-training-with-neuralnetwork。我认为输入和输出值存在问题。
    【解决方案2】:

    brain.NeuralNetwork () 采用 0 到 1 之间的数字散列。 训练数据中的输入/输出应包含在 0.00 到 1 之间。

    【讨论】:

      猜你喜欢
      • 2018-11-26
      • 2015-02-10
      • 2018-01-05
      • 2018-05-06
      • 2019-03-18
      • 2017-02-21
      • 1970-01-01
      • 2018-02-11
      • 1970-01-01
      相关资源
      最近更新 更多