Google TensorFlow for Machine Learning & Numerical computation

Machine Learning is the capability of machines to learn without the need of programming them explicitly - self learning process by machines. Machine learning includes pattern recognition and computational learning. TensorFlow is the Google's contribution to Machine Learning.
TensorFlow is an open source software library by Google, for machine learning and numerical computation using data flow graphs. TensorFlow was developed under the project called Google Brain, with the goal to make machines smarter by self learning. The beta version of TensorFlow was released on 9th November, 2015. Later on 11th February, 2017, the TensorFlow v1.0.0 was released. As a 64-bit variant, TensorFlow is capable of running on multiple CPUs and GPUs simultaneously. TensorFlow is not just compatible with PC operating systems - Linux/UNIX distributions, MacOS and Windows, but also with the mobile operating systems Android and iOS.
Google TensorFlow
Neural networks are normally operated on matrices or multidimensional arrays, which are called Tensors. The computations of these tensors are represented by through dataflow graphs with states. Hence the name TensorFlow. Google's TensorFlow API allows the developer to deploy complex computations to one or more CPUs or GPUs simultaneously.
The processor that processes the Tensor computations is called Tensor Processing Unit (TPU). A TPU is normally referred to as programmable AI accelerator, which is specifically designed for high throughput arithmetic models. Google has stated that they've been implementing the TPUs for machine learning, where the results are fruitful with the expectations. Google Cloud Platform provides different services like Google search engine, Gmail, Google Drive, Google Photos and other services. Most of these services are powered by TPUs. TPUs are designed for precision computation. There are two generations in the TPU architecture.
Machine Learning Illustration
Machine Learning Illustration
First Generation TPUs:
The first generation TPU is based on CISC (Complex Instruction Set Computer) paradigm, which can perform 8-bit matrix multiplications and convolutions at a clock speed of 700 MHz. The first gen TPU was manufactured with 28nm technology, with 28MB on-chip memory. Operation capability of first gen TPUs was limited only to integers.
Second Generation TPUs:
The performance of second gen TPU is measured to be 11.5 PFLOPS (FLoating point Operation Per Second). The second gen TPUs can perform floating point operations also. Hence, the performace of first gen TPUs was not measured in FLOPS.
TensorFLow provides APIs for wide range of programming languages - Python, CPP, Rust, Java, and Haskell, along with the third party packages for R-language and Scala. More than 6000 open source repositories are available online for development.
Read more: TensorFlow API for state-of-art Machine Learning.

0 comments:

Post a Comment