【问题标题】:GridSearchCV Not Showing Verbose LevelsGridSearchCV 不显示详细级别
【发布时间】:2021-04-16 21:55:36
【问题描述】:

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 的版本。是更新版本造成的,还是有其他原因?

【问题讨论】:

  • 你能试试verbose = 10吗?您还在使用 GPU 进行训练吗?
  • 如何查看GPU是否使用?
  • 如果您使用的是 Jupyter 笔记本,请运行 !nvidia-smi。
  • 'nvidia-smi' is not recognized as an internal or external command, operable program or batch file.

标签: python machine-learning gridsearchcv


【解决方案1】:

问题出在新版本的 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

【讨论】:

  • 我相信这是 sklearn 开发人员想知道的。请在他们的 github 页面上提出问题。 (我的印象是冗长与n_jobs!=1 配合得不太好,但也许我记错了。但较慢的运行时间肯定是一种不受欢迎的回归。)
猜你喜欢
  • 2021-08-06
  • 1970-01-01
  • 2016-12-09
  • 1970-01-01
  • 2021-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-09
相关资源
最近更新 更多