Skip to content
The eXpandable AI Network (XAIN) represents an agnostic Federated Machine Learning framework to build privacy-preserving AI applications.
Python Shell Dockerfile
Branch: master
Clone or download
wilk10 XP-264 put coordinator as own package (#183)
* XP-264 rename grpc module cproto

* XP-264 break up grpc/coordinator.py into modules

* XP-264 update README

* XP-264 fix renaming grpc module to cproto

* XP-264 update import to Coordinator class in docstrings

* XP-264 update decorators in test_grpc

* XP-264 rebase Coordinator with master

* XP-264 remove clang_format

* XP-264 update github workflows

* XP-264-put-coordinator-as-own-package

* XP-264 remove failing test
Latest commit 333bf84 Dec 18, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github XP-264 put coordinator as own package (#183) Dec 18, 2019
benchmarks Xp 238 add participant selection (#179) Dec 17, 2019
docs XP-334 Add make docs into docs make file (#184) Dec 16, 2019
examples/tensorflow_hello_world Xp 238 add participant selection (#179) Dec 17, 2019
output Upload results Aug 3, 2019
protobuf/xain_fl/cproto XP-264 put coordinator as own package (#183) Dec 18, 2019
scripts XP-264 put coordinator as own package (#183) Dec 18, 2019
xain_fl XP-264 put coordinator as own package (#183) Dec 18, 2019
.dockerignore 🔨 XP-272 Archive rust code (#186) Dec 17, 2019
.editorconfig Align .editorconfig with black formatter Jul 3, 2019
.gitignore 🔨 XP-272 Archive rust code (#186) Dec 17, 2019
.isort.cfg Added grpc tooling to the project Sep 5, 2019
.readthedocs.yml Integrate docs with readthedocs (#169) Dec 3, 2019
CHANGELOG.md Increase version number and add renaming to CHANGELOG.md (#167) Dec 2, 2019
CODEOWNERS 🔨 XP-272 Archive rust code (#186) Dec 17, 2019
Dockerfile Project renaming XP-225 (#165) Dec 2, 2019
LICENSE XPO-78 Added Apache License 2.0 Aug 28, 2019
README.md XP-264 put coordinator as own package (#183) Dec 18, 2019
RELEASE_PROCESS.md Project renaming XP-225 (#165) Dec 2, 2019
conftest.py Rewrite flag usage for defaults so that it is better testable Jul 3, 2019
mypy.ini XP-264 put coordinator as own package (#183) Dec 18, 2019
pylint.ini Added grpc tooling to the project Sep 5, 2019
pytest.ini Project renaming XP-225 (#165) Dec 2, 2019
setup.py XP-264 put coordinator as own package (#183) Dec 18, 2019
test_array.npy XP-228 Update readme (#178) Dec 10, 2019

README.md

CircleCI PyPI GitHub license Documentation Status Gitter chat

XAIN

The XAIN project is building a GDPR-compliance layer for machine learning. The approach relies on Federated Learning as enabling technology that allows production AI applications to be fully privacy compliant.

Federated Learning also enables different use-cases that are not strictly privacy related such as connecting data lakes, reaching higher model performance in unbalanced datasets and utilising AI models on the edge.

This repository contains the source code for running the Coordinator. The Coordinator is the component of Federated Learning that selects the Participants for training and aggregates the models using federated averaging.

The Participants run in a separate environment than the Coordinator and connect to it using an SDK. You can find here the source code for it.

Quick Start

XAIN requires Python 3.6.4+. To install the xain-fl package just run:

$ python -m pip install xain-fl

Install from source

To clone this repository and to install the XAIN-FL project, please execute the following commands:

$ git clone https://github.com/xainag/xain-fl.git
$ cd xain-fl

$ sh scripts/setup.sh

Verify Installation

You can verify the installation by running the tests

$ pytest

Building the Documentation

The project documentation resides under docs/. To build the documentation run:

$ cd docs/
$ make docs

The generated documentation will be under docs/_build/html/. You can open the root of the documentation by opening docs/_build/html/index.html on your favorite browser or simply run the command:

$ make show

Running the Coordinator locally

To run the Coordinator on your local machine, use the command:

$ python xain_fl/cli.py -f test_array.npy

For more information about the CLI and its arguments, run:

$ python xain_fl/cli.py --help

Related Papers and Articles

You can’t perform that action at this time.