2020年更新:感谢大家的关注,这两篇安装教程是我自己当初踩坑后记录下来方便查看的。如果你是做深度学习研究刚刚入门,建议去学习新的tensorflow2.0以及models,或者Pytorch。因为这个教程用到的tensorflow版本低,而且用的Faster RCNN代码功能也欠缺,比如计算PR之类的。但如果只是项目中需要使用一下,按照教程无脑按照也是可以的。
Windows下Python版本TensorFlow需要Python 3.5支持,因此建议使用Anaconda,避免和原本电脑Python版本冲突等问题。(另外,你完全可以按照这个流程来,但如果你想偷懒,Windows +TensorFlow+Faster Rcnn整个安装过程中需要的所有安装包和数据我都传到了云盘里,大概有4个G内容,最后有获取方式。)
下载地址:链接,选择支持Python3.5且与自己电脑位数一样的Windows版本,如果不清楚,可以参考这个网站上各版本说明,anaconda 3 默认的是python3.6,下载下来也可以,之后可以在虚拟环境里面更改python版本。
下载完成后双击exe安装,到下面这个界面时,第一个框打钩,把conda添加到环境变量,第二个不勾,如下图,这样就不会更改原本Python默认版本了。
安装完成后,在cmd中输入conda,出现以下界面,表示安装成功。
我下载的是这个版本,安装后发现Anaconda3这个版本默认是py3.6的,而我需要python3.5的,可以在新建虚拟环境时选择python版本。
在cmd中输入
conda create -n tensorflow python=3.5
这样就建立了一个叫做tensorflow的虚拟环境,且python版本为3.5,之后的所有工作都是在这个环境下完成的,激活虚拟环境,在cmd中使用命令
activate tensorflow,关闭虚拟环境,使用命令:deactivate
TensorFlow有CPU版本和GPU版本,GPU版本使用显卡,硬件要求较高,但计算效率高,如果要安装GPU版本(需要有NVIDIA显卡),一般是推荐使用性能好的服务器,但你可能需要知道自己电脑是否支持GPU,GPU显存是多少,如何查看自己的电脑是否支持GPU,在cmd命令中输入:
cd C:\Program Files\NVIDIA Corporation\NVSMI
nvidia-smi
就可以看到自己的显卡型号和显存大小,个人建议显存大于4GB的话可以考虑GPU版本的TensorFlow,不然老老实实用CPU版本的,就是训练时间长一些,不然到时候会报错OOM(out of memory)
若使用GPU版本的TensorFlow,还需要安装CUDA和cudnn,比CPU版本的TensorFlow安装复杂很多,本文以GPU版本TensorFlow为例。注意:如果使用CPU版本的TensorFlow,请跳过步骤4。
主要是安装CUDA和cudnn,注意两者版本有对应依赖关系,本文选择使用的是CUDA 8.0和cudnn 6.0
安装CUDA
CUDA 8.0安装地址:链接
打开后需要先用邮箱注册,然后下载时会让选择你自己电脑系统的版本等内容,注意看清楚下载的是CUDA 8.0版本,因为注册之后再登录时会默认跳转到CUDA最新版本的下载页面。
下载后双击exe进行安装即可,安装完成后检验是否安装成功:在cmd中输入命令
cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\demo_suite
bandwidthTest.exe
结果如下图,显示 Result = PASS表明安装成功!
安装cudnn 6.0
cudnn 6.0下载地址:链接
页面中选择下载的内容如下
下载后的内容解压,可以看到有下面这样三个文件夹,将文件夹中的文件分别复制到CUDA安装目录下对应的文件夹中,例如本机CUDA的安装目录为 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0,然后在目录下也能找到这三个文件夹名字,把cudnn里面的拷贝到相应目录下即可。每个文件夹下其实也就一个文件
这样,cuda和cudnn就安装好了。
首先激活虚拟环境
activate tensorflow
GPU版本TensorFlow安装cmd命令:
pip install --ignore-installed --upgrade tensorflow-gpu
CPU版本TensorFlow安装cmd命令:
pip install --ignore-installed --upgrade tensorflow
安装完成后检查是否安装成功
python
import tensorflow as tf
此时如果报错:ImportError: Could not find 'cudart64_90.dll'...
解决办法:
如果你是安装的GPU版本的,首先考虑TensorFlow安装版本是否与CUDA匹配,CUDA8.0网上一般都是和TensorFlow1.3搭配的,使用命令conda list,查看版本,如下图,可以发现TensorFlow版本不合适,默认安装的版本过高
卸载tensorflow-gpu,安装1.3版本的,命令如下:
pip uninstall tensorflow-gpu
pip install –-upgrade https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/gpu/tensorflow_gpu-1.3.0rc0-cp35-cp35m-win_amd64.whl
安装成功后,再来检验一下,可以查看tensorflow的安装版本和安装位置
import tensorflow as tf
tf.__version__
tf.__path__
如下图所示,tensorflow安装成功!
注:如果更改成1.3版本后还是报错,还是找不到cuda相关的dll,建议重新配置环境变量,计算机右键属性,在系统环境变量中,添加以下内容:
以下所有路径都基于CUDA默认安装位置,请以你自己实际安装的为准!
CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0
CUDA_LIB_PATH = %CUDA_PATH%\lib\x64
CUDA_BIN_PATH = %CUDA_PATH%\bin
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64
然后在系统变量 PATH 的末尾添加:(记得分号是英文的)
%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;
再添加如下路径:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64;
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin;
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\common\lib\x64;
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64;
保存后,再试试能不能正确加载tensorflow。
以上就是Windows下tensorflow框架安装详细流程。整个流程中可能用到的软件安装包和数据都传到了云盘,关注微信公众号:TechGIS,后台回复“tensorflow”即可获取,谢谢关注!
faster rcnn算法将在下一篇文章里介绍。
Windows 下 TensorFlow 和 Faster rcnn 详细安装步骤(二)