Maison >développement back-end >Tutoriel Python >Comment puis-je enregistrer et restaurer des modèles TensorFlow ?

Comment puis-je enregistrer et restaurer des modèles TensorFlow ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-26 16:08:10269parcourir

How Can I Save and Restore TensorFlow Models?

Enregistrement et restauration des modèles Tensorflow

Dans Tensorflow, l'enregistrement et la restauration de modèles permettent de conserver les modèles entraînés et de les exploiter pour une utilisation future. Voici les étapes à suivre :

Enregistrement du modèle (Tensorflow 0.11 et supérieur) :

  1. Créez des espaces réservés et définissez les opérations TensorFlow pour votre modèle.
  2. Initialisez les variables TensorFlow.
  3. Créez un Objet tf.train.Saver.
  4. Appelez la méthode saver.save avec la session et le chemin du modèle.

Exemple :

# Define placeholders
w1 = tf.placeholder("float", name="w1")
w2 = tf.placeholder("float", name="w2")

# Define operations
w3 = tf.add(w1, w2)
w4 = tf.multiply(w3, 2.0, name="op_to_restore")

# Initialize variables
sess = tf.Session()
sess.run(tf.global_variables_initializer())

# Create a saver
saver = tf.train.Saver()

# Save the model
saver.save(sess, 'my_model', global_step=1000)

Restauration du modèle :

  1. Chargez le méta-graphique et restaurez les poids à l'aide de la fonction tf.train.import_meta_graph.
  2. Accédez directement aux variables enregistrées.
  3. Créez des espaces réservés et alimentez de nouvelles données.
  4. Accédez et exécutez le fichier souhaité. opération.

Exemple :

# Load the meta graph
sess = tf.Session()
saver = tf.train.import_meta_graph('my_model-1000.meta')
saver.restore(sess, tf.train.latest_checkpoint('./'))

# Access saved variables
print(sess.run('bias:0'))  # Prints the saved bias value

# Create placeholders and feed new data
w1 = tf.get_default_graph().get_tensor_by_name("w1:0")
w2 = tf.get_default_graph().get_tensor_by_name("w2:0")
feed_dict = {w1: 13.0, w2: 17.0}

# Access and run the operation
op_to_restore = tf.get_default_graph().get_tensor_by_name("op_to_restore:0")
print(sess.run(op_to_restore, feed_dict))  # Prints the result of the restored operation

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn