我正在建立一个模型来预测外汇对是买还是卖。 我得到了一个由64个要素和5000行组成的数据框。每行都是1天的信息(开盘价,高价,低价,收盘价),还有一些指标作为额外功能。
我知道keras lstm将输入形状为numpy数组(批处理大小,#timestepsinonesample,#features)。我也知道它应该是一个numpy数组作为输入类型。
我正在尝试构建多对一架构,假设5天应该可以预测第二天是买入还是卖出。 我需要的是一个将数据框转换为3d张量的函数,但是我无法弄清楚如何每天使用多个功能构建该张量,以及如何在5个时间步长的示例中将其与以下时间步长一起使用。所以我的张量尺寸应该是(batchsize,5,64) 我已经阅读了有关网络上的每个教程以及堆栈溢出的所有答案。而且我了解需要发生什么但无法编写该函数。
我尝试过:
seq_length = 5
x = []
y = []
for i in range(0, len(features) - seq_length):
given = features[i:i + seq_length]
predict = labels[i + seq_length]
x.append(given)
y.append(predict)
但是这会输出一个列表,我无法将其转换为numpy数组。 如果有人可以帮助我解决这个问题,我已经在这个问题上停留了几天。