Julia package for solving the horizontal federated learning problem.

Federated learning is a training framework that allows multiple clients to collaboratively train a model without sharing data. FedDCD.jl is a Julia package for solving the following distributed empirical-risk minimization problem:

\[\min_{w\in\mathbb{R}^d}\enspace F(w) := \sum_{i = 1}^N f_i(w),\]

where \(N\) is the number of clients and \(w\) is the global model parameter. Each local objective \(f_i:\mathbb{R}^d \to\mathbb{R}\) is defined by

\[f_i(w) = \ell(w; \mathcal{D}_i),\]

where \(\mathcal{D}_i\) is the local data set maintained by client \(i\).