不推荐使用名称tf.Session。请改用tf.compat.v1.Session

时间:2019-06-29 19:29:51

标签: tensorflow tensorflow2.0

我在张量流代码中收到以下弃用警告:

  

不推荐使用名称tf.Session。请改用tf.compat.v1.Session。

  • 为什么我收到此警告
  • 在Tensorflow 2.0中将会发生什么。而不是tf.session
  • 可以使用tf.compat.v1.Session

1 个答案:

答案 0 :(得分:2)

为了使TensorFlow在2.0版中更加“ Pythonic”,从设计上讲TF 2.0没有tf.Session。

TensorFlow 1.X要求用户通过调用tf。* API手动将抽象语法树(图形)缝合在一起。然后,它要求用户通过将一组输出张量和输入张量传递给session.run()调用来手动编译抽象语法树。

TensorFlow 2.0渴望执行(就像Python通常那样),而在2.0版本中,图形和会话应该像实现细节一样。

您可以使用:

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

但是,这不能让您利用TensorFlow 2.0中进行的许多改进。

The better solution is:

  • 替换tf.Session.run调用:每个tf.Session.run调用均应替换为Python函数。
    • feed_dict和tf.placeholders成为函数参数。
    • 提取将成为函数的返回值。