<p>The Federated Learning for Image Classification tutorial would be a good start to learn TFF: <a href="https://www.tensorflow.org/federated/tutorials/federated_learning_for_image_classification" rel="noreferrer">https://www.tensorflow.org/federated/tutorials/federated_learning_for_image_classification</a> The &quot;Preparing the input data&quot; section is related to your third question. About vertical vs. horizontal: I know there are many types of federated learning defined in recent publications. Personally I would call what you described as cross-silo federated learning, see Section 2.2 in this paper for more information: <a href="https://arxiv.org/abs/1912.04977" rel="noreferrer">https://arxiv.org/abs/1912.04977</a></p>
<p>To answer your other questions:</p>
<p>See the above tutorial for how to create an iterative_process with federated averaging while setting SGD learning rate on both the server and client side. You can also implement customized federated learning algorithms: <a href="https://www.tensorflow.org/federated/tutorials/building_your_own_federated_learning_algorithm" rel="noreferrer">https://www.tensorflow.org/federated/tutorials/building_your_own_federated_learning_algorithm</a> (this tutorial might also answer your second question about customized local training?)</p>
Federated Averaging and TensorFlow
<p>I am a newbie in federated learning and just getting to know TensorFlow Federated TFF framework. I have some questions in my mind I would be really appreciated it if anybody can clarify them:</p>
<ol>
<li>Does Federated Averaging algorithm the only aggregation algorithm supported in TFF? and how it differs from Federated Stochastic Gradient Descent?</li>
<li>Dose Federated Averaging require each client to be trained with the Neural Networks? or it is possible for local data to be trained with any machine learning algorithm?</li>
<li>I have big data, and I am planning to partition my data into smaller datasets and simulated each part as one client? does this work in TFF? and does it consider horizontal or vertical federated learning?</li>
</ol>
<p>Thanks in advance</p>