'monotone_constraints' показывает предупреждение о том, что он не используется в PythonAPI XGB
При попытке использовать параметр monotone_constraint для xgb, некоторые испытания показывают предупреждение для фрагмента кода ниже
def objective(trial):
param = {"objective": "reg:squarederror",
"monotone_constraints":constraint,
"booster": trial.suggest_categorical("booster", ["gbtree", "gblinear", "dart"]),
"lambda": trial.suggest_float("lambda", 1e-8, 1.0, log=True),
"alpha": trial.suggest_float("alpha", 1e-8, 1.0, log=True),
}
if param["booster"] == "gbtree" or param["booster"] == "dart":
param["max_depth"] = trial.suggest_int("max_depth", 1, 9)
param["eta"] = trial.suggest_float("eta", 1e-8, 1.0, log=True)
param["gamma"] = trial.suggest_float("gamma", 1e-8, 1.0, log=True)
param["grow_policy"] = trial.suggest_categorical("grow_policy", ["depthwise", "lossguide"])
if param["booster"] == "dart":
param["sample_type"] = trial.suggest_categorical("sample_type", ["uniform", "weighted"])
param["normalize_type"] = trial.suggest_categorical("normalize_type", ["tree", "forest"])
param["rate_drop"] = trial.suggest_float("rate_drop", 1e-8, 1.0, log=True)
param["skip_drop"] = trial.suggest_float("skip_drop", 1e-8, 1.0, log=True)
bst = xgb.train(param, dtrain)
if __name__ == "__main__":
sampler = TPESampler(**TPESampler.hyperopt_parameters(), seed=3)
study = optuna.create_study(sampler=sampler, direction='maximize')
study.optimize(objective, n_trials=30)
[11:12:21] ВНИМАНИЕ: C:\Users\Administrator\workspace\xgboost-win64_release_1.1.0\src\ Learner.cc:480: Параметры: { monotone_constraints } могут не использоваться.
Это может быть неточным, поскольку некоторые параметры используются только в языковых привязках, но передаются ядру XGBoost. Или некоторые параметры не используются, но не проходят эту проверку. Пожалуйста, откройте вопрос, если вы найдете вышеуказанные случаи.