在Windows10上部署TensorFlow
网上有各种安装发生的问题,关于版本有说法不能安装9.X,我用当前最新版本9.1安装失败,但是使用9.0安装成功了.
安装环境为 Win10 64Bit
, PYTHON v3.6
, CUDA v9.0
, CuDNN v7.1
,推荐安装Anaconda3 ,如果你的系统里没有安装PYTHON,在安装完Anaconda后它会自动安装Python3.6.
2016年11月29日,TensorFlow官方宣布0.12版tensorflow支持原生windows操作系统,不在需要通过Docker进行安装。
TensorFlow支持CPU版和GPU版,但是个人是强烈建议安装GPU版的,除非你的GPU算力实在太低.本文教程仅适用GPU版的部署.
视频显示CPU版的Tensorflow使用一颗志强CPU Intel(R) Xeon(R) CPU E5-2620 V3 @ 2.40GHz(8核12线程)
跑完1个epoch约需要2分半钟
.
而使用GPU版本的TensorFlow使用一张GTX1080
显卡,跑完1个epoch只需要8秒多
.
所以如何选择,心中自然有数了吧?
一、安装Python
1、通过Pip在Windows上安装Python
TensorFlow在Windows上只支持64位Python3.5及以上版本,本文可以通过Python 3.5 from python.org 或 Python 3.5 from Anaconda 下载并安装Python3.5.2(注意选择正确的操作系统)。
2、设置环境变量
上一步安装完毕后,在cmd中输入pip是找不到该命令的,因此将Python安装路径下的“%安装路径%\Scripts”添加到Path下;注意“;“结束。再到cmd中输入pip看到若干命令提示,则代表python安装成功(Python安装包自带pip)。“开始”->“所有程序”,也可以找到Python终端。
二、安装Cuda和CuDNN(CPU版本TensorFlow请忽略本步骤)
注意注意: CUDA和CuDNN的版本要对应上,在下载CuDNN的时候后面都有
for CUDA 9.0
的字样,这里的版本需要和CUDA对应一致
TensorFlow分为CPU版
和GPU版
,如果你打算安装GPU版,请先安装如下两个驱动:
1、CUDA Toolkit 9.0
:https://developer.nvidia.com/cuda-90-download-archive
- 历史版本下载:https://developer.nvidia.com/cuda-toolkit-archive
- 最新版本下载:https://developer.nvidia.com/cuda-downloads
2、CuDNN v7.1.2
:
(要注册Nvidia用户,并加入CuDNN开发组,填若干问卷就可以下载了)选择下载版本时要注意和Cuda版本匹配。解压后覆盖至CUDA的安装目录下。注意,通常CuDNN安装的路径与CUDA不一致,要确保其路径添加到%PATH%
的环境变量里。
例如:
X:\cuda\bin\cudnn64_5.dll 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin X:\cuda\include\cudnn.h 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include X:\cuda\lib\x64\cudnn.lib 复制到 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64
三、安装TensorFlow
安装GPU版TensorFlow
,cmd
下输入:
安装最新版本
pip install tensorflow-gpu
需要说明的是,对版本有特殊需求可以选择对应的版本源,然后执行安装
TensorFlow清华大学软件源:https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/gpu/
pip install --upgrade https://mirrors.tuna.tsinghua.edu.cn/tensorflow/windows/gpu/tensorflow_gpu-0.12.0-cp35-cp35m-win_amd64.whl
四、测试TensorFlow
到“所有程序”下找到”IDLE (Python 3.5 64bit)
”,出现命令窗口,按ctrl+n
,打开编辑窗口,输入测试代码:
import tensorflow as tf sess = tf.Session() a = tf.constant(10) b = tf.constant(22) print(sess.run(a + b))
正确输出结果32
,安装完毕。
参考资料: