Summary
The authors propose and discuss two algorithms for FL: Scafflix. They arrive at their algorithm by extending Scaffnew to the setting in which clients can have individual learning rates $\gamma_i$. This individualized Scaffnew termed 'i-Scaffnew' is then applied to the FLIX model of personalized FL, resulting in the 'Scafflix' algorithm. The authors present a convergence analysis of Scafflix in the strongly convex case, as well as an empirical analysis in the convex case as well as NNs on some common FL benchmarks.
Strengths
The paper is well motivated and describes its contributions very explicitly. My background in convergence proofs for FL is somewhat limited, so I will not comment to detailed on it and set my confidence accordingly. The placing into context of this theoretical contribution within the RW section seems well done.
I appreciate the inclusion of a strongly-convex empirical analysis as an attempt to showcase the exact setting that the theory can support - as well as the inclusion of experiments with NNs.
Weaknesses
Focussing on the empirical analyses, I believe there is not enough information to draw conclusions based on these experiments. As I detail below, many open questions remain.
Specifically, I am missing a more detailed discussion around the elements that make Scafflix different from prior work. I.e. what specifically is the "tuning" of i-Scaffnew for FLIX, as well as how do you perform the "individualization" for Scaffnew through $\gamma_i$ in experiments?
Questions
- It seems that Figure 1 experiments on iid data. Under this assumption, it seems no surprise to me that local training (p<1) is beneficial and smaller alpha leads to smaller objective gap, as $x_i^*$ is close to the global optimum $x^*$. I would need to see the case of $\alpha=0$ to see what the benefit of communicating between client is in the first place. Instead, I would like to see experiments with different levels of non-iid-ness; and how the choice of alpha influences convergence to the optimum.
- For the logreg experiments, I don't see the differences between Scafflix and standard FedAvg applied to the FLIX objective. The claim "Scafflix is much faster than GD, thanks to its local training mechanism" seems to be equivalent to saying "p<1 for FedAvg is faster...", which again is no surprise given the iid-ness of the problem. I seem to be missing the point here. The client-specific learning rates, which supposedly is the key theoretical advantage of Scafflix, is not specified and I assume it is identical across clients (which would make sense given the iid assumption with equal amounts of data).
- In case I did miss a key point of the Scafflix component for the logreg experiments, and there is indeed a difference, could you please include results of FedAvg applied to the FLIX objective as a baseline, i.e. including one acceleration component as a baseline? I suggest concentrating on a single $\alpha$ setting as the trend across all $\alpha$ is identical.
- Similarly, the sentences "In accordance with the methodology outlined in FedJax (Ro et al., 2021), we distribute these samples randomly across 3,400 devices." and " The Shakespeare dataset, used for next character prediction tasks, contains a total of 16,068 samples, which we distribute randomly across 1,129 devices." seem to suggest that you are "randomly distributing" data, leading to iid-splits across clients. Scanning the code (I am not familiar with Jax, or FedJax in particular), it seems that the dataset is the "original", meaning non-iid by writer-id (Femnist) or character (Shakespeare). Please clarify the 'random distributing'.
- For the "Baselines" section of 4.2, I am not sure I understand the selection of the learning rates. Do you independently optimize for the local learning rate per-client to achieve highest validation score, or do you fix the learning rate across clients to be the same for finding the $x_i^*$?. More critically, how do you select the $\gamma_i$ for the actual Scafflix algorithm? Since you fix $alpha_i$ to be identical across clients, I expect the $\gamma_i$ to be different across clients - otherwise it would appear that you are running FedAvg with the FLIX objective. What am I missing here?
- Can you comment on the quality of the $x_i^*$ you find? Anecdotally and from my own experience, these models overfit easily due to the small amount of training-data per client.
- In Figure 1, I interpret the objective gap computed with $f(x^k)$ as using the server-side model evaluated on the entire global training-dataset; could you confirm that? For the NN experiments in Figures 2,3 and the appendix, do you equally evaluate the server-side model, here on the concatenation of all clients' test-datasets? While this is certainly interesting and relevant as an indication for test-client performance, I believe a paper about model personalization in FL should compare to the average client-specific models' performances. Specifically, what is the quality of $x_i^*$ (i.e. no communication, no across-clients knowledge sharing) as well as the performance of $\tilde{x}_i^*$, (i.e. the performance of the client-specific personalized model following the FLIX objection as you detailed in the introduction).
- Scafflix as described in Algorithm 1, as well as your theoretical analysis, does not consider client subsampling. For the theoretical analysis, this should be mentioned as a draw-back IMO. For your empirical analysis, please comment on how introducing client subsampling (are you equating this to "batch-size" in 4.4.2?) provides insights about your algorithm Scafflix.
- For Figure 2, does FLIX, which "uses the SGD method" do multiple local updates (i.e. p<1)? If yes, then the difference to Scafflix would to different local learning rates - is that correct?
- Assuming I understood correctly and different local learning rates is a key component of Scafflix, what is the distribution of local learning rates that you find empirically? What is the empirical difference compared to using the same local learning rate (as I assume corresponds to the FLIX baseline?)