Share & grow the world's knowledge!

- JEWv2 on Why aren’t taps and pipes filthy on the inside?
- robots914 on Are music bots actully illegal?
- SaiphSDC on How do the mechanical elements of a hydraulic press (oil, pumps, valves etc) withstand pressure that can flatten a piece of metal?
- GroovesRus on Are music bots actully illegal?
- zachtheperson on How do you bring back color from black and white images and videos?

Copyright © 2021 AnswerCult

A computer comes with chunks of code to do simple math operations like adding two numbers.

Then, you can install extra code from someone else that uses those simple building blocks to do something a bit fancier, like solving an equation.

Tensorflow is a collection of extra code implementing a whole bunch of building blocks useful for neural networks. Neural Networks are a family of mathematical functions (like, f(x)=ax for some constant a is a family) that have lots and lots of free parameters (instead of just 1 a that you pick, there are hundreds, thousands or even millions of different as that you need to set). Neural Networks have the nice property that, if you make a big enough network, they can approximate any other function to arbitrary accuracy (if you can figure out what to set the parameters to).

So tensorflow provides bits of code to evaluate a neural network for particular parameter values. It provides code to efficiently save a particular set of parameters to disk. And it provides code that is useful for searching for the right set of parameters to approximate some other function you have.

The other thing tensorflow does, is it provides versions of all those code bits that can run on your GPU, since a lot of these operations can be run in parallel (you don’t need to wait for the first operation to finish before starting the next one).

So how is tensorflow used? It is used to define neural networks for things like image classification. It’s a lot easier to define the network using tensorflow building blocks than it is to do so from just code snippets that let a computer add and subtract two numbers.