2016-03-29 34 views
11

Używam Anacondy. Najpierw przełączyłem się na Python2 (wersja 2.7.11).Problem instalacji xgboost z anakondą

python -V 
Python 2.7.11 :: Continuum Analytics, Inc. 

Użyłem następującego polecenia, aby zainstalować xgboost w anakondzie.

conda install -c https://conda.anaconda.org/akode xgboost 

Następnie sprawdziłem, czy zainstalowano xgboost.

conda list 
xgboost     0.3      py27_0 akode 

Uruchomię Pythona w terminalu, importuję xgboost i otrzymuję następujące błędy.

import xgboost as xgb 

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "//anaconda/envs/wen2/lib/python2.7/site-packages/xgboost.py", line 82, in <module> 
    xglib = load_xglib() 
    File "//anaconda/envs/wen2/lib/python2.7/site-packages/xgboost.py", line 59, in load_xglib 
    lib = ctypes.cdll.LoadLibrary(lib_path[0]) 
    File "//anaconda/envs/wen2/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary 
    return self._dlltype(name) 
    File "//anaconda/envs/wen2/lib/python2.7/ctypes/__init__.py", line 365, in __init__ 
    self._handle = _dlopen(self._name, mode) 
OSError: dlopen(//anaconda/envs/wen2/lib/python2.7/site-packages/libxgboostwrapper.so, 6): Library not loaded: @rpath/./libgomp.1.dylib 
    Referenced from: //anaconda/envs/wen2/lib/python2.7/site-packages/libxgboostwrapper.so 
    Reason: image not found 

Nie mam pojęcia, co dalej robić.

Odpowiedz

1

Czy próbowałeś użyć pip?
source activate yourenvironment
pip install xgboost

3

Najpierw należy zbudować bibliotekę poprzez „make”, a następnie można zainstalować przy użyciu wiersza Anaconda.

Najpierw wykonaj oficjalny przewodnik z następującą procedurą (w Git Bash na Windows):

git clone --recursive https://github.com/dmlc/xgboost 
git submodule init 
git submodule update 

install TDM-GCC here

alias make='mingw32-make' 
cp make/mingw64.mk config.mk; make -j4 

Ostatni, wykonaj następujące czynności przy użyciu wiersza Anaconda:

cd xgboost\python-package 
python setup.py install 

Zobacz także te wspaniałe zasoby:

Official Guide

Installing Xgboost on Windows

Installing XGBoost For Anaconda on Windows

13

Pakiet można pobrać obraz jest uszkodzony. Co należy zrobić:

Najpierw należy usunąć pakiet xgboost z (w terminalu):

conda remove xgboost

Następnie ponownie zainstalować z innego pakietu w https://anaconda.org/aterrel/xgboost Więc po prostu napisać:

conda install py-xgboost

Następnie możesz sprawdzić instalację w konsoli Pythona:

import xgboost

Powinno być w porządku.

+0

wygląda tak, że zainstalowałoby xgboost, który jest nieaktualny, wraz z wersją sklearn 0.16.1 (nieaktualną) – avloss

+1

To nie działało dla mnie. Moja wersja python to 3.5.2, a otrzymuję błąd: 'bash-4.3 $ python -V Python 3.5.2 :: Anaconda 4.2.0 (x86_64) (/ Users/xxx/anaconda) bash-4.3 $ conda zainstalować -c aterrel xgboost na pobieranie metadanych pakietów ......... Rozwiązywanie specyfikacji pakietu: .... UnsatisfiableError: Poniższe dane techniczne okazały się być w konflikcie: Pythona - 3.5 * - xgboost Użyj "conda info ", aby wyświetlić zależności dla każdego pakietu. ' –

+1

OK, co powinieneś teraz zrobić, to po prostu' conda install py-xgboost' jako 0.4.0 jest starą wersją xgboost –

0

miałem podobny problem

>>> import xgboost 
/usr/local/anaconda2/lib/python2.7/site-packages/sklearn/cross_validation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20. 
    "This module will be removed in 0.20.", DeprecationWarning) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/anaconda2/lib/python2.7/site-packages/xgboost/__init__.py", line 11, in <module> 
    from .core import DMatrix, Booster 
    File "/usr/local/anaconda2/lib/python2.7/site-packages/xgboost/core.py", line 112, in <module> 
    _LIB = _load_lib() 
    File "/usr/local/anaconda2/lib/python2.7/site-packages/xgboost/core.py", line 106, in _load_lib 
    lib = ctypes.cdll.LoadLibrary(lib_path[0]) 
    File "/usr/local/anaconda2/lib/python2.7/ctypes/__init__.py", line 440, in LoadLibrary 
    return self._dlltype(name) 
    File "/usr/local/anaconda2/lib/python2.7/ctypes/__init__.py", line 362, in __init__ 
    self._handle = _dlopen(self._name, mode) 
OSError: /usr/local/anaconda2/bin/../lib/libgomp.so.1: version `GOMP_4.0' not found (required by /usr/local/anaconda2/lib/python2.7/site-packages/xgboost/./lib/libxgboost.so) 

W moim przypadku problemem jest to, że zainstalowany xgboost ze zwykłego użytkownika.Zrobiłem więc

sudo su 
pip uninstall xgboost 
pip install xgboost 
python 
>>> import xgboost 
/usr/local/anaconda2/lib/python2.7/site-packages/sklearn/cross_validation.py:44: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20. 
    "This module will be removed in 0.20.", DeprecationWarning) 
>>> ~ 

Mam nadzieję, że to pomoże!

0

w moim Ubuntu 14.04,
pierwszy: zainstaluj Anaconda
sekund: git sklonować xgboost i zrobić i zainstalować, complie pakiet python
trzeci: setup xgboost z Anaconda. na przykład:
1) cd yourpath/xgboost/python-pakiet
2) Ci znaleźć Anaconda ścieżkę Pythonie:
anakonda/bin/python setup.py zainstalować

5

miałem takie same błąd. Całkowicie odinstalowałem xgboost przez pip unistall. następnie zainstalować go z powrotem przez:

conda install -c bioconda xgboost=0.6a2 

To wydaje się rozwiązać problem

+0

Dziękuję, twoja sugestia działała dla mnie. Czy wiesz, co oznacza 'bioconda' w Twoim rozkazie? – user1700890

1

Library not loaded: @rpath/./libgomp.1.dylib

To jest klucz.

W moim przypadku jest to "Biblioteka nie załadowany: /usr/local/opt/gcc/lib/gcc/6/libgomp.1.dylib"

mogę sprawdzić ścieżkę „/ usr/local/opt/gcc/lib/gcc " i istnieje tylko folder o nazwie 7, nie 6.
Używam" sudo find/-name libgomp.1.dylib ", aby zlokalizować całą zainstalowaną wersję gcc, z Stwierdziłem, że istnieje wersja 6 w innym miejscu.
Następnie utworzę folder o nazwie 6 w "/ usr/local/opt/gcc/lib/gcc" i skopiuję tam pliki gcc 6. Wreszcie, "import xgboost" działa bez błędu.