fedhf


Namefedhf JSON
Version 0.2.3 PyPI version JSON
download
home_pagehttps://github.com/beiyuouo/fedhf
SummaryA Federated Learning Framework which is Heterogeneous and Flexible.
upload_time2022-05-12 16:19:19
maintainerBingjie Yan
docs_urlNone
authorBingjie Yan
requires_python>=3.6
licenseApache-2.0 License
keywords federated learning deep learning pytorch asynchronous federated learning wandb
VCS
bugtrack_url
requirements albumentations argcomplete atomicwrites attrs autopep8 backports.entry-points-selectable certifi cffi charset-normalizer click colorama colorlog configparser cycler distlib docker-pycreds filelock gevent gitdb GitPython greenlet idna imageio imgaug iniconfig kiwisolver matplotlib networkx nox numpy opencv-python opencv-python-headless packaging pathtools Pillow platformdirs pluggy promise protobuf psutil py pycodestyle pycparser pyparsing pytest python-dateutil PyWavelets PyYAML requests scikit-image scipy sentry-sdk Shapely shortuuid six smmap subprocess32 termcolor tifffile toml torch torchaudio torchvision tqdm typing-extensions urllib3 virtualenv wandb yapf yaspin zope.event zope.interface addict
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # FedHF

<img src="https://raw.githubusercontent.com/beiyuouo/fedhf/main/docs/assets/logo.svg" alt="logo" style="width:100%;">

