To run:
- Build the image with
docker build -t pyvertical:latest .
- Launch a container with
docker run -it -p 8888:8888 pyvertical:latest
- Defaults to launching jupyter lab
This framework design took inspiration from the PySyft-based PyVertical framework by OpenMined. The original framework supported SplitNN with one client owning all the data and a server owning all the labels. PyVertical have been extended with new functionalities, including:
- Multi-client Vertical Federated Learning support (Server owns labels, clients own data)
- Dynamic VFL system support (More details below)
- Some minor dependencies fixes for Python packages' requirements
This work is an improvement on paper: "VF-PS: How to Select Important Participants in Vertical Federated Learning, Efficiently and Securely?". Further details are provided in the report.