天天看點

windows10系統下安裝keras架構以theano為後端并配置gpu加速

在安裝之前,請確定你的顯示卡是NVIDIA的,并且是以下型号,否則不能進行gpu加速,右鍵我的電腦——管理——裝置管理器——顯示擴充卡。另外如果你的電腦是windows7,安裝教程也是一樣的,不過根據keras中文文檔的建議,還是win10比較适合。

windows10系統下安裝keras架構以theano為後端并配置gpu加速

系統:windows10企業版2016 x64位(msdn下載下傳的,系統激活用的是kms工具)

環境:python2.7

軟體:Anaconda2,VS2010,cuda,cudnn(加速庫)

(廢話:最近實驗室剛配置一台高配的機器,是以我不得不重新搭建一次環境。)

神經網絡keras架構的後端可以是TensorFlow或者theano,預設是TensorFlow,我的電腦組態的是以theano為後端。如果你要想以TensorFlow為後端,那麼需要自己安裝tensorflow。

安裝步驟如下:

1.安裝Anaconda2,

官網連結,這裡我們下載下傳Python 2.7 version 64位的,之是以不直接安裝python2.7而選擇安裝Anaconda,是因為Anaconda自帶了python2.7的環境,而且它内置了很多必要的庫,不用我們自己安裝了,安裝前請確定你電腦中沒有安裝過Python,另外安裝的時候一定要把路徑記住,待會要用。這裡我安裝的路徑是D:\LearnTool\anaconda

2.安裝MinGw

打開cmd:輸入conda install mingw libpython 回車,如果中途有需要輸入y/n的,輸入y,然後等待安裝成功。安裝成功後anaconda的安裝目錄下多了一個MinGw目錄。

3.配置環境變量(以下目錄以你自己的為準)

  1. 使用者path變量中添加 D:\LearnTool\anaconda (anaconda安裝目錄)
  2. 使用者path變量中添加 D:\LearnTool\anaconda\Scripts (如果你安裝anaconda的時候選擇了add Aanconda to my PATH,那麼你的path變量中應該包含了上面這兩項,那麼就不用重新配置這兩項了)
  3. 使用者path變量中添加 D:\LearnTool\anaconda\MinGW\bin
  4. 使用者path變量中添加 D:\LearnTool\anaconda\MinGW\x86_64-w64-mingw32\lib
  5. 使用者變量中建立變量名為pythonpath,變量值為:D:\LearnTool\anaconda\Lib\site-packages\theano(theano我們還沒有安裝,先配置好它的路徑)
  6. 打開cmd,在控制台顯示的目錄下建立一個txt檔案,檔案名.theanorc.txt,看清楚前面還有個點,例如我打開控制台的目錄是C:\Users\zhangkang>,檔案内容如下:

    [global]

    openmp=False

    [blas]

    ldflags=

    [gcc]

    cxxflags=-ID:\LearnTool\anaconda\MinGW

上面最後一行是-I加上MinGW的目錄,那個是大寫的I,不是1。直接複制粘貼就行了,隻需要把D:\LearnTool\anaconda\MinGW換成你自己的目錄。儲存後,重新開機電腦。

4.安裝Theano

打開cmd,輸入:pip install theano 回車,安裝成功以後,進入Python環境(直接在cmd控制台視窗輸入python 回車),輸入import theano回車,如果沒有什麼錯誤說明安裝成功。

5.安裝vs2010

去網上下載下傳一個,這個連結,安裝也很簡單,我下載下傳的旗艦版。記住你的安裝目錄,例如我的安裝目錄是:D:\LearnTool\vs2010

6.安裝cuda

我安裝的是cuda8,百度雲連結:http://pan.baidu.com/s/1i55Xf97,你也可以去官網下載下傳https://developer.nvidia.com/cuda-toolkit-archive。安裝的時候最好是預設安裝,安裝好以後系統變量會多出兩個CUDA_PATH和CUDA_PATH_V8_0,打開cmd,輸入nvcc –V回車 ,出現cuda的版本号說明安裝成功。

7.重新配置.theanorc.txt檔案

内容如下:

[global]

openmp=False

device = gpu

floatX = float32

allow_input_downcast=True

[lib]

cnmem = 0.8

[blas]

ldflags=

[gcc]

cxxflags=-ID:\LearnTool\anaconda\MinGW

[nvcc]

flags = -LD:\LearnTool\anaconda\libs

compiler_bindir = D:\LearnTool\vs2010\VC\bin

fastmath = True

上面D:\LearnTool\vs2010\VC\bin是你的vs2010的路徑,如果你是預設安裝,應該是C:\Program Files(x86)\Microsoft Visual Studio 10.0\VC\bin ,cnmem = 0.8這一項是可以修改的,但是要保證不超過1,改成1可能會記憶體溢出。

8.安裝cudnn

Windows目前最新版v6.0,但是keras尚未支援此版本,請下載下傳v5.1版本,即 cudnn-8.0-win-x64-v5.1.zip。 下載下傳解壓出來是名為cuda的檔案夾,裡面有bin、include、lib,将三個檔案夾複制到安裝cuda的地方覆寫對應檔案夾,預設檔案夾在:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\8.0,百度雲連結:http://pan.baidu.com/s/1jHM9JM2。(為了在csdn上下載下傳這個資源,花了15c币,找個共享的真難!)

9.安裝keras

打開cmd,輸入pip install keras 回車。安裝成功後,進入Python環境,然後輸入import keras 回車,如果你沒有安裝TensorFlow的話應該會報錯。當然我們不使用tensorflow為後端,是以我們要把keras的後端改成theano,重新打開cmd,目前我的控制台目錄是C:\Users\zhangkang>,進入這個目錄檔案夾,然後找到.keras檔案夾下的keras.json檔案,用記事本打開,你可以看到它的預設内容是:

{
  "image_dim_ordering": "tf",

   "epsilon": 1e-07,

   "floatx": "float32",

   "backend": "tensorflow"
}           

把上面的内容改成:

{
    "image_dim_ordering": "th",
    "image_data_format":"channels_first",

    "epsilon": 1e-07,

    "floatx": "float32",

    "backend": "theano"
}           

儲存即可。現在再重新打開cmd,輸入Python回車,進入Python環境後,輸入:

import keras 回車,如果出現:Using Theano backend. Using gpu device 0: GeForce GTX 1080Ti (CNMeM is enabled with initial size: 80.0% of memory, cuDNN 5110)之類的,恭喜你,大功告成!

繼續閱讀