{"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/a-gromov-wasserstein-geometric-view-of","title":"A Gromov--Wasserstein Geometric View of Spectrum-Preserving Graph Coarsening","arxiv_id":"2306.08854","date":"2023-06-15","proceeding":null,"authors":["Yifan Chen","Rentian Yao","Yun Yang","Jie Chen"],"abstract":"Graph coarsening is a technique for solving large-scale graph problems by working on a smaller version of the original graph, and possibly interpolating the results back to the original graph. It has a long history in scientific computing and has recently gained popularity in machine learning, particularly in methods that preserve the graph spectrum. This work studies graph coarsening from a different perspective, developing a theory for preserving graph distances and proposing a method to achieve this. The geometric approach is useful when working with a collection of graphs, such as in graph classification and regression. In this study, we consider a graph as an element on a metric space equipped with the Gromov--Wasserstein (GW) distance, and bound the difference between the distance of two graphs and their coarsened versions. Minimizing this difference can be done using the popular weighted kernel $K$-means method, which improves existing spectrum-preserving methods with the proper choice of the kernel. The study includes a set of experiments to support the theory and method, including approximating the GW distance, preserving the graph spectrum, classifying graphs using spectral information, and performing regression using graph convolutional networks. Code is available at https://github.com/ychen-stat-ml/GW-Graph-Coarsening .","url_abs":"https://arxiv.org/abs/2306.08854v1","url_pdf":"https://arxiv.org/pdf/2306.08854v1.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":"a-gromov-wasserstein-geometric-view-of","repo_url":"https://github.com/ychen-stat-ml/gw-graph-coarsening","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"graph-classification","task_name":"Graph Classification"},{"task_slug":"regression-1","task_name":"regression"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2306.08854","atlas_url":"https://app.syntology.ai/?focus=2306.08854","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2306.08854"}},"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/ychen-stat-ml/gw-graph-coarsening","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":6},"by_repo_kind":{"official":{"samples":6,"ran":0,"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":"d0576dee6519c1db","entry":"coarsen_vector","repo":"ychen-stat-ml/gw-graph-coarsening","repo_kind":"official","path":"graph_coarsening/coarsening_utils.py","file_url":"https://github.com/ychen-stat-ml/gw-graph-coarsening/blob/HEAD/graph_coarsening/coarsening_utils.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":"d0576dee6519c1db"}},{"code_sha256_prefix":"3be203f7b4c1f984","entry":"get_S","repo":"ychen-stat-ml/gw-graph-coarsening","repo_kind":"official","path":"graph_coarsening/graph_utils.py","file_url":"https://github.com/ychen-stat-ml/gw-graph-coarsening/blob/HEAD/graph_coarsening/graph_utils.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":"3be203f7b4c1f984"}},{"code_sha256_prefix":"5f9905758c8b3c7e","entry":"get_neighbors","repo":"ychen-stat-ml/gw-graph-coarsening","repo_kind":"official","path":"graph_coarsening/graph_utils.py","file_url":"https://github.com/ychen-stat-ml/gw-graph-coarsening/blob/HEAD/graph_coarsening/graph_utils.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":"5f9905758c8b3c7e"}},{"code_sha256_prefix":"05cffcb8e9dc1e11","entry":"lift_vector","repo":"ychen-stat-ml/gw-graph-coarsening","repo_kind":"official","path":"graph_coarsening/coarsening_utils.py","file_url":"https://github.com/ychen-stat-ml/gw-graph-coarsening/blob/HEAD/graph_coarsening/coarsening_utils.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":"05cffcb8e9dc1e11"}},{"code_sha256_prefix":"b4f9785d90c70cbe","entry":"maxWeightMatching","repo":"ychen-stat-ml/gw-graph-coarsening","repo_kind":"official","path":"graph_coarsening/maxWeightMatching.py","file_url":"https://github.com/ychen-stat-ml/gw-graph-coarsening/blob/HEAD/graph_coarsening/maxWeightMatching.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":"b4f9785d90c70cbe"}},{"code_sha256_prefix":"dbba509e5ffbbcc0","entry":"regular_partition","repo":"ychen-stat-ml/gw-graph-coarsening","repo_kind":"official","path":"coarsening.py","file_url":"https://github.com/ychen-stat-ml/gw-graph-coarsening/blob/HEAD/coarsening.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":"dbba509e5ffbbcc0"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}