1. 程式人生 > >windows7環境下theano的正確安裝

windows7環境下theano的正確安裝

網上都說Theano很難安裝,一開始還不信。然後就開始了一段不歸路,簡直呵呵噠。這是在windows下搭建深度學習環境的心(作)路(死)歷程,可謂是no zuo no die ,小白樓主堅持不懈地折騰了好幾天【這蠢得也真算可以】,對你沒看錯。就是好幾天,裝了卸,卸了裝,然後再卸,再裝,各種版本各種嘗試,這就是一個死迴圈,尼瑪呀,真特麼好奇自己現在還能坐在這裡耐心的說這麼多廢話。其實,還是細節決定成敗,問題不在各種版本上,而在安裝的細節上,這裡樓主把各個細節都進行了標註。

留此文章,以供參考。

本系統為 Windows7 64

一:知識點儲備 

1.  什麼是Theano ?

 Theano 是一個 Python 庫,用來定義、優化和模擬數學表示式計算,用於高效的解決多維陣列的計算問題。

2. Theano的用處是什麼?

Theano用來做卷積神經網路方面的一些東西

   3.   什麼是Anaconda?

Anaconda是Python的科學計算平臺。 支援更多的Python版本。

    4.為什麼使用Anaconda?

          Anaconda裡面集成了很多關於python科學計算的第三方庫,主要是安裝方便,而python是一個編譯器,如果不使用anaconda,那麼安裝起來會比較痛苦,各個庫之間的依賴性就很難連線的很好。Anaconda安裝後numpy, nose, pip, python, scipy, mingw等一些科學計算必要的工具都預設安裝。

二:安裝過程

1.安裝anaconda(已內建python,numpy和scipy兩個必要庫以及一些其他庫,自帶安裝。)

windows下有很多python科學計算的發行版工具包,我直接用的Anaconda ,其安裝簡單方便。

                官方下載地址為https://www.continuum.io/downloads,我用的是 Anaconda3-2.3.0-Windows-x86_64【這是因為libpython(後面會提及)只支援到python3.4.x,而Anaconda3預設的環境是python3.5.1,如果Anaconda版本過高的話,libpython並不能安裝成功,就會出現錯誤

,點選右鍵可以選擇迅雷下載,如果直接網頁下載會很慢【本人就栽在這個坑裡了】。

注意:下載好之後進行安裝:安裝時我選擇的是預設路徑,很多文章中說可以自定義路徑,這裡不建議這麼做。因為後面步驟中會涉及到在cmd的home目錄下建立一個.theanorc.txt(注意這裡的 . )檔案。而該目錄與安裝該軟體的預設路徑相同。如下兩圖中路徑所示:如果C盤剩餘空間不大,可以嘗試一下安裝在其他盤試試。



下面是Anaconda的一些命令(下面只演示一個圖片): conda list #該命令,將列出Anaconda安裝的所有應用包,我們可以看到Anaconda已經安裝了numpy, nose, pip, python, scipy, mingw等等。 conda install <pkg name> #該命令用於安裝應用包,如 conda install numpy. pip install <pkg name> #該命令用於安裝應用包,如 pip install theano. conda update <pkg name> #升級應用包,如 conda update python
Anaconda 安裝成功之後如下圖所示
2.安裝mingw

cmd輸入:conda install mingw libpython

這裡對網速的穩定性還是有要求的(一般都能成功),網路不穩的話,自動下載mingw時可能會出現進度條不動的情況,那就呵呵了(因為這個問題耽擱了兩天,只是因為網速原因),此時做法:解除安裝Anaconda,重新安裝 。

安裝成功後MinGW等資料夾會自動裝到anaconda資料夾下面

 3.環境配置(這裡個人把使用者變數和系統變數都配置了)

在使用者變數中,PATH新增C:\Anaconda;C:\Anaconda\Scripts; 

       並新建 PYTHONPATH:C:\Anaconda\Lib\site-packages\theano;   你會發現site-packages資料夾下並沒有theano檔案,那是因為Theano還沒有安裝,不用擔心,直接填寫就行,這裡不影響。

       在cmd的home目錄中【這裡的home目錄就是cmd命令視窗中顯示的路徑地址,上面提到的安裝Anaconda時的路徑跟這個路徑相同,因此認為安裝時預設比較好,自定義也可能成功,可以試試】新建 .theanorc.txt 檔案(注意名字中的“.”)這裡有一個坑,下面會提到,我的如下:

[blas]
ldflags=

[gcc]
cxxflags = -IC:\Anaconda\MinGW   【這裡根據自己安裝的路徑地址進行修改】

      重啟電腦【很重要,這樣配置的環境才能起作用】

4.安裝theano

      正確方式:cmd輸入:pip install theano

   (pip用法看這裡:http://www.ttlsa.com/python/how-to-install-and-use-pip-ttlsa/)

        裝完之後在ipython中輸入以下兩行程式碼測試一下:

       import theano

       theano.test()

       default=0 的話,恭喜你,errors可能有很多,不過在這裡無關緊要。只要default=0 就算安裝成功了~ ~

當然了,很多人都是在這裡失敗的:原因可能有以下幾點:

1.     查一下自己的環境是否配置正確(即第3步)。

2. .theanorc.txt檔案是否放在了正確的位置。即cmd的home目錄下 :如下圖所示【如果你安裝Anaconda時自己定義了路徑,建議在與Anaconda本資料夾同級目錄下拷一份txt檔案 即 txt檔案和Anaconda資料夾在同一個資料夾目錄下】

3.      也有可能是 .theanorc.txt 檔案的命名問題。因為新建txt文件時,其後綴預設就是.txt ,所以重新命名時只需要寫 .theanorc,如下圖所示:


     5.GPU加速

 GPU加速首先就是安裝CUDA,然而CUDA只支援NVIDIA顯示卡,如果你的本並不是NVIDIA顯示卡,就別費勁了。

這裡有CUDA的詳細安裝步驟:http://blog.csdn.net/stormragewang/article/details/51261465

     6.BLAS

       看看numpy是不是已經預設BLAS加速了,在python裡輸入:

       import numpy 

       id(numpy.dot) == id(numpy.core.multiarray.dot) 

       結果為False表示已經成功依賴了BLAS加速,如果是Ture則表示用的是python自己的實現,並沒有加速。