[FedHF](https://github.com/beiyuouo/fedhf) is a loosely coupled, **H**eterogeneous resource supported, and **F**lexible federated learning framework. 

*Accelerate your research*

![](https://img.shields.io/github/stars/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/github/forks/beiyuouo/fedhf?style=flat-square) ![https://www.bj-yan.top/fedhf/](https://img.shields.io/badge/document-building-blue?style=flat-square) ![](https://img.shields.io/github/languages/code-size/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/github/issues/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/github/issues-pr/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/pypi/pyversions/fedhf?style=flat-square) ![](https://img.shields.io/pypi/l/fedhf?style=flat-square) [![Downloads](https://pepy.tech/badge/fedhf)](https://pepy.tech/project/fedhf)

[![Discord](https://img.shields.io/discord/942746457855889469.svg?logo=discord&logoColor=white&logoWidth=20&labelColor=7289DA&label=Discord&style=flat-square)](https://discord.gg/AsvX9Q75)


## Features

- [x] Losely coupled
- [x] Heterogeneous resource supported
- [x] Flexible federated learning framework
- [x] Support for asynchronous aggregation
- [x] Support for multiple federated learning algorithms

## Algorithms Supported

### Synchronous Aggregation

- [x] **[FedAvg]** Communication-Efficient Learning of Deep Networks from Decentralized Data(*AISTAT*) [[paper]](https://arxiv.org/abs/1602.05629.pdf)

### Asynchronous Aggregation

- [x] **[FedAsync]** Asynchronous Federated Optimization(*OPT2020*) [[paper]](https://arxiv.org/abs/1903.03934)

### Tiered Aggregation

- [ ] **[TiFL]** TiFL: A Tier-based Federated Learning System (*HPDC 2020*) [[paper]](https://dl.acm.org/doi/abs/10.1145/3369583.3392686)

## Getting Start

```sh
pip install fedhf

# If you want to use wandb to view log, please login first
wandb login
```

You can see the [Document](https://www.bj-yan.top/fedhf/) for more details.

## Contributing

For more information, please see the [Contributing](https://www.bj-yan.top/fedhf/contributing/) page.

## Citation

> *In progress*

## Licence

This work is provided under [Apache License Version 2.0](https://www.apache.org/licenses/LICENSE-2.0).

## Acknowledgement

Many thanks to [FedLab](https://github.com/SMILELab-FL/FedLab) and [FedML](https://github.com/FedML-AI/FedML) for their great work.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/beiyuouo/fedhf",
    "name": "fedhf",
    "maintainer": "Bingjie Yan",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "bj.yan.pa@qq.com",
    "keywords": "federated learning,deep learning,pytorch,asynchronous federated learning,wandb",
    "author": "Bingjie Yan",
    "author_email": "bj.yan.pa@qq.com",
    "download_url": "https://files.pythonhosted.org/packages/49/11/8da2d9a8f50a7de5ff3c14dcb374a721443e97734dabdeb9974198f3348f/fedhf-0.2.3.tar.gz",
    "platform": null,
    "description": "# FedHF\n\n<img src=\"https://raw.githubusercontent.com/beiyuouo/fedhf/main/docs/assets/logo.svg\" alt=\"logo\" style=\"width:100%;\">\n\n[FedHF](https://github.com/beiyuouo/fedhf) is a loosely coupled, **H**eterogeneous resource supported, and **F**lexible federated learning framework. \n\n*Accelerate your research*\n\n![](https://img.shields.io/github/stars/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/github/forks/beiyuouo/fedhf?style=flat-square) ![https://www.bj-yan.top/fedhf/](https://img.shields.io/badge/document-building-blue?style=flat-square) ![](https://img.shields.io/github/languages/code-size/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/github/issues/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/github/issues-pr/beiyuouo/fedhf?style=flat-square) ![](https://img.shields.io/pypi/pyversions/fedhf?style=flat-square) ![](https://img.shields.io/pypi/l/fedhf?style=flat-square) [![Downloads](https://pepy.tech/badge/fedhf)](https://pepy.tech/project/fedhf)\n\n[![Discord](https://img.shields.io/discord/942746457855889469.svg?logo=discord&logoColor=white&logoWidth=20&labelColor=7289DA&label=Discord&style=flat-square)](https://discord.gg/AsvX9Q75)\n\n\n## Features\n\n- [x] Losely coupled\n- [x] Heterogeneous resource supported\n- [x] Flexible federated learning framework\n- [x] Support for asynchronous aggregation\n- [x] Support for multiple federated learning algorithms\n\n## Algorithms Supported\n\n### Synchronous Aggregation\n\n- [x] **[FedAvg]** Communication-Efficient Learning of Deep Networks from Decentralized Data(*AISTAT*) [[paper]](https://arxiv.org/abs/1602.05629.pdf)\n\n### Asynchronous Aggregation\n\n- [x] **[FedAsync]** Asynchronous Federated Optimization(*OPT2020*) [[paper]](https://arxiv.org/abs/1903.03934)\n\n### Tiered Aggregation\n\n- [ ] **[TiFL]** TiFL: A Tier-based Federated Learning System (*HPDC 2020*) [[paper]](https://dl.acm.org/doi/abs/10.1145/3369583.3392686)\n\n## Getting Start\n\n```sh\npip install fedhf\n\n# If you want to use wandb to view log, please login first\nwandb login\n```\n\nYou can see the [Document](https://www.bj-yan.top/fedhf/) for more details.\n\n## Contributing\n\nFor more information, please see the [Contributing](https://www.bj-yan.top/fedhf/contributing/) page.\n\n## Citation\n\n> *In progress*\n\n## Licence\n\nThis work is provided under [Apache License Version 2.0](https://www.apache.org/licenses/LICENSE-2.0).\n\n## Acknowledgement\n\nMany thanks to [FedLab](https://github.com/SMILELab-FL/FedLab) and [FedML](https://github.com/FedML-AI/FedML) for their great work.\n",
    "bugtrack_url": null,
    "license": "Apache-2.0 License",
    "summary": "A Federated Learning Framework which is Heterogeneous and Flexible.",
    "version": "0.2.3",
    "split_keywords": [
        "federated learning",
        "deep learning",
        "pytorch",
        "asynchronous federated learning",
        "wandb"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "2dc3b9acd8d667e2673739dc5134da36",
                "sha256": "508fc8b9acc1953d83e14d06fa85a3907d0bb9a099b9281d72347f82ec89d4b1"
            },
            "downloads": -1,
            "filename": "fedhf-0.2.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2dc3b9acd8d667e2673739dc5134da36",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 63449,
            "upload_time": "2022-05-12T16:19:17",
            "upload_time_iso_8601": "2022-05-12T16:19:17.700867Z",
            "url": "https://files.pythonhosted.org/packages/55/d5/81b633240fe096e55e0e5f5b447a78e86e28272db8c4251a780553e052c9/fedhf-0.2.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "1a21aa5faff93c076f3429bd6b7cd734",
                "sha256": "04558fd291d2ea3696f0cecb808b3f6c34e2678e81b5bf4887e05d9d7da54894"
            },
            "downloads": -1,
            "filename": "fedhf-0.2.3.tar.gz",
            "has_sig": false,
            "md5_digest": "1a21aa5faff93c076f3429bd6b7cd734",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 32198,
            "upload_time": "2022-05-12T16:19:19",
            "upload_time_iso_8601": "2022-05-12T16:19:19.471315Z",
            "url": "https://files.pythonhosted.org/packages/49/11/8da2d9a8f50a7de5ff3c14dcb374a721443e97734dabdeb9974198f3348f/fedhf-0.2.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-05-12 16:19:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "beiyuouo",
    "github_project": "fedhf",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "albumentations",
            "specs": []
        },
        {
            "name": "argcomplete",
            "specs": []
        },
        {
            "name": "atomicwrites",
            "specs": []
        },
        {
            "name": "attrs",
            "specs": []
        },
        {
            "name": "autopep8",
            "specs": []
        },
        {
            "name": "backports.entry-points-selectable",
            "specs": []
        },
        {
            "name": "certifi",
            "specs": []
        },
        {
            "name": "cffi",
            "specs": []
        },
        {
            "name": "charset-normalizer",
            "specs": []
        },
        {
            "name": "click",
            "specs": []
        },
        {
            "name": "colorama",
            "specs": []
        },
        {
            "name": "colorlog",
            "specs": []
        },
        {
            "name": "configparser",
            "specs": []
        },
        {
            "name": "cycler",
            "specs": []
        },
        {
            "name": "distlib",
            "specs": []
        },
        {
            "name": "docker-pycreds",
            "specs": []
        },
        {
            "name": "filelock",
            "specs": []
        },
        {
            "name": "gevent",
            "specs": []
        },
        {
            "name": "gitdb",
            "specs": []
        },
        {
            "name": "GitPython",
            "specs": []
        },
        {
            "name": "greenlet",
            "specs": []
        },
        {
            "name": "idna",
            "specs": []
        },
        {
            "name": "imageio",
            "specs": []
        },
        {
            "name": "imgaug",
            "specs": []
        },
        {
            "name": "iniconfig",
            "specs": []
        },
        {
            "name": "kiwisolver",
            "specs": []
        },
        {
            "name": "matplotlib",
            "specs": []
        },
        {
            "name": "networkx",
            "specs": []
        },
        {
            "name": "nox",
            "specs": []
        },
        {
            "name": "numpy",
            "specs": []
        },
        {
            "name": "opencv-python",
            "specs": []
        },
        {
            "name": "opencv-python-headless",
            "specs": []
        },
        {
            "name": "packaging",
            "specs": []
        },
        {
            "name": "pathtools",
            "specs": []
        },
        {
            "name": "Pillow",
            "specs": []
        },
        {
            "name": "platformdirs",
            "specs": []
        },
        {
            "name": "pluggy",
            "specs": []
        },
        {
            "name": "promise",
            "specs": []
        },
        {
            "name": "protobuf",
            "specs": []
        },
        {
            "name": "psutil",
            "specs": []
        },
        {
            "name": "py",
            "specs": []
        },
        {
            "name": "pycodestyle",
            "specs": []
        },
        {
            "name": "pycparser",
            "specs": []
        },
        {
            "name": "pyparsing",
            "specs": []
        },
        {
            "name": "pytest",
            "specs": []
        },
        {
            "name": "python-dateutil",
            "specs": []
        },
        {
            "name": "PyWavelets",
            "specs": []
        },
        {
            "name": "PyYAML",
            "specs": []
        },
        {
            "name": "requests",
            "specs": []
        },
        {
            "name": "scikit-image",
            "specs": []
        },
        {
            "name": "scipy",
            "specs": []
        },
        {
            "name": "sentry-sdk",
            "specs": []
        },
        {
            "name": "Shapely",
            "specs": []
        },
        {
            "name": "shortuuid",
            "specs": []
        },
        {
            "name": "six",
            "specs": []
        },
        {
            "name": "smmap",
            "specs": []
        },
        {
            "name": "subprocess32",
            "specs": []
        },
        {
            "name": "termcolor",
            "specs": []
        },
        {
            "name": "tifffile",
            "specs": []
        },
        {
            "name": "toml",
            "specs": []
        },
        {
            "name": "torch",
            "specs": []
        },
        {
            "name": "torchaudio",
            "specs": []
        },
        {
            "name": "torchvision",
            "specs": []
        },
        {
            "name": "tqdm",
            "specs": []
        },
        {
            "name": "typing-extensions",
            "specs": []
        },
        {
            "name": "urllib3",
            "specs": []
        },
        {
            "name": "virtualenv",
            "specs": []
        },
        {
            "name": "wandb",
            "specs": []
        },
        {
            "name": "yapf",
            "specs": []
        },
        {
            "name": "yaspin",
            "specs": []
        },
        {
            "name": "zope.event",
            "specs": []
        },
        {
            "name": "zope.interface",
            "specs": []
        },
        {
            "name": "addict",
            "specs": []
        }
    ],
    "lcname": "fedhf"
}
        
Elapsed time: 0.34503s