Conditional sweep config

I guess the answer to this is “not supported” when looking at similar requests, but at least… let me add a +1 to the feature request. Simplified, presume I have two approaches to training a model, each with its own sub-approaches. Is there a way to define a sweep config in a way that I can do a search over sub-approaches that depend on the main approach, i.e., how to build something like:

python3 train.py --approach a --sub_approach a1
python3 train.py --approach a --sub_approach a2
python3 train.py --approach b --sub_approach b1
python3 train.py --approach b --sub_approach b2

I could…

  • do 2 sweeps for a anb b in that toy example, but I think I cannot combine the results of different sweeps into a single graph, right?
  • Or I could check in train.py and abort the program for invalid combinations; in this case I think I need to tell wandb to continue with the sweep since there would be a number of “crashes”
  • Or use a different hyper param optimizer and integrate into wandb (but would like to avoid that).

Any other options? If different hyper param optimizer, any recommendation because of better/easier integration with wandb? Thanks for your input/ideas.

Hi Stephan!

This is a very popular feature request. I just +1’ed it and raised the priority on it for you. Hopefully, we’ll see this feature asap!

Cheers,
Artsiom