-1

我在一些数据上使用 Keras。以下是详细信息:8,000 个客户,每个客户的时间步长从 2 到 41 不等。所以我使用零填充来确保所有客户都有 41 个时间步长。所有 8,000 个客户都有 2 个特征,数据带有多类标签,0-4。每个 tilmestep 都有一个标签。

训练模型后,在过程的测试部分,我想输入时间步长 1-40 的特征和标签,然后让它预测第 41 个时间步长的标签。有谁知道这是否可能?我发现 Keras 在解释它实际预测的内容时有点像一个黑盒子(例如,当它给出准确度分数时,这是什么准确度?它试图预测什么:最后一个 tilmestep 标签或所有 tilmestep 标签?)。

是否应该在顺序 Keras LSTM 模型中使用特定的模型细分?我读过'多对一模型(f(...))在接收到多个输入值(X(t),X(t + 1),......后产生一个输出(y(t))值。 .)。'(布朗利 2017 年)。但是,除了我要预测的最后一个时间步之外,我的输入对于所有时间步长都是 Xt 和 Yt ,这似乎并不能适应这一事实。我不确定如何设置我的代码来指示模型预测最后一个时间步长(我有数据,但我想将预测的类别与实际类别进行比较)。

4

1 回答 1

0

要预测每个特征的下一个时间步长,您希望最终Dense层的宽度与特征数量相同:

model.add(Dense(n_features))

在多个并行系列 https://machinelearningmastery.com/how-to-develop-lstm-models-for-time-series-forecasting/下有一个类似问题的一个很好的例子

accuracy只是衡量模型有效性的指标。为了准确,它是correct_predictions / total_predictions

https://keras.io/metrics/

于 2019-11-26T16:16:09.193 回答