使用MNIST数据集时关于“ModuleNotFoundError: No module named ‘tensorflow.examples.tutorials‘”报错的解决方案

本文主要是介绍使用MNIST数据集时关于“ModuleNotFoundError: No module named ‘tensorflow.examples.tutorials‘”报错的解决方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于“ModuleNotFoundError: No module named ‘tensorflow.examples.tutorials’”报错

报错原因

之所以在pycharm里会报“ModuleNotFoundError: No module named 'tensorflow'”这样的错误是因为使用Anaconda平台不指定安装tensorflow的版本时,tensorflow的默认安装版本为最新,我安装的tensorflow2.x版本,这个版本在安装的过程中并不会将tutorials文件夹安装在tensorflow\examples\目录下,我的目录为E:\Anaconda\envs\tensorflowbase\Lib\site-packages\tensorflow\examples,所以当使用下列代码导入input_data时会报错。

TensorFlow官方提供了input_data模块,input_data模块使用read_data_sets()函数自动加载数据集。函数第一个参数,是数据集存放路径。第二个参数one_hot=True表示以独热码的形式存取,这是因为MNIST的labels是1,2,3这种,需要转换成one-hot向量,最后预测为1的分量就是分类类别。当函数运行时,会自动检查存放路径下是否有该数据集,如果没有,会自动下载MNIST数据集。

from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets('mnist_data', one_hot=True)

解决方案

下载下面的网盘文件,并解压site-packages\tensorflow\examples文件夹下,之后运行就解决了这个问题。下载解压之后tutorials文件夹在我电脑上的路径为E:\Anaconda\envs\tensorflowbase\Lib\site-packages\tensorflow\examples\tutorials
链接: tutorials.7z.
提取码:n36l

关于“AttributeError: module ‘tensorflow’ has no attribute ‘placeholder’”的解决

报错原因

我的tensorflow版本为2.x,所以出现这个问题是因为在tf2下使用了tf1的API,tf2不支持导致的。

解决方案

将下列语句:

import tensorflow as tf

更改为:

import tensorflow.compat.v1 as tf  # 由于使用了placeholder,所以使用该句及下句语句
tf.disable_v2_behavior()

即可。

参考:https://www.cnblogs.com/ping2yingshi/p/12920537.html

这篇关于使用MNIST数据集时关于“ModuleNotFoundError: No module named ‘tensorflow.examples.tutorials‘”报错的解决方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/270581

相关文章

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

Spring Security简介、使用与最佳实践

《SpringSecurity简介、使用与最佳实践》SpringSecurity是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,本文给大家介绍SpringSec... 目录一、如何理解 Spring Security?—— 核心思想二、如何在 Java 项目中使用?——

springboot中使用okhttp3的小结

《springboot中使用okhttp3的小结》OkHttp3是一个JavaHTTP客户端,可以处理各种请求类型,比如GET、POST、PUT等,并且支持高效的HTTP连接池、请求和响应缓存、以及异... 在 Spring Boot 项目中使用 OkHttp3 进行 HTTP 请求是一个高效且流行的方式。

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC