安装tensorflow几乎折腾了一天,期间遇到了各种各样的问题,甚至以为自己遇到了安装tensorflow可以遇到的所有问题。最后在搜索的无数教程,改了一遍又一遍,终于云开见月明。所以把我遇到的问题及解决办法记下来方便以后再安装,也希望能帮到同样被这困扰的小伙伴。
Anaconda安装
- Anaconda官方网站:https://www.anaconda.com/download/ 下载后按照步骤安装即可
- 环境配置:
只需要将下面三个路径添加到系统变量中,而不是用户变量
Tensorflow安装
- 使用 Anaconda prompt终端进行安装
- 检测当前环境中的python的版本:python --version
- 新建tensoflow环境:conda create --name tensorflow python=3.7(此处为python的版本)
- 激活该环境:activate tensorflow
- 重点:安装tensorflow包
本人尝试了多种失败的方法,如下:
- 直接pip安装
- 清华镜像网址
tensorflow默认镜像资源从国外获取,下载速度极慢,可能是导致失败的原因,
第二个网上给出的清华镜像地址未必正确
- *最后成功的方法:*输入以下两行
# 改为清华镜像资源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 开始下载
pip install tensorflow==2.0.0-alpha0
-
此时又出现新错误:ImportError : No module named ‘tensorflow’。
明明已经安装成功,为什么还是导入模块失败?其实这是路径问题。在python默认的第三方库安装路径中,并没有tensorflow的安装路径。对于只安装了Anaconda的人来说默认路径为\Anaconda3\Lib\site-packages,在里边新建一个path.pth文件,在里面写上你tensorflow安装的位置。
这是我的tensorflow安装路径:D:\Anaconda\envs\tensorflow\Lib\site-packages
将这个路径先写到记事本,再把名字改成path.pth即可 -
到这里基本就结束了,但是我还是出现了一个小插曲:
新的错误:RuntimeError: The Session graph is empty. Add operations to the graph before calling run().
这是tensorflow1.0和2.0版本的问题
2.0版本session应该这样写:
import tensorflow as tf
tf.compat.v1.disable_eager_execution()
a = tf.constant(10)
b = tf.constant(32)
sess = tf.compat.v1.Session()
print(sess.run(a + b))
此时结果输出,大功告成
此外,一些小细节:
- 退出tensorflow环境:deactivate
- 更新:pip install --upgrade --ignore-installed tensorflow