grid-search相关内容

如何保存 GridSearchCV 对象?

最近,我一直致力于在带有 Tensorflow 后端的 Keras 中应用网格搜索交叉验证 (sklearn GridSearchCV) 进行超参数调整.我的模型调整好后我正在尝试保存 GridSearchCV 对象以供以后使用,但没有成功. 超参数调优如下: x_train, x_val, y_train, y_val = train_test_split(NN_input, NN_ta ..
发布时间:2022-01-24 19:12:04 Python

使用带有管道和 GridSearch 的 cross_val_score 拟合嵌套交叉验证

我在 scikit 工作,我正在尝试调整我的 XGBoost.我尝试使用管道进行嵌套交叉验证来重新缩放训练折叠(以避免数据泄漏和过度拟合),并与 GridSearchCV 并行进行参数调整和 cross_val_score 以最终获得 roc_auc 分数. from imblearn.pipeline import Pipeline从 sklearn.model_selection 导入 Re ..

用于 Scikit Learn 的 Keras 包装器 - AUC 评分器不起作用

我正在尝试使用 Keras Scikit Learn Wrapper 来随机搜索参数更简单.我在这里写了一个示例代码: 我生成了一个人工数据集: 我正在使用 scikit learn 中的 moons from sklearn.datasets import make_moons数据集 = make_moons(1000) 模型构建器定义: 我定义了需要的build_fn函 ..

GridSearchCV(sklearn) 中的多个估计器

我正在查看有关 GridSearchCV 的 sklearn 文档网页.GridSearchCV 对象的属性之一是 best_estimator_.所以这是我的问题.如何将多个估计量传递给 GSCV 对象? 使用如下字典:{'SVC()':{'C':10, 'gamma':0.01}, 'DecTreeClass()':{....}}? 解决方案 GridSearchCV 适用于参数 ..
发布时间:2021-12-25 14:55:35 Python

Sklearn 如何使用 Joblib 或 Pickle 保存从管道和 GridSearchCV 创建的模型?

在使用pipeline 和GridSearchCV 确定最佳参数后,我如何pickle/joblib 这个过程以后再用?当它是单个分类器时,我知道如何执行此操作... from sklearn.externals import joblibjoblib.dump(clf, 'filename.pkl') 但是如何在执行和完成 gridsearch 后使用最佳参数保存整个 pipeline ? ..
发布时间:2021-12-25 14:51:59 Python

使用嵌套在 GridSearchCV 中的 RFECV 时,如何避免使用 estimator_params?

我目前正在使用 scikit-learn 为基于树的方法在网格搜索 (GridSearchCV) 中进行递归特征消除 (RFECV).为此,我使用了 GitHub 上的当前开发版本 (0.17),它允许 RFECV 使用树方法中的特征重要性来选择要丢弃的特征. 为清楚起见,这意味着: 循环当前树方法的超参数 对每组参数执行递归特征消除以获得最佳特征数 报告“分数"(例如准确性) ..
发布时间:2021-12-25 14:33:07 其他开发

具有多次重复的 scikit-learn GridSearchCV

我正在尝试为 SVR 模型获取最佳参数集.我想在 C 的不同值上使用 GridSearchCV.但是,从之前的测试中,我注意到训练/测试集的拆分会极大地影响整体性能(在本例中为 r2).为了解决这个问题,我想实现一个重复的 5 折交叉验证 (10 x 5CV).是否有使用 GridSearchCV 执行它的内置方式? 快速解决方案: 遵循 sci-kit 官方文档 中提出的想法,一个快 ..
发布时间:2021-12-25 14:17:36 Python

使用 Keras 和 sklearn GridSearchCV 交叉验证提前停止

我希望使用 Keras 和 sklean 的 GridSearchCV 实现提前停止. 下面的工作代码示例修改自 How to Grid使用 Keras 在 Python 中搜索深度学习模型的超参数.数据集可能是 从这里下载. 修改增加了 Keras EarlyStopping 回调类,防止过拟合.为了使其有效,它需要 monitor='val_acc' 参数来监控验证准确性.要使 v ..

将 sklearn 的 GridSearchCV 与管道一起使用,只需预处理一次

我正在使用 scickit-learn 来调整模型超参数.我正在使用管道将预处理与估计器链接起来.我的问题的简单版本如下所示: 将 numpy 导入为 np从 sklearn.model_selection 导入 GridSearchCV从 sklearn.pipeline 导入 make_pipeline从 sklearn.preprocessing 导入 StandardScaler从 sk ..

在 Scikit-learn 中使用 Smote 和 Gridsearchcv

我正在处理一个不平衡的数据集,并希望使用 scikit 的 gridsearchcv 进行网格搜索以调整我的模型参数.为了对数据进行过采样,我想使用 SMOTE,而且我知道我可以将其作为管道的一个阶段包含在内并将其传递给 gridsearchcv.我担心的是,我认为 smote 将同时应用于训练和验证折叠,这不是您应该做的.验证集不应过采样.整个管道将应用于两个数据集拆分是否正确?如果是,我该如何 ..

GridSearchCV 是否执行交叉验证?

我目前正在研究一个问题,该问题在同一数据集上比较三种不同的机器学习算法的性能.我将数据集分成 70/30 个训练/测试集,然后使用 GridSearchCV 和 X_train, y_train 对每个算法的最佳参数进行网格搜索. 第一个问题,我是想在训练集上执行网格搜索还是想在整个数据集上执行网格搜索? 第二个问题,我知道 GridSearchCV 在其实现中使用 K-fold,如果 ..