ABHILASH MHAISNE

February 06 2016


Reinvent the wheel : Google open sources tensorflow and seesaw within a span of months

The current age is the age of revolution of the computer world. Going through the period of IBMs revolutionary inventions, to microsoft and apple's making a computer a household appliance, a lot is going on which has, and might even change more of how we lead our lives.

Google has been arguably the most rapidly progressing player in this world of software and information technology. Starting with its search engine, it has conquered the IT world with products like gmail, docs, drive, the browser chrome and many others. The very simplicity and user friendliness of these has made google the forerunner in these services.

Tensorflow is the artificial intelligence / machine learning / deep learning library by google. Artificial intelligence or AI, in simple terms, consists of the study of developing machines with human like intelligence. Machine learning is an integral part of AI, and it involves study of computer algorithms which improve with experience.

Image source : technewstoday.com

Seesaw is the load balancer used by google. A load balancer is used to optimize resource use and avoid overload of any single resource. One can imagine how huge the google corporate infrastructure is. When earlier used services did not prove satisfactory, seesaw was developed by google.

Image source : siliconangel.com

Now what do we mean by the term open source? An open source software is licensed in such a way that its source code can be publicly read, studied, modified, redistributed, crediting the original author. While many variations in the licensing exist, most open source licenses promise the above. Open source software developers aim to give their users maximum freedom with the software. The development model of open source software is thus democratic in nature as literally anyone is allowed to propose changes to it. Lot of corporations have been open sourcing their software due to the obvious benefits recieved.

Google has been one amongst the top five contributors to the linux kernel. It also hosts a number of other open source software. And open sourcing tensorflow and seesaw has added to this arsenal of google. Tensorflow was open sourced in November 2015, and not much later in January 2016, google open sourced, to everyone's surprise, its main load balancer seesaw.

Tensorflow is described by google as a 2nd generation machine learning system, improving on their earlier one called DistBelief. Not only does it offer support for deep and machine learning, but it also is able to compute any computation which can be expressed as a flow graph [ https://en.wikipedia.org/wiki/Flow_graph_(mathematics) ]. Tensorflow has been open sourced under the Apache 2.0 license. This makes it possible for anyone to use the code of tensorflow. Open sourcing it has obvious benefits for google. Literally anyone from anywhere in the world can contribute to its source code,

Image source : www.tensorflow.org

However, as Lukas Biewald, the CEO of CrowdFlower states it, the real value of machine learning lies in the data, not so much in the source code and algorithms. What google won't share with the world is the huge amount of data gathered by them, which helps their machines learn more efficiently. For instance, for a machine to intelligently recognize a photograph of a bird, it will need an extremely large amount of photographs of that bird. Erik Mueller, CEO of Symbolic AI, LLC is of the opinion that this open sourcing of tensorflow will rather focus our attention on the mathematics used, instead of learning deeply about human thought processes. Tensorflow mainly deals with machine learning requiring numerical computations, eg. Artificial neural networks. Mueller states that such systems consist of too many numbers for people to make sense of.

AI should be human-stated based. Meaning it should be able to properly interact with human beings to develop itself. The Tensorflow source code will surely be a milestone in the world of AI but we need to look beyond it, to design an AI system assisting humans in day to day problems, rather than making humans solve its own problems through numerical computations.

Seesaw was developed by google due to absence of any decent load balancing solution. It helps largely in automating configuration changes, a major need for site reliablity engineers. Open sourcing this tool, google has let a lot of enterprises, which would require to manage their corporate infrastructure, in a much robust way. Again its released under Apache 2.0 license and it is built on linux. Written in the Go programming language, seesaw is able to gain advantage of a multi process architecture and enables it to terminate a process if it enters an unknown state. The release code will be a huge advantage for researchers and scholars studying any field related to load balancing, computer clusters or even on scheduling algorithms.



About Abhilash Mhaisne

Chief content manager at Skyline blog. Free software contributor, wikipedia editor and tech-evangelist. Working on Linux kernel and Moodle
@55abhilash