windows安装TensorFlow和Keras遇到的问题及其解决方法
作者:战争热诚 发布时间:2022-04-04 02:14:23
安装TensorFlow在Windows上,真是让我心力交瘁,想死的心都有了,在Windows上做开发真的让人发狂。
首先说一下我的经历,本来也就是起初,网上说python3.7不支持TensorFlow环境,而且使用Anaconda最好,所以我将我之前Windows上所有的python环境卸载掉!!!,对没错,是所有,包括Anaconda环境,python环境,pycharm环境也卸载掉了。而且我丧心病狂的在电脑上找几乎所有关于python的字眼,全部删除掉,统统不留。只是为了铁了心在Windows上成功安装一个TensorFlow环境。
之前在Linux上环境都有,但是总是切换Linux和Windows比较麻烦,但是这个原因解释起来也比较麻烦,就不多说了。总之,就是必须在Windows上安装TensorFlow!这次是铁了心的,因为去年在Windows上没有安装成功,我就避而远之,没弄,但是现在不得不再来,我决定遇到问题不再躲避,要直面挫折,即使浪费很长的时间,也必须完成(其实是正好这段时间不太忙)。
然后听到同事说,很简单啊,就是安装一个Anaconda对应python3.6版本的就行,后面直接pip install 就OK了。当然我们希望是这样,可是事与愿违,简直是气死我了,这一天安装anaconda就安装了三次,你说累不累,除了安装这个,还要安装对应的包,真的是卸了又安,安了又卸。
而打算最后一次尝试,竟然是安装的python3.7成功了(各位盆友,记住,只是安装成功了!!),哈哈哈,真的我觉得我这笑是无奈的笑。
下图是anaconda的版本和python的版本:
下图是TensorFlow和keras安装成功的见证:
但是,使用的时候还是报错!!!下图是在python3.7的情况下:
唉,难受,那最最后一次尝试,就是在python3.6版本下安装,终于成功了!!包括测试成功,上图:
所以,我的总结就是,安装python3.6 还是python3.7的什么都不重要,最重要的是遇到问题,解决问题。无论用哪个版本,只要TensorFlow支持这个版本,我们就可以按照成功!!!,但是前提是必须官方支持的版本
好了,牢骚发完了,废话也说完了,下面说说安装注意的坑。
1,anaconda安装要注意的问题
话不多说,先上anaconda的下载地址。
镜像下载地址:清华镜像源
官方下载地址:https://repo.anaconda.com/archive/
那anaconda按照要注意的问题是什么呢?
1.1,安装到这一步,配置所有的User,选择第二个!!
如果选择第一个,可能会出现,下面报错,也就是PermissionError,权限不足,所以就是安装不成功,即使我使用了管理员权限进入了cmd,但是还是没有任何用处。
当然,有可能你们有用,那么如何进入管理员身份运行,如下:
到C:\Windows\System32目录下,右键单击cmd.exe文件以管理员身份运行。如下
运行结果如下:
1.2,安装到这一步,最好√上第一个,让anaconda自己配置环境变量
当然,不让anaconda自己配置环境变量也可以,那就是我们自己去我的电脑配置。
如何确保已经配置好环境变量了呢?
我们打开cmd,直接输入pip list 或者 conda list,如果出现anaconda安装的包,则说明没有问题,如果出现,无此命令,则环境变量没有配置好。
我第一次没有打 √ ,选择自己配置的环境变量。
配置环境变量就是根据安装时的路径找到以下几个路径用于环境配置,我放在E盘里,以下为我安装时的路径。
E:\anaconda3E:\anaconda3\ScriptsE:\anaconda3\Library\bin
配置环境:回到桌面,右击‘我的电脑',然后点击属性-高级系统设置-右下角点击环境变量,点击系统变量下方新建,如下图所示,依次将上面的三个路径输入,路径间用英文状态下的分号隔开,点击确定并应用。
然后设置环境变量:
检测是否安装成功
打开命令提示符(按住田字键和R键)输入cmd,输入conda和python,检测是否安装成功。
好啦~安装完成啦!
2,安装TensorFlow中报错cannot uninstall wrapt
报错如下:
导致错误的原因:Wrapt issue when installing package
解决方法:
强行升级,然后安装TensorFlow和Keras,成功了!!
安装成功,是成功了,但是无法使用,依旧会报错。
3,使用Keras中报错TensorFlow错误
导入Keras,发现报错了,报错信息如下:
本以为是版本的问题,然后卸载了keras和TensorFlow:
最好将其依赖一同卸载掉:
然后尝试安装了TensorFlow更低的版本(版本如下面所示):
结果无济于事,没用!!!
迫不得已,我决定降低python版本,尝试python3.6,大家都说3.6好,那就用呗。
4,在anaconda中降低python版本,尝试python3.6
使用以下命令创建新环境:
其中 -n 代表 name,env_name 是需要创建的环境名称,list of packages 则是列出在新环境中需要安装的工具包。
我现在的python版本是3.7,但是我想安装一个python 3.6的环境,则在anaconda prompt输入:
控制台会输出:
输入y:
下面我们激活这个环境:
然后安装keras和TensorFlow,最后在python环境中验证,发现新的错误:
讲道理,现在的我已经麻木了,感觉自己把该犯的错全犯了,运气怎么这么差呢?
百度,改错方法如下:
5,使用TensorFlow,keras出现错误:modulenotfounderror: no module named tensorflow.python
真的是遇到问题,解决问题,我已经麻木了。
可能是因为tensorflow作为后端对keras的支持不够好,但是keras的backend 同时支持tensorflow和theano,并且默认是tensorflow,因此在win本上需要更改backend为theano才能运行。
在keras安装目录里(在安装环境的目录里有Lib\site-packages\keras),找到Lib\site-packages\keras\backend__init__.py文件。
然后在C:\Users\Administrator\下有个文件夹.keras,里面有keras.json文件,修改里面的内容,原来是:
那这个只解决了Keras的问题,但是TensorFlow的问题仍然没有解决:
从下面代码来看,我们的Keras确实可以运行。但是TensorFlow仍然报错。
python使用TensorFlow报错 ModuleNotFoundError:No module named 'tensorflow.python
我去我同事能使用的TensorFlow的安装包site_packages下的tensorflow包里面查看,发现别人的环境都是这样的:
而我的环境中没有python,example include这几个文件夹,终于知道问题出在哪里了,所以我打算将别人的这个文件夹复制下来,但是于此同时在网上看到一个安装方法,反正折腾一天了,这个复制还在进行当中,我就先尝试了一下:
然后等了好久,安装成功了:
我也就不报希望,但是还是例行公事的在python环境中验证了一下:
不知道大家看到了什么,对,安装成功了!!!!
此时此刻,我的内心已经毫无波澜了,一丝喜悦感都没有了。
为了测试到底能不能用,我又将keras的后端环境由theano换成了TensorFlow(如何改回去,上面有代码,大家可以自己改,这里不再重复了)。
然后测试,成功!!!,上图:
今天真的是,哈哈哈哈哈。既然这个舒服,那我就再在python3.7上测试安装keras和tensorflow,看看是否成功,但是去清华大学镜像仓库,发现没有python3.7版本的tensorflow。
下面记录一下去清华大学镜像仓库下载并安装对应版本的tensorflow,一方面记录正确的安装过程,另一方面,证明确实没用python3.7对应的TensorFlow版本。
6,一次安装成功TensorFlow过程
直接去清华大学镜像仓库,查看对应版本的tensorflow:地址:https://mirrors.tuna.tsinghua.edu.cn/
寻找找tensorflow,并点进去:
那查找自己对应的电脑系统:
我安装的是CPU版本的:
点进去,发现,目前只有python3.5 和 python3.6的:
然后,下载对应python版本的轮子,直接安装即可。
7,不信邪,尝试python3.7版本安装TensorFlow,最终放弃
为什么这样说呢?,因为我在常下载轮子的地方发现了python3.7版本对应的TensorFlow,真的。
(下载轮子的地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/)
上图:
反正都失败这么多次了,也不差这一回,我就继续安装了一下python3.7版本的:
显示,安装成功:
此时,内心窃喜,测试一下:
心里有很多脏话,不值当讲不当讲,还是没有用。
所以目前决定放弃在python3.7版本安装tensorflow!!反正在python3.6版本上已经安装成功了,可以用就行了。
8,彩蛋
哈哈哈,很高兴,看到我这篇文章的盆友,能看到这里,这里我分享一下我这次拨开乌云见彩虹的坎坷历程。
讲道理,这两天的无数次尝试,最终成功,让我明白一个道理,就是遇到问题并不可怕,可怕的是自己脆弱的心,不断想放弃的想法。
记得去年十月份的时候,我在Windows上尝试安装tensorflow失败了。我就对深度学习这块避而远之,即使训练模型也在Linux服务器上做, 麻烦是麻烦了点,但是就是不愿意面对这个麻烦。但是从上个月开始,当我看到同事完成了一件事后,我决定安装tensorflow(因为最近确实用的比较多,切换太频繁也比较麻烦),她的那锲而不舍精神打动了我,什么事情呢? 先说一下背景,她是学习java的,虽然说编程语法大相径庭,但是不同点依旧很多,而需要她使用python一个web框架flask做一个东西。她虽然不会,但是不断尝试,不断尝试,可以说是遇到了很多很多麻烦,挫折,我也天天听到了她的抱怨(可惜我帮不上),但是终于听到了她说“yes”。我知道她成功了。所以,我决定不放弃,一定要安装成功,最后也确实安装成功了。
那其实,很多人说,没这么麻烦,我在Windows上直接pip install 就成功了啊,也确实是,但是我确实遇到了很多麻烦。希望我这次经历能帮到需要帮助的盆友。
来源:https://www.cnblogs.com/wj-1314/p/11156217.html


