## 2 Preliminaries and Related Work  
### Preliminaries  
#### 2.1.1 Federated Learning  
In federated learning, the end devices known as clients hold the data and train a local model. The clients receive the global model from the central server and train their local model using the received global model and their data. Clients share their local model with the central server. Once the central server receives the local models from the participating clients, it aggregates them using an aggregation method to create a new global model [5,20]. The general process of how FL works is shown in the following steps:  
1. The central server decides which devices are participating in training the model at this round.
2. The selected participating devices receive the global model from the central server.
3. The devices train a local model using their dataset and the received global model.
4. Each device uploads the trained local model to the central server for aggregation.
5. The received local models are aggregated to create the new global model.
6. The steps are repeated until the target performance is accomplished (the target can be specific accuracy) or the deadline is reached.  
In 2016, [PERSON] et al. [21] introduced the concept of federated learning for the first time and proposed an aggregation algorithm called Federated Average (FedAvg). FedAvg is a weighted averaging scheme that weights the client's local model based on their dataset size.  
\[w_{t+1}=\sum_{k\in S_{t}}\frac{n_{k}}{n}w_{t+1}^{k} \tag{1}\]  
where \(w_{t+1}\) is the new global model, \(w_{t+1}^{k}\) is the local model received from client \(k\), \(n_{k}\) is the client \(k\) data size, and \(n\) is the total data size for all clients participating in this round, and \(S_{t}\) is the set of clients participating in the training process at round \(t\).  
FL can be classified into three categories based on the data partitions, according to [22]. The three categories are (1) horizontal FL (HFL), (2) vertical FL (VFL), and (3) federated transfer learning (FTL). In HFL, the clients have local datasets with the same features, but the data samples differ. HFL is like having a large dataset divided horizontally between clients. The sample space will overlap in VFL, while the feature space overlap is minimal. This occurs when two datasets are created using the same samples but differ in extraction [23]. VFL is often related to an enterprise setting where the number of clients participating is much smaller than HFL, but privacy matters are paramount [24,25]. In FTL, devices have different samples, and the extracted features differ. This means the overlap between the sample and feature spaces between the devices is rare. Transfer learning is used to enhance the learning process. An initial model is trained using the overlapped samples and all features. The initial model is used as a baseline with the remaining samples (non-overlap) and the available features for the sample [22].  
Furthermore, FL can be classified into cross-device FL and cross-silo FL based on the participating clients and training scale. The number of devices participating in the cross-device setting is more than in the cross-silo setting. In the cross-device setting, devices are typically small and have limited samples compared to the cross-silo setting, where clients are usually companies or organizations that hold large datasets [26,27].