vkantor / MIPT_Data_Mining_In_Action_2016

"Data Mining in Action Course", Moscow Institute of Physics and Technologies
209 stars 175 forks source link

AttributeError: module 'xgboost' has no attribute 'DMatrix' #7

Closed YaroslavShchekaturov closed 7 years ago

YaroslavShchekaturov commented 7 years ago

Добрый день! Пробовал бенчмар по спортивной секции и скачал xgboost. Почему-то получаю следующую ошибку. Пытался ее гуглить, но ничего особо не понял.

AttributeError Traceback (most recent call last)

in () ----> 1 Xdatatrain = xgboost.DMatrix(data = xtrain, label = ytrain) 2 Xdatatest = xgboost.DMatrix(data = xval, label = yval) 3 4 plst = list(param.items()) 5 watchlist = [(Xdatatrain, 'train'), (Xdatatest, 'eval')] AttributeError: module 'xgboost' has no attribute 'DMatrix' что делать?
aguschin commented 7 years ago

Какая версия хгбуста?

xgboost.__version__

Как он был установлен? Если через git clone из репозитория, попробуй импортировать вот так:

import sys
sys.path.append("<PATH TO THE XGBOOST MASTER FOLDER>/xgboost/wrapper/")
import xgboost
YaroslavShchekaturov commented 7 years ago

устанавливал по алгоритму с сайта http://xgboost.readthedocs.io/en/latest/build.html#building-on-osx

1 brew install gcc --without-multilib 2 git clone --recursive https://github.com/dmlc/xgboost 3 cd xgboost; cp make/minimum.mk ./config.mk; make -j4 (мне кажется эта штука не работает, терминал выдает : cp: make/config.mk: No such file or directory make: *\ No targets specified and no makefile found. Stop.

попытался выполнить :

2016-10-10 12 10 28

А какие файлы папка содержит? просто у меня их несколько

YaroslavShchekaturov commented 7 years ago

в файле VERSION пишет 0.6

aguschin commented 7 years ago

cp make/minimum.mk ./config.mk должно скопировать файл. можешь проверить глазами, что существует файл xgboost/make/minimum.mk и скопировать его как xgboost/config.mk ? Потом продолжить с make -j4

YaroslavShchekaturov commented 7 years ago

прописал вручную cd /Users/user/xgboost/

потом cp make/minimum.mk ./config.mk

потом make -j4

после этого началась какая-то движуха в терминале и на выходе

2016-10-11 0 26 51

попробовал скомпилить опять и опять получил туже ошибку module 'xgboost' has no attribute 'DMatrix'

закрыл терминал и попробовал тоже самое

прописал вручную cd//Users/user/xgboost/make

потом cp make/minimum.mk ./config.mk

потом make -j4 после этого получил make: Nothing to be done for `all'.

Может я неправильно делаю? Я 1) открываю терминал 2) прописываю все команды cd /Users/user/xgboost

cp make/minimum.mk ./config.mk

make -j4

3) открываю jupiter (который отдельно открывает свои терминал) 4) компилю 5) опять получаю ошибку

у меня El Capitan джаст ин кейс

s-stupnikov commented 7 years ago

я тоже ручками собирал, у меня так получилось:

  1. git clone --recursive https://github.com/dmlc/xgboost
  2. cd xgboost/; sudo ./build.sh
  3. cd python-package; sudo python setup.py install
kirillbobyrev commented 7 years ago

Если через Anaconda питон стоит, IMHO куда проще установить из user package.

anaconda search -t conda xgboost

И потом выбрать по версии и платформе.

Из плюсов: не надо самостоятельно обновлять при новых релизах, если user package популярный и его мейнтейнер сам всё обновляет.

YaroslavShchekaturov commented 7 years ago

Спасибо огромное ! Вроде заработало!!