windows 10 64bit下安裝Tensorflow+Keras+VS2015+CUDA8.0 GPU加速

原文地址:http://www.jianshu.com/p/c245d46d43f0python

寫在前面的話

2016年11月29日,Google Brain 工程師團隊宣佈在 TensorFlow 0.12 中加入初步的 Windows 支持。可是目前只支持64位,並且Python版本爲3.5版本,須要CUDA 8.0 。
以前Tensorflow對windows的支持並很差,致使若是須要使用它,須要轉移到Linux平臺,或者使用Cygwin什麼的,總之挺麻煩,如今好了。麻煩事google幫咱們解決了。感謝googlewindows

Tensorflow和Keras都是支持Python接口的,因此本文中說的都是搭建一個Python的深度學習環境。還有一點,我也是新手,寫得很差請勿噴!忽視本文就好。後端

若是你不清楚Keras和Tensorflow是什麼關係?請看下圖:api


Keras與Tensorflow和theano關係圖.png

Keras是對Tensorflow或者Theano的再次封裝,也就是以Tensorflow或Theano爲後端,默認的後端是tensorflow,若是你想使用theano爲後端,能夠更改成theano。
Keras爲何要對tensorflow和theano進行再次封裝,固然是爲了使用更簡單!爲了讓咱們不用關注那麼多的底層細節,把全部精力都放在實際問題上面。服務器

Tesorflow與theano是可使用Nvidia GPU進行加速的,若是你的GPU不支持CUDA,那麼也不用擔憂,那就使用CPU,只是速度慢點(實際上是慢不少!(^_^))。若是你的GPU支持CUDA,不用猶豫了,果斷使用CUDA進行加速吧,速度快個10~20倍,那是常事。網絡

好了說了這麼多,下面進入正題。架構

1、文件準備

  • windows 10 64bit旗艦版(版本1607,OS內部版本 14393.576)編輯器

  • cuda_8.0.44_win10.exe: CUDA安裝文件。去NVIDIA官網下載工具

    CUDA是由顯卡廠商NVIDIA推出的通用並行計算架構,該架構使GPU可以解決複雜的計算問題。學習

  • Visual Studio 2015 Community: 請使用Community版本(社區版),由於它是免費的!免費的!固然,你註冊個微軟帳號使用起來就更好了。

  • Rapid Environment Editor(環境變量編輯器)

    先把它安裝了吧,編輯環境變量方便點。

  • Anaconda3-4.2.0-Windows-x86_64.exe

    Anaconda是一個Python科學計算環境,提供了不少經常使用的Python庫,例如:
    numpy,scipy, matplotlib等等。自帶的包管理器conda也很強大,能夠方便地安裝各類Python庫。
    下載地址:https://www.continuum.io/downloads/

  • DXSDK_Jun10.exe

    微軟的DirectX SDK工具包,不安裝它的話,後面編譯CUDA_Samples是無法成功的。下載地址:https://pan.baidu.com/share/link?shareid=197164616&uk=369246564&fid=2918892502

  • cudnn-8.0-windows10-x64-v5.1.zip

    CUDA的神經網絡加速庫,能夠在前面GPU加速基礎上大概再提高1.5倍的速度。 下載地址:https://developer.nvidia.com/cudnn

1. 安裝Rapid Environment Editor

這個東西是編輯環境變量的,挺好用的,先把它安裝了吧。後面給本身省事。安裝完成後,默認界面是英文的,到設置裏面改成中文吧。啓動的時候,設置位管理員啓動吧,否則無法更改系統環境變量。

2. 安裝DXSDK_Jun10.exe

直接按照提示下一步就行了。我在windows 10上安裝的時候,最後的時候會報錯,不過沒有關係,關掉那個框。搜索下"d3dx9.h"、"d3dx10.h"、"d3dx11.h"頭文件是否是存在,若是路徑以下這個樣子,就成功了。路徑:C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include\d3dx9.h


DirectX SDK S1023錯誤.png

2、安裝CUDA

