首頁 > 軟體

Ubuntu 14.04安裝Theano詳細教學

2020-06-16 17:27:39

因為最近需要學習深度學習,因此想要設定Theano,來開發深度學習演算法。但是發現Theano安裝總是出現問題。於是在這裡中總結一下。

環境

  • 作業系統: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()"
  • 如果numpy通過測試,會出現如下圖所示的結果。注意最後一行errors=0 failures=0。如果沒有通過測試,需要解除安裝並重新安裝。

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

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

解除安裝numpy和scipy

# 解除安裝numpy
sudo apt-get remove python-numpy

# 解除安裝scipy
sudo apt-get remove python-scipy

安裝各種包

# 安裝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

安裝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()"

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

編譯安裝OpenBlas

tar -zxvf OpenBLAS**.tar.gz
cd OpenBLAS***
make -FC gfortran #需要已經安裝gfortran 
make install # 安裝在/opt/OpenBLAS/目錄下

安裝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
  • 安裝numPy。
sudo python setup.py config
sudo python setup.py build
sudo python setup.py install 

安裝sciPy

tar -zxvf scipy***.tar.gz
cd scipy***
# 將numPy**中的組態檔複製到此處
cp ../numpy**/site.cfg.example ./site.cfg
  • 安裝sciPy。
sudo python setup.py config
sudo python setup.py build
sudo python setup.py install 

安裝其它庫

  • 為了安裝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 

安裝Theano

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

# 測試Theano
python -c "import theano;theano.test()"

參照

本文永久更新連結地址http://www.linuxidc.com/Linux/2016-11/137491.htm


IT145.com E-mail:sddin#qq.com