TensorFlow is a machine learning and artificial intelligence framework originally developed by Google for internal use. It is published under open source license and can be used for example in the field of speech recognition or image processing.
TensorFlow is a platform-independent, open-source program library that can be used for machine learning and artificial intelligence ( AI ) tasks. Google originally designed the software for internal needs. The framework offers a variety of uses and allows you to create learning neural networks . It is characterized by its good scalability and can be operated on different systems from smartphones to clusters with many servers.
Currently (as of early 2018), it is one of the most important frameworks for programming neural networks, machine learning algorithms, and deep learning models. The C ++-based software is intended for experienced AI users with solid programming skills. Using so-called Keras (High Level APIs), it is possible to simplify the implementation of standard models. Meanwhile, TensorFlow has become a quasi-standard for deep learning and neural network programming. The software competes with other machine learning frameworks such as Caffe, Torch , Microsoft Cognitive Toolkit or PaddlePaddle. Google uses TensorFlow intensively for internal applications such as Google Speech Recognition, Google Photos, Google Search, Gmail, Google Translate or the Google Maps map service.
The advantages of TensorFlow
The use of TensorFlow for machine learning and artificial intelligence offers a multitude of advantages. The software is characterized by its performance and good scalability. Unlike other Artificial Intelligence libraries, which are often supplied with predefined models, TensorFlow is able to develop and manipulate custom models. Even less tested models can be easily trained with the framework. TensorFlow runs on many different platforms such as smartphones, embedded devices, standalone computers, servers, and large distributed systems, and does not require translation of the code into other programming languages. Any neural network can represent TensorFlow using directed and cycle-free graphs.
The basic operation of TensorFlow
For the function of TensorFlow the so-called graph is the basic element. The graph is a representation of a mathematical problem abstracted from a directed diagram. The diagram is composed of edges and nodes that are interconnected. The nodes represent mathematical operations and data in TensorFlow. The connection of the nodes creates a graph that provides the mathematical model for the neural network.
TensorFlow Lite for mobile devices
Since the release of TensorFlow Version 1.5, a slim version of the open source framework has been added. It’s called TensorFlow Lite and brings Artificial Intelligence and Machine Learning to mobile devices like smartphones and embedded devices. Among other things, it is suitable for the mobile operating systems iOS and Android. With TensorFlow Lite it is not possible to train models. It is designed for using already trained models. On devices running the Android operating system, TensorFlow Lite uses the Neural Network API (NNAPI), which has been integrated since Android 8.1. It provides the basic functions for calculations and allows the use of the GPU.
The Tensor Processing Unit (TPU)
Specially designed for machine learning and artificial intelligence with TensorFlow, Google has developed chips. The so-called TPUs (Tensor Processing Units) support and accelerate machine learning, since they execute the algorithms of the TensorFlow program library very efficiently and quickly. According to Google, the company has been using the tensor processing units in its own data centers for some time. They deliver better machine learning performance in terms of energy consumption. The second generation of TPUs provides up to 180 teraflops of processing power. In a cluster of 64 TPUs, even up to 11.5 petaflops are possible.
Application areas for TensorFlow
TensorFlow is suitable for a wide range of applications in Machine Learning and Artificial Intelligence. In addition to internal use on Google itself, numerous KI applications in industry, business, medicine and the financial sector are already based on TensorFlow. Thanks to the open source license, the developers have the opportunity to use the framework for any purpose. The range of possible applications ranges from the search for faces through speech recognition to the early detection of skin cancer.
As soon as appropriate know-how and programming knowledge are available, TensorFlow can be used for any AI application. Google uses the Google Services framework such as Google Images, Google Maps, Google Translate, and others. The KI project DeepMind also relies on the libraries of TensorFlow.