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:
Thanks in advance
The Federated Learning for Image Classification tutorial would be a good start to learn TFF: https://www.tensorflow.org/federated/tutorials/federated_learning_for_image_classification The "Preparing the input data" 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: https://arxiv.org/abs/1912.04977
To answer your other questions:
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: https://www.tensorflow.org/federated/tutorials/building_your_own_federated_learning_algorithm (this tutorial might also answer your second question about customized local training?)