AttributeError: module 'hyperopt' has no attribute 'uniform'

AttributeError: module 'hyperopt' has no attribute 'uniform'

我正在尝试在 hyperopt 中定义一个参数 space。但是,当我 运行:

import hyperopt as hp
SPACE = {'d1': hp.uniform('d1',-1000000,-0.5),
'd2': hp.uniform('d2',0,1),
'd3': hp.uniform('d3',0,1)} 

我收到标题中的错误。我在网上发现的唯一一件事是我应该尝试降级到 networkx 1.11,所以在命令提示符下我 运行:

pip install networkx==1.11

它显然有效,但属性 uniform 仍然没有运气。

导入hyperopt模块的hp部分的正确方法是

from hyperopt import hp

您已经使用过

import hyperopt as hp

Hyperopt 具有内置模块 hp,其中包含函数 uniform

import hyperopt.hp as hp

然后 hp.uniform 对你来说效果很好。这适用于 networkx-2.2.