TensorFlow 2.0语法更改

2022-04-01 00:00:00 python tensorflow tensorflow2.0

问题描述

我希望运行以下几行代码,这些代码是基于TensorFlow 1.0语法编写的:

import tensorflow as tf
a = tf.constant(5)
b = tf.constant(2)
c = tf.constant(3)
d = tf.multiply(a,b)
e = tf.add(b,c)
f = tf.subtract(d,e)

with tf.Session() as sess:
    fetches = [a,b,c,d,e,f]
    outs = sess.run(fetches)
    print("outs={}".format(outs))

但它会打印出错误消息,指出:

module 'tensorflow' has no attribute 'Session'

查找后发现TensorFlow 2.0似乎不再支持会话,https://www.tensorflow.org/guide/effective_tf2

问题是我并不真正理解文档,因为它看起来很复杂,那么我可以在上面的代码中实现哪些更改以在TensorFlow 1.0中获得相同的输出?希望在这方面能得到一些帮助。


解决方案

尝试使用tf.compat.v1.Session代替Session 除此之外,如果您有更多疑问,可以参考TensorFlow https://www.tensorflow.org/api_docs/python/tf/compat/v1/Session

相关文章