GPU TensorFlow 2.3 - InvalidArgumentError: error en la aserción: [0] [Op: Assert] nombre: EagerVariableNameReuse
Medio ambiente:
Windows 8.1 64 bits Python 3.7.7 64 bits TensorFlow 2.3 Keras 2.4
CUDA: 10.1 CuDNN: 7
Error : InvalidArgumentError: assertion failed: [0] [Op:Assert] name: EagerVariableNameReuse.
Problema : error anterior en una declaración simple model = Sequential()en la ejecución de la GPU
Pero si ejecuto el script sin GPU (sin configurar las variables de entorno CUDA / CuDnn, funciona como se esperaba.
Entonces, efectivamente, tengo una GPU pero no puedo usar con TensorFlow (2.3)
¿Alguien puede ayudar?
Respuestas
Por lo que he visto, este problema surge con la siguiente combinación mortal.
- SO Windows
- TensorFlow 2.3.x
He estado luchando por resolver esto durante bastante tiempo y solo lo descubrí recientemente.
La solución más fácil
La solución más sencilla sería optar por TensorFlow 2.4.0rcx. Todavía está en prelanzamiento. Pero no me han dado el problema antes mencionado. Entonces,
pip uninstall tensorflow
pip install tensorflow==2.4.0rc0
Solución si quieres quedarte con TF 2.3.x
Si realmente está convencido de usar TensorFlow 2.3.x, las únicas soluciones parecen ser,
- Probar un sistema operativo basado en Linux (Ubuntu)
- Compilar TensorFlow desde la fuente (según este útil comentario)