我有兴趣根据我之前拥有的2d位置的庞大数据集来预测一个人的2d(x,y)位置的未来。我对深度学习非常陌生,并且遇到过一些文章将LSTM用于此目的。我找到了LSTM的教程,其中预测了股价等。但是,我不明白我的输出将如何给我一个元组(x,y)。我见过的所有例子都预测一个数字/一个类别。 这是我输入数据的标题:
time x y v_x v_y
2019-06-18 07:19:39.641 442 211 2415.300546 1153.005464
2019-06-18 07:19:39.948 444 212 1446.254072 690.553746
2019-06-18 07:19:40.148 445 212 2225.000000 1060.000000
2019-06-18 07:19:40.445 448 215 1508.417508 723.905724
2019-06-18 07:19:40.648 448 216 2206.896552 1064.039409
基于这些轨迹的GitHub项目很少。这是一个密切相关的。但是,文档非常稀疏,并且在Tensorflow中,并且我正在使用Keras API:
https://github.com/Oceanland-428/Pedestrian-Trajectories-Prediction-with-RNN
我已分别将数据分为train_data和test_data的80-20%。 这是我的测试模型:
model = Sequential()
model.add(CuDNNLSTM(128, return_sequences=True))
model.add(Dropout(0.2))
model.add(CuDNNLSTM(128, return_sequences=True))
model.add(Dropout(0.2))
model.add(CuDNNLSTM(128))
model.add(Dropout(0.2))
model.add(Dense(32, activation='relu'))
model.add(Dropout(0.2))
model.add(Dense(2, activation='relu'))
opt = tf.keras.optimizers.Adam(lr=0.001, decay=1e-6)
# Compile model
model.compile(
loss='mean_squared_error',
optimizer=opt,
metrics=['accuracy']
)
# Train model
history = model.fit(
train_data,
batch_size=12,
epochs=3,
validation_data=test_data,
callbacks=[tensorboard],
)
如果您有改进我的代码的建议,请告诉我。另外,如果您找到任何相关的和有文件证明的资源,也可以分享,我可以用它来教育自己。