深度學習庫若是使用CUDA進行GPU加速,能夠大大縮短計算時間。若是不須要GPU加速,直接跳到第三部分。

2.1 檢查GPU是否支持CUDA

先肯定下本身的顯卡型號(不要告訴我你不知道怎麼查看本身的顯卡型號)。安裝CUDA前先檢查下,本身的顯卡是否支持CUDA,能夠從下面的網址查看本身的顯卡是否在支持之列。若是你的顯卡比較新,到這裏檢查是否支持CUDA:https://developer.nvidia.com/cuda-gpus
若是你的顯卡很老,請到以下連接檢查是否支持CUDA:https://developer.nvidia.com/cuda-legacy-gpus
注意筆記本和desktop的區別。

若是本身電腦顯卡不支持的話就跳過第二部分,直接到第三部分。個人顯卡是GTX650,是支持CUDA的,因此繼續。

2.2 安裝Visual Studio 2015 community

Visual Studio 2015 community的安裝包到哪裏找,我就不說了。安裝VS2015前,請先斷網,否則安裝過程會下載一堆東西,過程極慢。安裝時只選擇Visual C++部分,其餘均可以不裝,這樣安裝起來更快。安裝要一下子,請耐心等待。

2.3 CUDA安裝

1. CUDA 8.0下載

從CUDA的官網下載安裝文件,https://developer.nvidia.com/cuda-downloads,我安裝時最新版本是 CUDA 8.0. 注意選擇系統是windows 10,選擇exe(local)那個Installer Type。以下圖:


CUDA8.0下載.jpg

若是須要下載CUDA的歷史版本,請到這裏:https://developer.nvidia.com/cuda-toolkit-archive

2. 測試CUDA安裝結果

打開命令提示符,輸入:nvcc -V
能夠看到以下信息:


nvcc.jpg

可是,這樣並不表明安裝成功了。等把CUDA_Samples示例編譯經過不報錯了,才能算是成功。

3. 編譯CUDA示例程序

(1)在 c:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0 目錄下,有CUDA的示例程序。因爲我安裝的是VS2015,因此我打開Samples_vs2015.sln那個解決方案文件,將解決方案配置更改成Release和x64.
使用Release模型,因爲全部程序安裝包用的都是64位版本,因此改成x64比較好。

(2)右鍵單擊,編譯整個解決方案。若是不出意外,將會編譯成功。若是提示是缺乏:
"d3dx9.h"、"d3dx10.h"、"d3dx11.h"頭文件 ,說明前面安裝DirectX SDK沒有安裝好,從新安裝下DXSDK_Jun10.exe,再次編譯。

(3)關閉VS2015,在
c:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64\Release
目錄下找到deviceQuery.exe這個文件。打開一個cmd窗口,定位到 c:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64\Release目錄,輸入:deviceQuery.exe ,而後回車。會獲得以下結果:


檢查CUDA是否安裝成功.jpg

若是你的結果與上面相似,恭喜你!CUDA 8.0安裝成功了!
若是報錯了,請檢查下前面的步驟是否嚴格執行了。從新再來,直到成功。

3、安裝Tensorflow與Keras

3.1 安裝Anaconda

1. 下載Anaconda

Anaconda包含不少科學計算的包,例如numpy、scipy等等,能夠爲你省去很多麻煩,它的官網在這裏:https://www.continuum.io/downloads ,下載最新的Anaconda 4.2版本,Python版本選擇3.5 64bit的那個版本。


下載Anaconda.jpg

萬一你執意使用Python 2.7,我只能告訴你,最新的tensorflow-0.12在windows平臺可能對python-2.7支持得不夠好,中間會出問題的。

2. 安裝Anaconda

  • 若是你以前有安裝Anaconda 2系列的,在環境變量裏面把相關的環境變量給刪除了。
C:\Anaconda2
C:\Anaconda2\Scripts
C:\Anaconda2\Library\bin
  • 安裝挺簡單,我通常安裝在C盤根目錄下:c:\Anaconda3
    建議你們也安裝到根目錄下。
    安裝時,在Install for那個界面,建議選擇【All Users(requires admin privileges)】那個選項。

