{"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/federated-learning-on-non-iid-graphs-via","title":"Federated Learning on Non-IID Graphs via Structural Knowledge Sharing","arxiv_id":"2211.13009","date":"2022-11-23","proceeding":null,"authors":["Yue Tan","Yixin Liu","Guodong Long","Jing Jiang","Qinghua Lu","Chengqi Zhang"],"abstract":"Graph neural networks (GNNs) have shown their superiority in modeling graph data. Owing to the advantages of federated learning, federated graph learning (FGL) enables clients to train strong GNN models in a distributed manner without sharing their private data. A core challenge in federated systems is the non-IID problem, which also widely exists in real-world graph data. For example, local data of clients may come from diverse datasets or even domains, e.g., social networks and molecules, increasing the difficulty for FGL methods to capture commonly shared knowledge and learn a generalized encoder. From real-world graph datasets, we observe that some structural properties are shared by various domains, presenting great potential for sharing structural knowledge in FGL. Inspired by this, we propose FedStar, an FGL framework that extracts and shares the common underlying structure information for inter-graph federated learning tasks. To explicitly extract the structure information rather than encoding them along with the node features, we define structure embeddings and encode them with an independent structure encoder. Then, the structure encoder is shared across clients while the feature-based knowledge is learned in a personalized way, making FedStar capable of capturing more structure-based domain-invariant information and avoiding feature misalignment issues. We perform extensive experiments over both cross-dataset and cross-domain non-IID FGL settings, demonstrating the superiority of FedStar.","url_abs":"https://arxiv.org/abs/2211.13009v1","url_pdf":"https://arxiv.org/pdf/2211.13009v1.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":"federated-learning-on-non-iid-graphs-via","repo_url":"https://github.com/yuetan031/fedstar","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"federated-learning","task_name":"Federated Learning"},{"task_slug":"graph-learning","task_name":"Graph Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2211.13009","atlas_url":"https://app.syntology.ai/?focus=2211.13009","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2211.13009"}},"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/yuetan031/fedstar","reach":null}],"summary":{"ran_honours":4,"ran_draft_wrong":1},"by_repo_kind":{"official":{"samples":5,"ran":5,"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":5,"samples":[{"code_sha256_prefix":"607a70542f272d99","entry":"calc_gradsNorm","repo":"yuetan031/fedstar","repo_kind":"official","path":"lib/client.py","file_url":"https://github.com/yuetan031/fedstar/blob/HEAD/lib/client.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"607a70542f272d99"}},{"code_sha256_prefix":"53cf41bd16589e0a","entry":"flatten","repo":"yuetan031/fedstar","repo_kind":"official","path":"lib/client.py","file_url":"https://github.com/yuetan031/fedstar/blob/HEAD/lib/client.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"53cf41bd16589e0a"}},{"code_sha256_prefix":"3df6bc19fffe52a2","entry":"flatten","repo":"yuetan031/fedstar","repo_kind":"official","path":"lib/server.py","file_url":"https://github.com/yuetan031/fedstar/blob/HEAD/lib/server.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3df6bc19fffe52a2"}},{"code_sha256_prefix":"fb944c3172a2e254","entry":"pairwise_angles","repo":"yuetan031/fedstar","repo_kind":"official","path":"lib/server.py","file_url":"https://github.com/yuetan031/fedstar/blob/HEAD/lib/server.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"fb944c3172a2e254"}},{"code_sha256_prefix":"01ded0779b876a2f","entry":"train_gc","repo":"yuetan031/fedstar","repo_kind":"official","path":"lib/client.py","file_url":"https://github.com/yuetan031/fedstar/blob/HEAD/lib/client.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"01ded0779b876a2f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}