Scalable Optimization in the Modular Norm
<|reference_start|>Scalable Optimization in the Modular Norm: To improve performance in contemporary deep learning, one is interested in scaling up the neural network in terms of both the number and the size of the layers. When ramping up the width of a single layer, graceful scaling of training has been linked to the need to normalize the weights and their updates in the "natural norm" particular to that layer. In this paper, we significantly generalize this idea by defining the modular norm, which is the natural norm on the full weight space of any neural network architecture. The modular norm is defined recursively in tandem with the network architecture itself. We show that the modular norm has several promising applications. On the practical side, the modular norm can be used to normalize the updates of any base optimizer so that the learning rate becomes transferable across width and depth. This means that the user does not need to compute optimizer-specific scale factors in order to scale training. On the theoretical side, we show that for any neural network built from "well-behaved" atomic modules, the gradient of the network is Lipschitz-continuous in the modular norm, with the Lipschitz constant admitting a simple recursive formula. This characterization opens the door to porting standard ideas in optimization theory over to deep learning. We have created a Python package called Modula that automatically normalizes weight updates in the modular norm of the architecture. The package is available via "pip install modula" with source code at https://github.com/jxbz/modula.<|reference_end|>
@article{large2024scalable,
    title={Scalable Optimization in the Modular Norm},
    author={Tim Large and Yang Liu and Minyoung Huh and Hyojin Bahng and Phillip
  Isola and Jeremy Bernstein},
    journal={arXiv preprint arXiv:2405.14813},
    year={2024},
    archivePrefix={arXiv},
    eprint={2405.14813},
    primaryClass={cs.LG}
}