Проблемы с ком-кросс-валидацией и пулом на catboost - PullRequest
0 голосов
/ 01 ноября 2018

Я использую catboost (version = catboost-0.10.4.1 enum34-1.1.6) в Mac (Python 3.6.3 | Anaconda), и у меня возникли некоторые проблемы с модулем cv (с параметром cat_features пула). Вот пример:

1) Использование catboost в одной посадке:

from catboost import CatBoostClassifier, cv,

model = CatBoostClassifier(early_stopping_rounds=30,cat_features = [0,1,2,3,4,5,6,7,8],iterations=2000,eval_metric='AUC',learning_rate=0.1,)

model.fit(X_train, y_train,eval_set=(X_test,y_test))

Все работает отлично, и я получил свои выводы!

2-) Когда я пытаюсь использовать в основном то же самое с модулем cv, возникает проблема:

cv_data = cv(pool=Pool(X_train, y_train,cat_features = [0,1,2,3,4,5,6,7,8]),params=model.get_params())

Выход:

 ---------------------------------------------------------------------------
CatboostError                             Traceback (most recent call last)
<ipython-input-242-675cf317e148> in <module>()
----> 1 cv_data = cv(pool=Pool(X_train, y_train,cat_features=[0,1,2,3,4,5,6,7,8]),params=model.get_params())

~/anaconda3/lib/python3.6/site-packages/catboost/core.py in cv(pool, params, dtrain, iterations, num_boost_round, fold_count, nfold, inverted, partition_random_seed, seed, shuffle, logging_level, stratified, as_pandas, metric_period, verbose, verbose_eval, plot, early_stopping_rounds, save_snapshot, snapshot_file, snapshot_interval)
   2900 
   2901     with log_fixup(), plot_wrapper(plot, params):
-> 2902         return _cv(params, pool, fold_count, inverted, partition_random_seed, shuffle, stratified, as_pandas)
   2903 
   2904 

_catboost.pyx in _catboost._cv()

_catboost.pyx in _catboost._cv()

CatboostError: catboost/libs/options/plain_options_helper.cpp:272: Error: unknown option cat_features with value [0,1,2,3,4,5,6,7,8]

Индексы подходят для категориальных переменных (и работали для одной подгонки).

Я не могу понять, что происходит, и не могу найти связанный контент. Может кто-нибудь помочь?

...