Maison > développement back-end > Tutoriel Python > Comment enregistrer et restaurer efficacement les modèles entraînés dans TensorFlow ?

Comment enregistrer et restaurer efficacement les modèles entraînés dans TensorFlow ?

Linda Hamilton
Libérer: 2024-12-14 12:03:12
original
902 Les gens l'ont consulté

How to Effectively Save and Restore Trained Models in TensorFlow?

Enregistrement et restauration des modèles entraînés dans Tensorflow

Après avoir entraîné un modèle dans Tensorflow, il est crucial de le préserver et de le réutiliser. Voici comment gérer efficacement le stockage du modèle :

Enregistrement du modèle entraîné (Tensorflow version 0.11 et supérieure) :

  1. Préparer l'entrée : Définissez des espaces réservés et préparez le dictionnaire de flux avec les données d'entrée.
  2. Définir Opérations : Spécifiez les opérations à restaurer, telles que l'addition ou la multiplication.
  3. Créer un objet économiseur : Instanciez un objet économiseur qui gère le stockage des variables.
  4. Enregistrez le graphique : Utilisez la méthode saver.save() pour stocker le modèle, y compris les variables et le graphique. structure.

Exemple de code :

import tensorflow as tf

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

# Define test operation
w3 = tf.add(w1, w2)
w4 = tf.multiply(w3, tf.Variable(2.0, name="bias"), name="op_to_restore")

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

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

# Save the model
saver.save(sess, 'my_test_model', global_step=1000)
Copier après la connexion

Restauration du modèle enregistré :

  1. Charger le méta-graphique : Importez le méta-graphique pour accéder au modèle enregistré structure.
  2. Restaurer les variables : Utilisez la méthode saver.restore() pour récupérer les variables enregistrées.
  3. Obtenir les espaces réservés et les données de flux : Obtenir les entrées des espaces réservés et alimentez-les avec de nouvelles données.
  4. Accédez aux opérations enregistrées : Localisez les opérations que vous souhaitez les exécuter et les exécuter.

Exemple de code :

# Restore model
saver = tf.train.import_meta_graph('my_test_model-1000.meta')
saver.restore(sess, tf.train.latest_checkpoint('./'))

# Get placeholders and feed data
w1 = sess.graph.get_tensor_by_name("w1:0")
w2 = sess.graph.get_tensor_by_name("w2:0")
feed_dict = {w1: 13.0, w2: 17.0}

# Run saved operation
op_to_restore = sess.graph.get_tensor_by_name("op_to_restore:0")
result = sess.run(op_to_restore, feed_dict)
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal