kozistr / pytorch_optimizer

optimizer & lr scheduler & loss function collections in PyTorch
https://pytorch-optimizers.readthedocs.io/en/latest/
Apache License 2.0
237 stars 19 forks source link

VeLO: Training Versatile Learned Optimizers by Scaling Up #111

Open redknightlois opened 1 year ago

redknightlois commented 1 year ago

https://arxiv.org/abs/2211.09760

While deep learning models have replaced hand-designed features across many domains, these models are still trained with hand-designed optimizers. In this work, we leverage the same scaling approach behind the success of deep learning to learn versatile optimizers. We train an optimizer for deep learning which is itself a small neural network that ingests gradients and outputs parameter updates. Meta-trained with approximately four thousand TPU-months of compute on a wide variety of optimization tasks, our optimizer not only exhibits compelling performance, but optimizes in interesting and unexpected ways. It requires no hyperparameter tuning, instead automatically adapting to the specifics of the problem being optimized. We open source our learned optimizer, meta-training code, the associated train and test data, and an extensive optimizer benchmark suite with baselines at velo-code.github.io.

https://github.com/google/learned_optimization/tree/main/learned_optimization/research/general_lopt

kozistr commented 1 year ago

thanks for the request!

actually, I read the paper and implementation before. However, I am not confident in implementing the VeLO optimizer effectively & Pytorch-friendly. But, I'll try!