tensorflow2.0出现No module named tensorflow.examples.tutorials

在tensorflow2.0中运行

from tensorflow.examples.tutorials.mnist import input_data

出现报错
ImportError: No module named ‘tensorflow.examples.tutorials’
这个报错的原因是tensorflow2.0的数据集集成到keras高级接口之中

可以查看这篇文章https://blog.csdn.net/qq_43060552/article/details/103189040

对于通过下载tensorflow/examples/tutorials模块拷贝到本地使其能运行tf1.XX版本的代码要找到本地拷贝的目录。

这里以windows下anaconda3安装tensorflow2.0环境的拷贝位置为例说明,

1.进入github的tensorflow主页下载缺失的tutorials模块文件 网址为:https://github.com/tensorflow/tensorflow。
tensorflow2.0出现No module named tensorflow.examples.tutorials_第1张图片
使用master分支(默认进去就是master分支)

2.tf2.0中examples在anaconda3中运行目录为
在这里插入图片描述
3.把下载的tutorials模块拷贝入对应目录(找对这个目录很关键,如果找错目录就会出现拷贝了tutorials模块后没有任何反应。本机tensorflow2.0运行目录在D:\Anaconda3\envs\,不是D:\Anaconda3\Lib\site-packages
tensorflow2.0出现No module named tensorflow.examples.tutorials_第2张图片
4.运行前面引入mnist数据集的代码


```python
from tensorflow.examples.tutorials.mnist import input_data

发现报了新错误,在刚才引入的tutorials\mnist\input_data.py文件中报错
ImportError: No module named 'tensorflow.contrib’
在这里插入图片描述
这个还是tensorflow2.0版本删除了contrib这个模块,该模块中主要的接口都集成到高层封装keras中了,这属于另外一个问题了。

所以加载mnist数据集还是需要使用高级封装keras中的接口


```python
mint=tf.keras.datasets.mnist
(x_,y_),(x_1,y_1)=mint.load_data()

然后进行一些数据的格式的变换、one_hot编码转换等形成和老代码中相同格式的数据集,再运行tf1.xx对应版本进行mnist训练、测试的相关代码。

你可能感兴趣的:(tensorflow)