如何从旧版本切换到新版本的TensorFlow



我有一段时间没有使用TensorFlow,现在,当我再次开始使用它时,我的代码的第一个基本行出现了问题:

X = tf.placeholder(name = 'X')

我收到以下错误消息:

AttributeError: module 'tensorflow' has no attribute 'placeholder'

我从谷歌上得到的是,placeholder方法被弃用了。

所以,我的问题是,我应该从哪里开始阅读,以了解哪些内容被弃用,以及使用TensorFlow的新方法是什么?

您仍然可以通过在运行代码之前选择Tensorflow 1.x来访问旧的TF 1.x代码:

%tensorflow_version 1.x
import tensorflow as tf
X = tf.placeholder(tf.float32, name = 'X')
X

输出:

<tf.Tensor 'X_1:0' shape=<unknown> dtype=float32>

在tensorflow渴望执行模式(tensorflow 2.0的更新版本(中,tf.placeholder被tf.keras.Input取代

有关将TF 1.x代码转换为TF 2.x的详细信息,请查看本迁移指南。

如果使用脚本,@TFer2的Answer将不起作用。您需要禁用tfv2行为,以便可以使用v1行为。

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

现在你可以使用tf v1了。

我建议看一些tfv1和tfv2任务的例子。这些将帮助您了解主要差异。

例如,tf1中的二进制分类与tf2中的二进制归类。

相关内容

  • 没有找到相关文章

最新更新