【发布时间】:2019-12-04 10:03:59
【问题描述】:
我是 XGBoost 和参数调整的新手,但我希望你能帮助我。
我正在学习本教程:
https://www.datacamp.com/community/tutorials/xgboost-in-python
它提到尝试实现网格搜索以微调交叉验证部分附近的超参数。
我能够使用 GridSearchCV 返回一组 best_estimator 参数,如下所示:
XGBRegressor(alpha=5, base_score=0.5, booster='gbtree', colsample_bylevel=1,
colsample_bynode=1, colsample_bytree=0.4, gamma=0,
importance_type='gain', learning_rate=0.1, max_delta_step=0,
max_depth=5, min_child_weight=1, missing=None, n_estimators=50,
n_jobs=1, nthread=None, objective='reg:squarederror',
random_state=123, reg_alpha=0, reg_lambda=1, scale_pos_weight=1,
seed=None, silent=None, subsample=1, verbosity=1)
我的问题是,如果我想将其中一些现在调整的参数传递到下一个交叉验证步骤,我如何从上面的列表中获取以下函数的适当值?:
params = {"objective":"reg:squarederror",'colsample_bytree': **THE COLSAMPLE_BYTREE VALUE FROM ABOVE**,'learning_rate': 0.1,
'max_depth': **THE MAX_DEPTH VALUE FROM ABOVE**, 'alpha': **THE ALPHA VALUE FROM ABOVE**}
cv_results = xgb.cv(dtrain=data_dmatrix, params=params, nfold=3,
num_boost_round=50,early_stopping_rounds=10,metrics="rmse", as_pandas=True, seed=123)
...或者这是一个愚蠢的问题?只是试图使用波士顿多元住房数据集来掌握其中一些新技能。如果您想查看我的代码,请告诉我,但希望这样就足够了吗?谢谢!
【问题讨论】:
标签: python python-3.x xgboost grid-search