Unlike the existing deep learning model which collects data in one place and conducts deep learning, The Federated Learning which conducts deep learning through parameter sharing between the central server and the local client while data is distribute...
Unlike the existing deep learning model which collects data in one place and conducts deep learning, The Federated Learning which conducts deep learning through parameter sharing between the central server and the local client while data is distributed to the local device that can improve the performance of the deep learning model has many advantages such as solving problems of protecting personal information and communication efficiency.
However, there are still many problems to be solved such as real-time communication management, non-iid problem, statistical heterogeneity problem of data, and system heterogeneity problem in different environments. To solve this problem, research about improving Aggregation Algorithm is being conducted actively.
The existing research about the Aggregation Algorithm compare performance indicators like Accuracy, F1-score, AUROC with FedAVG, a baseline algorithm in Federated Learning for verifying performance improvement. However, unlike the existing deep learning model, the Federated Learning model, which is actually communicated and is trained, has a big difference in the time, communication frequency, communication volume, and computation amount required for training model according to the Aggregation Algorithm. And that has to be considered at “Designing Aggregation Algorithm” step which is the first step to be selected with performance indicators when applying Federated Learning.
Therefore, we implemented the environment for the Federated Learning experiment with the FedAVG algorithm, the FedSGD algorithm, and the TopKAVG algorithm in 3 computers and a notebook using the Django-based Federated Learning experiment framework where actual communication is performed. And, we compared performance with Accuracy, time for Federated Learning, and numbers of communication.
The FedAVG algorithm takes 6.1 seconds per round for the MNIST classification model, and it shows an Accuracy of 0.915. And the FedAVG takes 23.1 seconds per round for the ECG classification model, and it achieves an Accuracy of 0.986, shows the highest performance with proper time for Federated Learning. When using the FedSGD algorithm, the MNIST classification model showed an average of 91.8 seconds per round and an Accuracy of 0.926, while the ECG classification model showed the longest learning time, achieving an average of 49.8 seconds per round and an Accuracy of 0.981, but there wasn't noticeable performance difference. When using the TopKAVG, it showed that Federated Learning with 6 clients was not done properly because of high proportion of data that was not reflected in the model. However, despite the more number of communication than FedAVG, the MNIST classification model showed the fastest time with an average of 5.14 seconds per round and the ECG classification model showed an average of 13.0 seconds per round.
When selecting Aggregation Algorithm according to various situations where Federated Learning is used, we expect that more efficient Federated Learning can be implemented if you consider time with the performance.