- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在尝试使用 CuDNNLSTM 而不是 keras.layers.LSTM 时遇到了问题。
这是我得到的错误:
Failed to call ThenRnnForward with model config: [rnn_mode,rnn_input_mode, rnn_direction_mode]: 2, 0, 0 , [num_layers,input_size, num_units, dir_count, seq_length, batch_size]: [1, 300,512, 1, 5521, 128] [[{{node bidirectional_1/CudnnRNN_1}} =CudnnRNN[T=DT_FLOAT, _class=["loc:@train...NNBackprop"],direction="unidirectional", dropout=0, input_mode="linear_input",is_training=true, rnn_mode="lstm", seed=87654321, seed2=0,_device="/job:localhost/replica:0/task:0/device:GPU:0"](bidirectional_1/transpose_1,bidirectional_1/ExpandDims_1, bidirectional_1/ExpandDims_1,bidirectional_1/concat_1)]] [[{{node loss/mul/_75}} =_Recvclient_terminated=false, recv_device="/job:localhost/replica:0/task:0/device:CPU:0",send_device="/job:localhost/replica:0/task:0/device:GPU:0",send_device_incarnation=1, tensor_name="edge_1209_loss/mul",tensor_type=DT_FLOAT,_device="/job:localhost/replica:0/task:0/device:CPU:0"]]
InternalError: GPU sync failed
MAX_LEN = max(len(article) for article in X_train_tokens)
EMBEDDING_DIM=300
vocab_size = len(word_to_id)
classes = 2
# Text input
text_input = Input(shape=(MAX_LEN,))
embedding = Embedding(vocab_size, EMBEDDING_DIM, input_length=MAX_LEN)(text_input)
x = Bidirectional(LSTM(512, return_sequences=False))(embedding)
pred = Dense(2, activation='softmax')(x)
model = Model(inputs=[text_input],outputs=pred)
model.compile(loss='categorical_crossentropy', optimizer='RMSprop', metrics=['accuracy'])
batch_size = 128
generator = text_training_generator(batch_size)
steps = len(X_train)/ batch_size
model.fit_generator(generator, steps_per_epoch=steps, verbose=True, epochs=10)
模型总结:
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) (None, 5521) 0
_________________________________________________________________
embedding_1 (Embedding) (None, 5521, 300) 8099100
_________________________________________________________________
bidirectional_1 (Bidirection (None, 1024) 3330048
_________________________________________________________________
dense_1 (Dense) (None, 2) 2050
=================================================================
Total params: 11,431,198
Trainable params: 11,431,198
Non-trainable params: 0
_________________________________________________________________
最佳答案
可能您的 GPU 内存不足。您的网络非常大,有 1100 万个可训练参数。你真的需要循环层的 512*2 输出吗?
此外,您的 embedding_dim 也很大,而您的词汇量却很小,只有 5k 个单词。我猜您的网络对于您的问题来说太复杂了。我建议首先尝试使用 32 的嵌入大小和 32 的 LSTM 大小。如果您的准确性仍然很差,您可以增加复杂性。
EMBEDDING_DIM = 32
Bidirectional(LSTM(32, return_sequences=False))(embedding)
关于tensorflow - CuDNNLSTM : Failed to call ThenRnnForward,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53972814/
虽然在 tf.keras.layers.LSTM有一个 activation参数(默认 tanh) CuDNNLSTM没有,而有 activity_regularizer范围。 我错过了什么吗? Cu
我在尝试使用 CuDNNLSTM 而不是 keras.layers.LSTM 时遇到了问题。 这是我得到的错误: Failed to call ThenRnnForward with model co
我想加速我的 LSTM 网络,但是当我将它用于 OCR(其中序列具有可变长度)时,我不能使用普通的 LSTM 实现。这就是我使用“tf.nn.dynamic_rnn”的原因。 基于 tensorflo
我正在尝试使用 CuDNNLSTM Keras 单元来提高循环神经网络的训练速度(文档 here)。 当我运行时: from keras.layers import Bidirectional, Cu
我已将此问题发布为 issue在 Keras 的 Github 中,但认为它可能会在这里吸引更广泛的受众。 系统信息 我是否编写了自定义代码(而不是使用示例目录):对官方 Keras 教程的最小更改
我已经使用 AWS p3 实例使用 GPU 加速训练以下模型: x = CuDNNLSTM(128, return_sequences=True)(inputs) x = Dropout(0.2)(x
我正在尝试将 dropout 与 CudnnLSTM (tf.contrib.cudnn_rnn.python.layers.CudnnLSTM) 一起使用,我希望能够只构建一个图并将 dropout
我已经成功运行了以 LSTM 作为第一层的模型。但出于好奇,我用 CuDNNLSTM 替换了 LSTM。 但是在model.fit之后,它回复了以下错误信息: UnknownError: Fail t
我训练了一个使用 CuDNNLSTM 单元的 keras 模型,现在希望将模型加载到缺少 GPU 的主机设备上。因为 CuDNNLSTM 单元需要 GPU,所以加载过程会爆炸,抛出: No OpKer
我训练了一个使用 CuDNNLSTM 单元的 keras 模型,现在希望将模型加载到缺少 GPU 的主机设备上。因为 CuDNNLSTM 单元需要 GPU,所以加载过程会爆炸,抛出: No OpKer
我在使用 GPU 的 tensorflow 中使用 CUDNNLSTM 训练了一个模型。当我尝试在 cpu 中使用模型进行推理时,出现此错误: Invalid argument: No OpKerne
通过将其值作为层的参数传递,可以将循环丢失应用于 Keras 中的基本 LSTM 或 GRU 层。 CuDNNLSTM 和 CuDNNGRU 是与 CUDA 兼容的 LSTM 和 GRU 层。主要优势
我基于 LSTM 层使用 Keras 开发了一个神经网络模型。为了提高 Paperspace(GPU 云处理基础设施)的速度,我用新的 CuDNNLSTM 切换了 LSTM 层。 层。然而,这仅适用于
CuDNNGRU在 TensorFlow 1.0真的很快。但是当我转到 TensorFlow 2.0 时我找不到 CuDNNGRU .简单 GRU TensorFlow 2.0真的很慢. 有什么办法可
我正在使用 Python 中的 Tensorflow 训练 LSTM 网络,并想切换到 tf.contrib.cudnn_rnn.CudnnLSTM 以加快训练速度。我做的是替换 cells = tf
我可以使用他们的 GPU 执行此操作,但使用他们的 TPU 时会检索到一个错误...请问这里有没有人知道我想念什么?将 TPU 与 CuDNNLSTM 实际结合使用是否有意义?还是 CuDNNLSTM
当我编写 tf.keras.layers.LSTM 时,我收到了警告 请注意,该层并未针对性能进行优化。请使用 tf.keras.layers.CuDNNLSTM 以获得更好的 GPU 性能。 但是当
我是一名优秀的程序员,十分优秀!