问题标签 [hyperopt]

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.

0 投票
0 回答
164 浏览

json - 从 json 读取 hyperopt 参数

我想从 JSON 文件中读取hyperopt参数。

我的 JSON 文件如下:

我已经检查了 这篇文章,但对于像上面这样的更复杂的 JSON 没有成功。

我希望能够创建像2.2 A Search Space Example: scikit-learn这样的空间。

0 投票
1 回答
191 浏览

keras - 通过 Hyperopt 调整神经网络参数:如何转储试验

当我尝试保存 hyperopt.trials 对象时,其中包含有关神经网络中自动参数调整的信息,

它给出了错误:

不能腌制 _thread.RLock 对象

此外,它会在我的本地驱动器上加载一个 10GB 大小的文件。也就是说,它不仅保存了试验对象,还保存了整个模型。你能帮我保存更小的试验对象吗(例如 XGBoost 试验文件的大小是 1Mb)并避免错误。

谢谢你。

0 投票
1 回答
536 浏览

python - 如何使用贝叶斯优化(在 Python 中)在超参数空间上调整超参数?

我正在尝试使用贝叶斯优化调整超参数,以使用下面的代码在超参数空间上进行随机森林回归,但我收到一条错误消息

TypeError: init () got an unexpected keyword argument 'min_samples'

尝试以下代码时出现此错误:

我还尝试使用下面的代码在目标函数中列出超参数,但出现以下错误

类型错误:objective() 缺少 3 个必需的位置参数:“min_samples”、“max_features”和“max_samples”

你能告诉我我能做些什么来修复我的代码吗?

我能够使用以下代码调整单个超参数:

0 投票
1 回答
336 浏览

python-3.x - 首先应该做什么:自动 xgboost 模型参数调整 (Hyperopt) 或特征选择 (boruta)

我通过从数据集的不同部分创建的许多小 xgboost 模型对客户端进行分类。由于很难手动支持许多模型,因此我决定通过 Hyperopt 自动调整超参数并通过 Boruta 进行特征选择。

请您给我建议,首先应该做什么:超参数调整或特征选择?另一方面,没关系。特征选择后,特征数量从 2500 减少到 100(实际上,我有 50 个真实特征和 5 个分类特征通过 OneHotEncoding 变成了 2400)。

如果需要一些代码,请告诉我。非常感谢。

0 投票
1 回答
211 浏览

python - Imblearn 管道和 HyperOpt 问题

目前我正在尝试使用 SMOTE 进行过采样,然后在管道中运行我的 XGBClassifier。出于某种原因,我无法让 HyperOpt 与 Pipeline 配合使用。

以下两个示例均运行正常:

然而,当我将 Pipeline 放入目标函数中时,我最终得到了分数的 NaN 值。

也许我只是错过了一些非常简单的东西,但不确定如何解决这个问题。欢迎任何建议/帮助/资源。

0 投票
0 回答
1061 浏览

python - 如何使用贝叶斯超参数优化和 TimeSeriesSplit 执行嵌套交叉验证(LightGBM 回归)?

我想用回归模型做预测。

我尝试优化我的 LightGBM 模型以获得最佳超参数,同时针对最低泛化 RMSE 分数而不会过拟合/欠拟合。

我见过的所有示例都使用分类并随机拆分而不知道时间序列数据 + 使用 GridSearch,这些都不适用于我的问题。

如何在使用嵌套 CV 和 TimeSeriesSplit 时为我的最终模型获得贝叶斯超参数优化?

到目前为止,我的简单简历代码:

0 投票
1 回答
93 浏览

python - 如何使用 hyperopt 优化总和为 1 的向量?

我正在使用 hyperopt 来搜索算法的超参数。有三个数字需要优化w1w2w3。这三个数应满足条件s1+w2+w3=1。我这样定义搜索空间:

问题是它们不能被总结为 1,这不是我希望的。我怎样才能让它工作?

0 投票
0 回答
60 浏览

python - 使用 Hyperopt 进行贝叶斯优化的错误

当我使用 Hyperopt 进行贝叶斯优化时,以下代码中出现值错误:

错误如下:

谁能帮我解决这个错误?我尝试了很多次,但这个错误仍然存​​在。

0 投票
4 回答
1229 浏览

python-3.x - Hyperopt 每个超参数的值列表

我正在尝试在回归模型上使用Hyperopt,这样它的一个超参数是按变量定义的,并且需要作为列表传递。例如,如果我有一个包含 3 个自变量(不包括常数)的回归,我会通过hyperparameter = [x, y, z]x, y, z浮点数在哪里)。

无论它们应用于哪个变量,此超参数的值都具有相同的界限。如果将此超参数应用于所有变量,我可以简单地使用hp.uniform('hyperparameter', a, b). 我希望搜索空间是hp.uniform('hyperparameter', a, b)长度的笛卡尔积n,其中n是回归中的变量数(所以,基本上,itertools.product(hp.uniform('hyperparameter', a, b), repeat = n)

我想知道这在 Hyperopt 中是否可行。如果没有,欢迎对可能的优化器提出任何建议。

0 投票
1 回答
890 浏览

python-3.x - 我们可以使用 Sparktrials 保存 Hyperopt 试验的结果吗

我目前正在尝试使用库 hyperopt 优化梯度提升方法的超参数。当我在自己的计算机上工作时,我使用了该类Trials,并且能够使用库泡菜保存和重新加载我的结果。这让我可以保存我测试的所有参数集。我的代码看起来像这样:

现在,我想让这段代码在具有更多 CPU 的远程服务器上工作,以允许并行化并获得时间。

我看到我可以使用SparkTrialshyperopt 类而不是 ot来简单地做到这一点Trials。但是,SparkTrials 对象不能与泡菜一起保存。您对如何保存和重新加载存储在Sparktrials对象中的试验结果有任何想法吗?