Skip to main content

XAIN is an open source framework for federated learning.

Project description

CircleCI PyPI GitHub license

XAIN

The XAIN project is building a GDPR-compliance layer for machine learning. The approach relies on federated machine learning (FedML) as enabling technology that removes compliance-related adoption barriers of AI applications used in production.

At present, the source code in this project demonstrates the effectiveness of our FedML implementation on well known benchmarks using a realistic deep learning model structure. We will soon add a link to details on those experiments.

In the future, we will open source here a first minimal viable product for this layer. And we will add links to articles and papers that describe our approaches to networking, architecture, and privacy-preserving technology. We will also provide references to legal opinions about how and why our compliance layer for machine learning meets the demands of GDPR.

POLITE NOTE: We want to point out that running the benchmarks as described below is consuming considerable resources. XAIN cannot take any responsibilities for costs that arise for you when you execute these demanding machine-learning benchmarks.

Quick Start

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

$ python -m pip install xain-fl

XAIN can also be installed with GPU support through the gpu extra feature. To install the xain-fl package with support for GPUs just run:

$ python -m pip install xain-fl[gpu]

Running training sessions and benchmarks

To run training sessions, see the benchmark package and the benchmark documentation.

Install from source

For development we require some extra system dependencies:

  • clang-format 8+
    • Linux: sudo apt install clang-format
    • macOS: brew install clang-format

Clone Repository & Install XAIN in development mode

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

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

$ python -m pip install -e .[dev]

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.

Related Papers and Articles

Release history Release notifications

This version

0.2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for xain-fl, version 0.2.0
Filename, size File type Python version Upload date Hashes
Filename, size xain_fl-0.2.0-py3-none-any.whl (62.8 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size xain_fl-0.2.0.tar.gz (42.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page