Can Artificial Intelligence create another Artificial Intelligence?
14 January 2018Introduction to Apache Spark
16 January 2018TensorFlow is an open-source software library for machine learning. TensorFlow was developed by the Google Brain team for internal Google use. It was released under the open source Apache 2.0 license on November 9, 2015.
Let’s start with the basics
TensorFlow is used to program the flow of data in many cases. It is a symbolic mathematical library used in machine learning applications such as neural networks. It is used both for research and production in Google, often replacing the predecessor with the closed source code, DistBelief. TensorFlow is the second machine learning platform that Google developed and used to design, build and train deep learning models. You can use the TensorFlow library to perform numerical calculations, which in itself does not seem very special, but these calculations are done with data flow charts. In these graphs, nodes represent mathematical operations, while edges represent data that are typically multidimensional data matrices or tensors that are transmitted between these edges.
The name “TensorFlow” derives from operations that neural networks perform on multidimensional data matrices or tensors! It’s literally the flow of tensors.
TensorFlow – how it works?
The easiest way to understand TensorFlow and Google’s approach to AI is image recognition. In 2011, Google created DistBelief, which used machine learning to recognize what is on the picture by recognizing specific patterns. For example, it looks for whiskers of a certain length to help determine if the image is a cat. The system was built using a positive reinforcement – the machine received the image and asked if the image is a cat. If the machine was right, it was said so. But if the machine was wrong, the system was adapted to recognize different patterns in the image so that it was more likely to do it right next time.
TensorFlow takes the concept a step further, using deep learning or artificial multi-layer neural network. Basically, it sorts data layers, called nodes, to find out that the image that you view comes from the cat. The first layer will ask the system to look for something as basic as the general shape of the image. The system then moves or flows to the next set of data – like searching for paws in a photo. TensorFlow does not give any programmer the option of using machine learning but provides both the Python and C / C ++ API interface that connects to the programmer’s program.
TensorFlow potential
As Google writes in its blog: “TensorFlow is faster, smarter and more flexible than the old system (DistBelief), so it can be more easily adapted to new products and research.”
It may help sort more images at a faster rate, providing more information to researchers. It is a way to look at a large set of data in which people can not recognize what is important. TensorFlow libraries make it much easier to include self-learning elements and artificial intelligence functions in the application, such as speech recognition, computer vision, or natural language processing.
In November 2017, Google launched TensorFlow Lite in the programmer’s preview. It focuses on creating machine learning solutions directly on mobile and embedded IoT devices. The light version of TensorFlow provides fast performance on small devices and works on iOS and Android. TensorFlow is certainly not the only library of in-depth learning, but like other products of Google, it is widely considered the best. The alternative is Torch which was created at the University of California at Berkeley by Swiss researchers and the Caffe team.
In terms of limitations, Google still allows the implementation of TensorFlow on a single computer with multiple GPUs. It limits the scale at which companies can use this tool, but there are ways to bypass this problem, although they require knowledge, time and money.