python - hyperopt - 是否可以获得其搜索空间的当前值?
问题描述
我想知道是否有办法访问 hyperopt 为参数选择的当前值?我想在 xgboost 的学习率回调函数中使用它选择的值。
from hyperopt import hp
param = {'eta' : hp.uniform('eta', 0.01, 0.1)} # learning rate
param['eta'] # returns <hyperopt.pyll.base.Apply at 0x23fd5699dd8>
解决方案
使用fmin时,您将获得目标函数每次迭代的 'eta' 值。
例如
_ = fmin(fn=objective,
space=param,
max_evals=num_trials)
目标定义为:
def objective(params: Dict):
# So you can access params['eta'] in this context
推荐阅读
- java - 为什么我的应用程序在手机重启后尝试打开文件时会崩溃?
- laravel - 如何在 Laravel/Eloquent 中获得完整的关系
- c# - 托管在 Windows 服务中的 ASP.NET Core - 未提供静态文件(即 /wwwroot 的内容)
- java - 来自 mssql 数据库的快速流式批处理数据
- ios - 如何更改 Podfile 中的现有存储库 URL,将所有 pod 更新到新存储库
- python - Pygame 无法加载图像并且错误消息不显示相同的文件
- sql - SQL 按升序排序,但将 Null 视为最大值
- android - gradlew assembleRelease 它在 react-native 中给出以下错误
- internet-explorer - ASPSessionID 在 IE 11 上的请求之间间歇性更改
- infinispan - 在wildfly中注册infinispan缓存监听器