使用 ray tune 时,配置中定义的值 returns 非浮点值

When using ray tune, value defined in config returns a non-float value

我是 Ray Tune 的新手。 我定义我的光线配置如下:

ray_config = {
        "estimator/dropout_rate": tune.uniform(0.0, 0.3),
        "estimator/d_model": tune.choice([64]),
        "estimator/num_encoder_layers": tune.choice([3]),
        "estimator/context_length": tune.choice([4, 8, 12]),
        "trainer/batch_size": tune.choice([256]),
        "trainer/learning_rate": tune.uniform(0.0002, 0.01),
        "trainer/weight_decay": tune.uniform(1e-06, 1e-03)
    }

所以,我尝试 运行 使用此配置调整自己的风格。

tune.run(run_or_experiment=executor_run(hpo_params),
         metric="MAE",
         mode="max",
         num_samples=40, # number of trial models
         config=hpo_params,
         fail_fast=True)

但是,当我在 executor_run 函数中看到配置值时,它没有浮点数或整数类型。

'estimator/dropout_rate': <ray.tune.sample.Flo...d87cf7070>

我该如何解决这个问题? :(

您必须通过 run_or_experiment=executor_run(不带括号)。如果保留括号,函数将立即执行。您真正想要做的是传递一个引用,然后 Ray Tune 可以在远程工作人员上执行该引用。