Machine Learning

ArticlesArtificial IntelligenceConferencesDeep LearningIOTMachine LearningViews & Opinions

Building Intelligent Connected Products using Artificial Intelligence, Cognitive and Blockchain


Building Intelligent Connected Products using Artificial Intelligence, Cognitive and Blockchain

My technical talk at IoTNext, where I talked about applying intelligence at the edge gateway and cloud. Topics covered – Deep Learning, Computer Vision at the Edge Gateway for security and surveillance, Cognitive IoT – Cognitive Cricket and Connected Car and Security and Trust compliance using Blockchain as a service.

read more
Artificial IntelligenceDeep LearningMachine Learning

Convolutional Neural Network with Internet of Birds


I am happy to share we are live with Internet of Birds platform.

Internet of Birds (IoB) is the first citizen science platform to identify birds from the Indian subcontinent through the power of Artificial Intelligence, Deep Learning and Image Recognition. IoB is a citizen science platform by Accenture Labs in collaboration with BNHS.

Internet of Birds is trained on Indian birds using a Convolutional Neural Network. I will share my findings on building the Internet of Birds platform in a later blog, where i would describe the challenges in building up a generic Image recognition service. The same learnings can be applied to any use cases. The end solution can be accessed as a service over the cloud or at the edge network (for more details listen to my talk on – building connected products – edge gateway and CNN) for real-time decision making using Images as one of the context parameters.

The internet of birds website can be accessed at – Here is the youtube video on IoB –

More news @


read more
Architecture PatternsArticlesArtificial IntelligenceCognitive ComputingDeep LearningIOTMachine Learning

Cognitive IoT in Sports


Cognitive Internet of Things is about enabling current IoT technologies with human-like intelligence. The end goal is to provide expert advice based on the domains being targeted.  Cognitive IoT can be applied on the edge gateway or in the cloud as part of the solution.

Let’s see how we can apply Cognitive IoT technologies for Sports domain. In  Sports domain, there are actually 3 primarily use case –

  • Learning from an expert/coach (or visually) and improving one’s game
  • Personalization – where all information is personalized to improve a player’s game
  • Continuous learning to keep a player improving his game based on how is he is playing from current and past records.

I will talk about an example of cricket. (I call this as connected cricket -) ).The real value that we want to derive is to enable batsman understand their game better, help them master various batting strokes like cover drive, pull shot etc., analyse their performance continuously to be an expert batsman, for instance what should I do to bat like Sachin Tendulkar.

With respect to a baller, the baller would like to understand how well he is bowling, his speed, his run-up, the way he delivers the ball, spin variations, all these insights can improve his game continuously (so there is a feedback loop) and how similar he is bowling to an expert baller, may be like Ashwin.

So let’s talk about how do you go about realizing it.

  1. Embedded device on cricket ball (without increasing form factor)
  2. Embedded device on cricket bat, pads, gloves
  3. A Connected Stadium.

cogxFor an architecture stack perspective, you have the low powered embedded device  installed inside the ball or embedded as part of the design and manufacturing process, its provides at least 6 Axis combo sensor for accelerometer and gyroscopes reading to identify any movement in 3d space. A Motion SDK is installed on top of the device to identify any movements in general and communicate the reading to the cloud. In cloud, we have the learning model or the training data. Basically, we would ask an expert batsman to bat and play various expert strokes like cover drive etc. and record their movements from sensors (bats/pads etc) as well as visuals (postures etc), this would be used as the training / test data and comparison would be made against it. As we are comparing 3D models, machine learning approaches like dimension reduction can be employed ( and many new innovation approaches) to compare two motion and predict the similarity. Similar training data is captured from an expert baller, along with other conceptual information like hand movements, pitch angles etc.

The feedback is continuously captured and the system provides guidance for improving a player’s game. The player tracks all this information on his mobile and can now look at these insights and suggestions on how he can be an expert in his game. For instance, a player can ask a system “what is takes to master a cover drive like Sachin” and the system analyses the motion information from batting strokes (sensors on bats, pads etc.), visual information (postures etc.), compares it with an expert model and provide an accuracy score and suggestions to improve a players’ game. The key here is that the cognitive system understands the domain and its trained on the domain to provide an expert advice or suggestion.

The same technique and concept can be applied in any game to get cognitive insights.  In future, technology would be a key enabler in Sports.

The following is part of my presentation that I delivered at IoTNext. I will update the article with the youtube video once available.

read more
ArticlesMachine Learning

Introduction to Machine Learning


Following is the Wikipedia definition of Machine Learning –

“Machine learning explores the study and construction of algorithms that can learn from and make predictions on data.”

In simple terms, machine learning is how we make computers learn from data using various algorithms without explicitly programming it so that it can provide the required outcome – like classifying an email as spam or not spam or predicting a real estate price based on historical values and other environmental factors.

Machine learning types are typically classified into three broad categories

  • Supervised learning – In this methodology we provide labeled data (input and desired output) and train the system to learn from it and predict outcomes. A classic example of supervised learning is your Facebook application automatically recognizing your friend’s photo based on your earlier tags or your email application recognizing spam automatically.
  • Unsupervised learning – In this methodology, we don’t provide labeled data and leave it to algorithms to find hidden structure in unlabeled For instance, clustering similar news in one bucket or market segmentation of users are examples of unsupervised learning.
  • Reinforcement learning – Reinforcement learning is about systems learning by interacting with the environment rather than being taught. For instance, a computer playing chess knows what it means to win or lose, but how to move forward in the game to win is learned over a period of time through interactions with the user.

Machine learning process typically consists of 4 phases as shown in the figure below – understanding the problem definition and the expected business outcome, data cleansing, and analysis, model creation, training and evaluation. This is an iterative process where models are continuously refined to improve its accuracy.


From an IoT perspective, machine learning models are developed based on different industry vertical use cases. Some can be common across the stack like anomaly detection and some use case specific, like condition based maintenance and predictive maintenance for manufacturing related use cases. For more details on use of machine learning in context of IoT, refer to my book –

read more