[Feature Proposal] (New data partition strategy) Extended Dirichlet strategy
liyipeng00 opened this issue · 4 comments
Recently, I find one new data partition strategy called Extended Dirichlet strategy ~~~ ours :), which could be added in this repo.
It combines the two common partition strategies (i.e., Quantity-based class imbalance and Diribution-based class imbalance in Li et al. (2022)) to generate arbitrarily heterogeneous data. The difference is to add a step of allocating classes (labels) to determine the number of classes per client (denoted by
The implementation is in convergence. You can find more details in Convergence Analysis of Sequential Federated Learning on Heterogeneous Data.
[Figure:
Row 1:
Row 2:
Row 3:
Li, Q., Diao, Y., Chen, Q., & He, B. (2022, May). Federated learning on non-iid data silos: An experimental study. In 2022 IEEE 38th International Conference on Data Engineering (ICDE) (pp. 965-978). IEEE.
We will check your code. Thank you very much!
Thanks. We are glad to hear from you. The code is ExDirPartition, and you can generate the map with the following command (changing the dataset location is required).
python partition.py -d mnist -n 10 --partition exdir -C 1 --alpha 1.0
Interesting work!
Thanks, =^_^=.