web-dev-qa-db-fra.com

CuDNNLSTM: UnknownError: impossible de trouver l'implémentation dnn

J'ai exécuté le modèle avec LSTM comme première couche avec succès. Mais par curiosité, je remplace LSTM par CuDNNLSTM. Mais après model.fit, il a répondu au message d'erreur suivant:

UnknownError: Fail to find the dnn implementation.
    [[{{node cu_dnnlstm_5/CudnnRNN}} = CudnnRNN[T=DT_FLOAT, _class=["loc:@training_2/Adam/gradients/cu_dnnlstm_5/CudnnRNN_grad/CudnnRNNBackprop"], 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"](cu_dnnlstm_5/transpose, cu_dnnlstm_5/ExpandDims_1, cu_dnnlstm_5/ExpandDims_1, cu_dnnlstm_5/concat_1)]]
    [[{{node metrics_3/mean_squared_error/Mean_1/_1877}} = _Recv[client_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_4852_metrics_3/mean_squared_error/Mean_1", tensor_type=DT_FLOAT, _device="/job:localhost/replica:0/task:0/device:CPU:0"]()]]

J'ai essayé TestCudnnLSTM () à ce sujet discussion et j'ai réussi le test:

 Version Keras: 2.2.4 
 Version Tensorflow: 1.12.0 
 Création du modèle 
 _________________________________________________________________ 
 Couche (type) Forme de sortie Paramètre # #. ____.] ================================================ ================== 
 cu_dnnlstm_1 (CuDNNLSTM) (Aucun, 1000, 1) 16 
 =========== ================================================== ===== 
 Paramètres totaux: 16 
 Paramètres entraînables: 16 
 Paramètres non entraînables: 0 
 _________________________________________________________________ 
 Aucun 
 Modèle compilé 

Il semble que le problème apparaisse lors de l'ajustement du modèle. Mais je ne sais pas exactement quel est le problème?

4
Fay Wang

Dans tensorflow 2.0, j'ai eu la même erreur lors de l'exécution du modèle RNN LSTM.La raison était due à une version inférieure de mon cuDNN.Dans la page des exigences du tensorflow gpu, il était recommandé d'avoir

cuDNN SDK >= 7.4.1.

Vous pouvez vous référer pour plus de détails dans https://www.tensorflow.org/install/gp

Demandé dans le forum Tensorflow Reddit

https://www.reddit.com/r/tensorflow/comments/dxnnq2/i_am_getting_an_error_ilst_running_the_rnn_lstm/?utm_source=share&utm_medium=web2x

0
gokul adethya

Assurez-vous que vous disposez de la bonne version du pilote Nvidia pour la version de CUDA que vous utilisez. Vous pouvez le voir ici. https://docs.nvidia.com/deploy/cuda-compatibility/index.html#binary-compatibility

J'utilise CUDA 9.0, mais j'utilisais un pilote Nvidia inférieur à 384.81. La mise à jour du pilote Nvidia vers un nouveau pilote a résolu le problème pour moi.

0
Nissan