问题标签 [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.
json - 从 json 读取 hyperopt 参数
我想从 JSON 文件中读取hyperopt参数。
我的 JSON 文件如下:
我已经检查了 这篇文章,但对于像上面这样的更复杂的 JSON 没有成功。
我希望能够创建像2.2 A Search Space Example: scikit-learn这样的空间。
keras - 通过 Hyperopt 调整神经网络参数:如何转储试验
当我尝试保存 hyperopt.trials 对象时,其中包含有关神经网络中自动参数调整的信息,
它给出了错误:
不能腌制 _thread.RLock 对象
此外,它会在我的本地驱动器上加载一个 10GB 大小的文件。也就是说,它不仅保存了试验对象,还保存了整个模型。你能帮我保存更小的试验对象吗(例如 XGBoost 试验文件的大小是 1Mb)并避免错误。
谢谢你。
python - 如何使用贝叶斯优化(在 Python 中)在超参数空间上调整超参数?
我正在尝试使用贝叶斯优化调整超参数,以使用下面的代码在超参数空间上进行随机森林回归,但我收到一条错误消息
TypeError: init () got an unexpected keyword argument 'min_samples'
尝试以下代码时出现此错误:
我还尝试使用下面的代码在目标函数中列出超参数,但出现以下错误
类型错误:objective() 缺少 3 个必需的位置参数:“min_samples”、“max_features”和“max_samples”
你能告诉我我能做些什么来修复我的代码吗?
我能够使用以下代码调整单个超参数:
python-3.x - 首先应该做什么:自动 xgboost 模型参数调整 (Hyperopt) 或特征选择 (boruta)
我通过从数据集的不同部分创建的许多小 xgboost 模型对客户端进行分类。由于很难手动支持许多模型,因此我决定通过 Hyperopt 自动调整超参数并通过 Boruta 进行特征选择。
请您给我建议,首先应该做什么:超参数调整或特征选择?另一方面,没关系。特征选择后,特征数量从 2500 减少到 100(实际上,我有 50 个真实特征和 5 个分类特征通过 OneHotEncoding 变成了 2400)。
如果需要一些代码,请告诉我。非常感谢。
python - Imblearn 管道和 HyperOpt 问题
目前我正在尝试使用 SMOTE 进行过采样,然后在管道中运行我的 XGBClassifier。出于某种原因,我无法让 HyperOpt 与 Pipeline 配合使用。
以下两个示例均运行正常:
然而,当我将 Pipeline 放入目标函数中时,我最终得到了分数的 NaN 值。
也许我只是错过了一些非常简单的东西,但不确定如何解决这个问题。欢迎任何建议/帮助/资源。
python - 如何使用贝叶斯超参数优化和 TimeSeriesSplit 执行嵌套交叉验证(LightGBM 回归)?
我想用回归模型做预测。
我尝试优化我的 LightGBM 模型以获得最佳超参数,同时针对最低泛化 RMSE 分数而不会过拟合/欠拟合。
我见过的所有示例都使用分类并随机拆分而不知道时间序列数据 + 使用 GridSearch,这些都不适用于我的问题。
如何在使用嵌套 CV 和 TimeSeriesSplit 时为我的最终模型获得贝叶斯超参数优化?
到目前为止,我的简单简历代码:
python - 如何使用 hyperopt 优化总和为 1 的向量?
我正在使用 hyperopt 来搜索算法的超参数。有三个数字需要优化w1
:w2
和w3
。这三个数应满足条件s1+w2+w3=1
。我这样定义搜索空间:
问题是它们不能被总结为 1,这不是我希望的。我怎样才能让它工作?
python - 使用 Hyperopt 进行贝叶斯优化的错误
当我使用 Hyperopt 进行贝叶斯优化时,以下代码中出现值错误:
错误如下:
谁能帮我解决这个错误?我尝试了很多次,但这个错误仍然存在。
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 中是否可行。如果没有,欢迎对可能的优化器提出任何建议。
python-3.x - 我们可以使用 Sparktrials 保存 Hyperopt 试验的结果吗
我目前正在尝试使用库 hyperopt 优化梯度提升方法的超参数。当我在自己的计算机上工作时,我使用了该类Trials
,并且能够使用库泡菜保存和重新加载我的结果。这让我可以保存我测试的所有参数集。我的代码看起来像这样:
现在,我想让这段代码在具有更多 CPU 的远程服务器上工作,以允许并行化并获得时间。
我看到我可以使用SparkTrials
hyperopt 类而不是 ot来简单地做到这一点Trials
。但是,SparkTrials 对象不能与泡菜一起保存。您对如何保存和重新加载存储在Sparktrials
对象中的试验结果有任何想法吗?