Artificial Intelligence (AI) and Machine Learning (ML) are two words being tossed around a lot in the tech news sites. Often these words are used interchangeably, but there is a distinct difference. At its core, the field of AI strives to make computers do the kinds of things that humans are good at. AI is a generic term used to describe all the technologies that attempt to imitate human thinking. On the other hand, machine learning (ML) is one of the techniques that fall within the broad umbrella of AI research- ML is just one of the technologies that helps us reach the AI goal.
It should be borne in mind clearly that AI is the science that tells you what to do (build intelligent machines) and ML is the technology that tells you how to do it. Nonetheless, the huge success made by the ML technology in the recent past has pushed other branches of AI aside and now many people think both machine learning and artificial intelligence are one and the same.
As discussed in earlier column, the distinct feature of ML is that it makes the computer learn from past data. The technology involves teaching computers to recognise patterns in the data and create a model that evolves with the changing data. In a nutshell, ML is the process of making computers learn from examples and experiences, similar to the way we humans learn from experience- for computers, past experience means data. The ML-based AI technology has progressed quite a bit, and many ML based applications are in place.
Conventional Web applications provide us information or help us accomplish many of our daily life activities- like, booking an air ticket, making bank transactions, watching a movie and so on- with ease. In this regard, conventional online services make our life much more comfortable by helping us save physical energy/resources. However, in the current digital world, a big chunk of tasks requires cognitive abilities; this means, we need online services that can deliver cognitive capacities- not just information. For instance, you may need to translate an article written in a foreign language to the language of your choice. Or you have a lengthy report but have little time to read it fully- here, you need a quick summary of the report.
All the tasks mentioned above are cognitive in nature; we can’t do them mechanically- it involves thinking. The ML technology attempts to find solutions to these kinds of tasks and has succeeded in solving many such issues. However, till the recent past, these solutions were not available to the public or individual developers. The ML solutions were available only to tech giants with massive resources and AI research centres- like Google, Microsoft, Amazon, IBM etc. But all that is changing now. Most of these players now deliver AI services over the Net.
Generally, these cloud AI services allow client applications to upload data and receive a cognitive response. Depending on the application, you can upload structured or unstructured data. By structured data we mean data that is governed by well-defined fields- data from an e-commerce/banking service is an example. On the other hand, all of the data produced primarily by humans for other humans are unstructured in nature. This includes literature articles, research reports, blog posts, tweets and the like. For instance, take the case of a language translation service like Google Translate. Here, you submit some text (unstructured data) in any language (say, English) and obtain the translation in another language (say, Hindi).
In this regard, you may also note this: most of the AI services offer APIs (Application Programming Interface) that let developers tap into these services and add elements of intelligence to their own applications. So, if an application needs to translate its text in many different languages, it can use the Google Translate API, which exposes the functionality of Google Translate to developers.
Google, which is currently in the forefront of ML technology, offers loads of AI services. We have already pointed out the features of one such service, the Google Translate API. Another Google AI service worth a look is the Vision API that lets you do complex image detection. Basically, the service can tell you the content of an image. If you submit the image of a cat, the service will not only tell you that it is a cat, it will also display several other features of the cat- like it is a mammal, domestic short haired cat and so on. If you submit a facial image, the application will predict the emotional sense suggested by the image-joy/anger/contempt, etc. The service can even tell you if the image is inappropriate to view or not. To get a feel of the Google vision technology access the link here, then upload an image and see how it functions.
Speech Recognition service that lets you convert audio content into text is yet another service worth a mention. Now, let us move to another type of ML cloud service from Google, called Natural Language Processing API. As discussed in an earlier column, NLP is the field that addresses how computers understand text content. The NLP service lets you extract entities and sentiment from the text. In response to the text you input, the service will analyse its content and provide you lots of valuable information. The service will split down the text into different entities and attempts to make some sense out of it. It will also do some sentiment analysis and gives a score from which you can make out the overall sentiment expressed in the text- positive, negative or neutral.
Like Google, Microsoft also has a plethora of hosted AI services based on the machine learning technology. In the Microsoft world, these services are known as cognitive services. Microsoft offers a variety of cognitive services that include computer vision, speech recognition, video recognition, language-based services, knowledge analysis and the like. Of course, these services also have API support.