{"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/structure-aware-semantic-node-identifiers-for","title":"Node Identifiers: Compact, Discrete Representations for Efficient Graph Learning","arxiv_id":"2405.16435","date":"2024-05-26","proceeding":null,"authors":["Yuankai Luo","Hongkang Li","Qijiong Liu","Lei Shi","Xiao-Ming Wu"],"abstract":"We present a novel end-to-end framework that generates highly compact (typically 6-15 dimensions), discrete (int4 type), and interpretable node representations, termed node identifiers (node IDs), to tackle inference challenges on large-scale graphs. By employing vector quantization, we compress continuous node embeddings from multiple layers of a Graph Neural Network (GNN) into discrete codes, applicable under both self-supervised and supervised learning paradigms. These node IDs capture high-level abstractions of graph data and offer interpretability that traditional GNN embeddings lack. Extensive experiments on 34 datasets, encompassing node classification, graph classification, link prediction, and attributed graph clustering tasks, demonstrate that the generated node IDs significantly enhance speed and memory efficiency while achieving competitive performance compared to current state-of-the-art methods.","url_abs":"https://arxiv.org/abs/2405.16435v2","url_pdf":"https://arxiv.org/pdf/2405.16435v2.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":"structure-aware-semantic-node-identifiers-for","repo_url":"https://github.com/LUOyk1999/NodeID","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"computational-efficiency","task_name":"Computational Efficiency"},{"task_slug":"graph-classification","task_name":"Graph Classification"},{"task_slug":"graph-clustering","task_name":"Graph Clustering"},{"task_slug":"graph-learning","task_name":"Graph Learning"},{"task_slug":"graph-neural-network","task_name":"Graph Neural Network"},{"task_slug":"link-prediction","task_name":"Link Prediction"},{"task_slug":"node-classification","task_name":"Node Classification"},{"task_slug":"quantization","task_name":"Quantization"}],"methods":[{"method_slug":"graph-neural-network","method_name":"Graph Neural Network"},{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/node-classification-on-questions","task":"Node Classification","dataset":"questions","model":"NID","rank_in_archive_order":1,"of":3,"metrics":{"AUCROC":"97.03 ± 0.02"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2405.16435","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2405.16435"}},"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/LUOyk1999/NodeID","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":7,"ran_violates":2,"ran_draft_wrong":1,"unverified":3},"by_repo_kind":{"official":{"samples":13,"ran":10,"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":"135fdcc9a2764c3c","entry":"compute_loss","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/ID_MLP_f.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/ID_MLP_f.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"135fdcc9a2764c3c"}},{"code_sha256_prefix":"60fff7c3c400d7ff","entry":"default","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Link_Prediction/vq.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Link_Prediction/vq.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"60fff7c3c400d7ff"}},{"code_sha256_prefix":"cca15e2cb74d7749","entry":"eval_spearmanr","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/ID_MLP_s.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/ID_MLP_s.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cca15e2cb74d7749"}},{"code_sha256_prefix":"aa5486a3650902d8","entry":"exists","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Link_Prediction/vq.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Link_Prediction/vq.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"aa5486a3650902d8"}},{"code_sha256_prefix":"1bb331bf70a78136","entry":"get_final_pretrained_ckpt","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/graphgps/finetuning.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/graphgps/finetuning.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1bb331bf70a78136"}},{"code_sha256_prefix":"10e5b33e372f7d10","entry":"index2mask","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/ID_MLP_f.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/ID_MLP_f.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"10e5b33e372f7d10"}},{"code_sha256_prefix":"834eb82b9c7d878b","entry":"l1_losses","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/ID_MLP_s.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/ID_MLP_s.py","link_basis":"first_harvest_node","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":"834eb82b9c7d878b"}},{"code_sha256_prefix":"eca6cdf05972a95e","entry":"l2norm","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Link_Prediction/vq.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Link_Prediction/vq.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"eca6cdf05972a95e"}},{"code_sha256_prefix":"372636b338d97593","entry":"load_out_t","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Link_Prediction/ID_MLP.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Link_Prediction/ID_MLP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"372636b338d97593"}},{"code_sha256_prefix":"7889dfc69061e8f0","entry":"randomsplit","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Link_Prediction/ogbdataset.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Link_Prediction/ogbdataset.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"7889dfc69061e8f0"}},{"code_sha256_prefix":"3db4474abe13fdee","entry":"init_model_from_pretrained","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/graphgps/finetuning.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/graphgps/finetuning.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":true,"mcp_get_code":{"code_sha256":"3db4474abe13fdee"}},{"code_sha256_prefix":"d796cdea5889c847","entry":"load_pretrained_model_cfg","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/graphgps/finetuning.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/graphgps/finetuning.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":true,"mcp_get_code":{"code_sha256":"d796cdea5889c847"}},{"code_sha256_prefix":"81102467886bdbff","entry":"regression","repo":"LUOyk1999/NodeID","repo_kind":"official","path":"SL/Graph_Classification/ID_MLP_s.py","file_url":"https://github.com/LUOyk1999/NodeID/blob/HEAD/SL/Graph_Classification/ID_MLP_s.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":"81102467886bdbff"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}