GridSearchCV 函数中的 Verbose 参数用于显示每次执行的处理步骤。之前使用时一切正常,但今天运行模型时,详细步骤没有显示出来。我的代码没有任何改动,还是原来的样子。
model_gbm_sk = GradientBoostingClassifier(random_state = 0)params_gbm = {'learning_rate':[0.05,0.1,0.2,0.3], 'n_estimators':[50,100], 'max_depth':[3,6,9,None]}grid_gbm_sk = GridSearchCV(model_gbm_sk, params_gbm, scoring = 'accuracy', cv = 5, verbose = 5, n_jobs = -1, return_train_score = True)grid_gbm_sk.fit(X_train, y_train)
输出的结果显示为 Fitting 5 folds for each of 32 candidates, totalling 160 fits
,之后没有任何其他信息。更糟糕的是,执行时间比以前增加了很多。我只通过 pip 命令更新了 scikit-learn 的版本。这是由于版本更新引起的,还是有其他原因?
回答:
问题出在新的 Scikit-learn 版本(0.24.1)。当我回退到之前的版本(0.23.2)并再次运行模型时,一切又恢复正常了。所以我的建议是不要使用最新的 sklearn 版本(0.24.0 和 0.24.1),继续使用 0.23.2 版本。这样我们的模型会很快运行起来。
pip install scikit-learn==0.23.2