{"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/csgcl-community-strength-enhanced-graph","title":"CSGCL: Community-Strength-Enhanced Graph Contrastive Learning","arxiv_id":"2305.04658","date":"2023-05-08","proceeding":null,"authors":["Han Chen","Ziwen Zhao","Yuhua Li","Yixiong Zou","Ruixuan Li","Rui Zhang"],"abstract":"Graph Contrastive Learning (GCL) is an effective way to learn generalized graph representations in a self-supervised manner, and has grown rapidly in recent years. However, the underlying community semantics has not been well explored by most previous GCL methods. Research that attempts to leverage communities in GCL regards them as having the same influence on the graph, leading to extra representation errors. To tackle this issue, we define ''community strength'' to measure the difference of influence among communities. Under this premise, we propose a Community-Strength-enhanced Graph Contrastive Learning (CSGCL) framework to preserve community strength throughout the learning process. Firstly, we present two novel graph augmentation methods, Communal Attribute Voting (CAV) and Communal Edge Dropping (CED), where the perturbations of node attributes and edges are guided by community strength. Secondly, we propose a dynamic ''Team-up'' contrastive learning scheme, where community strength is used to progressively fine-tune the contrastive objective. We report extensive experiment results on three downstream tasks: node classification, node clustering, and link prediction. CSGCL achieves state-of-the-art performance compared with other GCL methods, validating that community strength brings effectiveness and generality to graph representations. Our code is available at https://github.com/HanChen-HUST/CSGCL.","url_abs":"https://arxiv.org/abs/2305.04658v1","url_pdf":"https://arxiv.org/pdf/2305.04658v1.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":"csgcl-community-strength-enhanced-graph","repo_url":"https://github.com/hanchen-hust/csgcl","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"attribute","task_name":"Attribute"},{"task_slug":"contrastive-learning","task_name":"Contrastive Learning"},{"task_slug":"link-prediction","task_name":"Link Prediction"},{"task_slug":"node-classification","task_name":"Node Classification"},{"task_slug":"node-clustering","task_name":"Node Clustering"}],"methods":[{"method_slug":"contrastive-learning","method_name":"Contrastive Learning"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2305.04658","atlas_url":"https://app.syntology.ai/?focus=2305.04658","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2305.04658"}},"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/hanchen-hust/csgcl","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":9},"by_repo_kind":{"official":{"samples":9,"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":"18d0d06fa76d3e99","entry":"cav_dense","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/functional.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/functional.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":"18d0d06fa76d3e99"}},{"code_sha256_prefix":"41443fb78cbc65cb","entry":"ced","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/functional.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/functional.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":"41443fb78cbc65cb"}},{"code_sha256_prefix":"b41011cae64fab39","entry":"generate_split","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/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":"b41011cae64fab39"}},{"code_sha256_prefix":"97a44d8325a2f6c3","entry":"get_activation","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/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":"97a44d8325a2f6c3"}},{"code_sha256_prefix":"4bcc3cd0abc7030a","entry":"get_base_model","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/utils.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/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":"4bcc3cd0abc7030a"}},{"code_sha256_prefix":"07b7797f4172c759","entry":"get_dataset","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/dataset.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/dataset.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":"07b7797f4172c759"}},{"code_sha256_prefix":"302c6c94764d906c","entry":"parse_json","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/sp.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/sp.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":"302c6c94764d906c"}},{"code_sha256_prefix":"b328763e19736d1f","entry":"parse_yaml","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/sp.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/sp.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":"b328763e19736d1f"}},{"code_sha256_prefix":"21aec3c8a429525b","entry":"preprocess_nni","repo":"hanchen-hust/csgcl","repo_kind":"official","path":"src/sp.py","file_url":"https://github.com/hanchen-hust/csgcl/blob/HEAD/src/sp.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":"21aec3c8a429525b"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}