OpenMined / PySyft

Perform data science on data that remains in someone else's server
https://www.openmined.org/
Apache License 2.0
9.51k stars 1.99k forks source link

GSoC Project: Implement the command translation layer inside of PySyft which will allow for PySyft Tensorflow plans to be converted to PyTorch #2997

Closed cereallarceny closed 4 years ago

cereallarceny commented 4 years ago

Problem: Essentially we’ll already have a translation function that exists for Javascript - this project simply brings the same logic to Python. This may not end up serving a permanent purpose in PySyft, but we think that this would allow for a developer to create a plan using PySyft for TensorFlow and still have training available for mobile phones. This would be an incredible achievement since currently we’re scoped to only allow the training of PyTorch models on mobile devices (since they require the use of TorchScript). If a developer wanted to write their PySyft model using TensorFlow, they would then need to convert this plan to use PyTorch, before ultimately hosting the plan on PyGrid as a TorchScript.

Solution: We are building a command translation library for the syft.js web worker library called "Threepio". This project will need to be extended to support TensorFlow (Python) bindings. By this point, it should already have bindings for PyTorch and TensorFlow.js.

Requirements:

Difficulty: Medium

It’s worth noting that this project is considered optional “extra credit” for the Federated Learning roadmap: https://github.com/OpenMined/Roadmap/blob/master/web_and_mobile_team/projects/federated_learning.md

github-actions[bot] commented 4 years ago

This issue has been marked stale because it has been open 30 days with no activity. Leave a comment or remove the stale label to unmark it. Otherwise, this will be closed in 7 days.