tensorflow multiple device training terms - tensorflow

I'm trying to launch my deep network on multiple devices. I'm using the slim framework provided in tensorflow/models/slim. But I have difficulty in understanding the terms in the source code.
What are the meanings of clone, replica, parameter-server(ps) and worker? Can anyone explain them to a real system muggle like me?

Related

How can I use Tensorflow to make cellular automata?

Knowing that Tensorflow is good for working with matrices, would I be able to use Tensorflow to create a cellular automata? And would this offer a great deal of speed over just coding it in Python?
Are there any tutorials or websites that could point me in the right direction to use Tensorflow for more general purpose computing than machine learning (for example, simulations)?
If so, could someone help point me in the right direction to the type of Tensorflow commands I would need to learn to make this program? Thanks!
A TensorFlow implementation is likely to offer an improvement in execution time, especially if executed by GPU, since CA can be executed in parallel. See: https://cs.stackexchange.com/a/320/67726.
A starting point for TensorFlow in general might be the official guide and documentation, which do go beyond just machine learning. Also available are two tutorials on non-ML examples: Mandelbrot Set, Partial Differential Equations.
While TensorFlow is usually mentioned in the context of machine learning, it is worth noting that:
TensorFlow™ is an open source software library for high performance
numerical computation. Its flexible architecture allows easy
deployment of computation across a variety of platforms (CPUs, GPUs,
TPUs), and from desktops to clusters of servers to mobile and edge
devices.
Edit: here's an implementation and a tutorial about Conway's Game of Life using TF.

Machine Learning Tensor flow and sentiment analysis

I'd like to make a machine learning with Tensorflow about sentiment analysis, I know it's possible to do machine learning with tensorflow but is it possible to make machine learning suited for sentiment analysis ? I know it's possible to do sentiment analysis with Convolutional Neuronal Network (Deep learning so) with Tensor flow but I'm looking for a solution that only uses Machine learning algorithm, not deep learning.
Would you know great tutorials to begin a GCP Machine Learning project ? Is it possible to begin a GCP Machine Learning Project without using google API or Tensorflow (just in "regular" python but which can be linked to other services like google big query, data prep) ?
Thank you very much for your answers :)
In general it wouldn't make much sense to use TensorFlow for non-deep learning solutions. You can always try scikit-learn for implementing other machine learning techniques with python, but I do not think that you could get far with sentiment analysis this way. For a nice introduction on sentiment analysis with TensorFlow I would suggest to go through this guide.
As for machine learning on google cloud platform: there is a number of APIs hosted in the platform which use pre-built models, including cloud natural language which has an analyzeSentiment method. Here you can find a python tutorial on how to do sentiment analysis using the python client library of the cloud natural language api.
If you still want to try and build your own model, you can train (with either scikit-learn or tensorflow), deploy and then use it for predictions on the cloud with the google cloud machine learning engine. As for tutorials, I would suggest that you visit the official documentations of any of the above products/services, you will find there comprehensive step-by-step guides for all levels.

distributed tensorflow clarification

Is my understanding correct that model_deploy lets the user train a model using multiple devices on a single machine? The basic premise seems that the clone devices do variable sharing and variables get distributed to param servers in a round-robin fashion.
On the other hand distributed tensorflow framework enables the user to train a model through a cluster. A Cluster lets the user train a model using multiple devices across multiple servers.
I think the Slim documentation is very slim and the point has been raised couple of times already: Configuration/Flags for TF-Slim across multiple GPU/Machines
Thank you.

Real Time Object detection using TensorFlow

I have just started experimenting with Deep Learning and Computer Vision technologies. I came across this awesome tutorial. I have setup the TensorFlow environment using docker and trained my own sets of objects and it provided greater accuracy when I tested it out.
Now I want to make the same more real-time. For example, instead of giving an image of an object as the input, I want to utilize a webcam and make it recognize the object with the help of TensorFlow. Can you guys guide me with the right place to start with this work?
You may want to look at TensorFlow Serving so that you can decouple compute from sensors (and distribute the computation), or our C++ api. Beyond that, tensorflow was written emphasizing throughput rather than latency, so batch samples as much as you can. You don't need to run tensorflow at every frame, so input from a webcam should definitely be in the realm of possibilities. Making the network smaller, and buying better hardware are popular options.

What is Google's business model for Tensorflow? also why did Baidu develop PaddlePaddle

I heard Google has over 100 engineers working on Tensorflow. So, what does Google gain from distributing this expensive engine for free? Will Google later charge corporate Tensorflow users? ?
What is google’s plan for Tensorflow? will it be free forever? like a deep learning version of python?
Some people tell me it's to reduce new employee training time. If so, why did Baidu develop it's own deep learning library when that means they should spend extra time training it's employees who are used to using Tensorflow, how to use Baidu's deep learning library
Well if everyone is using tensorflow there are more contributions made to it by the public. That helps google for free.
Even if it doesn't become a product that they sell they can still make money from it.
The thing is they might be able to sell services around it like lessons. They can also sell hardware specifically optimized for tensorflow etc.
Almost every company had its own machine learning framework. The reason they open sourced them was because each of theirs were going to fall much behind if it wasn't open source. A prime example is how Torch was doing so great up until tensorflow became open source as well. (With google's backing and because it's in python instead of lua are a few reasons tf became more popular).