Node.js 预测下一个值

Node.js 预测下一个值,node.js,artificial-intelligence,brain.js,Node.js,Artificial Intelligence,Brain.js,我正在研究一个神经网络,我正在尝试做预测。 为此,我有一个包含值的数组,我想知道下一个数组是什么 只是为了练习,我做了一些非常简单但不起作用的事情(返回的值是错误的),你能解释一下我丢失了什么吗 const NN = new brain.recurrent.LSTMTimeStep({ inputSize: 2, hiddenLayers: [10], outputSize: 2, }); let data = [ [1, 2], [2, 4],

我正在研究一个神经网络,我正在尝试做预测。 为此,我有一个包含值的数组,我想知道下一个数组是什么

只是为了练习,我做了一些非常简单但不起作用的事情(返回的值是错误的),你能解释一下我丢失了什么吗


const NN = new brain.recurrent.LSTMTimeStep({
    inputSize: 2,
    hiddenLayers: [10],
    outputSize: 2,
});

let data = [
    [1, 2],
    [2, 4],
    [3, 6],
    [4, 8],
    [5, 10],
    [6, 12],
    [7, 14],
    [8, 16],
    [9, 18],
    [10, 20],
    [11, 22],
    [12, 24],
    [13, 26],
    [14, 28]
];

const config = {
    log: true,
    logPeriod: 100,
    errorThresh: 0.01,
    iterations: 4000
}

NN.train(data, config);
let output = NN.forecast(data, 1);
console.log(output)
在这个问题上,我希望结果是[15,30],但它保持返回较低的值


非常感谢

更改隐藏层的数量并添加一些迭代似乎是解决方案,我的AI没有错,只是不够精确

const NN = new brain.recurrent.LSTMTimeStep({
    inputSize: 2,
    hiddenLayers: [2, 2],
    outputSize: 2,
});

let data = [
    [1, 2],
    [2, 4],
    [3, 6],
    [4, 8],
    [5, 10],
    [6, 12],
    [7, 14],
    [8, 16],
    [9, 18],
    [10, 20],
    [11, 22],
    [12, 24],
    [13, 26],
    [14, 28]
];

const config = {
    log: true,
    logPeriod: 100,
    errorThresh: 0.01,
    learningRate: 0.001,
    iterations: 40000000
}

NN.train(data, config);
let output = NN.forecast(data, 1);
console.log(output)
随着学习速度的降低和迭代次数的增加,神经网络有更多的时间进行完美拟合