Python PyBrain-基于输入历史进行计算
如果我需要一个模型,以便根据当前输入和以前的输入计算输出,该怎么办: 我已经做了一些编码,但我不能添加这个,有什么想法如何作出这样的改变Python PyBrain-基于输入历史进行计算,python,machine-learning,neural-network,conv-neural-network,Python,Machine Learning,Neural Network,Conv Neural Network,如果我需要一个模型,以便根据当前输入和以前的输入计算输出,该怎么办: 我已经做了一些编码,但我不能添加这个,有什么想法如何作出这样的改变 net = buildNetwork(numberofinputs, number_of_nodes, numberofoutputs, bias=True) trainer = BackpropTrainer(net, ds, learningrate=0.01,momentum=0.99) print("Start training") a = trai
net = buildNetwork(numberofinputs, number_of_nodes, numberofoutputs, bias=True)
trainer = BackpropTrainer(net, ds, learningrate=0.01,momentum=0.99)
print("Start training")
a = trainer.trainUntilConvergence(verbose=True,` dataset=ds,maxEpochs=10,continueEpochs=1000, validationProportion=0.99)
print("Finished training")
print(trainer.train())
此代码仅基于当前输入计算输出,我希望它将最后3个输入值混合,并与当前输入一起使用以预测下一个输出。如果您只需要上一个输入,则只需将其作为另一个功能添加即可。所以如果你当前的特征向量是
x_t = (x1_t, x2_t, x3_t)
x_{t+1} = (x1_{t+1}, x2_{t+1}, x3_{t+1})
下一个特征向量是
x_t = (x1_t, x2_t, x3_t)
x_{t+1} = (x1_{t+1}, x2_{t+1}, x3_{t+1})
然后你可以简单地使用
x_new = (x1_t, x2_t, x3_t, x1_{t+1}, x2_{t+1}, x3_{t+1})
作为输入特征向量
循环神经网络
但是,如果需要可变长度的时间序列作为输入向量,可以使用递归神经网络。我认为PyBrain做不到。我建议你看看。有关RNNs的教程,请查看以下两篇优秀的博客文章:
- 安德烈·卡帕蒂
- 克里斯托弗·奥拉