В настоящее время я пытаюсь запустить модель tenorflow / keras, используя слой CuDNNLSTM () в блокноте jupyter, и ничего не работает.
Когда я запускаю следующий образ докера, tenorflow / tenorflow: lastest-gpu-py3-jupyter, с этим фрагментом кода:
nvidia-docker run --runtime=nvidia -it --rm -v $(PATH):/tf/notebooks -p 8888:8888 tensorflow/tensorflow:latest-py3-jupyter
Я могу получить доступ к блокноту jupyter, и он работает хорошо.Но когда я пытаюсь выполнить свою модель:
model = Sequential()
model.add(CuDNNLSTM(50, input_shape=(train_X.shape[1],
train_X.shape[2]), return_sequences=True))
model.add(CuDNNLSTM(50))
model.add(Dense(1, activation='sigmoid'))
со следующим импортом:
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import LSTM, CuDNNLSTM
Я получил эту ошибку:
InvalidArgumentError (see above for traceback): No OpKernelwas registered to support Op 'CudnnRNN' used by node cu_dnnlstm_1/CudnnRNN (defined at /usr/local/lib/python3.5/dist-packages/keras/layers/cudnn_recurrent.py:517) with these attrs: [dropout=0, seed=87654321, input_mode="linear_input", T=DT_FLOAT, direction="unidirectional", rnn_mode="lstm", is_training=true, seed2=0]
Registered devices: [CPU, XLA_CPU]
Registered kernels:
<no registered kernels>
[[node cu_dnnlstm_1/CudnnRNN (defined at /usr/local/lib/python3.5/dist-packages/keras/layers/cudnn_recurrent.py:517) ]]
Кто-нибудь уже имелэтот вопрос на Ubuntu?
PS: Я установил все предварительные требования (nvidi cuda, nvidia cudnn, nvidia docker) на мою машину.