The quality of algorithms is predominantly related to the amount of data available. In recent years, the availability of data has increased rapidly. In particular, the Internet of Things (IoT) generates large amounts of data from millions of devices. This abundance of data makes it possible to train better and better machine learning models. In practice, however, making this data available to train a centralized model can be problematic due to regulatory restrictions or technical hurdles in transmitting large amounts of data over low bandwidths. One solution to these challenges is federated learning.