1. 程式人生 > >ubuntu 安裝 scikit-learn的注意事項

ubuntu 安裝 scikit-learn的注意事項

1、主要python的版本

scikit-learn is tested to work underPython 2.6, Python 2.7, and Python 3.4. (using the same codebase thanks to an embedded copy of six).It should also work with Python 3.3.

The required dependencies to build the software areNumPy >= 1.6.1, SciPy >= 0.9 and a working C/C++ compiler

.

總結:裝scikit-learn 必須要注意自己python的版本,我的系統裝了python2.7和python3.2.3,查了一下官網,python3.2.3沒有對應的scikit-learn。謹記,一定根據自己系統python的版本來安裝scikit-learn。

2、安裝scikit-learn步驟。

1、首先需要安裝Cython,網上下載後進行本地安裝 python setup.py install。(官網沒講,不過我還是裝了,參考自http://blog.csdn.net/lanbing510/article/details/41125189)

2、參照官網的做法:http://scikit-learn.org/stable/developers/advanced_installation.html#install-by-distribution。主要是安裝依賴項之類的,官網用原始碼安裝,我試了一下,在我的機子上報錯,所以,安裝完依賴項之後,先不要用原始碼安裝。

3、雖然根據官網去安裝,在安裝的過程中還是會遇到很多問題,我遇到的問題如下,及相對應的解決方案。

1、根據官網的步驟,在安裝完依賴項,比如numpy,scipy之後,然後下載原始碼,進行原始碼安裝,

python setup.py build
sudo python setup.py install

但是,我跟官網的步驟做,卻報錯。因為我係統python直譯器預設是python2.7,所以才是python setup.py build。如果,是想在python3.4下安裝scikit-learn,那麼相應的命令應該是python3 setup.py build。

python setup.py build 報錯資訊如下:


後來在網上搜了方法,在依賴項裝完之後,直接用命令sudo apt-get install python-sklearn安裝。

2、undefined symbol: ATL_chemv 錯誤

import sklearn 沒出錯,說明sklearn已經裝好。

但是,from sklearn import preprocessing 出現錯誤:

ImportError: /usr/lib/liblapack.so.3gf: undefined symbol: ATL_chemv


解決方案:

http://stackoverflow.com/questions/8917977/installing-lapack-for-numpy

sudo apt-get remove libopenblas-base
親測有效。

至此,在我機器上,基於python2.7的scikit-learn安裝完畢

3、安裝的過程中還容易遇到如下錯誤:

ImportError: No module named _check_build


解決方案:可以參考部落格 http://blog.csdn.net/m53931422/article/details/42489897。ps,我參考該部落格並沒有解決問題。