{"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/diss-l-ect-dissecting-graph-data-with-local","title":"Diss-l-ECT: Dissecting Graph Data with Local Euler Characteristic Transforms","arxiv_id":"2410.02622","date":"2024-10-03","proceeding":null,"authors":["Julius von Rohrscheidt","Bastian Rieck"],"abstract":"The Euler Characteristic Transform (ECT) is an efficiently-computable geometrical-topological invariant that characterizes the global shape of data. In this paper, we introduce the Local Euler Characteristic Transform ($\\ell$-ECT), a novel extension of the ECT particularly designed to enhance expressivity and interpretability in graph representation learning. Unlike traditional Graph Neural Networks (GNNs), which may lose critical local details through aggregation, the $\\ell$-ECT provides a lossless representation of local neighborhoods. This approach addresses key limitations in GNNs by preserving nuanced local structures while maintaining global interpretability. Moreover, we construct a rotation-invariant metric based on $\\ell$-ECTs for spatial alignment of data spaces. Our method exhibits superior performance compared to standard GNNs on a variety of node-classification tasks, while also offering theoretical guarantees that demonstrate its effectiveness.","url_abs":"https://arxiv.org/abs/2410.02622v2","url_pdf":"https://arxiv.org/pdf/2410.02622v2.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":"diss-l-ect-dissecting-graph-data-with-local","repo_url":"https://github.com/aidos-lab/Diss-l-ECT","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"paper_slug":"diss-l-ect-dissecting-graph-data-with-local","repo_url":"https://github.com/aidos-lab/ECT","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[{"task_slug":"graph-representation-learning","task_name":"Graph Representation Learning"},{"task_slug":"node-classification","task_name":"Node Classification"},{"task_slug":"representation-learning","task_name":"Representation Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2410.02622","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2410.02622"}},"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/aidos-lab/ECT","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/aidos-lab/Diss-l-ECT","reach":{"status":"ok","spdx":"BSD-3-Clause"}}],"summary":{"ran":1,"unverified":9},"by_repo_kind":{"official":{"samples":10,"ran":1,"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":"8fe951753baecff8","entry":"run_xgb_model_n_times","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"run_experiments.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/run_experiments.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"8fe951753baecff8"}},{"code_sha256_prefix":"440b2d24fe3664cd","entry":"compute_ecc","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/ect.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/ect.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"440b2d24fe3664cd"}},{"code_sha256_prefix":"bae9959643560c32","entry":"compute_ecc","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/ect_bu.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/ect_bu.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"bae9959643560c32"}},{"code_sha256_prefix":"e2771bf68f1ae526","entry":"compute_ecc_derivative","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/ect.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/ect.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"e2771bf68f1ae526"}},{"code_sha256_prefix":"f6cb3fbe8f75aa28","entry":"compute_ect_points","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/ect_bu.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/ect_bu.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"f6cb3fbe8f75aa28"}},{"code_sha256_prefix":"76ea006b2d660705","entry":"compute_ect_points_derivative","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/ect.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/ect.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"76ea006b2d660705"}},{"code_sha256_prefix":"c78b4478a09ef692","entry":"compute_wecc","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/ect_bu.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/ect_bu.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"c78b4478a09ef692"}},{"code_sha256_prefix":"92843114cce30793","entry":"compute_wecc","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/wect.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/wect.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"92843114cce30793"}},{"code_sha256_prefix":"eba2b34a99924f5d","entry":"compute_wect","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"layers/wect.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/layers/wect.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"eba2b34a99924f5d"}},{"code_sha256_prefix":"3250624aaa0451fb","entry":"run_xgb_model_once","repo":"aidos-lab/Diss-l-ECT","repo_kind":"official","path":"run_experiments.py","file_url":"https://github.com/aidos-lab/Diss-l-ECT/blob/HEAD/run_experiments.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"3250624aaa0451fb"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}