j'ai sauvé un modèle et maintenant je suis en train de restaurer, après la restauration fonctionne pour la première fois correctement mais quand j'appuyez sur la touche « TEST » sur le même programme en cours d'exécution pour tester une autre image, il donne l'erreurtensorflow Modèle Restauration ValueError - Au moins deux variables ont le même nom
ValueError: au moins deux variables ont le même nom: Variable_2/Adam
def train_neural_network(x):
prediction = neural_network_model(x)#logits
softMax=tf.nn.softmax_cross_entropy_with_logits(
logits=prediction, labels=y)#prediction and original comapriosn
cost = tf.reduce_mean(softMax)#total loss
optimizer = tf.train.AdamOptimizer(learning_rate=0.001).minimize(cost)#learning_rate=0.01
hm_epochs = 20
new_saver = tf.train.Saver()
with tf.Session() as sess:
global s
s=sess
sess.run(tf.global_variables_initializer())
new_saver = tf.train.import_meta_graph('../MY_MODELS/my_MNIST_Model_1.meta')
new_saver.restore(s, tf.train.latest_checkpoint('../MY_MODELS'))
correct = tf.equal(tf.argmax(prediction, 1), tf.argmax(y, 1))
accuracy = tf.reduce_mean(tf.cast(correct, 'float'))
print('Accuracy:', accuracy.eval(
{x: mnist.test.images, y: mnist.test.labels}))
devrait fonction de formation (modèle d'économie) et la fonction d'essai (modèle restauration) différent? ne peuvent-ils être une même fonction? –
Ils peuvent être même si votre formation et tester en même temps dans le même graphique. Mais ne faites pas un autre graphique quand vous faites cela. Dans votre code, supprimez tout le chargement du graphique et exécutez directement la précision pour la prédiction sur le graphique par défaut. –
u peut voir la variable de prédiction, je ne suis pas en mesure de le sauvegarder dans le modèle, ce sont les logits que je dois utiliser, mais je ne peux pas les sauver, s'il vous plaît aider –