All Projects → Substra → substra

Substra / substra

Licence: Apache-2.0 license
Substra is a framework for traceable ML orchestration on decentralized sensitive data.

Programming Languages

python
139335 projects - #7 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to substra

Addressing-Class-Imbalance-FL
This is the code for Addressing Class Imbalance in Federated Learning (AAAI-2021).
Stars: ✭ 62 (-56.64%)
Mutual labels:  federated-learning
PyAriesFL
Federated Learning on HyperLedger Aries
Stars: ✭ 19 (-86.71%)
Mutual labels:  federated-learning
federated-learning-poc
Proof of Concept of a Federated Learning framework that maintains the privacy of the participants involved.
Stars: ✭ 13 (-90.91%)
Mutual labels:  federated-learning
baai-federated-learning-helmet-baseline
电力人工智能数据竞赛——安全帽未佩戴行为目标检测赛道基准模型
Stars: ✭ 26 (-81.82%)
Mutual labels:  federated-learning
FedNLP
FedNLP: An Industry and Research Integrated Platform for Federated Learning in Natural Language Processing, Backed by FedML, Inc. The Previous Research Version is Accepted to NAACL 2022
Stars: ✭ 215 (+50.35%)
Mutual labels:  federated-learning
flPapers
Paper collection of federated learning. Conferences and Journals Collection for Federated Learning from 2019 to 2021, Accepted Papers, Hot topics and good research groups. Paper summary
Stars: ✭ 76 (-46.85%)
Mutual labels:  federated-learning
CRFL
CRFL: Certifiably Robust Federated Learning against Backdoor Attacks (ICML 2021)
Stars: ✭ 44 (-69.23%)
Mutual labels:  federated-learning
GrouProx
FedGroup, A Clustered Federated Learning framework based on Tensorflow
Stars: ✭ 20 (-86.01%)
Mutual labels:  federated-learning
ambianic-edge
The core runtime engine for Ambianic Edge devices.
Stars: ✭ 98 (-31.47%)
Mutual labels:  federated-learning
Federated-Learning-and-Split-Learning-with-raspberry-pi
SRDS 2020: End-to-End Evaluation of Federated Learning and Split Learning for Internet of Things
Stars: ✭ 54 (-62.24%)
Mutual labels:  federated-learning
federated pca
Federated Principal Component Analysis Revisited!
Stars: ✭ 30 (-79.02%)
Mutual labels:  federated-learning
federated-learning
tf implementation of federated learning
Stars: ✭ 36 (-74.83%)
Mutual labels:  federated-learning
PyVertical
Privacy Preserving Vertical Federated Learning
Stars: ✭ 133 (-6.99%)
Mutual labels:  federated-learning
FEDL
FEDL-Federated Learning algorithm using TensorFlow (Transaction on Networking 2021)
Stars: ✭ 41 (-71.33%)
Mutual labels:  federated-learning
communication-in-cross-silo-fl
Official code for "Throughput-Optimal Topology Design for Cross-Silo Federated Learning" (NeurIPS'20)
Stars: ✭ 19 (-86.71%)
Mutual labels:  federated-learning
federated
Bachelor's Thesis in Computer Science: Privacy-Preserving Federated Learning Applied to Decentralized Data
Stars: ✭ 25 (-82.52%)
Mutual labels:  federated-learning
distributed-learning-contributivity
Simulate collaborative ML scenarios, experiment multi-partner learning approaches and measure respective contributions of different datasets to model performance.
Stars: ✭ 49 (-65.73%)
Mutual labels:  federated-learning
pFedMe
Personalized Federated Learning with Moreau Envelopes (pFedMe) using Pytorch (NeurIPS 2020)
Stars: ✭ 196 (+37.06%)
Mutual labels:  federated-learning
decentralized-ml
Full stack service enabling decentralized machine learning on private data
Stars: ✭ 50 (-65.03%)
Mutual labels:  federated-learning
srijan-gsoc-2020
Healthcare-Researcher-Connector Package: Federated Learning tool for bridging the gap between Healthcare providers and researchers
Stars: ✭ 17 (-88.11%)
Mutual labels:  federated-learning

This repository is inactive.

The Substra project is under active development as a closed-source solution. There are ongoing strategic discussions regarding the possibility of open-sourcing newer versions, but no conclusion has been reached yet.


substra logo

CLI and SDK for interacting with Substra platform.

Documentation website

Table of contents

Install

To install the command line interface and the python sdk, run the following command:

pip install substra

To enable Bash completion, you need to put into your .bashrc:

eval "$(_SUBSTRA_COMPLETE=source substra)"

For zsh users add this to your .zshrc:

eval "$(_SUBSTRA_COMPLETE=source_zsh substra)"

From this point onwards, substra command line interface will have autocompletion enabled.

Running the Substra platform locally

Check out the setup guide.

Usage

Credentials are required for using this tool.

CLI

substra --help

SDK

import substra

client = substra.Client()
# enjoy...

Documentation

Interacting with the Substra platform:

Implementing your assets in python (thanks to the substratools library)

Examples

Compatibility table

These sets of versions have been tested for compatilibility:

substra substra-chaincode substra-backend substra-tests hlf-k8s substra-frontend substra-tools
0.4.0-alpha.3 0.0.8-alpha.6 0.0.12-alpha.13 0.2.0-alpha.1 0.0.11-alpha.1 0.0.16
0.4.0-alpha.4 0.0.8-alpha.9 0.0.12-alpha.20 0.2.0-alpha.2 0.0.11-alpha.1 0.0.16
0.4.0 0.0.8 0.0.12 0.2.0 0.0.11 0.0.16
0.5.0 0.0.8 0.0.14 0.3.0 0.0.12 0.0.16 0.5.0
0.6.0 0.0.10 0.0.19 0.4.0 0.0.12 0.0.17 0.5.0
0.7.0 0.0.11 0.1.2
helm chart 1.4.0
0.5.0 0.0.13
helm chart 3.0.1
0.0.19
helm chart 1.0.0-alpha.2
0.6.1
0.7.1 0.0.11 0.1.3
helm chart 1.5.1
0.5.0 0.0.13
helm chart 3.0.1
0.0.19
helm chart 1.0.0-alpha.2
0.6.1
0.8.0 0.2.0 0.1.6
helm chart 1.6.0
0.6.0 0.0.16
helm chart 5.1.0
0.0.20
helm chart 1.0.0-alpha.2
0.7.0
0.8.0 0.2.2 0.1.9
helm chart 1.9.0
0.6.0 0.0.16
helm chart 6.2.2
0.0.20
helm chart 1.0.0-alpha.2
0.7.0
0.9.0 0.3.0 0.1.12
helm chart 2.0.3
0.6.1 0.0.16
helm chart 7.0.0
0.0.20
helm chart 1.0.0-alpha.2
0.7.0

Adding entries to the compatibility table

$ cd substra-tests
$ make test

Contributing

Setup

To setup the project in development mode, run:

pip install -e .[test]

To run all tests, use the following command:

python setup.py test

Documentation

To generate the command line interface documentation, sdk and schemas documentation, the python version must be 3.7. Run the following command:

make doc

Documentation will be available in the references/ directory.

Deploy

Deployment to pypi.org should be automatic thanks to Travis but if you need to do it manually, here is what you need to do:

rm -rf dist/*
python3 setup.py sdist bdist_wheel
twine upload dist/* --verbose
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].