web-dev-qa-db-fra.com

Comment alimenter les espaces réservés Tensorflow avec des tableaux numpy?

Je travaille sur la création d'un exemple de jouet simple dans TensorFlow et j'ai rencontré une étrange erreur. J'ai deux espaces réservés définis comme suit:

x = tf.placeholder(tf.float32, shape=[None,2]) [two-parameter input]

y_ = tf.placeholder(tf.float32, shape=[None,2]) [one-hot labels]

J'essaie plus tard de nourrir ces espaces réservés avec un feed_dict défini comme:

feed_dict={x: batch[0].astype(np.float32), y_: batch[1].astype(np.float32)}

batch[0] et batch[1] sont des ndarrays numpy de taille (100,2) [vérifiés en imprimant leurs tailles respectives]

Lorsque j'essaie d'exécuter le modèle, j'obtiens l'erreur:

"InvalidArgumentError: vous devez alimenter une valeur pour le tenseur d'espace réservé 'Placeholder' avec flotteur dtype"

causée par mon espace réservé "x" défini ci-dessus

Quelqu'un peut-il dire ce que je fais mal? J'ai regardé plusieurs exemples en ligne et il semble que cela devrait fonctionner ... Existe-t-il un autre moyen de nourrir les espaces réservés avec des valeurs provenant de tableaux numpy?

Si cela aide, je travaille dans Ubuntu, SCL et Python 2.7, et j'ai tous les packages standard numpy et tensorflow installés.

11

Sans votre code complet, il est difficile de répondre avec précision. J'ai essayé de reproduire ce que vous avez décrit dans un exemple de jouet et cela a fonctionné.

import tensorflow as tf
import numpy as np

x = tf.placeholder(tf.float32, shape=[None, 2])
y_ = tf.placeholder(tf.float32, shape=[None, 2])
loss = tf.reduce_sum(tf.abs(tf.sub(x, y_)))#Function chosen arbitrarily
input_x=np.random.randn(100, 2)#Random generation of variable x
input_y=np.random.randn(100, 2)#Random generation of variable y

with tf.Session() as sess:
    print(sess.run(loss, feed_dict={x: input_x, y_: input_y}))
10