我正在XGBRegressor
使用BayesSearchCV
fromskopt
进行参数调整
opt_xgb_model_tuned = xgboost.XGBRegressor()
hyper_space = {
'booster': ['gbtree'],
'objective': ['reg:squarederror'],
'learning_rate': [0.005, 0.01, 'log-uniform'],
'max_depth': [8, 12],
'min_child_weight': [0, 10],
'gamma': [0.01, 10, 'log-uniform'],
'subsample': [0.0001, 1, 'uniform'],
'colsample_bytree': [0.001, 1.0, 'uniform'],
'reg_lambda': [0.01, 50, 'log-uniform'],
'reg_alpha': [0.001, 1, 'log-uniform'],
'max_delta_step': [0, 20],
'n_estimators': [500, 2000],
}
gs = BayesSearchCV(opt_xgb_model_tuned, hyper_space, n_iter=32, random_state=0)
gs_res = gs.fit(X_train, y_train)
c:\users\joel thomas wilson\anaconda_python\py2020\envs\optimus_prime\lib\site-packages\skopt\utils.py in check_x_in_space(x, space) 184 if is_2Dlistlike(x): 185 if not np.all([ p in space for p in x]): --> 186 raise ValueError("并非所有点都在"187"空间的范围内。") 188 if any([len(p) != len(space.dimensions ) 对于 x 中的 p]):
ValueError:并非所有点都在空间范围内。
关于我们搜索每个参数的规则/范围的任何线索,这取决于X
范围吗?就像我的模型目标在 [-1, 1] 的范围内。这和这个有关系吗?