Installation
git clone https://github.com/lishenghui/blades
cd blades
pip install -v -e .
# "-v" means verbose, or more output
# "-e" means installing a project in editable mode,
# thus any local modifications made to the code will take effect without reinstallation.
cd blades/blades
python train.py file ./tuned_examples/fedsgd_cnn_fashion_mnist.yaml
Blades internally calls ray.tune; therefore, the experimental results are output to its default directory: ~/ray_results.
Experiment Results
Cluster Deployment
To run blades on a cluster, you only need to deploy Ray cluster according to the official guide.
Built-in Implementations
In detail, the following strategies are currently implemented:
Data Partitioners:
Dirichlet Partitioner
Sharding Partitioner
Citation
Please cite our paper (and the respective papers of the methods used) if you use this code in your own work:
@article{li2023blades,
title={Blades: A Unified Benchmark Suite for Byzantine Attacks and Defenses in Federated Learning},
author= {Li, Shenghui and Ju, Li and Zhang, Tianru and Ngai, Edith and Voigt, Thiemo},
journal={arXiv preprint arXiv:2206.05359},
year={2023}
}
Metadata
Release files for blades 0.1.1234
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| blades-0.1.1234.tar.gz | 595.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| blades-0.1.1234-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 641.0 kB
Release files / blades-0.1.1234.tar.gz
| Download URL | blades-0.1.1234.tar.gz |
|---|---|
| Size | 595.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
270ddfab1cd33b581a5d6b1a0ddbd860683f3173c482f0b44a69db1187efafc5
|
|
BLAKE2b-256 checksum How to use checksums |
e44b00a1baee1586ca906a0991fb9172cae06585d8f8d3051b0e945f96cb2b6e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Release files / blades-0.1.1234-py3-none-any.whl
| Download URL | blades-0.1.1234-py3-none-any.whl |
|---|---|
| Size | 45.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
14654cc3e2a4c4efd3f60d340e6d36e6d30352cf5fff7c6227ff1f76a246e0db
|
|
BLAKE2b-256 checksum How to use checksums |
d6b2cf0d4331a5a4b886130b2729f074380c6718f66f8a554eb5a0e829dc150b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|