4
におけるテンソルの値

は次のように私の完全なコードへのリンクです:印刷Tensorflow

https://github.com/roshanDD/YAD2K/blob/master/yad2k/models/keras_yolo.py#L253

私はちょうどたいテンソルの値をプリントアウト、true_areasと呼ばれます。私は私のコード実行:

sess = tf.InteractiveSession() 
true_areas = true_wh[..., 0] * true_wh[..., 1] 
tf.Print(true_areas, [true_areas], message = "This is True Areas: ") 
b = tf.add(true_areas, true_areas).eval() 

をしかし、それは私にエラーを与える:

Caused by op 'input_2', defined at: 
    File "learning.py", line 358, in <module> 
    _main(args) 
    File "learning.py", line 66, in _main 
    model_body, model = create_model(anchors, class_names) 
    File "learning.py", line 185, in create_model 
    boxes_input = Input(shape=(None, 5)) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/keras/engine/topology.py", line 1388, in Input 
    input_tensor=tensor) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/keras/engine/topology.py", line 1299, in __init__ 
    name=self.name) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/keras/backend/tensorflow_backend.py", line 349, in placeholder 
    x = tf.placeholder(dtype, shape=shape, name=name) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/tensorflow/python/ops/array_ops.py", line 1507, in placeholder 
    name=name) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/tensorflow/python/ops/gen_array_ops.py", line 1997, in _placeholder 
    name=name) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/tensorflow/python/framework/op_def_library.py", line 768, in apply_op 
    op_def=op_def) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/tensorflow/python/framework/ops.py", line 2336, in create_op 
    original_op=self._default_original_op, op_def=op_def) 
    File "/home/ubuntu/anaconda2/envs/py35/lib/python3.5/site-packages/tensorflow/python/framework/ops.py", line 1228, in __init__ 
    self._traceback = _extract_stack() 

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

それは話しているプレースホルダは何?

+0

完全なコードを追加できますか?スタックトレースは、コードに関して提供したものと一致しません。 (learn.pyのすべてが良いスタートになります) –

+0

https://github.com/roshanDD/YAD2K/blob/master/yad2k/models/keras_yolo.py#L253 – user3222184

+0

Learning.pyはここにあります:https:// github .com/roshanDD/YAD2K/blob/master/learning.py – user3222184

答えて

0

エラーメッセージは、input_2というtf.placeholder()というコードを定義したことを示しています。

このプレースホルダーに依存するグラフを評価する場合は、このプレースホルダーに値をfeedにする必要があります。これは次のようになります。

b = tf.add(true_areas, true_areas).eval({input_2: someInputValues}) 
+0

これを 'input_2'に送り、テンソルの値を出力するのは可能でしょうか? – user3222184

+0

私はテンソルの値を見たいだけです。私は他の変数の値を変更したくない。新しいプレースホルダーなどを定義できますか? – user3222184

+0

このテンソルの値はこの入力テンソルの値に依存しませんか?はいの場合は、入力テンソルを指定する必要があります。さもなければ、テンソルフローは値を計算することができません。また、[最小で完全で検証可能な例](https://stackoverflow.com/help/mcve)を提供できる場合は、非常に役立ちます。 – sietschie