win10環境 pip 安裝theano(gpu) python3.6

花費了三天時間,太辛苦了。
首先劇透:有很多人說theano不支持python3.6,我試過了,是的,我失敗了,如果各位不信也可以再試試。
同時我下載了anaconda python2.7,然而,我還是失敗了。
是的,我放棄了theano的安裝,太挫敗了,我可能會用cpu版本跑一跑論文開源代碼。
但是,我還是要寫一寫我的安裝流程,可能是我的電腦出了問題,各位要是有人成功,‘家祭無忘告乃翁’


主體內容直接來自於 https://www.cnblogs.com/XUEYEYU/p/10914689.html#4431269,我對於自己所遇到的問題在進行了說明。
1

pip install theano

安裝theano

如果只用cpu,在這裏就ok了

2,更改配置文件

參考

http://deeplearning.net/software/theano/tutorial/using_gpu.html#gpuarray

在當前用戶根目錄下新建文件

linux自然是在~/

windows 是在系統盤裏users(用戶)目錄下,當前用戶名的目錄下

新建 .theanorc, 注意有個點

在windows上必須有文件名,故.theanorc.txt也可

然後在新建的文件裏輸入

[global]

device = cuda

floatX = float32

保存後即可調用gpu

如果進行了搜索,可以發現有各種五花八門的設置方法,由於我沒有成功過,並不清楚哪種是對的,大家可以去github.theano.issues搜索,引用中的網站也是官方的內容,但似乎內容有點舊了。

這時在python裏嘗試使用theano

import theano

報錯。說沒有安裝pygpu或者版本過低這就需要執行第三步

這時進行import應該是沒有問題的,如果安裝遇到了問題可以進行刪除重新安裝或者麻煩自行谷歌,在import成功後不要高興的太早,引用中所說的版本過低其實直接由warning打印:

#我的筆記本警告
WARNING (theano.configdefaults): g++ not available, 

#我的筆記本缺少太多東西,服務器裏會發出警告,大致如下
Warning:pygpu version...

那就安唄,再接再厲,你可以的!

3

下載libgpuarray

libgpuarray Required for GPU/CPU code generation on CUDA and OpenCL
devices (see: GpuArray Backend). 下載

https://github.com/Theano/libgpuarray/releases
然後解壓

我是在windows裝,相對來說比較麻煩

可能需要vsstudio和cmake

下載cmake

https://cmake.org/download/

cmake有cmakegui方便使用

這裏注意到visual studio是必須的,我原先爲vs2013版本,但是會提醒visual C++ 14.0 is requeired,安裝visual c++ 14.0是沒用的,必須安上visual studio 2015(14.0)才行,這裏再說一句,我只安裝了要求的版本,我不知道高級版本支不支持。
visual studio各個版本的下載連接

4

打開cmakegui

點擊第一行的browse source 。。。 選擇剛纔解壓的libgpuarray目錄下

然後點擊下方的configure
在這裏插入圖片描述
這裏選擇一會要編譯的工具。根據自己安裝的版本選擇。

這裏選擇架構
剩下的可默認,也可指定編譯器。

然後點擊finish就會自動configure

然後點擊configure旁邊的generate

然後點擊open Project

就會打開工程

64位機選擇X64即可

注意,Cmake_INstall_prefix 是表示安裝在哪裏一定要注意後面會用到
在這裏插入圖片描述

在這裏插入圖片描述
這裏選擇 all_build

右鍵重新生成

有概率會編譯失敗,重新生成即可

如果有錯誤可以看輸出的情況再次考慮

比如mako包沒裝,就需要pip install mako

注意這裏mako安裝包不會直接提示,而只是簡單的進行報錯,要記得點擊錯誤就會看到錯誤信息,使用pip mako即可解決
在這裏插入圖片描述
5

完成後,進入到之前解壓的libgpuarray目錄裏

然後在cmd裏打開

python setup.py build

在這裏如果沒有安裝正確的visual studio 2015(14.0)會報錯

Visual C++ 14.0 is required. Please...

完成build,在使用指令python setup.py install

在這裏 我出現了 gpuarray.lib的問題,然而這個文件就在libgpuarray-0.7.6\lib\Release下

我把這個文件拷出到上一級目錄,也就是libgpuarray-0.7.6\lib下,再次build就不出錯了

我下載的libgpuarray並沒有release這個文件夾,只有Debug文件夾,把其中後綴爲.lib拉到上一級目錄就沒有報錯了。

安裝完成後,可以看到在

Python37\Lib\site-packages 目錄裏有了 pygpu的包
在這裏插入圖片描述
這時,在python裏

import pygpu就不會報錯了

是的,我看到了我的目錄中有了pygpu包,但是import的時候…報錯了。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\python36_\lib\site-packages\pygpu-0.7.6-py3.6-win-amd64.egg\pygpu\__init__.py", line 7, in <module>
    from . import gpuarray, elemwise, reduction
ImportError: DLL load failed: 找不到指定的模塊。

到這裏其實我就可以結束了…
但是 參考文的作者還沒結束

6

打開安裝的libgpuarray目錄,發現有bin,include,lib三個庫

將這幾個文件拷貝到或者移動到

xxx\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\x86_64-w64-mingw32

文件夾中,也就是Gcc或者G++等 mingww64編譯器的include庫

是的,這裏我先去解壓文件裏去找了,裏面沒有include這個文件夾
但是,如果你還記得上面有一句十分重要的話

Cmake_INstall_prefix 是表示安裝在哪裏一定要注意後面會用到

在排除各種問題後,我找到了這句話,好興奮啊!
啊啊啊啊啊啊!
F**K!
我的C:\Program Files或者C:\Program Files(x86)都沒有相應的安裝文件

呵呵呵呵呵呵呵呵呵呵呵呵


但是不能氣餒是不是,於是我又去嘗試anaconda方法,我也不知道自己是多辣雞了
總之結果又是

呵呵呵呵呵呵呵呵呵呵呵呵

theano你失去我了!


上面就是我安裝theano的經歷,但是如果有人在win10下python3.6版本成功安裝了theano,十分希望你能分享給我你的方法,或者告訴我上述步驟我哪裏做錯了。
謝謝各位!

Live long and prosper

發佈了8 篇原創文章 · 獲贊 8 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章