pythonxgboost参数_Python中的XGBoostXGBClassifier默认
毒品预防教育值监理巡视记录
这不是在xgboost中设置参数的⽅式。您可以将参数⽹格传递到训练函数中,例如xgboost的train或sklearn的GridSearchCV,也可以使⽤XGBClassifier的t_params⽅法。另⼀件需要注意的事情是,如果您使⽤xgboost的包装器来sklearn(即,XGBClassifier()或XGBRegressor()类),那么所使⽤的参数名与sklearn⾃⼰的GBM类中使⽤的参数名相同(例如:eta-->;learning-rate)。我不知道sklearn包装器的确切⽂档隐藏在哪⾥,但是这些类的代码在这⾥:/dmlc/xgboost/blob/master/python-package/xgboost/sklearn.py
下⾯是如何直接设置模型对象参数的⽅法,供您参考。>>> grid = {'max_depth':10}炸鲜奶的做法
>>>
>>> clf = XGBClassifier()
>>> clf.max_depth
3
苹果的营养价值及功效
>>> clf.t_params(**grid)
XGBClassifier(ba_score=0.5, colsample_bylevel=1, colsample_bytree=1,
gamma=0, learning_rate=0.1, max_delta_step=0, max_depth=10,
min_child_weight=1, missing=None, n_estimators=100, nthread=-1,吴怀尧
objective='binary:logistic', reg_alpha=0, reg_lambda=1,
白马过隙scale_pos_weight=1, ed=0, silent=True, subsample=1)
>>> clf.max_depth
10
编辑:
我想你可以在模型创建时设置参数,但这样做并不是很典型,因为⼤多数⼈都会通过某种⽅式进⾏⽹格搜索。但是,如果这样做,则需要将它们列为完整参数或使⽤**kwargs。例如:>>> XGBClassifier(max_depth=10)
XGBClassifier(ba_score=0.5, colsample_bylevel=1, colsample_bytree=1,
gamma=0, learning_rate=0.1, max_delta_step=0, max_depth=10,
min_child_weight=1, missing=None, n_estimators=100, nthread=-1,
objective='binary:logistic', reg_alpha=0, reg_lambda=1,
scale_pos_weight=1, ed=0, silent=True, subsample=1)
>>> XGBClassifier(**grid)
XGBClassifier(ba_score=0.5, colsample_bylevel=1, colsample_bytree=1,优美句子短句
gamma=0, learning_rate=0.1, max_delta_step=0, max_depth=10,
min_child_weight=1, missing=None, n_estimators=100, nthread=-1,
objective='binary:logistic', reg_alpha=0, reg_lambda=1,
scale_pos_weight=1, ed=0, silent=True, subsample=1)
使⽤字典作为输⼊⽽不使⽤**kwargs会将该参数设置为字⾯上的字典:>>> XGBClassifier(grid)
百香果的做法