tensorflow1.2安装(曲折的tensorflow安装过程(Tensorflow 安装问题的解决))
目录
一 、更改服务器 。
二 、调整tensorflow版本
三 、将python降级
1 、进入conda命令行 ,依次输入以下命令
2 、换回默认源
3 、降级为python3.6
四 、降级后再升级
这周接到一个任务 ,需要在python中安装tensorflow ,跑一下数据 。TensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统 ,被广泛应用于各类机器学习(machine learning)算法的编程实现 ,其前身是谷歌的神经网络算法库DistBelief 。原以为很简单事的事 ,没想到却是让我大费周折 。
一 、更改服务器 。
我安装的python是3.9 ,在Pycharm中安装无法安装tensorflow ,选择安装的是最新版的tensorflow ,安装失败后显示ConnectTimeOutError 。连接超时,应该是国外服务器下载速度慢的缘故 ,把下载包的服务器地址由https://pypi.python.org/simple改为Simple Index后 ,顺利完成安装 。
二 、调整tensorflow版本
tensorflow完成安装后, 再运行程序时 ,显示错误:AttributeError: module ‘tensorflow‘ has no attribute ‘placeholder‘ ,查看发现,报错原因是因为tensorflow自 2.0版本去掉了placeholder ,placeholder只有tensorflow 1.*版本才有 。
三、将python降级
在安装tensorflow 1.15.5时 ,又出现安装失败 ,不过不再是timeout ,经研究发现 ,tensorflow 1.x适用的python最高版本为3.6 。python3.9下已经写了不少程序了 ,如果降级后不能用怎么办 ,这时anaconde解决了我的问题。
1 、进入conda命令行 ,依次输入以下命令
conda config --add channels Index of /anaconda/pkgs/free/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
conda config --add channels Index of /anaconda/pkgs/main/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
conda config --set show_channel_urls yes
2 、换回默认源
conda config --remove-key channels
3、降级为python3.6
通过cmd或conda命令行输入:conda create -n py36 python=3.6 anaconda
注:实际上是打造了一套python3.6的环境 ,这一过程将重新安装所有包,花费时间有点多 。
我是在conda命令行安装的
安装好后 ,会提示:
# To activate this environment, use # # $ conda activate py36 # # To deactivate an active environment, use # # $ conda deactivate在命令行输入conda activate py36 即可 ,若要返回python3.9,在命令行输入conda deactivate 。
win10菜单里会多出Anaconda Powershell Prompt的菜单项 ,点击就可进入python3.6 ,非常方便。
四 、降级后再升级
将python降级到3.6后,心想这次安装tensorflow1.15.5没问题了 ,没想到还是出错了 ,提示 Package protobuf requires a different Python: 3.6.10 not in >=3.7 ,要求我将python升级到3.7 ,这叫什么事啊 。
由于很明确 ,tensorflow1.x适用的python最高版本是3.6 ,这次没听错误提示的 ,而是把pip升级了 ,怀疑是pip版本的问题 。
pip升级后 ,tensorflow1.15.5顺利安装成功,代码也能正常运行了。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!