El modelo de Keras con capas CuDNNLSTM no funciona en el servidor de producción

He utilizado una instancia de AWS p3 para entrenar el siguiente modelo utilizando aceleración de GPU:

x = CuDNNLSTM(128, return_sequences=True)(inputs) x = Dropout(0.2)(x) x = CuDNNLSTM(128, return_sequences=False)(x) x = Dropout(0.2)(x) predictions = Dense(1, activation='tanh')(x) model = Model(inputs=inputs, outputs=predictions) 

Después del entrenamiento, save_model el modelo con la función save_model Keras y lo trasladé a un servidor de producción independiente que no tiene una GPU.

Cuando bash predecir el uso del modelo en el servidor de producción, falla con el siguiente error:

No se ha registrado ningún OpKernel para admitir la operación ‘CudnnRNN’ con estos atributos. Dispositivos registrados: [CPU], kernels registrados:

Supongo que esto se debe a que el servidor de producción no tiene soporte de GPU, pero esperaba que esto no fuera un problema. ¿Hay alguna manera de que pueda usar este modelo en un servidor de producción sin una GPU?

No, no puedes, CuDNN requiere el uso de una GPU CUDA. Debe reemplazar las capas CuDNNLSTM por las estándar LSTM.