SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2404.15806 · IJCAI · 2024

Where to Mask: Structure-Guided Masking for Graph Masked Autoencoders

Jia Wu, Yibing Zhan, Xueqi Ma, Chuang Liu, Dapeng Tao, Wenbin Hu, Yuyao Wang

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 12 functions out of this paper's own repositories and ran 6 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
LiuChuang0059/StructMAE canonical 6 of 12
FunctionStatusWhere it lives
compute_accuracy Ran LiuChuang0059/StructMAE/StructMAE-L/chem/pretraining.py
pointer only (licence: NONE) · get_code("1d31c46fec1fe3d1")
create_activation Ran LiuChuang0059/StructMAE/StructMAE-L/chem/graphmae_utils.py
pointer only (licence: NONE) · get_code("9d7dd278d1589149")
evaluate_graph_embeddings_using_svm Ran LiuChuang0059/StructMAE/StructMAE-L/main_graph.py
pointer only (licence: NONE) · get_code("0fa9e6c975030f82")
getPagerank Ran LiuChuang0059/StructMAE/StructMAE-P/main_graph.py
pointer only (licence: NONE) · get_code("72802feedc425ec2")
graph_data_obj_to_nx_simple Ran LiuChuang0059/StructMAE/StructMAE-L/chem/loader.py
pointer only (licence: NONE) · get_code("287484b87212f47d")
sce_loss Ran LiuChuang0059/StructMAE/StructMAE-L/chem/pretraining.py
pointer only (licence: NONE) · get_code("80efc9c262d235a6")
create_norm Not yet run LiuChuang0059/StructMAE/StructMAE-L/chem/graphmae_utils.py
pointer only (licence: NONE) · get_code("90fff8ecfb1094f2")
eval Not yet run LiuChuang0059/StructMAE/StructMAE-L/chem/finetune.py
pointer only (licence: NONE) · get_code("ca7eaba82ff7ba27")
evaluate_graph_embeddings_using_svm Not yet run LiuChuang0059/StructMAE/StructMAE-P/main_graph.py
pointer only (licence: NONE) · get_code("c7af8d881e2c711f")
get_test_acc Not yet run LiuChuang0059/StructMAE/StructMAE-L/chem/parse_result.py
pointer only (licence: NONE) · get_code("7a2bb855a3e02bfe")
graph_classification_evaluation Not yet run LiuChuang0059/StructMAE/StructMAE-L/main_graph.py
pointer only (licence: NONE) · get_code("4b1679ebff258c6e")
graph_classification_evaluation Not yet run LiuChuang0059/StructMAE/StructMAE-P/main_graph.py
pointer only (licence: NONE) · get_code("d2f26e4b3715247f")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Graph masked autoencoders (GMAE) have emerged as a significant advancement in selfsupervised pre-training for graph-structured data. Previous GMAE models primarily utilize a straightforward random masking strategy for nodes or edges during training. However, this strategy fails to consider the varying significance of different nodes within the graph structure. In this paper, we investigate the potential of leveraging the graph's structural composition as a fundamental and unique prior in the masked pre-training process. To this end, we introduce a novel structure-guided masking strategy (i.e., StructMAE), designed to refine the existing GMAE models. StructMAE involves two steps: 1) Structure-based Scoring: Each node is evaluated and assigned a score reflecting its structural significance. Two distinct types of scoring manners are proposed: predefined and learnable scoring. 2) Structure-guided Masking: With the obtained assessment scores, we develop an easyto-hard masking strategy that gradually increases the structural awareness of the self-supervised reconstruction task. Specifically, the strategy begins with random masking and progresses to masking structure-informative nodes based on the assessment scores. This design gradually and effectively guides the model in learning graph structural information. Furthermore, extensive experiments consistently demonstrate that our Struct-MAE method outperforms existing state-of-the-art GMAE models in both unsupervised and transfer learning tasks. Codes are available at https: //github.com/LiuChuang0059/StructMAE.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2404.15806")
get_code_for_paper("2404.15806")
have("2404.15806")

Connect an agent — have() is free.