Я хотел бы использовать 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'
Я не могу найти какую-либо документацию что касается этого. Любые решения?