GPU TensorFlow 2.3 - InvalidArgumentError: assertion failed: [0] [Op: Assert] name: EagerVariableNameReuse
Środowisko:
Windows 8.1 64-bitowy Python 3.7.7 64-bitowy TensorFlow 2.3 Keras 2.4
CUDA: 10,1 CuDNN: 7
Błąd : InvalidArgumentError: assertion failed: [0] [Op:Assert] name: EagerVariableNameReuse.
Problem : Powyższy błąd w prostej instrukcji model = Sequential()podczas wykonywania GPU
Ale jeśli uruchomię skrypt bez GPU (nie ustawiając zmiennych środowiskowych CUDA / CuDnn, działa zgodnie z oczekiwaniami.
Tak skutecznie, mam procesor graficzny, ale nie mogę go używać z TensorFlow (2.3)
Czy ktoś może pomóc?
Odpowiedzi
Z tego, co widziałem, ten problem dotyczy następującej śmiertelnej kombinacji.
- System operacyjny Windows
- TensorFlow 2.3.x
Od jakiegoś czasu staram się to rozwiązać i dopiero niedawno odkryłem to.
Najłatwiejsza naprawa
Najłatwiejszym rozwiązaniem byłoby wybranie TensorFlow 2.4.0rcx. Jest nadal w wersji wstępnej. Ale nie podał mi wyżej wspomnianego problemu. Więc,
pip uninstall tensorflow
pip install tensorflow==2.4.0rc0
Rozwiązanie, jeśli chcesz pozostać przy TF 2.3.x
Jeśli naprawdę nie możesz się doczekać korzystania z TensorFlow 2.3.x, jedynymi rozwiązaniami wydają się być:
- Wypróbowanie systemu operacyjnego opartego na systemie Linux (Ubuntu)
- Kompilowanie TensorFlow ze źródła (zgodnie z tym pomocnym komentarzem)