generic_and_open_learning_federator

A scalable, portable, and lightweight Federated Learning framework.

https://github.com/intelligentsystemslab/generic_and_open_learning_federator

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: nature.com, ieee.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.1%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

A scalable, portable, and lightweight Federated Learning framework.

Basic Info
  • Host: GitHub
  • Owner: IntelligentSystemsLab
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 1.93 GB
Statistics
  • Stars: 25
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 1
Created over 3 years ago · Last pushed about 1 year ago
Metadata Files
Readme Changelog Contributing License Citation Authors

README.rst

===================================
Generic and Open Learning Federator
===================================


.. image:: https://img.shields.io/pypi/v/golf_federated.svg
        :target: https://pypi.python.org/pypi/golf_federated
        :alt: PyPI Version

.. image:: https://readthedocs.org/projects/generic-and-open-learning-federator/badge/?version=latest
        :target: https://generic-and-open-learning-federator.readthedocs.io/en/latest/?version=latest
        :alt: Documentation Status

.. image:: https://app.travis-ci.com/IntelligentSystemsLab/generic_and_open_learning_federator.svg?token=uyV9JpsFqExQVbjDeQ5q&branch=main
        :alt: Build Status




A scalable, portable, and lightweight Federated Learning framework.


* **Free software**: MIT license
* **Documentation**: https://generic-and-open-learning-federator.readthedocs.io.

Citations
--------

If this project is helpful to your research, please cite our papers:

  `L. You, Z. Guo, C. Yuen*, C.Y.C. Chen, Y. Zhang, H.V. Poor,"A framework reforming personalized Internet of Things by federated meta-learning", Nature Communications, 2025. `_

  `L. You, Z. Guo, B. Zuo, Y. Chang*, C. Yuen,"SLMFed: A Stage-based and Layer-wise Mechanism for Incremental Federated Learning to Assist Dynamic and Ubiquitous IoT", IEEE Internet of Things Journal, 2024. `_

  `S. Liu, L. You*, R. Zhu, B. Liu, R. Liu, Y. Han, C. Yuen,"AFM3D: An Asynchronous Federated Meta-learning Framework for Driver Distraction Detection", IEEE Transactions on Intelligent Transportation Systems, 2024. `_

  `L. You, S. Liu, B. Zuo, C. Yuen*, D. Niyato, H. V. Poor,"Federated and Asynchronized Learning for Autonomous and Intelligent Things", IEEE Network Magazine, 2023. `_

  `L. You, S. Liu, T. Wang, B. Zuo, Y. Chang, C. Yuen*,"AiFed: An Adaptive and Integrated Mechanism for Asynchronous Federated Data Mining", IEEE Transactions on Knowledge and Data Engineering, 2023. `_

  `L. You, S. Liu, Y. Chang, C. Yuen*,"A triple-step asynchronous federated learning mechanism for client activation, interaction optimization, and aggregation enhancement", IEEE Internet of Things Journal, 2022. `_

.. code-block:: sh

    @article{You2025framework,
      title={A framework reforming personalized Internet of Things by federated meta-learning},
      author={You, Linlin and Guo, Zihan and Yuen, Chau and Chen, Calvin Yu-Chian and Zhang, Yan and Poor, H. Vincent},
      journal={Nature communications},
      volume={16},
      pages={3739},
      year={2025},
      publisher={Nature Publishing Group UK London}
    }

    @article{you2024slmfed,
      title={SLMFed: A Stage-Based and Layerwise Mechanism for Incremental Federated Learning to Assist Dynamic and Ubiquitous IoT},
      author={You, Linlin and Guo, Zihan and Zuo, Bingran and Chang, Yi and Yuen, Chau},
      journal={IEEE Internet of Things Journal},
      volume={11},
      number={9},
      pages={16364--16381},
      year={2024},
      publisher={IEEE}
    }  

    @article{liu2024afm3d,
      title={AFM3D: An asynchronous federated meta-learning framework for driver distraction detection},
      author={Liu, Sheng and You, Linlin and Zhu, Rui and Liu, Bing and Liu, Rui and Yu, Han and Yuen, Chau},
      journal={IEEE Transactions on Intelligent Transportation Systems},
      volume={25},
      number={8},
      pages={9659--9674},
      year={2024},
      publisher={IEEE}
    }

    @article{you2023federated,
      title={Federated and asynchronized learning for autonomous and intelligent things},
      author={You, Linlin and Liu, Sheng and Zuo, Bingran and Yuen, Chau and Niyato, Dusit and Poor, H Vincent},
      journal={IEEE Network},
      volume={38},
      number={2},
      pages={286--293},
      year={2023},
      publisher={IEEE}
    }

    @article{you2023aifed,
      title={AiFed: An adaptive and integrated mechanism for asynchronous federated data mining},
      author={You, Linlin and Liu, Sheng and Wang, Tao and Zuo, Bingran and Chang, Yi and Yuen, Chau},
      journal={IEEE Transactions on Knowledge and Data Engineering},
      volume={36},
      number={9},
      pages={4411--4427},
      year={2023},
      publisher={IEEE}
    }

    @article{you2022triple,
      title={A triple-step asynchronous federated learning mechanism for client activation, interaction optimization, and aggregation enhancement},
      author={You, Linlin and Liu, Sheng and Chang, Yi and Yuen, Chau},
      journal={IEEE Internet of Things Journal},
      volume={9},
      number={23},
      pages={24199--24211},
      year={2022},
      publisher={IEEE}
    }

Features
--------

* GOLF provides a lightweight solution to support the implementation of FL.
* GOLF modularizes system functions to achieve loose coupling during system development and deployment, which makes the framework more generic and scalable.
* GOLF uses container technology to ensure that the system is weakly dependent on the compilation environment to achieve portability.
* GOLF is compatible with multiple devices (e.g., Android, embedded computers, edge devices, etc.).

News
--------

#.  **June 07, 2024** - Introducing Cedar:

  Cedar is a secure, cost-efficient, and domain-adaptive framework for federated meta-learning. Key features include:

  -  **Federated Meta-Learning**: Enable a safeguarded knowledge transfer with high model generalizability and adaptability.
  -  **Cost-Efficient**: Implement a layer-wise model uploading mechanism to reduce communication cost.
  -  **Robust Security**: Defend against malicious attacks like data inversion and model poisoning.
  -  **High Performance**: Support high-performance personalization and customization of globally shareable meta-models.

Installation
-------------

To install GOLF, simply use pip:

.. code-block:: sh

    pip install golf_federated

Credits
-------

This package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage


Contributing
------------

We welcome contributions! Here are some ways you can help:

1. Report bugs and request features on GitHub Issues: https://github.com/IntelligentSystemsLab/generic_and_open_learning_federator/issues
2. Submit pull requests to improve the codebase.

Contact
-------

For any questions or issues, please contact the development team at `guozh29@mail2.sysu.edu.cn`.

Owner

  • Name: IntelligentSystemsLab
  • Login: IntelligentSystemsLab
  • Kind: user
  • Location: Guangzhou

GitHub Events

Total
  • Release event: 1
  • Watch event: 8
  • Push event: 9
  • Fork event: 1
  • Create event: 1
Last Year
  • Release event: 1
  • Watch event: 8
  • Push event: 9
  • Fork event: 1
  • Create event: 1

Dependencies

.github/workflows/python-publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
  • pypa/gh-action-pypi-publish 27b31702a0e7fc50959f5ad993c78deac1bdfc29 composite
docs/requirements_dev.txt pypi
  • Babel ==2.8.0 development
  • Sphinx ==3.1.2 development
  • imagesize ==1.2.0 development
  • jinja2 ==3.0.3 development
  • readme-renderer ==26.0 development
  • sphinx-argparse ==0.2.5 development
  • sphinx-rtd-theme ==0.5.0 development
  • sphinxcontrib-applehelp ==1.0.2 development
  • sphinxcontrib-devhelp ==1.0.2 development
  • sphinxcontrib-htmlhelp ==1.0.3 development
  • sphinxcontrib-images ==0.9.2 development
  • sphinxcontrib-jsmath ==1.0.1 development
  • sphinxcontrib-napoleon ==0.7 development
  • sphinxcontrib-qthelp ==1.0.3 development
  • sphinxcontrib-serializinghtml ==1.1.4 development
  • tensorflow ==2.3.4 development
  • torch ==1.8.1 development