Artificial intelligence now pervades many parts of our lives and is here to stay for the foreseeable future. This bird’s eye view of the top open source AI tools serves as a reminder of how AI has already impacted our lives.
Imagine the digital future, in which you are dining at a restaurant. In this future scenario, right from the food served on your plate to the waiter who attends to you, everything has been arranged according to your taste and personality traits, without you being asked a single question. Imagine a world in which even the angle at which a plate is served at this restaurant or the smile of the waiter can be calculated with potential suggestions to suit your personality or mood. In such a world, if you are trying to buy a pair of shoes, you’d make a few swipes on your smartphone and all the available shoes in your favourite colour, with the accurate shape of the sole and height of heel, will show up on your screen. All this thanks to machine learning (ML) — and the possibilities are endless.
Artificial intelligence or AI has now penetrated many aspects of our lives. Let’s talk about 2018! All these voice recognition systems we use to search on Google and command our smartphones are the beginning of a new age. We have not yet understood the full potential of AI yet. A limited version of AI technology is already fitted inside our cars. Apple’s Siri, Google’s OK Google, and Amazon’s Echo services are already in use, analysing your tone and voice along with answering your query. These AI-backed services have a natural language processing system and are able to respond to the commands. You can now get directions to a location and look for a specific restaurant, all by just swiping your fingers on a screen!
Driverless cars are now on trial and the population of robots is on the rise, as they are expected to replace humans in certain fields in the very near future. You could expect robot hotel receptionists and robots to clean our houses, reducing us to couch potatoes. Oh well, let’s stick to the brighter side of things!
Machine learning is a branch of artificial intelligence that deals with the self-learning of computers. This means that machines effectively learn to grow and change without any need for programming.
And automation is the new emerging technology through which no more human assistance is required during any process. In other words, this is programmed control. This process uses different control frameworks for different systems or equipment such as electronic hardware, production lines, boilers, phone systems, boats, airplanes and vehicles, so that there is insignificant or less human mediation. A few procedures have already been totally computerised.
The automation, which we know today, began with simple machines, like water wheels, in the 11th century. Gradually, humans started developing on these simple machines and innovating over time.
Open source artificial intelligence tools
Now let’s look at a few open source AI tools that are helping researchers currently working on their projects.
Apache Mahout: This is an open source machine learning tool under the Apache licence. It has been designed to simplify working on common math problems involving statistics and linear algebra. This ML tool has been designed by the Apache Software Foundation and is built on a platform called Mahout Hadoop. Data analysts use this open source machine learning tool to carry out a critical and detailed analysis of Big Data. An understanding of quantitative data helps to extract useful information and pinpoint the trends. Mahout’s algorithms help users in clustering and grouping Big Data by first saving the data in the Hadoop distributed file system. It has a cross-platform operating system, and it gives users an environment with R-like syntax.
Distributed Machine Learning Toolkit (DMTK): This is an open source ML tool that simplifies various tasks on Big Data. DMTK was released by Microsoft, with new and advanced algorithms getting added to this toolkit regularly. This toolkit lets researchers experiment with algorithms by modifying them and tweaking them according to their needs. Previously, researchers needed many computational resources to work on Big Data, since it has been proved that bigger data models lead to better results, but this was quite challenging. The DMTK enables innovation in both the system’s algorithm and in ML algorithms.
Open Neural Networks (OpenNN): This is an open source library written in the C++ language. It has been designed for deep learning and for the implementation of neural networks. This library has an easy-to-understand and deep architecture, and is used in advanced ML research. This open source library is used in the logistics and marketing verticals. OpenNN also allows high performance computing as it has a higher processing speed.
OpenCyc: This is an open source general knowledge database that makes text understanding possible. Cycorp launched OpenCyc to make sure that users have unrestricted access to this knowledge base and that they can use OpenCyc in different applications. The vast knowledge base of OpenCyc contains a diverse range of concepts, facts, taxonomies, assertions and rules. It is available in two forms, i.e., ontology as well as the semantic Web endpoints. The latter can also be referred to as the permanent URIs, which means that both the RDF representations and human-readable forms are returned to the users.
Cycorp enables apps to sift through a large database and process the relevant information to come up with an accurate interpretation. It helps in the differentiation of relative words and synonyms of a particular key search word and ensures the app performs like a person, exhibiting human cognitive abilities and discernment. OpenCyc has assisted AI researchers in their projects so they can now use its ontologies to ensure machine learning (ML) that can be interrupted by humans to prevent machines from causing harm. Cyc has revolutionised ML by enabling the apps to learn the complicated reasoning and logic of the human mind.
H2O: This open source ML software tool, designed by H2O.ai, is used by developers and AI researchers. It is written in the R, Python and Java programming languages, and is being used for predictive data analytics by AI researchers and developers in whichever language platform they’re familiar with. It can also be used to analyse data sets in the cloud and in Apache Hadoop file systems. It supports different operating systems — Linux, MacOS and Microsoft Windows.
This open source deep learning platform helps in decision making after the deep analysis of data so that the user can draw useful insights. Having two open source versions, this tool has found widespread application in predictive modelling, healthcare and fraud analysis.
TensorFlow: This open source ML library was launched by Google Brain. It lets you write libraries for dataflow programming. It operates in two programming languages — C++ and Python. TensorFlow was developed by Google for better AI applications. It was initially launched to be used in Gmail, Google photos and Google Search. This open source AI tool is also being used for numerical computations by programmers. The easy-to-use interface and architecture of TensorFlow allows you to use its different platforms. There is no restriction regarding its compatibility. You can use it on TPUs, CPUs and GPUs. You can even use it on your PC, mobile and laptop. This tool is effectively helping researchers in their numerical computation and applications in neural networks. TensorFlow was launched under the Apache 2.0 open source licence in 2015.
Deeplearning4j: As the name suggests, Deeplearning4j is an open source Java AI tool specially designed for deep learning. It was released under the Apache License 2.0, having been created by a group of AI researchers based in San Francisco and Tokyo.
It makes use of its own deep learning library created for Java Virtual Machine (JVM). This library is called ND4J and it works with both CPUs as well as GPUS. The framework is used for forming neural nets and has many advanced visualisation tools. This tool has many diverse academic applications, and is being used in the fields of cyber security and image recognition. It has been integrated with other open source AI platforms like Keta and TensorFlow. It can make use of different API languages like Python and Clojure.
Caffe: This is an open source AI tool developed by the Berkeley Vision and Learning Center. It encourages deep learning and is able to process millions of images per day. It has remarkable speed and was released under the BSD 2-Clause licence. This dynamic AI tool has been written in C++ and has a Python interface. It comes with an impressive architecture that allows you to switch between the CPU and GPU. This AI tool is being used by academic researchers in various projects and has even found large scale application in the multimedia and vision domains.
ONNX (Open Neural Network Exchange): ONNX is an open source AI format which is extensively used by AI researchers in deep learning models. It is primarily a Facebook open source project but is also endorsed by Microsoft and AWS. This open source ecosystem for deep learning was developed in 2017 when both the tech giants, Facebook and Microsoft, came together to create a system for switching ML frameworks.
Microsoft contributed by adding its Cognitive Toolkit and Project Brainwave platform to the initiative. This platform allows its users to apply its innovative contents like extensible computation graph models, and it allows them to change their networks according to their requirements.
Oryx 2: This is an open source framework built on Spark and Apache Kafka. Oryx 2 allows for real-time machine learning on a bigger scale. This platform is being used by AI researchers to build applications, and for classification and clustering.
Apache SystemML: This is a flexible open source AI platform that focuses on Big Data and has been designed for complex mathematical problems. It can scale to Spark and Hadoop. It runs on an R Python-like syntax. It finds application in deep learning with GPUs, and in neural network architectures for training.
MLlib: This was launched by Apache Spark and is a machine learning library for learning algorithms. This AI tool uses different widely used programming languages like R, Scala, Java and Python. It can run on many different platforms including Hadoop, Kubernetes or in the cloud. This library contains many deep learning and core ML algorithms. It makes ML easier and more practical for AI researchers.
A final word
The use of the above AI tools is revolutionising industries immensely. It is being predicted that everything that has been invented until today can be reinvented in a much better and more efficient way in the next 15 years, with the help of AI.
Businesses are now being revolutionised with CEOs engaging with AI as well. AI no doubt offers you the most noteworthy and extraordinary possibilities to expand your business and harness the untapped potential of modern technology.
There is vast potential to use these open source AI tools in healthcare, robotics, food and financial trading. Unfaltering success is expected if businesses start keeping up with these advances in AI in health, transport, retail, banking and other domains. What we’ve experienced of AI till now is just the tip of the iceberg!
The author works with Infosys Limited, Pune, as a testing engineer and has an experience of 2.5 years in that domain. He can be reached at firstname.lastname@example.org.