{"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/3d-equivariant-molecular-graph-pretraining","title":"Energy-Motivated Equivariant Pretraining for 3D Molecular Graphs","arxiv_id":"2207.08824","date":"2022-07-18","proceeding":null,"authors":["Rui Jiao","Jiaqi Han","Wenbing Huang","Yu Rong","Yang Liu"],"abstract":"Pretraining molecular representation models without labels is fundamental to various applications. Conventional methods mainly process 2D molecular graphs and focus solely on 2D tasks, making their pretrained models incapable of characterizing 3D geometry and thus defective for downstream 3D tasks. In this work, we tackle 3D molecular pretraining in a complete and novel sense. In particular, we first propose to adopt an equivariant energy-based model as the backbone for pretraining, which enjoys the merits of fulfilling the symmetry of 3D space. Then we develop a node-level pretraining loss for force prediction, where we further exploit the Riemann-Gaussian distribution to ensure the loss to be E(3)-invariant, enabling more robustness. Moreover, a graph-level noise scale prediction task is also leveraged to further promote the eventual performance. We evaluate our model pretrained from a large-scale 3D dataset GEOM-QM9 on two challenging 3D benchmarks: MD17 and QM9. Experimental results demonstrate the efficacy of our method against current state-of-the-art pretraining approaches, and verify the validity of our design for each proposed component.","url_abs":"https://arxiv.org/abs/2207.08824v4","url_pdf":"https://arxiv.org/pdf/2207.08824v4.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":"3d-equivariant-molecular-graph-pretraining","repo_url":"https://github.com/jiaor17/3d-emgp","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"3d-equivariant-molecular-graph-pretraining","repo_url":"https://github.com/jiaor17/3D-MGP","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"3d-equivariant-molecular-graph-pretraining","repo_url":"https://github.com/MindCode-4/code-13/tree/main/riemann-noise","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null},{"paper_slug":"3d-equivariant-molecular-graph-pretraining","repo_url":"https://github.com/MindSpore-scientific/code-14/tree/main/riemann-noise","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null},{"paper_slug":"3d-equivariant-molecular-graph-pretraining","repo_url":"https://github.com/MindSpore-scientific/code-5/tree/main/riemann-noise","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null}],"tasks":[{"task_slug":"3d-geometry","task_name":"3D geometry"},{"task_slug":"molecular-representation","task_name":"molecular representation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2207.08824","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2207.08824"}},"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/MindCode-4/code-13/tree/main/riemann-noise","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jiaor17/3D-MGP","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MindSpore-scientific/code-14/tree/main/riemann-noise","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/MindSpore-scientific/code-5/tree/main/riemann-noise","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jiaor17/3d-emgp","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_honours":1,"ran":1,"ran_draft_wrong":3,"ran_fixture":1},"by_repo_kind":{"official":{"samples":6,"ran":6,"repositories":2}},"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":"6d5f9e03fb5171ad","entry":"binarize","repo":"jiaor17/3d-emgp","repo_kind":"official","path":"script/finetune_qm9.py","file_url":"https://github.com/jiaor17/3d-emgp/blob/HEAD/script/finetune_qm9.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6d5f9e03fb5171ad"}},{"code_sha256_prefix":"c2f9c401f5379aac","entry":"get_edges","repo":"jiaor17/3D-MGP","repo_kind":"official","path":"mgp/layers/egnn_clean.py","file_url":"https://github.com/jiaor17/3D-MGP/blob/HEAD/mgp/layers/egnn_clean.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c2f9c401f5379aac"}},{"code_sha256_prefix":"255d015f7e8d573c","entry":"process_input","repo":"jiaor17/3d-emgp","repo_kind":"official","path":"script/finetune_qm9.py","file_url":"https://github.com/jiaor17/3d-emgp/blob/HEAD/script/finetune_qm9.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"255d015f7e8d573c"}},{"code_sha256_prefix":"654a4b9e4afe14f4","entry":"process_input","repo":"jiaor17/3d-emgp","repo_kind":"official","path":"script/finetune_md17.py","file_url":"https://github.com/jiaor17/3d-emgp/blob/HEAD/script/finetune_md17.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"654a4b9e4afe14f4"}},{"code_sha256_prefix":"bc66f19be57720e7","entry":"unsorted_segment_mean","repo":"jiaor17/3D-MGP","repo_kind":"official","path":"mgp/layers/egnn_clean.py","file_url":"https://github.com/jiaor17/3D-MGP/blob/HEAD/mgp/layers/egnn_clean.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bc66f19be57720e7"}},{"code_sha256_prefix":"5fb62a78eb65d3d7","entry":"unsorted_segment_sum","repo":"jiaor17/3D-MGP","repo_kind":"official","path":"mgp/layers/egnn_clean.py","file_url":"https://github.com/jiaor17/3D-MGP/blob/HEAD/mgp/layers/egnn_clean.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5fb62a78eb65d3d7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}