{"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/fadas-towards-federated-adaptive-asynchronous","title":"FADAS: Towards Federated Adaptive Asynchronous Optimization","arxiv_id":"2407.18365","date":"2024-07-25","proceeding":null,"authors":["Yujia Wang","Shiqiang Wang","Songtao Lu","Jinghui Chen"],"abstract":"Federated learning (FL) has emerged as a widely adopted training paradigm for privacy-preserving machine learning. While the SGD-based FL algorithms have demonstrated considerable success in the past, there is a growing trend towards adopting adaptive federated optimization methods, particularly for training large-scale models. However, the conventional synchronous aggregation design poses a significant challenge to the practical deployment of those adaptive federated optimization methods, particularly in the presence of straggler clients. To fill this research gap, this paper introduces federated adaptive asynchronous optimization, named FADAS, a novel method that incorporates asynchronous updates into adaptive federated optimization with provable guarantees. To further enhance the efficiency and resilience of our proposed method in scenarios with significant asynchronous delays, we also extend FADAS with a delay-adaptive learning adjustment strategy. We rigorously establish the convergence rate of the proposed algorithms and empirical results demonstrate the superior performance of FADAS over other asynchronous FL baselines.","url_abs":"https://arxiv.org/abs/2407.18365v1","url_pdf":"https://arxiv.org/pdf/2407.18365v1.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":"fadas-towards-federated-adaptive-asynchronous","repo_url":"https://github.com/yujiaw98/fadas","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"federated-learning","task_name":"Federated Learning"},{"task_slug":"privacy-preserving","task_name":"Privacy Preserving"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2407.18365","atlas_url":"https://app.syntology.ai/?focus=2407.18365","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2407.18365"}},"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":"deterministic:regex_extraction","url":"https://github.com/yujiaw98/FADAS","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/yujiaw98/fadas","reach":{"status":"ok"}}],"summary":{"ran":5,"ran_draft_wrong":1,"ran_fixture":3,"ran_honours":1,"unverified":2},"by_repo_kind":{"official":{"samples":12,"ran":10,"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":12,"samples":[{"code_sha256_prefix":"e8e764d2201f257f","entry":"ConvMixer","repo":"yujiaw98/FADAS","repo_kind":"official","path":"models/convmixer.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/models/convmixer.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":"e8e764d2201f257f"}},{"code_sha256_prefix":"0f23e7e681845fe0","entry":"ResNet18","repo":"yujiaw98/FADAS","repo_kind":"official","path":"models/resnet.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/models/resnet.py","link_basis":"harvester_set","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":"0f23e7e681845fe0"}},{"code_sha256_prefix":"21ba14c82993c2fe","entry":"ResNet50","repo":"yujiaw98/FADAS","repo_kind":"official","path":"models/resnet.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/models/resnet.py","link_basis":"harvester_set","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":"21ba14c82993c2fe"}},{"code_sha256_prefix":"815f704e5efd8345","entry":"ShearX","repo":"yujiaw98/FADAS","repo_kind":"official","path":"models/randaug.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/models/randaug.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"815f704e5efd8345"}},{"code_sha256_prefix":"f5e3179cafd9393a","entry":"ShearY","repo":"yujiaw98/FADAS","repo_kind":"official","path":"models/randaug.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/models/randaug.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f5e3179cafd9393a"}},{"code_sha256_prefix":"b2893a9a2ac1188f","entry":"TranslateX","repo":"yujiaw98/FADAS","repo_kind":"official","path":"models/randaug.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/models/randaug.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b2893a9a2ac1188f"}},{"code_sha256_prefix":"104ddcdc68053ef0","entry":"letter_to_vec","repo":"yujiaw98/FADAS","repo_kind":"official","path":"language_utils.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/language_utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"104ddcdc68053ef0"}},{"code_sha256_prefix":"6b99b3197b82b153","entry":"read_data","repo":"yujiaw98/FADAS","repo_kind":"official","path":"femnist_datasets.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/femnist_datasets.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":"6b99b3197b82b153"}},{"code_sha256_prefix":"0c5238e6fe1a8c86","entry":"read_dir","repo":"yujiaw98/FADAS","repo_kind":"official","path":"femnist_datasets.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/femnist_datasets.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":"0c5238e6fe1a8c86"}},{"code_sha256_prefix":"e4cdde6a274b8fac","entry":"word_to_indices","repo":"yujiaw98/FADAS","repo_kind":"official","path":"language_utils.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/language_utils.py","link_basis":"plan_row","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e4cdde6a274b8fac"}},{"code_sha256_prefix":"ac3dd06d1a08c549","entry":"ResNet34","repo":"yujiaw98/FADAS","repo_kind":"official","path":"models/resnet.py","file_url":"https://github.com/yujiaw98/FADAS/blob/HEAD/models/resnet.py","link_basis":"plan_row","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":"ac3dd06d1a08c549"}},{"code_sha256_prefix":"2b2112b32752bb59","entry":"update_model_inplace","repo":"yujiaw98/fadas","repo_kind":"official","path":"update.py","file_url":"https://github.com/yujiaw98/fadas/blob/HEAD/update.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":"2b2112b32752bb59"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}