TensorFlow is an open source software library developed by Google for numerical computation with data flow graphs. It offers tremendous opportunities for developers building machine learning into their products. This ebook looks at what TensorFlow is, where it’s headed, and how it’s being put to work.
From the ebook:
What is TensorFlow?
When you have a photo of the Eiffel Tower, Google Photos can identify the image. This is possible thanks to machine learning and developments like TensorFlow. Prior to TensorFlow there was a division between the researchers of machine learning and those developing real products; that division made it challenging for developers to include machine learning in their software. With TensorFlow, that division is gone.
TensorFlow delivers a set of modules (providing for both Python and C/C++ APIs) that enable constructing and executing TensorFlow computations, which are then expressed in stateful data flow graphs. These graphs make it possible for applications like Google Photos to become incredibly accurate at recognizing locations in images based on popular landmarks.
In 2011, Google developed a product called DistBelief that worked on the positive reinforcement model. The machine would be given a picture of a cat and asked if it was a picture of a cat. If the machine guessed correctly, it was told so. An incorrect guess would lead to an adjustment so that it could better recognize the image.
TensorFlow improves on this concept by sorting through layers of data called Nodes. Diving deeper into the layers allows for additional and more complex questions about an image. For example, a first-layer question might simply require the machine to recognize a round shape. In deeper layers, the machine might be asked to recognize a cat’s eye. The flow process (from input, through the layers of data, to output) is called a tensor ... hence the name TensorFlow.