ubuntu14.04安裝Theano

轉自:http://blog.csdn.net/xuezhisdc/article/details/47065475

環境

  • 操作系統:ubuntu14.04
  • Python:2.7.6
  • 需要聯網

相關庫簡介

  • BLAS(Basic Linear Algebra Subprograms)是基礎線性代數子程序庫,裏面擁有大量已經編寫好的關於線性代數運算的程序;
  • LAPACK (Linear Algebra PACKage)包含了求解科學與工程計算中最常見的數值線性代數問題,如求解線性方程組、線性最小二乘問題、特徵值問題和奇異值問題等;
  • ATLAS是python下的一個線性代數庫,是基於另外兩個線性代數庫BLAS和lapack的;
  • NumPy提供了一個在python中做科學計算的基礎庫,它重在數值計算,甚至可以說是用於多維數組處理的庫;
  • SciPy是基於numpy,提供了一個在python中做科學計算的工具集,也就是說它是更上一個層次的庫;
  • Theano則是基於NumPy以及SciPy的一個更高級的用於科學計算的庫。

相關庫的關係

  • 要安裝Theano,就需要先安裝好numpy和scipy;
  • 要安裝numpy和scipy,就需要ATLAS;
  • 要安裝ATLAS,就需要安裝BLAS和LAPACK;

相關庫的安裝順序

  • 安裝順序:BLAS → LAPACK → ATLAS → numpy → scipy → Theano

檢查numpy和scipy是否通過測試

  • 說明:如果你的numpy和scipy是通過apt-get安裝的,那麼它們的單元測試可能會通不過!!!(我在安裝過程中沒有通過測試,scipy出現了Error
  • 如果numpy或scipy不能通過測試,就需要卸載,然後重新按照本文介紹的順序安裝。
# 檢查numpy是否通過測試
python -c "import numpy;numpy.test()"
  • 1
  • 2
  • 1
  • 2
  • 如果numpy通過測試,會出現如下圖所示的結果。注意最後一行errors=0 failures=0。如果沒有通過測試,需要卸載並重新安裝。
    numpy測試結果

  • 如果scipy通過測試,會出現如下圖所示的結果。注意最後一行errors=0 failures=0。如果沒有通過測試,需要卸載並重新安裝。
    scipy通過測試

  • 注意:scipy很可能會出現測試錯誤,比如我安裝過程中出現下圖所示的錯誤。
    scipy測試錯誤

卸載numpy和scipy

# 卸載numpy
sudo apt-get remove python-numpy

# 卸載scipy
sudo apt-get remove python-scipy
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

安裝各種包

# 安裝gfortran,後面編譯過程中會用到
sudo apt-get install gfortran
# 安裝blas,Ubuntu下對應的是libopenblas,其它操作系統可能需要安裝其它版本的blas——這是個OS相關的。
sudo apt-get install libopenblas-dev
# 安裝lapack,Ubuntu下對應的是liblapack-dev,和OS相關。
sudo apt-get install liblapack-dev
# 安裝atlas,Ubuntu下對應的是libatlas-base-dev,和OS相關。
sudo apt-get install libatlas-base-dev
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

安裝numpy和scipy

  • 使用pip安裝numpy和scipy
  • 安裝pip的命令:sudo apt-get install python-pip
  • 注意:一定要在安裝完lapack/blas之後,再安裝numpy和scipy。否則,會出現錯誤no lapack/blas resources found
  • 安裝numpy和scipy的命令如下所示。
# 安裝numpy
sudo pip install numpy
# 測試numpy
# 測試通過才能進行下一步~~
python -c "import numpy;numpy.test()"

# 安裝scipy
sudo pip install scipy
# 測試scipy
# 測試通過才能進行下一步~~
python -c "import scipy;scipy.test()"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

安裝線性計算庫、numPy和sciPy的編譯方法(推薦)

編譯安裝OpenBlas

tar -zxvf OpenBLAS**.tar.gz
cd OpenBLAS***
make FC=gfortran #需要已經安裝gfortran 
make PREFIX=/path/of/installation install # 安裝在/opt/OpenBLAS/目錄下
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

安裝numPy

tar -zxvf numpy***.tar.gz
cd numpy***
cp site.cfg.example site.cfg
vi site.cfg
#將以下4行去掉註釋。【101行--104行】
#[openblas]
#libraries = openblas
#library_dirs = /opt/OpenBLAS/lib
#include_dirs = /opt/OpenBLAS/include
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 安裝numPy。
sudo python setup.py config
sudo python setup.py build
sudo python setup.py install 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

安裝sciPy

tar -zxvf scipy***.tar.gz
cd scipy***
# 將numPy**中的配置文件複製到此處
cp ../numpy**/site.cfg.example ./site.cfg
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4
  • 安裝sciPy。
sudo python setup.py config
sudo python setup.py build
sudo python setup.py install 
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

安裝其它庫

  • 爲了安裝Theano,最後還需要安裝一些庫,可以參考官方教程
sudo apt-get install python-dev
sudo apt-get install python-pip
sudo apt-get install python-nose
sudo apt-get install g++
sudo apt-get install git 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

安裝Theano

  • 前面的操作如果沒有出現錯誤,就可以開始安裝Theano了。命令如下所示。
# 安裝Theano
sudo pip install Theano

# 測試Theano
python -c "import theano;theano.test()"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章