{"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/the-importance-of-being-scalable-improving","title":"The Importance of Being Scalable: Improving the Speed and Accuracy of Neural Network Interatomic Potentials Across Chemical Domains","arxiv_id":"2410.24169","date":"2024-10-31","proceeding":null,"authors":["Eric Qu","Aditi S. Krishnapriyan"],"abstract":"Scaling has been critical in improving model performance and generalization in machine learning. It involves how a model's performance changes with increases in model size or input data, as well as how efficiently computational resources are utilized to support this growth. Despite successes in other areas, the study of scaling in Neural Network Interatomic Potentials (NNIPs) remains limited. NNIPs act as surrogate models for ab initio quantum mechanical calculations. The dominant paradigm here is to incorporate many physical domain constraints into the model, such as rotational equivariance. We contend that these complex constraints inhibit the scaling ability of NNIPs, and are likely to lead to performance plateaus in the long run. In this work, we take an alternative approach and start by systematically studying NNIP scaling strategies. Our findings indicate that scaling the model through attention mechanisms is efficient and improves model expressivity. These insights motivate us to develop an NNIP architecture designed for scalability: the Efficiently Scaled Attention Interatomic Potential (EScAIP). EScAIP leverages a multi-head self-attention formulation within graph neural networks, applying attention at the neighbor-level representations. Implemented with highly-optimized attention GPU kernels, EScAIP achieves substantial gains in efficiency--at least 10x faster inference, 5x less memory usage--compared to existing NNIPs. EScAIP also achieves state-of-the-art performance on a wide range of datasets including catalysts (OC20 and OC22), molecules (SPICE), and materials (MPTrj). We emphasize that our approach should be thought of as a philosophy rather than a specific model, representing a proof-of-concept for developing general-purpose NNIPs that achieve better expressivity through scaling, and continue to scale efficiently with increased computational resources and training data.","url_abs":"https://arxiv.org/abs/2410.24169v1","url_pdf":"https://arxiv.org/pdf/2410.24169v1.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":"the-importance-of-being-scalable-improving","repo_url":"https://github.com/ASK-Berkeley/EScAIP","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":null,"task_name":"GPU"},{"task_slug":"philosophy","task_name":"Philosophy"}],"methods":[{"method_slug":"attention","method_name":"Attention"},{"method_slug":"softmax","method_name":"Softmax"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2410.24169","atlas_url":"https://app.syntology.ai/?focus=2410.24169","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2410.24169"}},"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":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ASK-Berkeley/EScAIP","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":0,"samples":[{"code_sha256_prefix":"f132c22a50c2c050","entry":"flatten_graph_attention_data_with_spec","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"src/custom_types.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/src/custom_types.py","link_basis":"first_harvest_node","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":"f132c22a50c2c050"}},{"code_sha256_prefix":"93c7d54f2b963cc4","entry":"get_node_direction_expansion_neighbor","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"src/utils/graph_utils.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/src/utils/graph_utils.py","link_basis":"first_harvest_node","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":"93c7d54f2b963cc4"}},{"code_sha256_prefix":"422333c7bd4a59bd","entry":"init_configs","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"src/configs.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/src/configs.py","link_basis":"first_harvest_node","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":"422333c7bd4a59bd"}},{"code_sha256_prefix":"70c356b3f9a3fb5d","entry":"legendre_polynomials","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"src/utils/graph_utils.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/src/utils/graph_utils.py","link_basis":"first_harvest_node","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":"70c356b3f9a3fb5d"}},{"code_sha256_prefix":"8a698476823106e0","entry":"map_graph_attention_data_to_device","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"src/custom_types.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/src/custom_types.py","link_basis":"first_harvest_node","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":"8a698476823106e0"}},{"code_sha256_prefix":"4977999419cc7e92","entry":"map_sender_receiver_feature","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"src/utils/graph_utils.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/src/utils/graph_utils.py","link_basis":"first_harvest_node","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":"4977999419cc7e92"}},{"code_sha256_prefix":"47a94e2a5434db82","entry":"resolve_type_hint","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"src/configs.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/src/configs.py","link_basis":"first_harvest_node","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":"47a94e2a5434db82"}},{"code_sha256_prefix":"584d9f6652a4c956","entry":"runcmd","repo":"ASK-Berkeley/EScAIP","repo_kind":"official","path":"simulate.py","file_url":"https://github.com/ASK-Berkeley/EScAIP/blob/HEAD/simulate.py","link_basis":"first_harvest_node","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":"584d9f6652a4c956"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}