{"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/190909656","title":"Understanding and Robustifying Differentiable Architecture Search","arxiv_id":"1909.09656","date":"2019-09-20","proceeding":"ICLR 2020 1","authors":["Arber Zela","Thomas Elsken","Tonmoy Saikia","Yassine Marrakchi","Thomas Brox","Frank Hutter"],"abstract":"Differentiable Architecture Search (DARTS) has attracted a lot of attention due to its simplicity and small search costs achieved by a continuous relaxation and an approximation of the resulting bi-level optimization problem. However, DARTS does not work robustly for new problems: we identify a wide range of search spaces for which DARTS yields degenerate architectures with very poor test performance. We study this failure mode and show that, while DARTS successfully minimizes validation loss, the found solutions generalize poorly when they coincide with high validation loss curvature in the architecture space. We show that by adding one of various types of regularization we can robustify DARTS to find solutions with less curvature and better generalization properties. Based on these observations, we propose several simple variations of DARTS that perform substantially more robustly in practice. Our observations are robust across five search spaces on three image classification tasks and also hold for the very different domains of disparity estimation (a dense regression task) and language modelling.","url_abs":"https://arxiv.org/abs/1909.09656v2","url_pdf":"https://arxiv.org/pdf/1909.09656v2.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":"190909656","repo_url":"https://github.com/automl/RobustDARTS","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"disparity-estimation","task_name":"Disparity Estimation"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"language-modelling","task_name":"Language Modelling"},{"task_slug":"image-classification","task_name":"image-classification"}],"methods":[{"method_slug":"darts","method_name":"DARTS"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1909.09656","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1909.09656"}},"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/automl/RobustDARTS","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":6},"by_repo_kind":{"official":{"samples":6,"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":"469bf48752905889","entry":"accuracy","repo":"automl/RobustDARTS","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/automl/RobustDARTS/blob/HEAD/src/utils.py","link_basis":"harvester_set","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":"469bf48752905889"}},{"code_sha256_prefix":"4a15744aa9113a33","entry":"count_parameters_in_MB","repo":"automl/RobustDARTS","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/automl/RobustDARTS/blob/HEAD/src/utils.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":"4a15744aa9113a33"}},{"code_sha256_prefix":"30bb0400a2dd1188","entry":"get_moving_average_3","repo":"automl/RobustDARTS","repo_kind":"official","path":"plots/eigen_dist.py","file_url":"https://github.com/automl/RobustDARTS/blob/HEAD/plots/eigen_dist.py","link_basis":"harvester_set","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":"30bb0400a2dd1188"}},{"code_sha256_prefix":"db90642e32525cb0","entry":"get_moving_average_5","repo":"automl/RobustDARTS","repo_kind":"official","path":"plots/eigen_dist.py","file_url":"https://github.com/automl/RobustDARTS/blob/HEAD/plots/eigen_dist.py","link_basis":"harvester_set","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":"db90642e32525cb0"}},{"code_sha256_prefix":"ed58265e36feff8c","entry":"load_checkpoint","repo":"automl/RobustDARTS","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/automl/RobustDARTS/blob/HEAD/src/utils.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":"ed58265e36feff8c"}},{"code_sha256_prefix":"101678ccfacaef06","entry":"stop_criteria","repo":"automl/RobustDARTS","repo_kind":"official","path":"plots/eigen_dist.py","file_url":"https://github.com/automl/RobustDARTS/blob/HEAD/plots/eigen_dist.py","link_basis":"harvester_set","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":"101678ccfacaef06"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}