Best practices for automated parameter sweeps #20429
HenrikAsmuth
started this conversation in
General
Replies: 1 comment 1 reply
-
Some time ago I created https://github.com/mauvilsa/ray-tune-cli. Though it is only an example and I haven't been able to develop that further. Also note that there is |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
If have started playing around with pytorch-lightning and I am really happy with how it streamlines many aspects of training and evaluation of pytorch models. Particularly, I like how the LightningCLI facilitates the creation and usage of yaml config files.
However, so far I haven't found a really satisfying solution for doing parameter sweeps. In my own set-ups (without Lightning) I typically have some default config file that is used to set-up the training and then another config which only specifies which parameters of the default config should be swept over (usually providing a list of values).
I came across a few solutions but none of them seem optimal:
The lightning Tuner class can be used for sweeping learning rate and batch size but is not general in the sense that any parameter (model hyperparameters, settings of the dataset, etc.) can be changed
I came across many posts combining their lightning set-up with Optuna or others. But obviously that adds some boilerplate code which lightning was supposed to get rid of and will add another library to the whole set-up.
In an old official Lightning tutorial they use LightningApp and the Sweep class from training studio. The solution looks very generalizable and tidy. But it seems that everything in Lightning-AI Universe (which includes LightningApp and training studio) is discontinued. At least the repo is archived on github. I am assuming because they commercialized all those applications now. I am therefore skeptical how smart it is to build on some old repo that is not maintained anymore.
Would love to hear if anyone has a good solution for that.
Beta Was this translation helpful? Give feedback.
All reactions