Отсутствующий метод в lightgbm. Booster - PullRequest
1 голос
/ 22 февраля 2020

Похоже, что метод trees_to_dataframe на объекте lightgbm.Booster отсутствует. https://lightgbm.readthedocs.io/en/latest/pythonapi/lightgbm.Booster.html#lightgbm .Booster.trees_to_dataframe .

Следующий код вызывает AttributeError в последней строке.

import numpy as np
import pandas as pd
import lightgbm as lgb

number_of_classes = 5
x = np.random.random((100, 100))
y = np.random.randint(low=0, high=number_of_classes, size=100)
data = lgb.Dataset(x, y)

parameters = {
    'objective'             : 'multiclass',
    'num_class'             : number_of_classes,
    'metric'                : ['multi_logloss', ],
}

bst = lgb.train(parameters, data)

assert type(bst) == lgb.Booster
bst.trees_to_dataframe()

1 Ответ

1 голос
/ 25 февраля 2020

Недавно они обновили свои документы для версии 2.3.2, которая еще не была выпущена для публикации c.

У вас есть 2 варианта: либо дождаться следующего выпуска, либо построить из исходного кода.

git clone --recursive https://github.com/Microsoft/LightGBM 
cd LightGBM && mkdir build && cd build    
cmake ..
# cmake -DUSE_GPU=1 .. # build for GPU
make -j12
pip uninstall lightgbm
cd ../python-package/
python setup.py install
...