Papers › Test-Time Robust Personalization for Federated Learning

Test-Time Robust Personalization for Federated Learning

22 May 2022arXiv:2205.10920archive 2025-07-28

Liangze Jiang, Tao Lin

Federated Learning (FL) is a machine learning paradigm where many clients collaboratively learn a shared global model with decentralized training data. Personalized FL additionally adapts the global model to different clients, achieving promising results on consistent local training and test distributions. However, for real-world personalized FL applications, it is crucial to go one step further: robustifying FL models under the evolving local test set during deployment, where various distribution shifts can arise. In this work, we identify the pitfalls of existing works under test-time distribution shifts and propose Federated Test-time Head Ensemble plus tuning(FedTHE+), which personalizes FL models with robustness to various test-time distribution shifts. We illustrate the advancement of FedTHE+ (and its computationally efficient variant FedTHE) over strong competitors, by training various neural architectures (CNN, ResNet, and Transformer) on CIFAR10 andImageNet with various test distributions. Along with this, we build a benchmark for assessing the performance and robustness of personalized FL methods during deployment. Code: https://github.com/LINs-lab/FedTHE.

PaperPDFCodeCode Syntology ran

In Syntology Open this paper in Syntology's Atlas, the map of the papers in Syntology's graph and their citations.

For agents, Syntology's MCP tool lists every function and class Syntology harvested from this paper and whether it ran (how to connect): get_harvested_code_for_paper(arxiv_id="2205.10920")

Code

Syntology Ran 0 of 14 code samples harvested from 1 repository linked to this paper; 14 have no recorded run.

By repository: official repository: 14 samples from 1 repository, 0 ran. The run record, sample by sample. “Ran” means executed on a synthesized input, not that the code is correct or reproduces the paper.

lins-lab/fedthe officialmentioned in papermentioned on GitHubpytorchApache-2.0 report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

14 samples harvested; 0 ran; 0 honoured the contract we drafted; 14 have no recorded run. Read from Syntology's graph 2026-09-24; that is when this build read the record, not when the samples ran.

14unverified

Licence: 0 of the 14 samples are pointer only, meaning Syntology does not serve that copy's text. This page shows no code text for any sample; each one links to its file in the repository.

Harvested from LINs-lab/FedTHE. “Ran” means the sample executed on a synthesized input. It does not mean the output is correct, and nothing here reproduces the paper's results. “Honoured” and “violated” refer to a contract Syntology drafted from the code itself; “our draft was wrong” and “fixture could not drive it” are failures of Syntology's instrument, not of the code.

Each sample ends with its code_sha256, Syntology's identity for that exact code. An agent fetches the stored sample with Syntology's MCP tool get_code(code_sha256="…") (how to connect); click an identity to copy that call.

Repository labels, per sample. official repository: The archive marks this repository official for the paper. named in the paper: The archive records that the paper mentions this repository; it is not marked official. community (archive-listed): In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper. found in paper text by Syntology: 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. Samples from a repository marked official are listed first. Licence labels name the repository's licence as recorded at harvest. “Pointer only” means Syntology does not serve that copy's text, for one of four reasons: no licence file was found; the licence was not identified; the licence is recorded as permissive but that copy's record is not marked cleared; or the licence is outside the permissive list Syntology serves text under (MIT, Apache-2.0, BSD and similar). Some licences outside that list permit redistribution, such as WTFPL, and GPL-3.0 under its conditions; they are simply not on the list. Hover a licence label for the reason. File links open the file on GitHub at the default branch, which may have changed since the harvest.

build_non_iid_by_dirichlet LINs-lab/FedTHE/BRFL/partition_data.py official repository unverified Apache-2.0 (permissive) · 23af7c10d53271dd · report
build_script LINs-lab/FedTHE/run_exps.py official repository unverified Apache-2.0 (permissive) · 3050038b77105453 · report
define_imagenet_variant_folder LINs-lab/FedTHE/BRFL/loaders/imagenet_variant_folder.py official repository unverified Apache-2.0 (permissive) · cb1cbd4c31520eae · report
determine_arch LINs-lab/FedTHE/pcode/create_model.py official repository unverified Apache-2.0 (permissive) · 8cb1bca3828633f8 · report
environ LINs-lab/FedTHE/env/utils.py official repository unverified Apache-2.0 (permissive) · b01fd6c2ed0b59ca · report
gaussian_noise LINs-lab/FedTHE/BRFL/corr_data.py official repository unverified Apache-2.0 (permissive) · aa8d742f576ad186 · report
import_string LINs-lab/FedTHE/run_exps.py official repository unverified Apache-2.0 (permissive) · 805f87452deac36d · report
impulse_noise LINs-lab/FedTHE/BRFL/corr_data.py official repository unverified Apache-2.0 (permissive) · f67930386b129f43 · report
inter_client_non_iid_partition LINs-lab/FedTHE/BRFL/partition_data.py official repository unverified Apache-2.0 (permissive) · 64b6613d8b1f461b · report
intra_client_uniform_partition LINs-lab/FedTHE/BRFL/partition_data.py official repository unverified Apache-2.0 (permissive) · 8af58a2e0cf92656 · report
load_yaml LINs-lab/FedTHE/env/utils.py official repository unverified Apache-2.0 (permissive) · fcdbee2f89a2dda2 · report
read_replacements_from_python_class LINs-lab/FedTHE/run_exps.py official repository unverified Apache-2.0 (permissive) · 321a3028137d8890 · report
shot_noise LINs-lab/FedTHE/BRFL/corr_data.py official repository unverified Apache-2.0 (permissive) · 6b1dc63007fce5cf · report
transform_data_batch LINs-lab/FedTHE/BRFL/prepare_data.py official repository unverified Apache-2.0 (permissive) · 4b629456a8ba1323 · report

Tasks

Federated Learning

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Methods

1x1 ConvolutionAverage PoolingBatch NormalizationBottleneck Residual BlockConvolutionGlobal Average PoolingKaiming InitializationMax PoolingReLUResidual BlockResidual Connection

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections