解决tensorflow2.x中使用tf.contrib.slim包时出现的No module named:tensorflow.contrib 问题

简介

Tensorflow2.x 版本较1.x版本有了很大的变动,以使TensorFlow用户更加高效。其中 tf.contrib 被完全弃用了是 2.x版本的一个重大的变化,但 import tensorflow.contrib.slim as slim slim 作为一个高级封装,已经在很多之前的版本中广泛使用。现在大部分的源码还是以tensorflow1.x版本为基础写的,这导致了一些已经在2.x版本中移除的模块无法使用。

主要问题

在运行import tensorflow.contrib.slim as slim
解决tensorflow2.x中使用tf.contrib.slim包时出现的No module named:tensorflow.contrib 问题_第1张图片

出现了:ModuleNotFoundError: No module named 'tensorflow.contrib 错误
在这里插入图片描述

解决方案

经查询现有的解决方案,大部分采用了降低版本的方法,如果想采用此方法可以自己去查询。
因为不想采用降低版本的方法进行解决,经过搜索在github中查询到此信息
链接: tf.contrib.slim is not worked in tensorflow 2.0 what is the alternative for that?.

Tf-slim 有一个独立于 tensorflow 的镜像可以以 tf.compat.v1 兼容模式下使用,安装该包即可解决tensorflow2.x中使用tf.contrib.slim包时出现的No module named:tensorflow.contrib 问题_第2张图片

TF-Slim是一个轻量级的库,用于在TensorFlow中定义,训练和评估复杂的模型。tf-slim的组件可以与本机tensorflow以及其他框架自由混合。
这里可以查询到关于Slim的信息: link.

操作

在cmd中使用pip下载TF-Slim

pip install --upgrade tf_slim

在这里插入图片描述

完成下载:
在这里插入图片描述

使用Slim库时注意:

#import tensorflow.contrib.slim as slim
import tf_slim as slim

其中,注释掉的部分是源代码,修改后不再报错。
(ps :能力有限,如有错误,敬请指出。

你可能感兴趣的:(tensorflow)