【发布时间】:2021-07-29 18:07:14
【问题描述】:
我已使用 RandomizedSearchCV 来调整我的随机森林模型的参数,如下面的代码单元所示:
rf_random = RandomizedSearchCV(estimator = rf, param_distributions = random_grid,
n_iter = 100, cv = 3, verbose=2, random_state=42, n_jobs = -1)
rf_random.fit(X_train[rf_cols], y_train)
事实证明,rf_random 模型的性能优于我的任何手动训练的模型,其参数与使用检索到的参数相同
rf_random.best_params_
我需要重现我使用 RandomizedSearchCV 所做的准确预测,但我无法这样做,主要是由于两个原因:
- best_params_ 每次运行都不同
- 我无法理解 RandomizedSearchCV 如何将数据拆分为训练集和验证集,这意味着我几乎不可能训练出表现相同的新模型。
我能做什么?我还需要什么信息来重现结果?或者甚至可以从 RandomizedSearchCV 重现结果,尽管我已将我的 random_state 固定为 42?如果我需要重现结果,我应该坚持使用 GridSearchCV 吗?
【问题讨论】:
标签: python scikit-learn hyperparameters