https://towardsdatascience.com/decentralized-machine-learning-training-with-federated-learning-c8543696c1e7