microsoft/FLAML

[FLAML Crash] [Classification] 0 feature is supplied. Are you using raw Booster interface?

Open

#550 opened on May 13, 2022

View on GitHub
 (4 comments) (0 reactions) (0 assignees)Jupyter Notebook (560 forks)github user discovery
help wanted

Repository metrics

Stars
 (4,364 stars)
PR merge metrics
 (PR metrics pending)

Description

Hey, thanks for the great system.

I am experiencing a crash with the following multi-class classification dataset from Kaggle: spooky-author-identification. I get the following error when I try to fit FLAML:

  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/automl.py", line 1524, in fit
    self._search()
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/automl.py", line 2009, in _search
    self._search_sequential()
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/automl.py", line 1825, in _search_sequential
    use_ray=False,
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/tune/tune.py", line 382, in run
    result = training_function(trial_to_run.config)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/automl.py", line 240, in _compute_with_config_base
    self.fit_kwargs,
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/ml.py", line 328, in compute_estimator
    fit_kwargs=fit_kwargs)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/ml.py", line 267, in evaluate_model_CV
    log_training_metric=log_training_metric, fit_kwargs=fit_kwargs)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/ml.py", line 196, in get_test_loss
    estimator.fit(X_train, y_train, budget, **fit_kwargs)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/model.py", line 515, in fit
    return super().fit(X_train, y_train, budget, **kwargs)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/model.py", line 318, in fit
    self._t1 = self._fit(X_train, y_train, **kwargs)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/flaml/model.py", line 99, in _fit
    model.fit(X_train, y_train, **kwargs)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/core.py", line 422, in inner_f
    return f(**kwargs)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/sklearn.py", line 915, in fit
    callbacks=callbacks)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/training.py", line 235, in train
    early_stopping_rounds=early_stopping_rounds)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/training.py", line 102, in _train_internal
    bst.update(dtrain, i, obj)
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/core.py", line 1282, in update
    dtrain.handle))
  File "/home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/core.py", line 189, in _check_call
    raise XGBoostError(py_str(_LIB.XGBGetLastError()))
xgboost.core.XGBoostError: [04:04:16] ../src/learner.cc:567: Check failed: mparam_.num_feature != 0 (0 vs. 0) : 0 feature is supplied.  Are you using raw Booster interface?
Stack trace:
  [bt] (0) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/lib/libxgboost.so(+0x8d264) [0x7fadf8272264]
  [bt] (1) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/lib/libxgboost.so(+0x1ae8d2) [0x7fadf83938d2]
  [bt] (2) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/lib/libxgboost.so(+0x1bc0ac) [0x7fadf83a10ac]
  [bt] (3) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/lib/libxgboost.so(+0x1a29cb) [0x7fadf83879cb]
  [bt] (4) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/site-packages/xgboost/lib/libxgboost.so(XGBoosterUpdateOneIter+0x58) [0x7fadf82650c8]
  [bt] (5) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/lib-dynload/../../libffi.so.7(+0x69dd) [0x7fae5a76a9dd]
  [bt] (6) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/lib-dynload/../../libffi.so.7(+0x6067) [0x7fae5a76a067]
  [bt] (7) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/lib-dynload/_ctypes.cpython-37m-x86_64-linux-gnu.so(_ctypes_callproc+0x2e7) [0x7fae5a7823a7]
  [bt] (8) /home/mossad/anaconda3/envs/kgpip/lib/python3.7/lib-dynload/_ctypes.cpython-37m-x86_64-linux-gnu.so(+0x12e14) [0x7fae5a782e14]

Here is my script:

df = pd.read_csv('spooky.csv')
X, y = df.drop('author', axis=1), df['author']
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=123)
automl_model = AutoML()
automl_model.fit(X_train, y_train, task='classification',
                           time_budget=300,
                           retrain_full='budget',
                           verbose=0, metric='macro_f1')

Your feedback is appreciated.

Contributor guide