FedML-AI/FedML

Why aggregation algorithm has different name but identical implementation

Open

#1,140 opened on 2023年6月28日

GitHub で見る
 (0 comments) (0 reactions) (0 assignees)Python (743 forks)batch import
help wantedquestion

Repository metrics

Stars
 (3,930 stars)
PR merge metrics
 (30d に merged PR はありません)

説明

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.

コントリビューターガイド