前几天写网络的时候发现个问题,今天看书又发现了。并且书中做出了解释。
书中原话:
可以用
.eval()
来确认诸如神经元是否激活、有没有被正确的分类等问题。
但是,通过
tf.Variable()
定义的变量的值,要通过
sess.run()
来获取其内部内容
补充一下,在会话窗口打开的时候,直接对变量或者神经元进行print只会显示其张量信息。
eval不能处理对象列表数据。
网上的解释:
官方文档:
答主解释:
你可以使用sess.run()在同一步获取多个tensor中的值,使用Tensor.eval()时只能在同一步当中获取一个tensor值,并且每次使用 eval 和 run时,都会执行整个计算图。
网上的解释摘自某答主。
总结:如果想看张量内的内容,优先使用sess.run()
而如果想查看某一个特定的张量内的内容,可以考虑使用eval()
以上内容全凭查资料和个人理解,如有不同看法请评论留言~!!!一起探讨。———————————————by 一个学习两年机器学习的萌新。