为什么我无法导入Tensorflow.contrib,但出现错误,提示没有名为'tensorflow.python.saved的模块

时间:2019-03-09 22:13:39

标签: python tensorflow

嗨,我刚刚在Mac上安装了Tensorflow,我想使用tf.contrib.slim,但是当我使用它时,会得到

import tensorflow as tf

slim = tf.contrib.slim

错误:

  

文件   “ /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tensorflow_estimator/python/estimator/export/export_lib.py”,第25行,在       从tensorflow.python.saved_model.model_utils import build_all_signature_defs ModuleNotFoundError:未命名模块   'tensorflow.python.saved_model.model_utils'

我不知道该怎么办,请帮助我

我使用Tensorflow.13.1python 3.7

9 个答案:

答案 0 :(得分:6)

第一个非恒定张量流

pip uninstall tensorflow

然后安装1.13.2版本

pip install tensorflow==1.13.2

它可以工作..也有同样的问题..但是安装tensorflow 1.13.2可以解决它!
tensorflow的新版本没有

答案 1 :(得分:5)

当前,在代码为1.x的情况下,默认安装的tensorflow为2.x。 contrib模块已从tf 2.x中删除。检查警告:

“ TensorFlow贡献模块不会包含在TensorFlow 2.0中”

卸载tensorflow,然后使用安装1.x版本

pip install tensorflow==1.15

答案 2 :(得分:4)

我通过以下方法解决了这个问题。

  pip uninstall tensorflow_estimator
  pip install tensorflow_estimator

引用为:https://github.com/tensorflow/tensorflow/issues/27079

答案 3 :(得分:3)

tf.contrib已从TF 2.0 alpha开始移出TF。

您可以使用tf_upgrade_v2脚本https://www.tensorflow.org/alpha/guide/upgrade

将TF 1.x代码升级到TF2.x。

答案 4 :(得分:3)

首先:

pip install --upgrade tf_slim

然后:

import tf_slim as slim

答案 5 :(得分:2)

如果下面的命令不起作用

pip3 install tensorflow==1.14.0 

那我们可以试试下面的命令

pip3 install https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.14.0-py3-none-any.whl

答案 6 :(得分:1)

对于尝试使用Tensorflow 1.x.x版本的 github 中的旧代码的任何人,请注意Tensorflow 2.0.x tf.contrib中已不再存在,并且其模块已移动。
请在不带Tensorflow 2.0.x部分的地方搜索模块名称,以了解它的新位置,从而通过更正tf.contrib语句来相应地迁移代码。

希望有帮助!

答案 7 :(得分:1)

为了在python3上运行它,我使用pip3进行安装

pip3 install tensorflow

这对我有用

答案 8 :(得分:1)

我使用以下步骤解决了这个问题:

首先我会检查我的 tf 的当前版本 使用

import tensorflow
print(tensorflow.__version__)
2.5.0

然后 contrib 是旧版 tensorflow 的一部分,因为它从 2.X 中删除。

所以我们需要使用 tf 版本 1.X

这将使用以下代码段完成

%tensorflow_version 1.x
import tensorflow
print(tensorflow.__version__)

你会得到输出

**TensorFlow 1.x selected.
1.15.2**

现在你可以使用

from tensorflow.contrib import seq2seq
from tensorflow.contrib.rnn import DropoutWrapper