猜你喜欢
- 前言反爬虫是网站为了维护自己的核心安全而采取的抑制爬虫的手段,反爬虫的手段有很多种,一般情况下除了百度等网站,反扒机制会常常更新以外。为了保
- 说明1、将两个原本不相关的类结合在一起,然后利用两个类中的方法和属性,输出一份新的结果。2、结构分为Abstraction抽象类、Refin
- 一、总结说明Windows环境安装:paramunittest cmd输入命令:pip install paramunittest总结说明:
- 1.选中数据库,右键属性/选项,把恢复模式从“完整”改为“简单”。 2.选中数据库,右键任务/收缩文件,选择日志文件,设置将文件收缩为0M,
- 组合字面量组合字面量是最直接方式初始化Go对象,假设定义了Book类型,使用字面量初始化代码如下:type Book struct { &n
- XSS(跨站脚本攻击)作为一种常见的网络安全漏洞,经常被黑客用来攻击网站,Python 是一种十分流行的编程语言,有着丰富的工具库和模块,可
- 接口(python 中的协议)的多种不同的实现方式即为多态。多态的作用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属
- 一、Python sys 模块“sys” 是 “system&rdquo
- 要做一个页面上短信息的提示音的功能,本来想用HTML5中Audio+IE下的bgsound来实现,可是发现每种浏览器对Audio的解码类型还
- 一、前言对于行锁和表锁的含义区别,在面试中应该是高频出现的,我们应该对MySQL中的锁有一个系统的认识,更详细的需要自行查阅资料,本篇为概括
- 相关的依赖库在我的github网站上首先贴出代码:import solarfrom gradient import *from shadow
- 本文实例讲述了Python解析json的方法。分享给大家供大家参考,具体如下:刚学习到Python中解析json的方法,觉得有必要在这里坐下
- 1. 使用while循环输出1 2 3 4 5 6 8 9 10count=0while count <10:count+=1prin
- 前面简单介绍了Python字符串基本操作,这里再来简单讲述一下Python列表相关操作1. 基本定义与判断>>> dir(
- 原文地址:30 Days of Mootools 1.2 Tutorials - Day 11 - Using Fx.Morph, Fx O
- 一,MySQL8.0.12版本安装步骤。1,下载https://dev.mysql.com/get/Downloads/MySQL-8.0/
- 大家可能都熟悉.zip格式的文件。它可以把多个文件,压缩成一个文件。这在网络上传输时很有用,而且节省硬盘空间。接下来,我们使用Python实
- JavaScript组件打包模式js组件通常带着css image ,但这样使用起来可能会有些小麻烦,为了让组件足够的solo,有了把css
- 1. grpc开源包的安装# conda$ conda create -n grpc_env python=3.9# install grp
- 最近在研究网页的切片算法,很可能很多人不知道什么是切片算法,其实这是一种面向搜索引擎的网页分块、切片的原理,目前随着工作的深入,逐渐碰到了各