{"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/explicit-personalization-and-local-training","title":"Explicit Personalization and Local Training: Double Communication Acceleration in Federated Learning","arxiv_id":"2305.13170","date":"2023-05-22","proceeding":null,"authors":["Kai Yi","Laurent Condat","Peter Richtárik"],"abstract":"Federated Learning is an evolving machine learning paradigm, in which multiple clients perform computations based on their individual private data, interspersed by communication with a remote server. A common strategy to curtail communication costs is Local Training, which consists in performing multiple local stochastic gradient descent steps between successive communication rounds. However, the conventional approach to local training overlooks the practical necessity for client-specific personalization, a technique to tailor local models to individual needs. We introduce Scafflix, a novel algorithm that efficiently integrates explicit personalization with local training. This innovative approach benefits from these two techniques, thereby achieving doubly accelerated communication, as we demonstrate both in theory and practice.","url_abs":"https://arxiv.org/abs/2305.13170v1","url_pdf":"https://arxiv.org/pdf/2305.13170v1.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":"explicit-personalization-and-local-training","repo_url":"https://github.com/williamyi96/scafflix","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"federated-learning","task_name":"Federated Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2305.13170","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2305.13170"}},"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/williamyi96/scafflix","reach":{"status":"ok","spdx":"Apache-2.0"}}],"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":"91e0d06caa0e5e6b","entry":"create_run","repo":"williamyi96/scafflix","repo_kind":"official","path":"logistic_reg/utils.py","file_url":"https://github.com/williamyi96/scafflix/blob/HEAD/logistic_reg/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"91e0d06caa0e5e6b"}},{"code_sha256_prefix":"381532841c735c0e","entry":"get_alg","repo":"williamyi96/scafflix","repo_kind":"official","path":"logistic_reg/utils.py","file_url":"https://github.com/williamyi96/scafflix/blob/HEAD/logistic_reg/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"381532841c735c0e"}},{"code_sha256_prefix":"3cb8faea54e9c4f6","entry":"load_data","repo":"williamyi96/scafflix","repo_kind":"official","path":"logistic_reg/prep_data.py","file_url":"https://github.com/williamyi96/scafflix/blob/HEAD/logistic_reg/prep_data.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3cb8faea54e9c4f6"}},{"code_sha256_prefix":"4bc5da58d56d536a","entry":"load_data_npy","repo":"williamyi96/scafflix","repo_kind":"official","path":"logistic_reg/prep_data.py","file_url":"https://github.com/williamyi96/scafflix/blob/HEAD/logistic_reg/prep_data.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"4bc5da58d56d536a"}},{"code_sha256_prefix":"aae3df43326d47ed","entry":"number_of_features","repo":"williamyi96/scafflix","repo_kind":"official","path":"logistic_reg/prep_data.py","file_url":"https://github.com/williamyi96/scafflix/blob/HEAD/logistic_reg/prep_data.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"aae3df43326d47ed"}},{"code_sha256_prefix":"eb61891026ea3b32","entry":"read_run","repo":"williamyi96/scafflix","repo_kind":"official","path":"logistic_reg/utils.py","file_url":"https://github.com/williamyi96/scafflix/blob/HEAD/logistic_reg/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"eb61891026ea3b32"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}