刚开始接触Tensorflow,好多东西不会。慢慢总结备忘。

学习自带的mnist示例,对于evla()与run()的区别不是很理解,网上搜了一下,记录下来。

 

train_accuracy = accuracy.eval(feed_dict = {x:batch[0],y_:batch[1],keep_prob :1.0})
    print("step %d,trianing accuracy %g"%(i,train_accuracy))
sess.run([train],feed_dict = {x:batch[0],y_:batch[1],keep_prob:0.5})

原文链接:

 

https://stackoverflow.com/questions/38987466/eval-and-run-in-tensorflow

答案1

 

If you have only one default session, they are basically the same.

From https://www.tensorflow.org/versions/r0.10/api_docs/python/framework.html#Operation:

op.run() is a shortcut for calling tf.get_default_session().run(op)

From https://www.tensorflow.org/versions/r0.10/api_docs/python/framework.html#Tensor:

t.eval() is a shortcut for calling tf.get_default_session().run(t)

Why these differences between Tensor and Operation? From https://www.tensorflow.org/versions/r0.10/api_docs/python/framework.html#Tensor:

Note: the Tensor class will be replaced by Output in the future. Currently these two are aliases for each other.

答案2

 

 

The difference is in Operations vs. Tensors. Operations use run() and Tensors use eval().

There seems to be a reference to this question in TensorFlow FAQ: https://www.tensorflow.org/programmers_guide/faq#running_a_tensorflow_computation

The section addresses the following question: What is the difference between Session.run() and Tensor.eval()?

 

                                                    (๑•ᴗ•๑)觉得有用,赏个植发的小钱钱。(๑•ᴗ•๑)

   

 

GitHub 加速计划 / te / tensorflow
184.55 K
74.12 K
下载
一个面向所有人的开源机器学习框架
最近提交(Master分支:2 个月前 )
a49e66f2 PiperOrigin-RevId: 663726708 2 个月前
91dac11a This test overrides disabled_backends, dropping the default value in the process. PiperOrigin-RevId: 663711155 2 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