I have been attempting to use Hydra configuration with a wandb sweeps. I have nested hierarchy of configuration. When defining the parameters I want to sweep over I would like to something like the following:
optimizer:
parameters:
learning_rate:
values: [0.01, 0.001]
momentum:
value: 0.9
Source: Sweep Configuration
When I attempt this, I get a CommError with a message that sweep config must have a parameters section . I do not get this error if parameters is at the top level of the hierarchy, but then the configs are not read in properly. If I were to modify the above example to the following (only swapped parameters with optimizer):
parameters:
optimizer:
learning_rate:
values: [0.01, 0.001]
momentum:
value: 0.9
I would get a CommError with message Invalid sweep config: invalid hyperparameter configuration: optimizer. I would like to keep the hierarchical structure of the YAML base config but add parameters which will indicate which parameters to sweep over. Any recommendation? or resources? A code example using a nested sweep.yaml would be ideal.