{ "info": { "author": "['Daniel J. Beutel ', 'Taner Topal ']", "author_email": "services@xain.io", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Intended Audience :: Science/Research", "License :: OSI Approved :: Apache Software License", "Operating System :: MacOS :: MacOS X", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", "Topic :: Scientific/Engineering", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# XAIN\n\nThe 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.\n\nAt 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.\n\nIn 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.\n\nPOLITE 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.\n\n## Quick Start\n\nXAIN requires [Python 3.6+](https://python.org/). To install the `xain` package just run:\n\n```shell\n$ pip install xain\n```\n\nXAIN can also be installed with GPU support through the `gpu` extra feature. To\ninstall the `xain` package with support for GPUs just run:\n\n```shell\n$ pip install xain[gpu]\n```\n\n## Install from source\n\nFor development we require some extra system dependencies:\n- [clang-format 8+](https://clang.llvm.org/docs/ClangFormat.html)\n - Linux: `sudo apt install clang-format`\n - macOS: `brew install clang-format`\n\n### Clone Repository & Install XAIN in development mode\n\nTo clone this repository and to install the XAIN project, please execute the following commands:\n\n```shell\n$ git clone https://github.com/xainag/xain.git\n$ cd xain\n\n$ pip install -e .[dev]\n```\n\n### Verify Installation\n\nYou can verify the installation by running the tests\n\n```shell\n$ pytest\n```\n\n### Running training sessions and benchmarks\n\nTo run training sessions, see the [benchmark package](https://github.com/xainag/xain/tree/master/xain/benchmark)\n\n## Related Papers and Articles\n\n- [An introduction to XAIN\u2019s GDPR-compliance Layer for Machine Learning](https://medium.com/xain/an-introduction-to-xains-gdpr-compliance-layer-for-machine-learning-f7c321b31b06)\n- [Communication-Efficient Learning of Deep Networks from Decentralized Data](https://arxiv.org/abs/1602.05629)\n- [Analyzing Federated Learning through an Adversarial Lens](https://arxiv.org/abs/1811.12470)\n- [Towards Federated Learning at Scale: System Design](https://arxiv.org/abs/1902.01046)\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/xainag/xain", "keywords": "", "license": "Apache License Version 2.0", "maintainer": "", "maintainer_email": "", "name": "xain", "package_url": "https://pypi.org/project/xain/", "platform": "", "project_url": "https://pypi.org/project/xain/", "project_urls": { "Homepage": "https://github.com/xainag/xain" }, "release_url": "https://pypi.org/project/xain/0.1.0/", "requires_dist": [ "typing-extensions (==3.7.4)", "numpy (==1.15.4)", "absl-py (==0.7.1)", "matplotlib (==3.1.1)", "requests (==2.22.0)", "botocore (==1.12.220)", "boto3 (==1.9.220)", "awscli (==1.16.230)", "faker (==2.0.0)", "grpcio (==1.23.0)", "protobuf (==3.9.1)", "numproto (==0.2.0)", "tensorflow (==1.14.0)", "black (==19.3b0) ; extra == 'dev'", "mypy (==0.720) ; extra == 'dev'", "pylint (==2.3.1) ; extra == 'dev'", "astroid (<=2.2.5) ; extra == 'dev'", "isort (==4.3.20) ; extra == 'dev'", "rope (==0.14.0) ; extra == 'dev'", "pip-licenses (==1.15.2) ; extra == 'dev'", "grpcio-tools (==1.23.0) ; extra == 'dev'", "mypy-protobuf (==1.15) ; extra == 'dev'", "twine (==2.0.0) ; extra == 'dev'", "pytest (==4.6.2) ; extra == 'dev'", "pytest-cov (==2.7.1) ; extra == 'dev'", "pytest-watch (==4.2.0) ; extra == 'dev'", "tensorflow-gpu (==1.14.0) ; extra == 'gpu'", "pytest (==4.6.2) ; extra == 'test'", "pytest-cov (==2.7.1) ; extra == 'test'", "pytest-watch (==4.2.0) ; extra == 'test'" ], "requires_python": ">=3.6", "summary": "XAIN is an open source framework for federated learning.", "version": "0.1.0" }, "last_serial": 5884806, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "f9595035999a4722986a5109199dc0b7", "sha256": "9f73576743372bd723397f19311fff35c654b57144b7259cda047c0dc11e2054" }, "downloads": -1, "filename": "xain-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "f9595035999a4722986a5109199dc0b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 99891, "upload_time": "2019-09-25T11:39:45", "url": "https://files.pythonhosted.org/packages/97/ff/d9f45bde99965703e1ede11c02a823caab95cf2cbc3cb836c10c3723c3ac/xain-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "04d7347c27c06e259c6e5228d1f42980", "sha256": "9c517636ece8c8f1022e5cd25f74e61984b442ef8f1a4e75f0b97dd5bace628f" }, "downloads": -1, "filename": "xain-0.1.0.tar.gz", "has_sig": false, "md5_digest": "04d7347c27c06e259c6e5228d1f42980", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 60401, "upload_time": "2019-09-25T11:39:48", "url": "https://files.pythonhosted.org/packages/b7/5a/8f4a0551884a2dfd11a457ab3c6db4352ebef26debc949d0ff522eee504b/xain-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f9595035999a4722986a5109199dc0b7", "sha256": "9f73576743372bd723397f19311fff35c654b57144b7259cda047c0dc11e2054" }, "downloads": -1, "filename": "xain-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "f9595035999a4722986a5109199dc0b7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 99891, "upload_time": "2019-09-25T11:39:45", "url": "https://files.pythonhosted.org/packages/97/ff/d9f45bde99965703e1ede11c02a823caab95cf2cbc3cb836c10c3723c3ac/xain-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "04d7347c27c06e259c6e5228d1f42980", "sha256": "9c517636ece8c8f1022e5cd25f74e61984b442ef8f1a4e75f0b97dd5bace628f" }, "downloads": -1, "filename": "xain-0.1.0.tar.gz", "has_sig": false, "md5_digest": "04d7347c27c06e259c6e5228d1f42980", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 60401, "upload_time": "2019-09-25T11:39:48", "url": "https://files.pythonhosted.org/packages/b7/5a/8f4a0551884a2dfd11a457ab3c6db4352ebef26debc949d0ff522eee504b/xain-0.1.0.tar.gz" } ] }