通过TensorFlow框架搭建GRU模型实现对IMDB数据集的分析。(代码截图)
时间: 2024-02-22 14:58:00 浏览: 147
自动写诗ppt汇报.pptx
很抱歉,我作为AI语言模型无法展示图片,但是可以提供相应的代码:
```python
import tensorflow as tf
from tensorflow.keras.datasets import imdb
from tensorflow.keras.preprocessing.sequence import pad_sequences
# 只保留前10000个最常见的单词
vocab_size = 10000
# 序列最大长度
max_len = 500
# 加载数据集
(x_train, y_train), (x_test, y_test) = imdb.load_data(num_words=vocab_size)
# 对序列进行填充,使其长度一致
x_train = pad_sequences(x_train, maxlen=max_len)
x_test = pad_sequences(x_test, maxlen=max_len)
# 构建GRU模型
model = tf.keras.Sequential([
tf.keras.layers.Embedding(vocab_size, 32),
tf.keras.layers.GRU(32),
tf.keras.layers.Dense(1, activation='sigmoid')
])
# 编译模型
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
# 训练模型
model.fit(x_train, y_train, epochs=10, batch_size=128, validation_data=(x_test, y_test))
```
这段代码中,我们首先通过`imdb.load_data()`函数加载IMDB数据集,并指定了只保留前10000个最常见的单词。接着,我们对序列进行了填充,使得所有序列长度一致。然后,我们构建了一个包含一个嵌入层、一个GRU层和一个全连接层的序列模型,并使用`binary_crossentropy`作为损失函数进行编译。最后,我们使用训练集进行训练,并在测试集上进行验证。
阅读全文