{"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/arxiv-2602-00596","title":"Kernelized Edge Attention: Addressing Semantic Attention Blurring in Temporal Graph Neural Networks","arxiv_id":"2602.00596","date":"2026-01-31","proceeding":null,"authors":["Govind Waghmare","Srini Rohan Gujulla Leel","Nikhil Tumbde","Sumedh B G","Sonia Gupta","Srikanta Bedathur"],"abstract":"Temporal Graph Neural Networks (TGNNs) aim to capture the evolving structure and timing of interactions in dynamic graphs. Although many models incorporate time through encodings or architectural design, they often compute attention over entangled node and edge representations, failing to reflect their distinct temporal behaviors. Node embeddings evolve slowly as they aggregate long-term structural context, while edge features reflect transient, timestamped interactions (e.g. messages, trades, or transactions). This mismatch results in semantic attention blurring, where attention weights cannot distinguish between slowly drifting node states and rapidly changing, information-rich edge interactions. As a result, models struggle to capture fine-grained temporal dependencies and provide limited transparency into how temporal relevance is computed. This paper introduces KEAT (Kernelized Edge Attention for Temporal Graphs), a novel attention formulation that modulates edge features using a family of continuous-time kernels, including Laplacian, RBF, and learnable MLP variant. KEAT preserves the distinct roles of nodes and edges, and integrates seamlessly with both Transformer-style (e.g., DyGFormer) and message-passing (e.g., TGN) architectures. It achieves up to 18% MRR improvement over the recent DyGFormer and 7% over TGN on link prediction tasks, enabling more accurate, interpretable and temporally aware message passing in TGNNs.","url_abs":"https://arxiv.org/abs/2602.00596","url_pdf":"https://arxiv.org/pdf/2602.00596","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2602.00596","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2602.00596"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/yule-BUAA/DyGLib","reach":{"status":"ok","spdx":"MIT"}},{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/shenyangHuang/TGB","reach":{"status":"ok","spdx":"MIT"}},{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/pyg-team/pytorch","reach":{"status":"gone","observed_at":"2026-09-16","how":"tree_404+repo_404"}},{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/storyandwine/GEARSage-DGraphFin","reach":null}],"summary":{"ran":7,"unverified":14},"by_repo_kind":{"found_in_text":{"samples":21,"ran":7,"repositories":3}},"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":9,"samples":[{"code_sha256_prefix":"3a203beb102a8b30","entry":"EdgePredictor_per_node","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.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":"3a203beb102a8b30"}},{"code_sha256_prefix":"39c0adbee26233ea","entry":"FeatEncode","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"39c0adbee26233ea"}},{"code_sha256_prefix":"f512e4efa2c5957a","entry":"FeedForward","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f512e4efa2c5957a"}},{"code_sha256_prefix":"415730aff961e7cd","entry":"PositionalEncoding1D","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"415730aff961e7cd"}},{"code_sha256_prefix":"4976a15c63f01726","entry":"Summer","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4976a15c63f01726"}},{"code_sha256_prefix":"ddd8a5727b202d18","entry":"TimeEncode","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ddd8a5727b202d18"}},{"code_sha256_prefix":"3817d890b2e0ce53","entry":"_MultiheadAttention","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3817d890b2e0ce53"}},{"code_sha256_prefix":"d6264ffe9f545d50","entry":"MultiHeadAttention","repo":"yule-BUAA/DyGLib","repo_kind":"found_in_text","path":"models/modules.py","file_url":"https://github.com/yule-BUAA/DyGLib/blob/HEAD/models/modules.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":"d6264ffe9f545d50"}},{"code_sha256_prefix":"850d001f29ffa49f","entry":"Patch_Encoding","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.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":"850d001f29ffa49f"}},{"code_sha256_prefix":"64f196855787fc5c","entry":"STHN_Interface","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.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":"64f196855787fc5c"}},{"code_sha256_prefix":"c0c8de46adf7473e","entry":"TransformerBlock","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.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":"c0c8de46adf7473e"}},{"code_sha256_prefix":"d253e560e9ac34a1","entry":"_ScaledDotProductAttention","repo":"shenyangHuang/TGB","repo_kind":"found_in_text","path":"modules/sthn.py","file_url":"https://github.com/shenyangHuang/TGB/blob/HEAD/modules/sthn.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":"d253e560e9ac34a1"}},{"code_sha256_prefix":"0f8414b56c3a3051","entry":"add_degree_feature","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"feat_func.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/feat_func.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0f8414b56c3a3051"}},{"code_sha256_prefix":"357d9970dfef8177","entry":"add_feature_flag","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"feat_func.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/feat_func.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"357d9970dfef8177"}},{"code_sha256_prefix":"259ffd86dd711857","entry":"add_label_feature","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"feat_func.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/feat_func.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"259ffd86dd711857"}},{"code_sha256_prefix":"743cb7598629fe21","entry":"creat_activation_layer","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"models/model.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/models/model.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"743cb7598629fe21"}},{"code_sha256_prefix":"5445a93ec745cd56","entry":"degree_feat","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"utils/dgraphfin.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/utils/dgraphfin.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5445a93ec745cd56"}},{"code_sha256_prefix":"b270f7d1c1270190","entry":"edge_timestamp_feat","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"utils/dgraphfin.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/utils/dgraphfin.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b270f7d1c1270190"}},{"code_sha256_prefix":"40804320d6cd06ef","entry":"edge_type_feat","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"utils/dgraphfin.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/utils/dgraphfin.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"40804320d6cd06ef"}},{"code_sha256_prefix":"df243d1bf9d82190","entry":"prepare_folder","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"utils/utils.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/utils/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"df243d1bf9d82190"}},{"code_sha256_prefix":"429b326513a25e02","entry":"prepare_tune_folder","repo":"storyandwine/GEARSage-DGraphFin","repo_kind":"found_in_text","path":"utils/utils.py","file_url":"https://github.com/storyandwine/GEARSage-DGraphFin/blob/HEAD/utils/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"429b326513a25e02"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.LG","source":"arxiv_2026.jsonl"},"syntology_extracted_results":null}