{"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/graphmae2-a-decoding-enhanced-masked-self","title":"GraphMAE2: A Decoding-Enhanced Masked Self-Supervised Graph Learner","arxiv_id":"2304.04779","date":"2023-04-10","proceeding":null,"authors":["Zhenyu Hou","Yufei He","Yukuo Cen","Xiao Liu","Yuxiao Dong","Evgeny Kharlamov","Jie Tang"],"abstract":"Graph self-supervised learning (SSL), including contrastive and generative approaches, offers great potential to address the fundamental challenge of label scarcity in real-world graph data. Among both sets of graph SSL techniques, the masked graph autoencoders (e.g., GraphMAE)--one type of generative method--have recently produced promising results. The idea behind this is to reconstruct the node features (or structures)--that are randomly masked from the input--with the autoencoder architecture. However, the performance of masked feature reconstruction naturally relies on the discriminability of the input features and is usually vulnerable to disturbance in the features. In this paper, we present a masked self-supervised learning framework GraphMAE2 with the goal of overcoming this issue. The idea is to impose regularization on feature reconstruction for graph SSL. Specifically, we design the strategies of multi-view random re-mask decoding and latent representation prediction to regularize the feature reconstruction. The multi-view random re-mask decoding is to introduce randomness into reconstruction in the feature space, while the latent representation prediction is to enforce the reconstruction in the embedding space. Extensive experiments show that GraphMAE2 can consistently generate top results on various public datasets, including at least 2.45% improvements over state-of-the-art baselines on ogbn-Papers100M with 111M nodes and 1.6B edges.","url_abs":"https://arxiv.org/abs/2304.04779v1","url_pdf":"https://arxiv.org/pdf/2304.04779v1.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":"graphmae2-a-decoding-enhanced-masked-self","repo_url":"https://github.com/thudm/graphmae","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"graphmae2-a-decoding-enhanced-masked-self","repo_url":"https://github.com/thudm/graphmae2","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"self-supervised-learning","task_name":"Self-Supervised Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2304.04779","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2304.04779"}},"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/thudm/graphmae2","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/thudm/graphmae","reach":{"status":"ok"}}],"summary":{"ran_draft_wrong":1,"ran":1,"ran_fixture":1,"unverified":7},"by_repo_kind":{"official":{"samples":10,"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":"adf3b9c6c22af5ce","entry":"accuracy","repo":"thudm/graphmae2","repo_kind":"official","path":"utils.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/utils.py","link_basis":"plan_row","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":"adf3b9c6c22af5ce"}},{"code_sha256_prefix":"87767eda0a0d0829","entry":"auc_pair_loss","repo":"thudm/graphmae2","repo_kind":"official","path":"models/loss_func.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/models/loss_func.py","link_basis":"plan_row","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":"87767eda0a0d0829"}},{"code_sha256_prefix":"915b71e73a54fc97","entry":"trunc_normal_","repo":"thudm/graphmae2","repo_kind":"official","path":"models/loss_func.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/models/loss_func.py","link_basis":"plan_row","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":"915b71e73a54fc97"}},{"code_sha256_prefix":"cfc02746de2038a9","entry":"calc_local_clustering","repo":"thudm/graphmae2","repo_kind":"official","path":"datasets/localclustering.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/datasets/localclustering.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":"cfc02746de2038a9"}},{"code_sha256_prefix":"de1094fa7090d5c5","entry":"create_activation","repo":"thudm/graphmae2","repo_kind":"official","path":"utils.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/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":"de1094fa7090d5c5"}},{"code_sha256_prefix":"c9c9174dc014b586","entry":"get_current_lr","repo":"thudm/graphmae2","repo_kind":"official","path":"utils.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/utils.py","link_basis":"plan_row","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":"c9c9174dc014b586"}},{"code_sha256_prefix":"ee059dcaf57afa9b","entry":"my_sweep_cut","repo":"thudm/graphmae2","repo_kind":"official","path":"datasets/localclustering.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/datasets/localclustering.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":"ee059dcaf57afa9b"}},{"code_sha256_prefix":"59c343e0da75c6fe","entry":"scale_feats","repo":"thudm/graphmae2","repo_kind":"official","path":"datasets/data_proc.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/datasets/data_proc.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":"59c343e0da75c6fe"}},{"code_sha256_prefix":"6f9bb5eb98ec4887","entry":"sce_loss","repo":"thudm/graphmae2","repo_kind":"official","path":"models/loss_func.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/models/loss_func.py","link_basis":"plan_row","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":"6f9bb5eb98ec4887"}},{"code_sha256_prefix":"35589fecfce05259","entry":"setup_module","repo":"thudm/graphmae2","repo_kind":"official","path":"models/edcoder.py","file_url":"https://github.com/thudm/graphmae2/blob/HEAD/models/edcoder.py","link_basis":"plan_row","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":"35589fecfce05259"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}