{"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/generalization-error-matters-in-decentralized","title":"Generalization Error Matters in Decentralized Learning Under Byzantine Attacks","arxiv_id":"2407.08632","date":"2024-07-11","proceeding":null,"authors":["Haoxiang Ye","Qing Ling"],"abstract":"Recently, decentralized learning has emerged as a popular peer-to-peer signal and information processing paradigm that enables model training across geographically distributed agents in a scalable manner, without the presence of any central server. When some of the agents are malicious (also termed as Byzantine), resilient decentralized learning algorithms are able to limit the impact of these Byzantine agents without knowing their number and identities, and have guaranteed optimization errors. However, analysis of the generalization errors, which are critical to implementations of the trained models, is still lacking. In this paper, we provide the first analysis of the generalization errors for a class of popular Byzantine-resilient decentralized stochastic gradient descent (DSGD) algorithms. Our theoretical results reveal that the generalization errors cannot be entirely eliminated because of the presence of the Byzantine agents, even if the number of training samples are infinitely large. Numerical experiments are conducted to confirm our theoretical results.","url_abs":"https://arxiv.org/abs/2407.08632v1","url_pdf":"https://arxiv.org/pdf/2407.08632v1.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":"generalization-error-matters-in-decentralized","repo_url":"https://github.com/haoxiangye/BRDSGD-GE","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2407.08632","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2407.08632"}},"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/haoxiangye/BRDSGD-GE","reach":{"status":"ok"}}],"summary":{"ran":4,"unverified":4},"by_repo_kind":{"official":{"samples":8,"ran":4,"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":8,"samples":[{"code_sha256_prefix":"6136db8180068609","entry":"is_valid","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/graph.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/graph.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6136db8180068609"}},{"code_sha256_prefix":"6be4b8f79eef66af","entry":"isfile_in_cache","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/library/cache_io.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/library/cache_io.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6be4b8f79eef66af"}},{"code_sha256_prefix":"762cef3bdb305734","entry":"random_rng","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/library/RandomNumberGenerator.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/library/RandomNumberGenerator.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"762cef3bdb305734"}},{"code_sha256_prefix":"6ce16e914c2d762b","entry":"torch_rng","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/library/RandomNumberGenerator.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/library/RandomNumberGenerator.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6ce16e914c2d762b"}},{"code_sha256_prefix":"bac684c2afb63146","entry":"geometric_median","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/aggregation.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/aggregation.py","link_basis":"harvester_set","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":"bac684c2afb63146"}},{"code_sha256_prefix":"263d0b70167a53dc","entry":"get_cache_path","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/library/cache_io.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/library/cache_io.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":"263d0b70167a53dc"}},{"code_sha256_prefix":"8ac1950688ad99ff","entry":"load_file_in_cache","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/library/cache_io.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/library/cache_io.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":"8ac1950688ad99ff"}},{"code_sha256_prefix":"e8cd9a6e01e497b4","entry":"mean","repo":"haoxiangye/BRDSGD-GE","repo_kind":"official","path":"BRDSGD-GE/ByrdLab/aggregation.py","file_url":"https://github.com/haoxiangye/BRDSGD-GE/blob/HEAD/BRDSGD-GE/ByrdLab/aggregation.py","link_basis":"harvester_set","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":"e8cd9a6e01e497b4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}