# AutoFL: Towards AutoML in a Federated Learning Context
## 4 Design and Implementation of the AutoFL Framework
### Methodology
#### 4.2.3 Data and Feature Pre-Processing  
Data rescaling and dimensionality reduction are typical steps in a machine-learning pipeline. However, in a federated learning scenario, these steps are far less trivial to realize. Our framework implements a subset of the aforementioned techniques depending on whether clients are willing to share certain meta-features (e.g., min, max, mean, and variation of a feature value) in the same way clients in a federated learning scenario reveal the amount of data they individually train upon for the coordinating server to implement weighted federated averaging. Indeed, after receiving the model updates (e.g., the new weights \(w\) of a neural network) of each client \(k\) in round \(t\), the coordinating server computes the aggregated model \(w_{t}\) via the local model updates \(w_{t}^{k}\) of the \(K\) clients through federated averaging as follows:  
\[w_{t}\leftarrow\sum_{k=1}^{K}\frac{m_{k}}{n}w_{t}^{k} \tag{1}\]  
The impact of a single client depends on the amount of data \(n_{k}\) it locally trains upon. This means that the coordinating server knows this meta-feature \(n_{k}\) of each client \(k\) and the total amount of data \(n\). The other meta-features (e.g., min, max, mean, variance of a feature value) can be shared with the coordinating server similarly.  
However, when the client model updates are privacy sensitive or when the coordinating server cannot be trusted, then fortunately, state-of-practice federated learning frameworks offer alternative schemes (e.g., secure aggregation through secret sharing and secure multi-party computation). The question then becomes whether the additional meta-features can be shared not only with the coordinating server but with all clients such that, for example, each client implements the same min-max rescaling. Computing the min and max value of a particular feature value across all clients then becomes a multi-party variation of Yao's Millionaires' problem [43; 44]. In the max value variation, the goal is not to learn which party has the highest value without revealing the individual values but rather to learn what is the maximum value across the parties without sharing the individual values or knowing which party has the highest value (except for that particular party itself). More generically, given \(K\) clients, we compute a meta-feature \(z\) through a deterministic function \(f\) known by all clients or parties and based on private inputs \(x_{k}\) such that each party obtains no additional information other than \(z\):  
\[z=f(x_{1},x_{2},\ldots,x_{K}) \tag{2}\]  
In our work, we now assume that any adversarial party in the federation follows a _semi-honest_ or _honest-but-curious_ threat model, i.e., all parties follow the protocol but are curious to know more information about the private inputs \(x_{k}\) of the other parties.  
Due to their innate complexity to implement them in a distributed and privacy-preserving manner, our framework does not support any of the various dimensionality reduction techniques that are commonly applied in classical machine learning pipelines with high dimensional datasets.