如何在Keras中实现多状态LSTM RNN

时间:2019-09-19 13:28:23

标签: keras deep-learning lstm lstm-stateful

我有1000个不同的用户,并且数据集包含了过去1年中这些用户的活动。总记录超过30万。 LSTM RNN的输入具有与这些用户相对应的特征向量。还包括用户,因为每个用户的行为可能因人而异。网络应该学习每个用户的行为,并且应该能够基于同一用户的过去信息来预测下一个行为。 如何在LSTM RNN中为每个用户维护单独的隐藏状态。

以下博客文章与我的问题类似:

https://towardsdatascience.com/multi-state-lstms-for-categorical-features-66cc974df1dc

更新

我的数据集如下:

DATASET

我将数据集转换为numpy数组的3D,并将其重塑为(记录数,时间步长,n_features)。

问题是:

1)是否需要对“用户”属性进行编码?

2)此问题的正确批量大小是多少?是批次= 1000(不同用户数)吗?

3)我是否需要在模型的每个批次输入中包括每个用户的数据?

OR

请提出正确解决此问题的建议。

1 个答案:

答案 0 :(得分:1)

这只是自动的。您什么都不需要做。

LSTM层肯定会有一个状态矩阵,其大小等于您的用户数量。 (否则它将无用)