Comments (2)
@morgangiraud once you have completed your investigation, could you post your notes here?
from tf-encrypted.
Multiple questions arise from this:
Why TF serving can be interesting for us
It specifically handle the usecase of load once and serve multiple request
which is mandatory for our usage due to the overhead of network optimisation done by TF when loading a distributed graph.
It's also made for model versioning, updates and rollback which can be nice in the long run.
Does our models can be loaded in TF serving
As long as we keep using Tensorflow functions under the hood to build our graph, we are fine.
TF serving provides signatures for regression, calssification and a generic prediction. Those are used to create a gRPC API and/or a REST API. Those APIs consume JSON, convert and route it for your graph inputs automatically. As long as the graph is only containing native C++ functions, one can load its graph using TF Serving.
Note that we can build new C++ ops and add them to a custom TF build, that will be used to build a custom TF Serving.
Can we do distributed Tensorflow Serving
There is currently no use cases for Google to implement it there is no obvious reason why distributing computation for inference would speed up the said inference.
But, hopefully, at least one guy wanted to do it and he has been kind enough to post his exploration on StackOverflow here.
Based on his notes, I gave it a go and see if I could save a distributed model on localhost with a cluster and use it in RF Serving out of the box: spent 1h30 building using bazel to end up erroring...
First good point:
- all the needed bits are here to do distributed computation using TensorFlow Serving and TF clusters.
Second good point:
- When defining a model and save it. Devices are saved by default, meaning that as long as you define your cluster and keep it online. TF Serving is just using the graph which handles the distributed computation.
Potential bad points:
- This is not officialy supported so might run into multiple problems
- Model versioning might be broken.
- What happens if the master node stops?
- What happens if anhy stops actually?
- Error handling maybe?
TODO
Actually seeing if it works out of the box or you have to build from scratch. I'll retry inside a docker env soon
Interesting feedback from zendesk
1 year old though, things have improved since
from tf-encrypted.
Related Issues (20)
- Polymorphic Encryption HOT 2
- Problem with importing "tf_encrypted" HOT 2
- running example of logistic error HOT 10
- Segmentation fault (core dumped) HOT 8
- Version issue (AttributeError: module 'tensorflow' has no attribute 'ConfigProto') HOT 1
- Segmentation fault and No module named 'tf_encrypted.protocol.aby3' happened after upgrading aby3 HOT 7
- Save and Load ABY3 Model
- Can this framework use encrypted training data to train network models? Are there any relevant cases to learn from? HOT 7
- version 0.8 federation-learning example seems contain an error in validation dataset setting HOT 2
- AssertionError When running Server HOT 2
- Scaling base question HOT 2
- 'NoneType' object has no attribute 'secure_seed' HOT 9
- TypeError: can only concatenate list (not "TensorShapeV1") to list. (An error in sample_seeded_uniform) HOT 2
- In the federated learning of examples, how to protect the DataOwner's gradient? HOT 1
- I can't install TF-Encrypted HOT 1
- Is it possible to evaluate the BaseModel with other keras metrics aside from binary and categorical accuracy? HOT 5
- Trying to better understand the framework beahavior HOT 2
- ValueError: Invalid dtype tf.int16 HOT 2
- why I can see all secret shares in one party? HOT 3
- Can't import tf_encrypted in Colab notebook
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tf-encrypted.