最近开始学习深度学习的相关知识,准备实战一下,看了一些关于tensorflow安装的博客,绕了一些弯,因此来填一下坑(多余安装的或者非windows),主要围绕使用pycharm时需要用到tensorflow的安装过程。

环境:windows10专业版。只是想简单跑一下tensorflow的话,安装过程真的很简单。

如果你有“安装IDE并关联编译器"的经验,不想看复杂的安装说明,可以尝试看这个目录凭自己的理解装完,有问题细看。

1.安装python,建议3.5以上版本

2.安装pycharm,在pycham中关联python解释器,即给出Python.exe所在的路径。

3.Pycharm中File->settings->Project xxx:->Project
interpreter,右侧列表任意双击一项就可以打开“Available
Package(可安装的包的列表)”,找到你要的tensorflow版本点击install
Package。gpu版需要显卡支持CUDA,并安装CUDA和cuDNN。

前言


首先,对于windows下安装tensorflow,有的博客上来就叫装Anaconda、装CUDA(详细自行搜索),我觉得并不是很好。关于Anaconda,本质是个整合好的包,五六百M的样子,里面有python和一些科学包,里面没有tensorflow。学长给我了包但我并没用,实际上里面好多包我用不到,我觉得用到什么下什么就行了,因为pip很方便,尤其是配上pycharm以后,其实并不需要像别的教程那样使用pip指令去获得包。

1.安装python(如果你已经装有python,可以跳过这步)


指的是python的解释器(interpreter)和一些套件,有点类似于学C的时候的编译器的感觉,找到资源运行一下exe基本就装好了。关于版本,tensorflow1.2以后的版本需要3.5以后的版本。关于2.x与3.x的区别有哦兴趣可以参考

http://www.runoob.com/python/python-2x-3x.html
<http://www.runoob.com/python/python-2x-3x.html>

2.选择一个IDE

好的IDE可以提高效率,我使用的pycharm,这个看个人喜好。Anaconda有自带spider。

pycharm资源和安装教程很多,这里略过。

例如:https://blog.csdn.net/yctjin/article/details/70307933?locationNum=11&fps=1
<https://blog.csdn.net/yctjin/article/details/70307933?locationNum=11&fps=1>

IDE安装的时候会询问是否关联解释器,如果不小心点过去了,也可以打开File->Project:xxx->Project
interpreter来关联解释器的路径,这个过程和使用codeblocks关联编译器差不多。至此基本的python已经可以用了。



图1 Project interpreter

另:File->settings->Color Scheme可以选择皮肤。

3.安装tensorflow


一些教程比较推荐的方法是使用pip,这个很方便。在python目录下的Scripts文件夹里有pip.exe和pip3.exe。通过在命令行输入一些指令就可以完成安装了。详细:
https://blog.csdn.net/u010099080/article/details/53418159
<https://blog.csdn.net/u010099080/article/details/53418159>

但我cmd真的用的不太好,pycharm安装其实更加方便(本质还是pip,只不过不需要自己输指令)

方法来源:https://jingyan.baidu.com/article/335530dafdbb3619cb41c3a8.html
<https://jingyan.baidu.com/article/335530dafdbb3619cb41c3a8.html>

方法:在如图1的界面中,任意双击一个packge,例如pip。接着你就能看到可安装的包的列表了,找到你需要的package后点install
package就好了,就这么简单。右边栏是包的介绍,下方可以选择特定的版本(用Python3.6下不到1.2之前的版本)。列表里蓝色的是已经装好的。


装好以后你的列表里就有了,如上图1所示。就算只装了tensorflow也会带着一堆配套的东西,比如numpy,tensorboard;完全不用担心。另外需要pandas之类的话,安装同样的方法安装即可。



如果你需要用GPU跑tensorflow,则应确保你的显卡支持CUDA,且应该安装CUDA和cuDNN,并选择tensorflow-gpu

详细见:https://blog.csdn.net/u010099080/article/details/53418159
<https://blog.csdn.net/u010099080/article/details/53418159>

不同版本的tensorflow支持特定版本的CUDA,CUDA、cudnn应当与tensorflow配套

好多教程没有强调,发布的也比较早,容易有坑。

tensorflow1.6开始支持CUDA9.0,cuDNN也需要配套的,找cuDNN x.x.x for CUDA9.0这样的。

tensorflow1.6或1.7用CUDA9.1是不行的,该用9.0,我就被坑了。不过好在有解决的方法,非常感谢下面这篇:

https://blog.csdn.net/qq_36556893/article/details/79433298
<https://blog.csdn.net/qq_36556893/article/details/79433298>

于是我写了一篇详细的关于使用CUDA9.1的tensorflow的教程:

https://blog.csdn.net/heros_never_die/article/details/79871564
<https://blog.csdn.net/heros_never_die/article/details/79871564>

更新:
tensorflow的包是比较大的,安装起来比普通的小包要慢很多,请保证程序正常运行且网络通畅的条件下耐心等待。如果使用命令行与pip安装的话,是可以明确看到安装进度的,对于安装过程非常有疑问的可以用这种方法。

后记

试出的迷一般其他的坑。


如果装了tensorflow,手贱再安装tensorflow-gpu,默认会运行tensorflow-gpu。同学那机子不支持CUDA,就开始报错。而上面的安装方法的那个列表不支持删除。可以打开cmd,输入pip
list,这样可以看到所有已经安装的包。pip uninstall tensorflow和pip uninstall
tensorflow-gpu就可以删除这两个包。然后重新安装tensorflow。

如果你的电脑是window系统且安装了两个python解释器,比如3.6和2.7,那么上面点install
package的时候会出错,而且直接在cmd里使用pip指令也出问题,找不到资源。我老老实实的卸了2.7.

更新:
在linux服务器上同时安装了python3.6和python2.7,可以互补影响的运行。主要原因在于相关程序的路径指定。那么这样推测,在windows上适当的修改环境变量,可以使得不同版本的python正常工作。

关于:“Your CPU supports instructions that this TensorFlow binary was not
compiled to use:
AVX2”的警告是说你的CPU支持AVX2指令集,可以运行的更快,但是这个版本的tensorflow不支持,无视掉就好,或者安装教程加入屏蔽警告的语句(每次都加多麻烦,反正这个也没影响,我真的想快就用gpu版或者服务器了)。

更新:mind/wheels在github上有发布支持AVX指令集的tensorflow,详见该篇末尾:

https://blog.csdn.net/heros_never_die/article/details/79871564
<https://blog.csdn.net/heros_never_die/article/details/79871564>