PySyft is a Python library for secure, private Deep Learning. PySyft decouples private data from model training, using Multi-Party Computation (MPC) within PyTorch. View the paper on Arxiv. Join the movement on Slack!
See PySyft in Action
Emulate remote PyTorch execution - This notebook demonstrates the tensor passing between workers, though both the workers live in the same environment.
Note: Run Server before Client
Federated Learning - This notebook demonstrates the model training over distributed data (data belonging to multiple owners).
git clone https://github.com/OpenMined/PySyft.git cd PySyft scripts/run_docker.sh
Image size: 644MB
The container mount the examples folder on a volume so every change on the notebooks is persistent. Furthermore the container is deleted when it is stopped, in a way to facilitate development. You just have to change PySyft code, and run the run_docker.sh script to observe changes you've made on notebooks.
PySyft supports Python >= 3.6 and PyTorch 0.3.1
conda install pytorch=0.3.1 -c soumith pip3 install -r requirements.txt python3 setup.py install
On Windows use the following steps to install PyTorch 0.3.1-
conda install -c peterjc123 pytorch conda install -c peterjc123 pytorch-cpu
Run Unit Tests
python3 setup.py test
Alternatively, tests can be run with
Run Local Notebook Server
All the examples can be played with by running the command
and selecting the pysyft kernel
Join the rapidly growing community of 2500+ on Slack and help us in our mission. We are really friendly people!
We are very grateful for contributions to PySyft from the following organizations!
Do NOT use this code to protect data (private or otherwise) - at present it is very insecure.