{"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/gennape-towards-generalized-neural","title":"GENNAPE: Towards Generalized Neural Architecture Performance Estimators","arxiv_id":"2211.17226","date":"2022-11-30","proceeding":null,"authors":["Keith G. Mills","Fred X. Han","Jialin Zhang","Fabian Chudak","Ali Safari Mamaghani","Mohammad Salameh","Wei Lu","Shangling Jui","Di Niu"],"abstract":"Predicting neural architecture performance is a challenging task and is crucial to neural architecture design and search. Existing approaches either rely on neural performance predictors which are limited to modeling architectures in a predefined design space involving specific sets of operators and connection rules, and cannot generalize to unseen architectures, or resort to zero-cost proxies which are not always accurate. In this paper, we propose GENNAPE, a Generalized Neural Architecture Performance Estimator, which is pretrained on open neural architecture benchmarks, and aims to generalize to completely unseen architectures through combined innovations in network representation, contrastive pretraining, and fuzzy clustering-based predictor ensemble. Specifically, GENNAPE represents a given neural network as a Computation Graph (CG) of atomic operations which can model an arbitrary architecture. It first learns a graph encoder via Contrastive Learning to encourage network separation by topological features, and then trains multiple predictor heads, which are soft-aggregated according to the fuzzy membership of a neural network. Experiments show that GENNAPE pretrained on NAS-Bench-101 can achieve superior transferability to 5 different public neural network benchmarks, including NAS-Bench-201, NAS-Bench-301, MobileNet and ResNet families under no or minimum fine-tuning. We further introduce 3 challenging newly labelled neural network benchmarks: HiAML, Inception and Two-Path, which can concentrate in narrow accuracy ranges. Extensive experiments show that GENNAPE can correctly discern high-performance architectures in these families. Finally, when paired with a search algorithm, GENNAPE can find architectures that improve accuracy while reducing FLOPs on three families.","url_abs":"https://arxiv.org/abs/2211.17226v2","url_pdf":"https://arxiv.org/pdf/2211.17226v2.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":"gennape-towards-generalized-neural","repo_url":"https://github.com/Ascend-Research/GENNAPE","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"contrastive-learning","task_name":"Contrastive Learning"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"architecture-search","task_name":"Neural Architecture Search"}],"methods":[{"method_slug":"1x1-convolution","method_name":"1x1 Convolution"},{"method_slug":"average-pooling","method_name":"Average Pooling"},{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"bottleneck-residual-block","method_name":"Bottleneck Residual Block"},{"method_slug":"contrastive-learning","method_name":"Contrastive Learning"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"global-average-pooling","method_name":"Global Average Pooling"},{"method_slug":"kaiming-initialization","method_name":"Kaiming Initialization"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-block","method_name":"Residual Block"},{"method_slug":"residual-connection","method_name":"Residual Connection"}],"datasets_introduced":[{"slug":"hiaml","name":"HiAML","full_name":""},{"slug":"inception","name":"Inception","full_name":""},{"slug":"two-path","name":"Two-Path","full_name":""}],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2211.17226","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2211.17226"}},"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/Ascend-Research/GENNAPE","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":8},"by_repo_kind":{"official":{"samples":8,"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":8,"samples":[{"code_sha256_prefix":"cda29d4042842ca4","entry":"can_parallel","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"utils/model_utils.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/utils/model_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":false,"mcp_get_code":{"code_sha256":"cda29d4042842ca4"}},{"code_sha256_prefix":"e254d330a4cc7b0c","entry":"correlation_metrics","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"model_src/demo_functions.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/model_src/demo_functions.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":false,"mcp_get_code":{"code_sha256":"e254d330a4cc7b0c"}},{"code_sha256_prefix":"5ad2fe246f975b4e","entry":"device","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"utils/model_utils.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/utils/model_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":false,"mcp_get_code":{"code_sha256":"5ad2fe246f975b4e"}},{"code_sha256_prefix":"ac695ab7ad468a19","entry":"get_family_train_size_dict","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"run_cg_kgnn_predictor.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/run_cg_kgnn_predictor.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":false,"mcp_get_code":{"code_sha256":"ac695ab7ad468a19"}},{"code_sha256_prefix":"0240131c1b875081","entry":"get_reg_truth_and_preds","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"model_src/demo_functions.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/model_src/demo_functions.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":false,"mcp_get_code":{"code_sha256":"0240131c1b875081"}},{"code_sha256_prefix":"dafe80937fe69d53","entry":"model_load","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"utils/model_utils.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/utils/model_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":false,"mcp_get_code":{"code_sha256":"dafe80937fe69d53"}},{"code_sha256_prefix":"f9dc00a1b394e9ec","entry":"prepare_local_params","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"run_cg_kgnn_predictor.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/run_cg_kgnn_predictor.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":false,"mcp_get_code":{"code_sha256":"f9dc00a1b394e9ec"}},{"code_sha256_prefix":"c9089c36c66bb3aa","entry":"pure_regressor_metrics","repo":"Ascend-Research/GENNAPE","repo_kind":"official","path":"model_src/demo_functions.py","file_url":"https://github.com/Ascend-Research/GENNAPE/blob/HEAD/model_src/demo_functions.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":false,"mcp_get_code":{"code_sha256":"c9089c36c66bb3aa"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}