FedML-AI/FedML

Why aggregation algorithm has different name but identical implementation

Open

#1.140 aberto em 28 de jun. de 2023

Ver no GitHub
 (0 comments) (0 reactions) (0 assignees)Python (743 forks)batch import
help wantedquestion

Métricas do repositório

Stars
 (3.930 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

I have been testing other aggregation algorithms implemented in python/fedml/ml/aggregator/agg_oeprator.py. I realize all aggregation methods represent identical implementation. It means no matter which algorithm you select, in the end, the result will be the same. However, there are a few methods like SCAFFOLD and MIME have different way implementations but they are also giving errors as they require a totally different weight structure.

Is anyone explain to me why all algorithms have identical implementation codes and why SCAFFOLD expects a different weight structure?

This is the location I am talking about:

https://github.com/FedML-AI/FedML/blob/64715d4fb56a90e4106872f503815d978d32f8e6/python/fedml/ml/aggregator/agg_operator.py#L35C1-L35C45

Thanks for your kind support.

Guia do colaborador