{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/scaling-exponents-across-parameterizations","title":"Scaling Exponents Across Parameterizations and Optimizers","arxiv_id":"2407.05872","date":"2024-07-08","proceeding":null,"authors":["Katie Everett","Lechao Xiao","Mitchell Wortsman","Alexander A. Alemi","Roman Novak","Peter J. Liu","Izzeddin Gur","Jascha Sohl-Dickstein","Leslie Pack Kaelbling","Jaehoon Lee","Jeffrey Pennington"],"abstract":"Robust and effective scaling of models from small to large width typically requires the precise adjustment of many algorithmic and architectural details, such as parameterization and optimizer choices. In this work, we propose a new perspective on parameterization by investigating a key assumption in prior work about the alignment between parameters and data and derive new theoretical results under weaker assumptions and a broader set of optimizers. Our extensive empirical investigation includes tens of thousands of models trained with all combinations of three optimizers, four parameterizations, several alignment assumptions, more than a dozen learning rates, and fourteen model sizes up to 26.8B parameters. We find that the best learning rate scaling prescription would often have been excluded by the assumptions in prior work. Our results show that all parameterizations, not just maximal update parameterization (muP), can achieve hyperparameter transfer; moreover, our novel per-layer learning rate prescription for standard parameterization outperforms muP. Finally, we demonstrate that an overlooked aspect of parameterization, the epsilon parameter in Adam, must be scaled correctly to avoid gradient underflow and propose Adam-atan2, a new numerically stable, scale-invariant version of Adam that eliminates the epsilon hyperparameter entirely.","url_abs":"https://arxiv.org/abs/2407.05872v2","url_pdf":"https://arxiv.org/pdf/2407.05872v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"scaling-exponents-across-parameterizations","repo_url":"https://github.com/clankur/muGPT","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"BSD-3-Clause"}}],"tasks":[],"methods":[{"method_slug":"adam","method_name":"Adam"},{"method_slug":"set","method_name":"SET"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2407.05872","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2407.05872"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/clankur/muGPT","reach":{"status":"ok","spdx":"BSD-3-Clause"}}],"summary":{"unverified":8},"by_repo_kind":{"listed":{"samples":8,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"a3130ba63b739f86","entry":"explicit_activation_checkpointing","repo":"clankur/muGPT","repo_kind":"listed","path":"jax_extra.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/jax_extra.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"a3130ba63b739f86"}},{"code_sha256_prefix":"a29ddc7601d8f627","entry":"fold_in_str","repo":"clankur/muGPT","repo_kind":"listed","path":"jax_extra.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/jax_extra.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"a29ddc7601d8f627"}},{"code_sha256_prefix":"3f7cc1fbe53ab084","entry":"get_task_details","repo":"clankur/muGPT","repo_kind":"listed","path":"lr_sweep.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/lr_sweep.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"3f7cc1fbe53ab084"}},{"code_sha256_prefix":"9622915068804646","entry":"make_dataclass_from_dict","repo":"clankur/muGPT","repo_kind":"listed","path":"jax_extra.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/jax_extra.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"9622915068804646"}},{"code_sha256_prefix":"586214d969d3a3c4","entry":"make_partition_specs","repo":"clankur/muGPT","repo_kind":"listed","path":"shardlib/shardtypes.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/shardlib/shardtypes.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"586214d969d3a3c4"}},{"code_sha256_prefix":"9a333bb7a9ad48c1","entry":"pytree_dataclass","repo":"clankur/muGPT","repo_kind":"listed","path":"shardlib/shardtypes.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/shardlib/shardtypes.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"9a333bb7a9ad48c1"}},{"code_sha256_prefix":"1c50a4fb9cd2d9d0","entry":"scope","repo":"clankur/muGPT","repo_kind":"listed","path":"shardlib/shardtypes.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/shardlib/shardtypes.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"1c50a4fb9cd2d9d0"}},{"code_sha256_prefix":"038b249578a3310b","entry":"step_to_str","repo":"clankur/muGPT","repo_kind":"listed","path":"training_io.py","file_url":"https://github.com/clankur/muGPT/blob/HEAD/training_io.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"038b249578a3310b"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}