RFECV выдает ошибку при использовании catboost в качестве оценщика - PullRequest
1 голос
/ 07 апреля 2020

Я хотел бы использовать Catboost для выполнения RFECV: Пример кода здесь:

from sklearn.model_selection import KFold
from sklearn.metrics import roc_auc_score
from sklearn.model_selection import StratifiedKFold
from sklearn.feature_selection import RFECV

from catboost import CatBoostClassifier

def scoring_func(cl, X, Y_true):
    Y_pred = cl.predict_proba(X)[:,1]
    return roc_auc_score(Y_true, Y_pred)

kf = StratifiedKFold(n_splits=5, shuffle=True, random_state=8888)

cl = CatBoostClassifier(
    iterations=100,
    random_seed=63,
    learning_rate=0.05,
    custom_loss='F1',
    loss_function = 'Logloss',
    class_weights = prop,
    l2_leaf_reg = 4
)
selector = RFECV(estimator=cl, cv=kf.split(X_train, y_train), scoring=scoring_func, verbose=1)

selector = selector.fit(X_train, y_train)

Это выдает следующую ошибку:

AttributeError: 'CatBoostClassifier' object has no attribute '_get_tags'

Я не могу найти какую-либо документацию что касается этого. Любые решения?

...