问题标签 [grid-search]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 GridSearchCV 调整 scikit-learn 的随机森林超参数
我正在尝试使用随机森林来解决我的问题(以下是波士顿数据集的示例代码,而不是我的数据)。我打算GridSearchCV
用于超参数调整,但不同参数的值范围应该是多少?我怎么知道我选择的范围是正确的?
我在互联网上读到它,有人建议在第二次网格搜索中尝试“放大”最佳值(例如,如果它是 10,那么尝试 [5, 20, 50])。
这是正确的方法吗?我应该对随机森林所需的所有参数使用这种方法吗?这种方法可能会错过一个“好的”组合,对吧?
python - 执行网格搜索后分配模型参数
执行网格搜索后如何分配模型参数?
现在,这就是我所做的:
我想将参数分配给njobs=-1
模型。网格搜索后如何执行此操作?
python - 如何使用 GridSearchCV 输出进行 scikit 预测?
在以下代码中:
应该使用什么进行预测?
gs
?gs.best_estimator_
? 或者gs.best_estimator_.named_steps['clf']
?
这3个有什么区别?
machine-learning - 您将如何使用 Sklearn 的 VotingClassifier 进行 RandomizedSearchCV?
我正在尝试调整我的投票分类器。我想在 Sklearn 中使用随机搜索。但是,由于我目前使用两种算法(不同的树算法),您如何为我的投票分类器设置参数列表?我是否必须单独运行随机搜索并稍后在投票分类器中将它们组合在一起?
有人可以帮忙吗?代码示例将不胜感激:)
谢谢!
machine-learning - 您如何在 Sklearn 中将 fit_params 用于带有 VotingClassifier 的 RandomizedSearch?
嗨,由于数据集不平衡,我正在尝试在 Sklearn 中使用 fit_params(用于 GradientBoostingClassifier 上的 sample_weight)和 VotingClassifier 进行 RandomizedSearch。有人可以给我建议和可能的代码示例吗?
我当前不工作的代码如下:
错误:
python - 将 GridSearchCV 与 sklearn.svm 用于 c 和 gamma 时出现值错误
给出:
正如预期的那样,但是当我运行下一段代码时:
我明白了: ValueError: Invalid parameter c for estimator SVC
我很确定这些是 c 的有效值,因为我自己手动运行它们,我只是想微调所有内容。
python - 从 GridsearchCV 创建 3D 曲面图
我正在使用 GridsearchCV 试图优化 c 和 gamma 的值。我希望能够绘制一个 3d 曲面,显示精度(平均验证分数)如何随 c 和 gamma 的不同值而变化。我认为 gridscores 输出是一个元组列表,其中参数(gamma 和 c)作为字典。我不确定如何有效地将其转换为 mplot3d 曲面图所需的二维数组。
所以当我运行时:
我得到如下输出:
等等。
python - 有没有更快的运行 GridsearchCV 的方法
我正在为 sklearn 中的 SVC 优化一些参数,这里最大的问题是必须等待 30 分钟才能尝试任何其他参数范围。更糟糕的是,我想在同一范围内尝试更多的 c 和 gamma 值(这样我可以创建更平滑的曲面图),但我知道这将花费越来越长的时间......当我今天运行它时我将 cache_size 从 200 更改为 600(不知道它做了什么),看看它是否有所作为。时间减少了大约一分钟。
这是我能帮忙的吗?还是我只需要处理很长时间?
返回:
python - 在 R^n 中对立方体/球体进行网格搜索
R^n
我正在尝试在n
未知的球体上实现网格搜索(在 Python 中,如果重要的话) 。
输入包括球体的半径和中心,以及theta
控制网格分辨率的超参数。我想将这个球体中的每个点表示为这三个参数的函数。
我也愿意考虑立方体搜索,只迭代立方体的面。(即,迭代L_inf
球体)
如果我知道 n=2,我会做的是:
由于n
可以任意大,我正在寻找一种有效地迭代球体\立方体的方法。
有任何想法吗?
++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++
我最终使用了一个修改后的版本:
输出图:
另一种选择是在 sphere 上生成 均匀分布的样本。请注意,样本数控制点的“密度”(或预期密度):
最糟糕的方法(就简单性和效率而言)是使用n-1 角度的枚举在球体上生成点。效率低下是因为需要计算产品sin
并且cos
经常(尽管这也可能被黑客入侵)
python - 是否有任何推荐的策略来在庞大的数据集上运行 gridsearchcv?
我正在尝试在大约 300 万条记录的巨大数据集上评估 svm。这是一个具有 23 个特征的多类问题。目前 gridsearchcv 需要很长时间来迭代参数。有什么策略可以加快速度吗?我想 30 万条记录是一个合理的数字,我很困惑 CPU 使用率没有超过 30%,而 RAM 使用率限制为 50%。按照文档中的建议,我将 n_jobs 设置为 -1 和 pre_dispatch=1 。没有什么变化。根据我的输入,我预计总共有 24 次迭代。这是我的示例代码
感谢任何帮助。