Ich arbeite an einem einfachen Spielzeug-Beispiel in TensorFlow und ich bin in einen seltsamen Fehler geraten. Ich habe zwei Platzhalter wie folgt definiert:Wie füttere ich Tensorflow Platzhalter mit numpy Arrays?
x = tf.placeholder(tf.float32, shape=[None,2]) [two-parameter input]
y_ = tf.placeholder(tf.float32, shape=[None,2]) [one-hot labels]
Ich versuche später diese Platzhalter mit einem feed_dict wie definiert zu füttern:
feed_dict={x: batch[0].astype(np.float32), y_: batch[1].astype(np.float32)}
Wo batch[0]
und batch[1]
sind beide numpy ndarrays der Größe (100,2) [verifiziert durch ihre jeweiligen Größen ausdrucken]
Wenn ich versuche, um das Modell zu laufen lasse, erhalte ich die Fehlermeldung:
"InvalidArgumentError: You must feed a value for placeholder tensor 'Placeholder' with dtype float"
verursacht durch meinen Platzhalter "x" wie oben definiert
Kann jemand sagen, was ich falsch mache? Ich habe online einige Beispiele durchgesehen und es scheint, als ob das funktionieren sollte ... Gibt es eine andere Möglichkeit, Platzhalter mit Werten aus numpigen Arrays zu versorgen?
Wenn es hilft, arbeite ich in Ubuntu, SCL und Python 2.7, und ich habe alle Standard-Numpy und Tensorflow-Pakete installiert.
Um beim Debuggen zu helfen, können Sie allen Tensoren und Operationen einen Namen geben, z. indem du 'x = tf.placeholder (..., name = 'x')' tust. Die Fehlermeldungen sind dann viel weniger kryptisch. – sunside
Ihr Code hätte funktionieren sollen, ich habe dasselbe in meiner Maschine gemacht, d. H. "Tf.placeholder" mit 'numpy.darray' vom gleichen Typ (' float32') füttern. Es würde helfen, wenn Sie die ganze Fehlermeldung geben würden. –