Nlp 从tensorflow_数据集加载模型时,如何设置批量大小?
我正在学习TensorFlow,使用PyCharm作为我的IDE 我遇到了一个问题,当我使用下面的双向(LSTM)层时,我的GPU(内存和/或驱动程序)无法处理它。我的GPU内存耗尽,经过几天的研究和试验,我发现这个问题“可以”通过限制批量大小来解决。。。 我这里的问题不是关于记忆释放的问题,而是关于如何在我的模型中设置批量大小??这是我的密码:Nlp 从tensorflow_数据集加载模型时,如何设置批量大小?,nlp,tensorflow2.0,tensorflow-datasets,Nlp,Tensorflow2.0,Tensorflow Datasets,我正在学习TensorFlow,使用PyCharm作为我的IDE 我遇到了一个问题,当我使用下面的双向(LSTM)层时,我的GPU(内存和/或驱动程序)无法处理它。我的GPU内存耗尽,经过几天的研究和试验,我发现这个问题“可以”通过限制批量大小来解决。。。 我这里的问题不是关于记忆释放的问题,而是关于如何在我的模型中设置批量大小??这是我的密码: import tensorflow as tf import tensorflow_datasets as tfds dataset, info =
import tensorflow as tf
import tensorflow_datasets as tfds
dataset, info = tfds.load('imdb_reviews/subwords8k', with_info=True, as_supervised=True)
train_dataset, test_dataset = dataset['train'], dataset['test']
tokenizer = info.features['text'].encoder
BUFFER_SIZE = 10000
BATCH_SIZE = 64
train_dataset = train_dataset.shuffle(BUFFER_SIZE)
train_dataset = train_dataset.padded_batch(BATCH_SIZE, tf.compat.v1.data.get_output_shapes(train_dataset))
test_dataset = test_dataset.padded_batch(BATCH_SIZE, tf.compat.v1.data.get_output_shapes(test_dataset))
embedding_dim = 64
model = tf.keras.Sequential([
tf.keras.layers.Embedding(tokenizer.vocab_size, embedding_dim),
tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(64, return_sequences=True)),
tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(32)),
tf.keras.layers.Dense(64, activation='relu'),
tf.keras.layers.Dense(1, activation='sigmoid')
])
num_epochs = 10
model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])
history = model.fit(train_dataset,epochs=num_epochs,validation_data=test_dataset)
TF2.2.0、Cuda 10.1、cuDNN 7.6.5、GTX 960M、Windows 10
我试着在网上查找一些关于如何做的资源,但我得到的代码片段太复杂了,在我目前的学习阶段,我的大脑无法编译!如果您能简化如何在上面的代码示例中实现它,我将不胜感激