2017-12-27 9 views
0

TensorFlow wirft eine TypeError, wenn ich die einfachste Grafik ausführen.TensorFlow - "TypeError: Fetch Argument keine"

sess = tf.Session() 
x1 = tf.placeholder(tf.float32) 
x2 = tf.placeholder(tf.float32) 
z = x1 

sess.run(tf.gradients(z, [x1, x2]), feed_dict={x1: 1, x2: 1}) 

Dies ergibt

TypeError: Fetch argument None has invalid type <class 'NoneType'> 

Interessanterweise, wenn ich eine Zeile Code zu ändern:

z = x1 + x2 

Dann funktioniert alles perfekt! Warum passiert das?

Antwort

2

Gemäß Ihrer Beschreibung, ich den Code richtig ändern.

import tensorflow as tf 

sess = tf.Session() 
x1 = tf.placeholder(tf.float32) 
x2 = tf.placeholder(tf.float32) 

z = x1 
print sess.run(tf.gradients(z, [x1]), feed_dict={x1: 1}) 

z = x1 + x2 
print sess.run(tf.gradients(z, [x1, x2]), feed_dict={x1: 1, x2: 1}) 

Jetzt gibt es keinen Fehler. Ich glaube, du kannst dein Problem verstehen.

Wenn Sie eine Funktion anwenden, müssen Sie möglicherweise das Dokument betrachten. Hier ist das Dokument auf tf.gradients.

Verwandte Themen