Tensorflow-GPU v1.13.1, CUDA: 10.0, CuDNN: 7.5.1, видеокарта: RTX 2080, Ubuntu: 18.04
В настоящее время я пытаюсь обучить модель LSTM в tf, используя CuDNNLSTM, однако всякий раз, когда я запускаю свой код, я получаю следующую ошибку
2019-04-28 23:43:48.936154: E tensorflow/stream_executor/cuda/cuda_dnn.cc:334] Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
2019-04-28 23:43:48.936212: W tensorflow/core/framework/op_kernel.cc:1401] OP_REQUIRES failed at cudnn_rnn_ops.cc:1217 : Unknown: Fail to find the dnn implementation.
Traceback (most recent call last):
File "/home/nicholas/PycharmProjects/deepLearninginKeras/crypto_currency_predict/crypto.py", line 139, in <module>
callbacks=[tensorboard, checkpoint])
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/keras/engine/training.py", line 880, in fit
validation_steps=validation_steps)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/keras/engine/training_arrays.py", line 329, in model_iteration
batch_outs = f(ins_batch)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/keras/backend.py", line 3076, in __call__
run_metadata=self.run_metadata)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/client/session.py", line 1439, in __call__
run_metadata_ptr)
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/framework/errors_impl.py", line 528, in __exit__
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.UnknownError: Fail to find the dnn implementation.
[[{{node cu_dnnlstm/CudnnRNN}}]]
[[{{node ConstantFoldingCtrl/loss/dense_1_loss/broadcast_weights/assert_broadcastable/AssertGuard/Switch_0}}]]
Я не уверен, что именно является причиной проблемы, я чувствую, что часть этого может быть здесь, версия CUDA, которую я установил / использую, отличается от той, что установлена на моей видеокарте. Когда в терминале я использую команду "nvidia-smi", я получаю следующее:
NVIDIA-SMI 418.56 Версия драйвера: 418.56 Версия CUDA: 10.1
в моем ~ / .bashrc внизу страницы у меня есть следующие пути:
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/cuda/$/cuda/extras/CUPTI/lib64
export CUDA_HOME=/usr/local/cuda
Любое понимание будет оценено.
Вот пример слоя из моей модели:
model.add(tf.keras.layers.CuDNNLSTM(128, input_shape=train_x.shape[1:], return_sequences=True))
model.add(tf.keras.layers.Dropout(0.2))
model.add(tf.keras.layers.BatchNormalization())
Было бы лучше, например, перейти на Ubuntu 16 или это не решило бы проблему. Похоже, что это очень распространенная проблема с RTX 20xx.