tensorflow---之accuracy.eval

eval() 其实就是tf.Tensor的Session.run() 的另外一种写法。你上面些的那个代码例子,如果稍微修改一下,加上一个Session context manager:

with tf.Session() as sess:
  print(accuracy.eval({x:mnist.test.images,y_: mnist.test.labels}))

其效果和下面的代码是等价的:

with tf.Session() as sess:
  print(sess.run(accuracy, {x:mnist.test.images,y_: mnist.test.labels}))

但是要注意的是,eval()只能用于tf.Tensor类对象,也就是有输出的Operation。对于没有输出的Operation, 可以用.run()或者Session.run()。Session.run()没有这个限制。



作者:蔡善清
链接:https://www.zhihu.com/question/63258737/answer/288856474
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

猜你喜欢

转载自blog.csdn.net/zxyhhjs2017/article/details/82349535