【发布时间】:2016-09-20 03:23:30
【问题描述】:
我有一些分类问题,我想使用 xgboost。 我有以下内容:
alg = xgb.XGBClassifier(objective='binary:logistic')
我正在测试它的日志丢失:
cross_validation.cross_val_scoree(alg, train_cluster_x, train_cluster_y, cv=5, scoring='log_loss')
我正在尝试通过以下方式执行网格搜索:
clf = GridSearchCV(alg,{'max_depth': [2,4,6],
'n_estimators': [50,100,200]},
verbose=1,
error_score='log_loss')
clf.fit(train_cluster_x,train_cluster_y)
clf.best_score_, clf.best_params_
但我得到不同的结果。 网格搜索现在计算log loss,作为交叉验证吗?
【问题讨论】:
-
当你说你得到不同的结果时,你的意思是每次你重新运行脚本你得到不同的最佳分数和最佳参数吗?如果是这样,这很常见。每次重新运行时,您的数据都会以不同的方式拆分,因此最佳模型的细节通常会略有不同。如果您能举例说明您收到的输出,让我们知道您的期望和所见,将会有所帮助。
标签: python machine-learning scikit-learn xgboost grid-search