在以下那個界面中,把兩個選項都勾上(默認是勾上的)


安裝Anaconda-2個選項.png

3.2 更改pip的默認源

Python開發安裝包時,使用pip進行包安裝很是方便。但pip默認的源服務器在國外,下載很是慢,並且常常出現下載後安裝出錯問題。所以,有必要更換爲國內的pypi源。

對於windows來講,直接在當前用戶目錄下新建一個pip.ini文件,例如:c:\Users\Luoge\pip.ini
pip.ini的文件內容以下:

[global] index-url = http://mirrors.aliyun.com/pypi/simple/ [install] trusted-host=mirrors.aliyun.com

上面是將源更換爲了阿里雲的源(阿里爸爸牛逼!~),輸入完成後,記得保存。

3.3 安裝Tensorflow

下面兩種安裝方式二選一。

在線網絡安裝方式

保持網絡鏈接,從開始菜單中打開Anaconda Prompt,輸入:pip install tensorflow-gpu
而後就耐心等待吧。若是安裝成功了,跳過離線安裝方式


在線安裝tensorflow.png
  • 若是它提示你更新pip,你就按照提示更新pip好了。
  • 若是這種方式安裝失敗了,請看下面的 離線安裝方式

離線安裝方式

若是在線從pip安裝tensorflow老是失敗,那就下載python的whl包,本地安裝的。
下載地址: http://www.lfd.uci.edu/~gohlke/pythonlibs/
Ctrl+F搜索Tensorflow,找到: tensorflow_gpu‑0.12.0rc1‑cp35‑cp35m‑win_amd64.whl
注意下載帶gpu字樣的版本,它才支持GPU加速。下載也不太快,視你的網速而定。
爲了方便你們,我在百度雲上上傳了一份,你們也能夠上百度雲下載:http://pan.baidu.com/s/1o77WBe6
不客氣!

從開始菜單中打開Anaconda Prompt,輸入:pip install c:\Users\Luoge\Downloads\tensorflow_gpu-0.12.0rc1-cp35-cp35m-win_amd64.whl

而後,等待安裝完成就行了。

3.4 安裝Keras

保持網絡鏈接,從開始菜單中打開Anaconda Prompt,輸入:pip install keras

回車,安裝就開始了,它會順帶把Theano也給安裝上,可是這裏安裝的Theano版本比較老,是Theano-0.8.2。咱們使用tensorflow做爲後端,而不是theano,因此不用理會它,讓它裝上就行了。

4、測試Keras是否安裝成功

從開始菜單中打開Anaconda Prompt,在命令行中輸入:python,再輸入:

import tensorflow as tf sess = tf.Session() a = tf.constant(10) b = tf.constant(22) print(sess.run(a + b))

若是正確打印出結果32,不報錯,說明tensorflow安裝成功。

再輸入:

import keras

若不報錯,說明安裝成功。

5、讓速度更快一點

1. cuDNN能夠在前面GPU加速基礎上大概再提高1.5倍的速度,它由nVIDIA開發。能夠到nVIDIA官網上下載。下載以前須要註冊,而後問一系列問題,請耐心弄完。而後就能夠下載了。不要下載錯了,下載windows 10系統下64位的,最新的支持CUDA 8.0的cuDNN-5.1,文件名是:cudnn-8.0-windows10-x64-v5.1.zip


下載cudnn.jpg

2. 下載完成後解壓縮。裏面有bin、include、lib三個目錄,將三個文件夾複製到安裝CUDA的地方覆蓋對應文件夾,默認文件夾在:
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

3. 如何驗證CuDNN是否配置成功呢?
打開Anaconda Prompt,輸入python,再輸入import tensorflow,顯示的若是是下圖這樣子,不提示沒有安裝cudnn,就成功了。


cudnn安裝成功後.jpg
相關文章
相關標籤/搜索