{"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/graph-self-attention-for-learning-graph","title":"GRPE: Relative Positional Encoding for Graph Transformer","arxiv_id":"2201.12787","date":"2022-01-30","proceeding":null,"authors":["Wonpyo Park","WoongGi Chang","Donggeon Lee","Juntae Kim","Seung-won Hwang"],"abstract":"We propose a novel positional encoding for learning graph on Transformer architecture. Existing approaches either linearize a graph to encode absolute position in the sequence of nodes, or encode relative position with another node using bias terms. The former loses preciseness of relative position from linearization, while the latter loses a tight integration of node-edge and node-topology interaction. To overcome the weakness of the previous approaches, our method encodes a graph without linearization and considers both node-topology and node-edge interaction. We name our method Graph Relative Positional Encoding dedicated to graph representation learning. Experiments conducted on various graph datasets show that the proposed method outperforms previous approaches significantly. Our code is publicly available at https://github.com/lenscloth/GRPE.","url_abs":"https://arxiv.org/abs/2201.12787v3","url_pdf":"https://arxiv.org/pdf/2201.12787v3.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":"graph-self-attention-for-learning-graph","repo_url":"https://github.com/lenscloth/grpe","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"graph-classification","task_name":"Graph Classification"},{"task_slug":"graph-regression","task_name":"Graph Regression"},{"task_slug":"graph-representation-learning","task_name":"Graph Representation Learning"},{"task_slug":"molecular-property-prediction","task_name":"Molecular Property Prediction"},{"task_slug":null,"task_name":"Position"},{"task_slug":"representation-learning","task_name":"Representation Learning"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"graph-self-attention","method_name":"Graph Self-Attention"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/graph-regression-on-pcqm4mv2-lsc","task":"Graph Regression","dataset":"PCQM4Mv2-LSC","model":"GRPE-Large","rank_in_archive_order":15,"of":20,"metrics":{"Test MAE":"0.0876","Validation MAE":"0.0867"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/2201.12787","atlas_url":"https://app.syntology.ai/?focus=2201.12787","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2201.12787"}},"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/lenscloth/grpe","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3,"unverified":3},"by_repo_kind":{"official":{"samples":6,"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":"9266294d3f2bade7","entry":"evaluate","repo":"lenscloth/grpe","repo_kind":"official","path":"zinc.py","file_url":"https://github.com/lenscloth/grpe/blob/HEAD/zinc.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":"9266294d3f2bade7"}},{"code_sha256_prefix":"13f0b879ee9b94c4","entry":"is_left_better","repo":"lenscloth/grpe","repo_kind":"official","path":"gpp.py","file_url":"https://github.com/lenscloth/grpe/blob/HEAD/gpp.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":"13f0b879ee9b94c4"}},{"code_sha256_prefix":"9ec5aa5e7b77d9b7","entry":"train","repo":"lenscloth/grpe","repo_kind":"official","path":"zinc.py","file_url":"https://github.com/lenscloth/grpe/blob/HEAD/zinc.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":"9ec5aa5e7b77d9b7"}},{"code_sha256_prefix":"9ff14674677c2429","entry":"gather_uneven_tensors","repo":"lenscloth/grpe","repo_kind":"official","path":"grpe/distributed.py","file_url":"https://github.com/lenscloth/grpe/blob/HEAD/grpe/distributed.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":"9ff14674677c2429"}},{"code_sha256_prefix":"4b3aa1f322c9bfcb","entry":"load_pretrained_fingerprint","repo":"lenscloth/grpe","repo_kind":"official","path":"grpe/pretrained.py","file_url":"https://github.com/lenscloth/grpe/blob/HEAD/grpe/pretrained.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":"4b3aa1f322c9bfcb"}},{"code_sha256_prefix":"79c9fa759ce09d31","entry":"train","repo":"lenscloth/grpe","repo_kind":"official","path":"gpp.py","file_url":"https://github.com/lenscloth/grpe/blob/HEAD/gpp.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":"79c9fa759ce09d31"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}