{"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/laprop-a-better-way-to-combine-momentum-with","title":"LaProp: Separating Momentum and Adaptivity in Adam","arxiv_id":"2002.04839","date":"2020-02-12","proceeding":null,"authors":["Liu Ziyin","Zhikang T. Wang","Masahito Ueda"],"abstract":"We identity a by-far-unrecognized problem of Adam-style optimizers which results from unnecessary coupling between momentum and adaptivity. The coupling leads to instability and divergence when the momentum and adaptivity parameters are mismatched. In this work, we propose a method, Laprop, which decouples momentum and adaptivity in the Adam-style methods. We show that the decoupling leads to greater flexibility in the hyperparameters and allows for a straightforward interpolation between the signed gradient methods and the adaptive gradient methods. We experimentally show that Laprop has consistently improved speed and stability over Adam on a variety of tasks. We also bound the regret of Laprop on a convex problem and show that our bound differs from that of Adam by a key factor, which demonstrates its advantage.","url_abs":"https://arxiv.org/abs/2002.04839v3","url_pdf":"https://arxiv.org/pdf/2002.04839v3.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":"laprop-a-better-way-to-combine-momentum-with","repo_url":"https://github.com/Z-T-WANG/LaProp-Optimizer","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"laprop-a-better-way-to-combine-momentum-with","repo_url":"https://github.com/huggingface/pytorch-image-models","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"reinforcement-learning","task_name":"Reinforcement Learning"},{"task_slug":"style-transfer","task_name":"Style Transfer"}],"methods":[{"method_slug":"adam","method_name":"Adam"},{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2002.04839","atlas_url":"https://app.syntology.ai/?focus=2002.04839","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2002.04839"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/huggingface/pytorch-image-models","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Z-T-WANG/LaProp-Optimizer","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3,"unverified":4},"by_repo_kind":{"official":{"samples":7,"ran":3,"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":"6eb2fa89d6e4a36b","entry":"make_atari","repo":"Z-T-WANG/LaProp-Optimizer","repo_kind":"official","path":"rainbow/common/wrappers.py","file_url":"https://github.com/Z-T-WANG/LaProp-Optimizer/blob/HEAD/rainbow/common/wrappers.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6eb2fa89d6e4a36b"}},{"code_sha256_prefix":"34023060eaec34a2","entry":"wrap_deepmind","repo":"Z-T-WANG/LaProp-Optimizer","repo_kind":"official","path":"rainbow/common/wrappers.py","file_url":"https://github.com/Z-T-WANG/LaProp-Optimizer/blob/HEAD/rainbow/common/wrappers.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"34023060eaec34a2"}},{"code_sha256_prefix":"d818d11d4b5f6381","entry":"wrap_pytorch","repo":"Z-T-WANG/LaProp-Optimizer","repo_kind":"official","path":"rainbow/common/wrappers.py","file_url":"https://github.com/Z-T-WANG/LaProp-Optimizer/blob/HEAD/rainbow/common/wrappers.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d818d11d4b5f6381"}},{"code_sha256_prefix":"ed2dc93a9723ec69","entry":"DQN","repo":"Z-T-WANG/LaProp-Optimizer","repo_kind":"official","path":"rainbow/model.py","file_url":"https://github.com/Z-T-WANG/LaProp-Optimizer/blob/HEAD/rainbow/model.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ed2dc93a9723ec69"}},{"code_sha256_prefix":"11fc51b3483204eb","entry":"beta_scheduler","repo":"Z-T-WANG/LaProp-Optimizer","repo_kind":"official","path":"rainbow/common/utils.py","file_url":"https://github.com/Z-T-WANG/LaProp-Optimizer/blob/HEAD/rainbow/common/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"11fc51b3483204eb"}},{"code_sha256_prefix":"878f223c996c5522","entry":"create_log_dir","repo":"Z-T-WANG/LaProp-Optimizer","repo_kind":"official","path":"rainbow/common/utils.py","file_url":"https://github.com/Z-T-WANG/LaProp-Optimizer/blob/HEAD/rainbow/common/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"878f223c996c5522"}},{"code_sha256_prefix":"2e0c79ff61cfd9ae","entry":"epsilon_scheduler","repo":"Z-T-WANG/LaProp-Optimizer","repo_kind":"official","path":"rainbow/common/utils.py","file_url":"https://github.com/Z-T-WANG/LaProp-Optimizer/blob/HEAD/rainbow/common/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2e0c79ff61cfd9ae"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}