INNER CODE UNIT · Python
best_iter
fabsig/GPBoost · python-package/gpboost/engine.py:1431
best_iter = -1
verbose_eval_cv = verbose_eval >= 2
def objective_opt(trial):
nonlocal best_score, best_iter
"""Objective function for tuning parameter search with Optuna."""
# Parse parameters
params_loc = {}
for param in search_space:
if len(search_space[param]) != 2:
raise ValueError(f"search_space['{param}'] must have length 2")
if param in ['learning_rate', 'shrinkage_rate',
'min_gain_to_split', 'min_split_gain',
'min_sum_hessian_in_leaf', 'min_sum_hessian_per_leaf', 'min_sum_hessian', 'min_hessian', 'min_child_weight']:
params_loc[param] = trial.suggest_float(param, search_space[param][0], search_space[param][1], log=True)
elif param in ['lambda_l2', 'reg_lambda', 'lambda',
'lambda_l1', 'reg_alpha',
'bagging_fraction', 'sub_row', 'subsample', 'bagging',