FedML-AI/FedML

Why aggregation algorithm has different name but identical implementation

Open

#1,140 创建于 2023年6月28日

在 GitHub 查看
 (0 评论) (0 反应) (0 负责人)Python (743 fork)batch import
help wantedquestion

仓库指标

Star
 (3,930 star)
PR 合并指标
 (30 天内没有已合并 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.

贡献者指南