开始使用免费开始使用

构建您的 LSTM 模型

您已经准备好了文本序列。现在来构建 LSTM 模型吧!

请记住,每个序列包含 4 个单词。模型将用每个序列的前三个单词进行训练,去预测第 4 个单词。您将使用一个 Embedding 层,它会学习把单词映射为有意义的向量。这些向量将传入一个简单的 LSTM 层。输出是一个 Dense 层,神经元数量与词表大小相同,并使用 softmax 激活。这是因为我们希望在所有可能的单词中得到下一个单词的最高概率。

词表(唯一单词数)的大小保存在 vocab_size 中。

本练习是课程的一部分

Keras 深度学习入门

查看课程

练习说明

  • tensorflow.keras 的 layers 中导入 EmbeddingLSTMDense 层。
  • 添加一个 Embedding() 层,词表大小为输入维度,将单词转换为长度为 8 的向量,并接收长度为 3 的序列。
  • 添加一个具有 32 个神经元的 LSTM() 层。
  • 添加一个具有 32 个神经元的隐藏 Dense() 层,以及一个具有 vocab_size 个神经元并使用 softmax 的输出层。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import the Embedding, LSTM and Dense layer
from tensorflow.keras.____ import ____, ____, ____

model = Sequential()

# Add an Embedding layer with the right parameters
model.add(____(input_dim = ____, input_length = ____, output_dim = ____, ))

# Add a 32 unit LSTM layer
model.add(____(____))

# Add a hidden Dense layer of 32 units and an output layer of vocab_size with softmax
model.add(Dense(____, activation='relu'))
model.add(Dense(____, activation=____))
model.summary()
编辑并运行代码