{"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/zico-zero-shot-nas-via-inverse-coefficient-of","title":"ZiCo: Zero-shot NAS via Inverse Coefficient of Variation on Gradients","arxiv_id":"2301.11300","date":"2023-01-26","proceeding":null,"authors":["Guihong Li","Yuedong Yang","Kartikeya Bhardwaj","Radu Marculescu"],"abstract":"Neural Architecture Search (NAS) is widely used to automatically obtain the neural network with the best performance among a large number of candidate architectures. To reduce the search time, zero-shot NAS aims at designing training-free proxies that can predict the test performance of a given architecture. However, as shown recently, none of the zero-shot proxies proposed to date can actually work consistently better than a naive proxy, namely, the number of network parameters (#Params). To improve this state of affairs, as the main theoretical contribution, we first reveal how some specific gradient properties across different samples impact the convergence rate and generalization capacity of neural networks. Based on this theoretical analysis, we propose a new zero-shot proxy, ZiCo, the first proxy that works consistently better than #Params. We demonstrate that ZiCo works better than State-Of-The-Art (SOTA) proxies on several popular NAS-Benchmarks (NASBench101, NATSBench-SSS/TSS, TransNASBench-101) for multiple applications (e.g., image classification/reconstruction and pixel-level prediction). Finally, we demonstrate that the optimal architectures found via ZiCo are as competitive as the ones found by one-shot and multi-shot NAS methods, but with much less search time. For example, ZiCo-based NAS can find optimal architectures with 78.1%, 79.4%, and 80.4% test accuracy under inference budgets of 450M, 600M, and 1000M FLOPs, respectively, on ImageNet within 0.4 GPU days. Our code is available at https://github.com/SLDGroup/ZiCo.","url_abs":"https://arxiv.org/abs/2301.11300v3","url_pdf":"https://arxiv.org/pdf/2301.11300v3.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":"zico-zero-shot-nas-via-inverse-coefficient-of","repo_url":"https://github.com/SLDGroup/ZiCo","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":null,"task_name":"GPU"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"architecture-search","task_name":"Neural Architecture Search"},{"task_slug":"image-classification","task_name":"image-classification"}],"methods":[{"method_slug":null,"method_name":"None"},{"method_slug":"test","method_name":"Test"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2301.11300","atlas_url":"https://app.syntology.ai/?focus=2301.11300","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2301.11300"}},"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":"deterministic:regex_extraction","url":"https://github.com/SLDGroup/ZiCo","reach":null}],"summary":{"ran_fixture":2,"ran_honours":1,"unverified":1},"by_repo_kind":{"official":{"samples":4,"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":"10f5eae605fdf258","entry":"accuracy","repo":"SLDGroup/ZiCo","repo_kind":"official","path":"val.py","file_url":"https://github.com/SLDGroup/ZiCo/blob/HEAD/val.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"10f5eae605fdf258"}},{"code_sha256_prefix":"ad5c8194771d59cf","entry":"caculate_zico","repo":"SLDGroup/ZiCo","repo_kind":"official","path":"ZeroShotProxy/compute_zico.py","file_url":"https://github.com/SLDGroup/ZiCo/blob/HEAD/ZeroShotProxy/compute_zico.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ad5c8194771d59cf"}},{"code_sha256_prefix":"83217a5bcd896e29","entry":"getzico","repo":"SLDGroup/ZiCo","repo_kind":"official","path":"ZeroShotProxy/compute_zico.py","file_url":"https://github.com/SLDGroup/ZiCo/blob/HEAD/ZeroShotProxy/compute_zico.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"83217a5bcd896e29"}},{"code_sha256_prefix":"c2ee2ea6990faef3","entry":"getgrad","repo":"SLDGroup/ZiCo","repo_kind":"official","path":"ZeroShotProxy/compute_zico.py","file_url":"https://github.com/SLDGroup/ZiCo/blob/HEAD/ZeroShotProxy/compute_zico.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c2ee2ea6990faef3"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}