{"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/aggregating-capacity-in-fl-through-successive","title":"Aggregating Capacity in FL through Successive Layer Training for Computationally-Constrained Devices","arxiv_id":"2305.17005","date":"2023-05-26","proceeding":"NeurIPS 2023 11","authors":["Kilian Pfeiffer","Ramin Khalili","Jörg Henkel"],"abstract":"Federated learning (FL) is usually performed on resource-constrained edge devices, e.g., with limited memory for the computation. If the required memory to train a model exceeds this limit, the device will be excluded from the training. This can lead to a lower accuracy as valuable data and computation resources are excluded from training, also causing bias and unfairness. The FL training process should be adjusted to such constraints. The state-of-the-art techniques propose training subsets of the FL model at constrained devices, reducing their resource requirements for training. But these techniques largely limit the co-adaptation among parameters of the model and are highly inefficient, as we show: it is actually better to train a smaller (less accurate) model by the system where all the devices can train the model end-to-end, than applying such techniques. We propose a new method that enables successive freezing and training of the parameters of the FL model at devices, reducing the training's resource requirements at the devices, while still allowing enough co-adaptation between parameters. We show through extensive experimental evaluation that our technique greatly improves the accuracy of the trained model (by 52.4 p.p.) compared with the state of the art, efficiently aggregating the computation capacity available on distributed devices.","url_abs":"https://arxiv.org/abs/2305.17005v2","url_pdf":"https://arxiv.org/pdf/2305.17005v2.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":"aggregating-capacity-in-fl-through-successive","repo_url":"https://github.com/k1l1/SLT","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"federated-learning","task_name":"Federated Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2305.17005","atlas_url":"https://app.syntology.ai/?focus=2305.17005","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2305.17005"}},"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/k1l1/SLT","reach":null}],"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":"d455320ab88e0e8e","entry":"FedAvgEvaluation","repo":"k1l1/SLT","repo_kind":"official","path":"algorithms/slt.py","file_url":"https://github.com/k1l1/SLT/blob/HEAD/algorithms/slt.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":"d455320ab88e0e8e"}},{"code_sha256_prefix":"f23f9cc409eaf40f","entry":"FedAvgServer","repo":"k1l1/SLT","repo_kind":"official","path":"algorithms/slt.py","file_url":"https://github.com/k1l1/SLT/blob/HEAD/algorithms/slt.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":"f23f9cc409eaf40f"}},{"code_sha256_prefix":"6d29716020da166d","entry":"FederatedDropoutServer","repo":"k1l1/SLT","repo_kind":"official","path":"algorithms/slt.py","file_url":"https://github.com/k1l1/SLT/blob/HEAD/algorithms/slt.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":"6d29716020da166d"}},{"code_sha256_prefix":"6d2bd31e381d7d73","entry":"SLTServer","repo":"k1l1/SLT","repo_kind":"official","path":"algorithms/slt.py","file_url":"https://github.com/k1l1/SLT/blob/HEAD/algorithms/slt.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":"6d2bd31e381d7d73"}},{"code_sha256_prefix":"78184a9f3364adb2","entry":"dict_hash","repo":"k1l1/slt","repo_kind":"official","path":"run_fl.py","file_url":"https://github.com/k1l1/slt/blob/HEAD/run_fl.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"78184a9f3364adb2"}},{"code_sha256_prefix":"09027058830d7ecf","entry":"prepare","repo":"k1l1/slt","repo_kind":"official","path":"run_fl.py","file_url":"https://github.com/k1l1/slt/blob/HEAD/run_fl.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":"09027058830d7ecf"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}