疯狂的是,还没有一个简单的LSTM RNN预测时间序列数据的简单例子。
https://github.com/cazala/synaptic
https://github.com/cazala/synaptic/wiki/Architect#lstm
我想在以下数组中使用历史数据:
const array = [
0,
0,
0,
1,
0,
0,
0,
1
];
那里有一些漂亮的头脑在吹数据吗?
我想A)用数组训练算法,然后B)用以下数组测试算法:
const array = [
0,
0,
0,
1,
0,
0,
0,
1,
0
];
应该导致它预测
0
。不幸的是,文档非常糟糕,没有清晰的代码示例。有人有例子吗?
最佳答案
这个答案不是用Synaptic写的,而是Neataptic。我决定做出一个简短的回答,我将很快将其包含在文档中。这是代码,它可以工作9/10次:
var network = new neataptic.architect.LSTM(1,6,1);
// when the timeseries is [0,0,0,1,0,0,0,1...]
var trainingData = [
{ input: [0], output: [0] },
{ input: [0], output: [0] },
{ input: [0], output: [1] },
{ input: [1], output: [0] },
{ input: [0], output: [0] },
{ input: [0], output: [0] },
{ input: [0], output: [1] },
];
network.train(trainingData, {
log: 500,
iterations: 6000,
error: 0.03,
clear: true,
rate: 0.05,
});
Run it on JSFIDDLE to see the prediction!有关更多预测,请打开this one。
我做出的一些选择的解释:
~0.2
关于javascript - 突触js lstm rnn算法的简单示例,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43574799/