2017-08-23 3 views
0

Je ne suis pas bon en Python. Je voudrais savoir comment je vais pouvoir définir un feed_dict pour un espace réservé dans Tensforflow en utilisant Python. J'ai cherché ma question et le plus proche était en C++ here.Définir un feed_dict pour un plceholder en python

Supposons que je le tenseur suivant:

(<tf.Tensor 'Mul:0' shape=<unknown> dtype=float32>,) 

le voir sans feed_dict:

print sess.run('Mul:0') 

apporte cette erreur:

InvalidArgumentError (see above for traceback): You must feed a value for placeholder tensor 'Mul' with dtype float 
    [[Node: Mul = Placeholder[dtype=DT_FLOAT, shape=[], _device="/job:localhost/replica:0/task:0/gpu:0"]()]] 

apprécierais toute aide.

Répondre

0

Généralement, vous utilisez des espaces réservés pour fournir des valeurs aux opérations. Supposons que vous ayez un réseau avec une opération d'apprentissage appelée train_op et que des espaces réservés soient définis pour vos données d'entrée: data et des étiquettes cibles: target. Ensuite, lorsque vous exécutez votre boucle d'entraînement, vous collecterez des données d'entraînement et des étiquettes associées à chaque itération et les ajouterez à votre entraînement en utilisant le feed_dict. Cela ressemble à ceci:

for _ in range(num_iterations): 
    # Gather a batch of training data and targets somehow... 
    d = dataset.get_next_batch() 
    t = dataset.get_next_target_batch() 

    # Run the training operation 
    sess.run(train_op, feed_dict={data: d, target: t}) 

Je ne suis pas sûr que le cas d'utilisation, vous démontrez un sens, mais ce qui précède est généralement la façon dont vous utilisez le feed_dict.

+0

En général, je voudrais voir les poids de chaque couche dans un réseau de neurones, c'est pourquoi j'ai utilisé le fichier pré-formé '.pb' du modèle Inception. Pourriez-vous me dire comment nous faisons cela dans un projet de tensorflow générique? – Amir

+0

Cela ne semble pas lié à votre question. Vous pouvez voir les valeurs des tenseurs en exécutant quelque chose comme 'pour var dans tf.trainable_variables():' suivi de 'print ('{} \ n {} \ n'.format (var.name, var.eval())) '. – Engineero

+0

Merci, mais ses sorties rien pour moi. Je ne veux pas vous embrouiller, mais pourriez-vous jeter un oeil à mon autre question: https://stackoverflow.com/questions/45829802/voir-le-float32-weight-in-a-proto-file?noredirect= 1 # commentaire78649582_45829802 – Amir