python - hyperopt 0.2.4 中的嵌套参数
问题描述
我想搜索其中一个依赖于另一个的参数,这与StackOverflow question 中描述的非常相似,但是当我运行时,我遇到了以下问题:
TypeError: len of pyll.Apply either undefined or unknown
阅读对问题的评论看起来像是在 hyperopt 的 0.2.3 版中发生了变化。知道如何在当前版本上处理此类问题吗?下面的代码重现了我面临的错误。
from hyperopt import fmin, tpe, hp, STATUS_OK
def f(x):
return {'loss': x['foo']*x['bar'], 'status':STATUS_OK}
_foo = hp.uniform('foo', 0, 1)
_bar = hp.uniform('bar', _foo, 1)
space = {
'foo': _foo,
'bar': _bar
}
best = fmin(
f,
space=space,
max_evals=100,
algo=tpe.suggest
)
print(best)
解决方案
推荐阅读
- android - 扩展 AndroidJUnitRunner 后 GrandPermissionRule 不起作用
- python - 如何在类型提示中指定 pandas 系列元素的类型?
- reactjs - VictoryChart 没有填满整个 div
- c++ - 使用 std::get_temporary_buffer 从文件中读取数据
- php - WooCommerce 结帐中的其他自定义下订单按钮
- angular - ng-bootstrap 的国际化
- excel - 通过调度程序或任何应用程序在 Windows 10 锁定屏幕上通过 VBA 脚本复制和粘贴图片
- c# - 在 c# 中使用抽象泛型类型并需要 1 个类型参数
- c++ - 每个大小为“k”的子序列和
- google-bigquery - Bigquery - 在迁移的数据上创建代理键