我有一个时间序列数据的二进制分类任务。我的 CSV 中的每 14 行与一个时间段相关。我应该如何准备这些数据以在 LSTM 中使用?换句话说,如何为模型提供这些数据?
如何为 LSTM 时间序列预测准备数据
数据挖掘
Python
学习
2022-02-16 03:45:12
3个回答
我希望数据集也包含元数据,这意味着您还需要对这些元组进行一对一的映射,例如。狗>好,猫>坏,小猫>坏,小狗>好,等等。
将数据分成 X:training_data, Y:label。然后使用矢量化器并使用 X、Y 进行训练。如果您能够执行上述步骤,则使用 test_train set 、 cross_folds 等方法。
友情建议:在 LSTM 之前尝试 seq2seq 层(它们需要更多资源)。
尽管我不确定“我的 CSV 中的每 14 行与一个时间段相关”这一说法。,因为我没有清除它。
但是,如果我同意您的评论“我应该如何将这些数据加载到 LSTM?所以列数是 12”,我相信您在问如何为时间序列模型加载多个特征(在您的情况下为 12)。
如果我的理解是正确的,那就是“多个并行时间序列”类型的问题。我在 Tensorflow 中创建了一个类似的模型并推送到 github。多个并行时间序列的 Github 源代码
注意:这里我使用了 3 个功能,而不是 12 个功能。
这是此的伪代码:
Import pandas as pd
Import numpy as np
Data = pd.read_csv(filename)
Lag = 14
#assuming target column is last one
X=[ ]
Y = [ ]
for x in range(lag, len(data)):
X.append(data.iloc[x-lag:x,:])
Y.append(data.iloc[x,-1])
X= np.array(X)
Y = np.aaray(Y)