Je suis novice dans Tensorflow et je développe un notebook dans Google Colaboratory.
Sur mes premiers notebooks, j'ai reçu un message disant de mettre à jour vers Tensorflow v.2.
Maintenant, dans un autre cahier, je reçois le message suivant:
Le nom tf.get_default_graph est obsolète. Veuillez utiliser tf.compat.v1.get_default_graph à la place.
Si je fais cela, est-ce que j'utilise Tensorflow v2?
Je suis confus à cause du v1
dans tf.compat.v1.get_default_graph
.
Tous les messages d'erreur sont:
AVERTISSEMENT: tensorflow: De /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:66: Le nom tf.get_default_graph est obsolète. Veuillez utiliser tf.compat.v1.get_default_graph à la place.
AVERTISSEMENT: tensorflow: De /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:541: Le nom tf.placeholder est obsolète. Veuillez utiliser tf.compat.v1.placeholder à la place.
AVERTISSEMENT: tensorflow: De /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:4432: Le nom tf.random_uniform est obsolète. Veuillez utiliser tf.random.uniform à la place.
AVERTISSEMENT: tensorflow: De /usr/local/lib/python3.6/dist-packages/keras/backend/tensorflow_backend.py:4267: Le nom tf.nn.max_pool est obsolète. Veuillez utiliser tf.nn.max_pool2d à la place.
Je pense que je ne peux pas changer ce code sur les keras.
C'est normal. Comme vous l'avez mentionné dans la question, cet avertissement revient à Keras. Keras est une API de haut niveau. Il fonctionne avec theano et tensorflow comme backend pour les calculs de bas niveau. Si Keras a trouvé une version de tensorflow ou que le code spécifique ano exécute celle-ci comprenant cette partie:
tf.get_default_graph
De l'autre côté, tensorflow ne sait pas qui l'appelle. Il jette un avertissement dans la future version tf.get_default_graph
serait supprimé! Soyez futuriste et ne l'utilisez pas pour la cohérence du code. Il revient à Keras et non à votre code. Keras publié avant tf v2.