What is TensorFlow?
Published: 2019-12-02 15:48:00

In this post, we are going to see what is TensorFlow, why TensorFlow, and how does it work?

![TensorFlow](https://camo.githubusercontent.com/0905c7d634421f8aa4ab3ddf19a582572df568e1/68747470733a2f2f7777772e74656e736f72666c6f772e6f72672f696d616765732f74665f6c6f676f5f736f6369616c2e706e67)


# What is TensorFlow?
*“An end-to-end open source machine learning platform.”*

Deep learning is a subfield of machine learning. There are many deep learning frameworks out there. This is a brief overview of the most popular and widely used frameworks.

![Deep Learning Frameworks](https://analyticsindiamag.com/wp-content/uploads/2018/04/all_libraries.png)
Deep Learning Frameworks(Image [Source](https://analyticsindiamag.com/evaluation-of-major-deep-learning-frameworks/))

TensorFlow is the most famous deep learning library in the world and a Python-friendly open source library. TensorFlow is a powerful data flow oriented library developed by the Google Brain Team. It is designed to be easy to use and widely applicable to both numeric and neural network oriented problems. It was released under the Apache License 2.0 on November 9, 2015. Google product uses machine learning in all of its products to improve the search engine, translation, image captioning or recommendations. Latest TensorFlow 2.0 was released in October 2019. 

Many popular companies such as NVIDIA, Twitter, Snapchat, Uber and more are using TensorFlow for all their major operations and research areas.
TensorFlow is being used in over 70 K+ open source repositories and 780 K+ commits thus far on GitHub.

# How TensorFlow works?
TensorFlow is cross-platform. It was built to run on multiple CPUs or GPUs and even mobile operating systems, and it has several wrappers in several languages like Python, C++ or Java.
Given below is an ecosystem of Tensorflow:
![an ecosystem of Tensorflow](https://d2h0cx97tjks2p.cloudfront.net/blogs/wp-content/uploads/sites/2/2018/04/main-qimg-b7eeb73f04896b36b3baaf6b447426c4.png)

TensorFlow utilizes dataflow graph for calculations. It describes how data moves through a graph, or a series of processing nodes.
Nodes in the graph represent math operations, and the edges represent multidimensional data arrays (tensors) communicated between them.
The name “TensorFlow” is derived from the operations which neural networks perform on multidimensional data arrays or tensors! It’s literally a flow of tensors. 


![Alt text of image](https://www.tensorflow.org/images/tensors_flowing.gif)

## TensorBoard: TensorFlow's visualization toolkit
TensorBoard provides the visualization and tooling needed for machine learning experimentation. It lets us visualize the graphs, plot quantitative metrics about the graph with additional data like images to pass through it.

![TensorBoard](https://www.tensorflow.org/tensorboard/images/tensorboard.gif)


A Japanese farmer turned programmer used it to detect the best quality cucumber, which only his father and mother can do even with their years of experience.
That's the power of Machine Learning, which is now available to everyone because of TensorFlow.

## Install TensorFlow 2

`# Current stable release for CPU-only`
`pip install tensorflow `

In the [TensorFlow GitHub org](https://github.com/tensorflow), you can find not only TensorFlow itself, but a useful ecosystem of other repos, including models, serving, TensorBoard, Project Magenta, and many more.

## Reference:
* [TensorFlow Website](https://www.tensorflow.org/)
* [A Complete Guide to TensorFlow](https://data-flair.training/blogs/tensorflow-tutorials-home/)
* [Tensorflow Tutorial – Tensorflow Ecosystem0](https://data-flair.training/blogs/tensorflow-tutorial/)
* [Wikipedia](https://en.wikipedia.org/wiki/TensorFlow)