Keras 中的 LSTM 输入

数据挖掘 喀拉斯 rnn
2022-02-28 09:31:30

我对 LSTM 模型中的输入向量感到困惑,我使用的数据是文本数据,例如 1,000 个句子。我有两个关于 LSTM 输入层的问题:

1.如果我将这些句子标记为向量(我们可以称之为句子向量),Keras 有没有办法在给定文档的情况下制作句子向量?应该是单词级别的吧?

2.第二个问题是LSTM中的3D Tensor类型。我有 1,000 个句子(样本),如果我想 LSTM 在每个时间步读取一个文档,time_step 将为 1,对吗?最后一个是输入维度,这个输入维度是每个句子中的单词维度(100)或者每个时间步(10)观察到多少个单词?

因此 LSTM 张量应该是 (1000, 1, 10) 或 (1000, 1, 100)

1个回答
  1. 对于 LSTM,文档应该是单词级别的。因此,句子向量对文档没有那么有用,但词向量有用。如果你愿意,你可以使用嵌入层。

  2. 在 3D 张量中,第一个维度是句子的数量。所以1000是正确的。第二个是 time_steps 的数量,它是每个句子的单词数。第三个是词向量维度。因此,以您的数值示例为例,LSTM 的输入维度将是 (1000, 10, 100)。