Improve this article..
TensorFlow is an open source software library for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) that flow between them.
TensorFlow was originally developed by researchers and engineers working on the Google Brain team within Google's Machine Intelligence Research organization for the purposes of conducting machine learning and deep neural networks research. The system is general enough to be applicable in a wide variety of other domains, as well.
This flexible architecture lets you deploy computation to one or more CPUs or GPUs in a desktop, server, or mobile device without rewriting code.
What are the use cases of the TensorFlow?
1. Voice/Sound Recognition
One of the most well-known uses of TensorFlow are sound-based applications.
These can be:
Voice recognition – mostly used in IoT, Automotive, Security and UX/UI
Voice search – mostly used in Telecoms, Handset Manufacturers
Sentiment Analysis – mostly used in CRM
Flaw Detection (engine noise) – mostly used in Automotive and Aviation
2. Text-Based Applications
Further popular uses of TensorFlow are text-based applications such as sentimental analysis (CRM, Social Media), Threat Detection (Social Media, Government) and Fraud Detection (Insurance, Finance). Language Detection is one of the most popular uses of text based applications. Text Summarization is another application.
TensorFlow object recognition algorithms classify and identify arbitrary objects within larger images.
4. Time Series
TensorFlow Time Series algorithms are used for analyzing time series data in order to extract meaningful statistics. They allow forecasting non-specific time periods in addition to generate alternative versions of the time series.
5. Video Detection
What are the platforms and languages TensorFlow supports?
TensorFlow is available on 64-bit Linux, macOS, Windows and also on the mobile computing platforms like Android and iOS. Google has announced a software stack specifically for Android development called TensorFlow Lite.
TensorFlow has APIs available in the following languages: Python, C++, Java, Go. At present, Python API is the recommended to be used. TensorFlow Python APIs can be invoked from both Python2 and Python3. Also TensorFlow APIs are provided as bindings for C#, Haskell, Julia, Ruby and Rust. The TensorFlow package also provides access to the complete TensorFlow API from within R.
Can you name some example applications in which TensorFlow is being used?
TensorFlow is being used by Google in following areas:
1. RankBrain - Google search engine.
2. SmartReply - Deep LSTM model to automatically generate email responses.
3. Massively Multitask Networks for Drug Discovery - A deep neural network model for identifying promising drug candidates.
4. On-Device Computer Vision for OCR - On-device computer vision model to do optical character recognition to enable real-time translation.
Apart from Google, various companies that are using TensorFlow in their applications include ARM, AIRBNB, AIRBUS, DROPBOX, EBAY, INTEL, MI, SAP, SNAPCHAT, TWIITER, UBER, etc.
How TensorFlow is different from other Machine Learning Platforms?
TensorFlow is relatively painless to setup and offers tutorials aimed at beginners that cover the theoretical underpinnings and practical application of neural networks.
TensorFlow is slower than Theano and Torch but this is currently being addressed head on by Google and the open source community.
TensorBoard is TensorFlow's visualization module which provides an intuitive view of your computation pipeline. Keras, a deep-learning library, was recently ported to run on TensorFlow which means any model written in Keras can now run on TensorFlow. Finally, it's worth mentioning that TensorFlow can run on a wide variety of hardware.
How is Tensor Processing Unit (TPU) linked with TensorFlow?
Google has stated the second generation TPUs will be available on the Google Compute Engine for use in TensorFlow applications. However, Google has not disclosed if TensorFlow algorithms are hardwired in TPU or if TPU is a generic accelerator for ML.
- Devopedia. 2017. Tensor Processing Unit. April 11. Accessed 2017-07-09.
- Machine Learning Frameworks Comparison. 2016. "Machine Learning Frameworks Comparison" which-ml-framework-should-i-use. November 16. Accessed 2016-11-11.
- TensorFlow. 2017a. TensorFlow API Documentation. April 26. Accessed 2017-07-09.
- TensorFlow. 2017b. "TensorFlow About" TensorFlow Github. July 17. Accessed 2017-07-07.
- TensorFlow Lite. 2017. Google’s new machine learning framework is going to put more AI on your phone - The Verge. May 17. Accessed 2017-07-09.
- TensorFlow Usecase. 2017. "TensorFlow Usecase" TensorFlow Github. February 17. Accessed 2017-02-07.
- TensorFlow for R. 2017. R API GitHub. July 09. Accessed 2017-07-09.
- TensorFlow.org. 2017. TensorFlow Home. July 09. Accessed 2017-07-09.
Starting by Google Brain in the name of DistBelief
TensorFlow is Google Brain's second generation machine learning system, released as open source software on November 9, 2015.
Announcing TensorFlow 0.8 – now with distributed computing support!
In May 2016 Google announced its tensor processing unit (TPU), a custom ASIC built specifically for machine learning and tailored for TensorFlow
TensorFlow v0.9 now available with improved mobile support
Syntax for 40 languages, plus new SyntaxNet capabilities is being added along with Text summarization.
Announcing TensorFlow 1.0
In May 2017 Google announced a software stack specifically for Android development, TensorFlow Lite, beginning with Android version O.
TensorFlow 1.2 has arrived!