{"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/prospect-pruning-finding-trainable-weights-at-1","title":"Prospect Pruning: Finding Trainable Weights at Initialization using Meta-Gradients","arxiv_id":"2202.08132","date":"2022-02-16","proceeding":"ICLR 2022 4","authors":["Milad Alizadeh","Shyam A. Tailor","Luisa M Zintgraf","Joost van Amersfoort","Sebastian Farquhar","Nicholas Donald Lane","Yarin Gal"],"abstract":"Pruning neural networks at initialization would enable us to find sparse models that retain the accuracy of the original network while consuming fewer computational resources for training and inference. However, current methods are insufficient to enable this optimization and lead to a large degradation in model performance. In this paper, we identify a fundamental limitation in the formulation of current methods, namely that their saliency criteria look at a single step at the start of training without taking into account the trainability of the network. While pruning iteratively and gradually has been shown to improve pruning performance, explicit consideration of the training stage that will immediately follow pruning has so far been absent from the computation of the saliency criterion. To overcome the short-sightedness of existing methods, we propose Prospect Pruning (ProsPr), which uses meta-gradients through the first few steps of optimization to determine which weights to prune. ProsPr combines an estimate of the higher-order effects of pruning on the loss and the optimization trajectory to identify the trainable sub-network. Our method achieves state-of-the-art pruning performance on a variety of vision classification tasks, with less data and in a single shot compared to existing pruning-at-initialization methods.","url_abs":"https://arxiv.org/abs/2202.08132v2","url_pdf":"https://arxiv.org/pdf/2202.08132v2.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":"prospect-pruning-finding-trainable-weights-at-1","repo_url":"https://github.com/mil-ad/prospr","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[{"method_slug":"pruning","method_name":"Pruning"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2202.08132","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2202.08132"}},"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/mil-ad/prospr","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":2,"unverified":10},"by_repo_kind":{"official":{"samples":12,"ran":2,"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":"d9def42110729a85","entry":"conv1x1","repo":"mil-ad/prospr","repo_kind":"official","path":"models/resnet_custom.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/models/resnet_custom.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d9def42110729a85"}},{"code_sha256_prefix":"160bb14bd76201b4","entry":"conv3x3","repo":"mil-ad/prospr","repo_kind":"official","path":"models/resnet_custom.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/models/resnet_custom.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"160bb14bd76201b4"}},{"code_sha256_prefix":"87ed2acbb021de28","entry":"apply_masks_with_hooks","repo":"mil-ad/prospr","repo_kind":"official","path":"prospr/utils.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/prospr/utils.py","link_basis":"harvester_set","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":"87ed2acbb021de28"}},{"code_sha256_prefix":"d1b161cee5bff7e5","entry":"attach_masks_as_parameter","repo":"mil-ad/prospr","repo_kind":"official","path":"prospr/utils.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/prospr/utils.py","link_basis":"harvester_set","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":"d1b161cee5bff7e5"}},{"code_sha256_prefix":"4ba948355d6b2b2f","entry":"create_logdir","repo":"mil-ad/prospr","repo_kind":"official","path":"utils.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/utils.py","link_basis":"harvester_set","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":"4ba948355d6b2b2f"}},{"code_sha256_prefix":"2e0a7ab17059596d","entry":"functional_sgd","repo":"mil-ad/prospr","repo_kind":"official","path":"prospr/prospr.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/prospr/prospr.py","link_basis":"harvester_set","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":"2e0a7ab17059596d"}},{"code_sha256_prefix":"035a3c7ada3cd3eb","entry":"get_cifar10","repo":"mil-ad/prospr","repo_kind":"official","path":"datasets.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/datasets.py","link_basis":"harvester_set","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":"035a3c7ada3cd3eb"}},{"code_sha256_prefix":"e953f0a585a2f2d9","entry":"get_cifar100","repo":"mil-ad/prospr","repo_kind":"official","path":"datasets.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/datasets.py","link_basis":"harvester_set","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":"e953f0a585a2f2d9"}},{"code_sha256_prefix":"6bc530d5e9c4de0a","entry":"get_imagenet","repo":"mil-ad/prospr","repo_kind":"official","path":"datasets.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/datasets.py","link_basis":"harvester_set","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":"6bc530d5e9c4de0a"}},{"code_sha256_prefix":"7b2200bb55802830","entry":"pruning_filter_factory","repo":"mil-ad/prospr","repo_kind":"official","path":"prospr/utils.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/prospr/utils.py","link_basis":"harvester_set","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":"7b2200bb55802830"}},{"code_sha256_prefix":"75ac27c2c68e8305","entry":"resnet18","repo":"mil-ad/prospr","repo_kind":"official","path":"models/resnet_custom.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/models/resnet_custom.py","link_basis":"harvester_set","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":"75ac27c2c68e8305"}},{"code_sha256_prefix":"ebcb887f8a78c073","entry":"unconcatenate","repo":"mil-ad/prospr","repo_kind":"official","path":"utils.py","file_url":"https://github.com/mil-ad/prospr/blob/HEAD/utils.py","link_basis":"harvester_set","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":"ebcb887f8a78c073"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}