{"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/rigging-the-lottery-making-all-tickets-1","title":"Rigging the Lottery: Making All Tickets Winners","arxiv_id":"1911.11134","date":"2019-11-25","proceeding":"ICML 2020 1","authors":["Utku Evci","Trevor Gale","Jacob Menick","Pablo Samuel Castro","Erich Elsen"],"abstract":"Many applications require sparse neural networks due to space or inference time restrictions. There is a large body of work on training dense networks to yield sparse networks for inference, but this limits the size of the largest trainable sparse model to that of the largest trainable dense model. In this paper we introduce a method to train sparse neural networks with a fixed parameter count and a fixed computational cost throughout training, without sacrificing accuracy relative to existing dense-to-sparse training methods. Our method updates the topology of the sparse network during training by using parameter magnitudes and infrequent gradient calculations. We show that this approach requires fewer floating-point operations (FLOPs) to achieve a given level of accuracy compared to prior techniques. We demonstrate state-of-the-art sparse training results on a variety of networks and datasets, including ResNet-50, MobileNets on Imagenet-2012, and RNNs on WikiText-103. Finally, we provide some insights into why allowing the topology to change during the optimization can overcome local minima encountered when the topology remains static. Code used in our work can be found in github.com/google-research/rigl.","url_abs":"https://arxiv.org/abs/1911.11134v3","url_pdf":"https://arxiv.org/pdf/1911.11134v3.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":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/google-research/rigl","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/varun19299/rigl-reproducibility","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/Shiweiliuiiiiiii/GraNet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/Shiweiliuiiiiiii/In-Time-Over-Parameterization","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/calgaryml/condensed-sparsity","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/hyeon95y/sparselinear","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/nollied/rigl-torch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/stevenboys/agent","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/stevenboys/moon","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/verbose-avocado/rigl-torch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"rigging-the-lottery-making-all-tickets-1","repo_url":"https://github.com/vita-group/granet","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"all","task_name":"All"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"sparse-learning","task_name":"Sparse Learning"}],"methods":[{"method_slug":"rigl","method_name":"RigL"}],"datasets_introduced":[],"methods_introduced":[{"slug":"rigl","name":"RigL","full_name":"Rigging the Lottery"}],"results":[{"leaderboard":"/sota/sparse-learning-on-imagenet","task":"Sparse Learning","dataset":"ImageNet","model":"Resnet-50: 80% Sparse","rank_in_archive_order":1,"of":9,"metrics":{"Top-1 Accuracy":"77.1"},"uses_additional_data":false},{"leaderboard":"/sota/sparse-learning-on-imagenet","task":"Sparse Learning","dataset":"ImageNet","model":"Resnet-50: 90% Sparse","rank_in_archive_order":2,"of":9,"metrics":{"Top-1 Accuracy":"76.4"},"uses_additional_data":false},{"leaderboard":"/sota/sparse-learning-on-imagenet","task":"Sparse Learning","dataset":"ImageNet","model":"MobileNet-v1: 75% Sparse","rank_in_archive_order":7,"of":9,"metrics":{"Top-1 Accuracy":"71.9"},"uses_additional_data":false},{"leaderboard":"/sota/sparse-learning-on-imagenet","task":"Sparse Learning","dataset":"ImageNet","model":"MobileNet-v1: 90% Sparse","rank_in_archive_order":8,"of":9,"metrics":{"Top-1 Accuracy":"68.1"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1911.11134","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1911.11134"}},"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/Shiweiliuiiiiiii/GraNet","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/google-research/rigl","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/nollied/rigl-torch","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/stevenboys/moon","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vita-group/granet","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/verbose-avocado/rigl-torch","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/varun19299/rigl-reproducibility","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/calgaryml/condensed-sparsity","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hyeon95y/sparselinear","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Shiweiliuiiiiiii/In-Time-Over-Parameterization","reach":{"status":"unanswered"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/stevenboys/agent","reach":{"status":"ok"}}],"summary":{"ran_fixture":1},"by_repo_kind":{"listed":{"samples":1,"ran":1,"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":"3a0749baa452d466","entry":"small_world_chunker","repo":"hyeon95y/sparselinear","repo_kind":"listed","path":"sparselinear/sparselinear.py","file_url":"https://github.com/hyeon95y/sparselinear/blob/HEAD/sparselinear/sparselinear.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3a0749baa452d466"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}