Data overload! Many IoT applications generate so much data that it isn’t humanly possible to analyze and act upon it in time.
Data scientists analyze mountains of data to identify patterns and define rules on how the IoT system should respond. Things change though, and new factors emerge which influence what the right action to take is. How do you make sure that your IoT system evolves in a changing environment and picks the optimal response?
“Machine learning gives computers the ability to learn without being explicitly programmed so that they can create algorithms that can learn from and make predictions on data” may be the answer proposed Arthur Samuel.
Defining the rule for a simple IoT application — such as turning off a motor when it’s too hot — is fairly straightforward. Identifying correlations between dozens of sensor inputs and external factors is much harder. Consider a use case where you have to decide when to dispatch a truck to replenish vending machines based on sensor data from the vending machines reporting sales, inventory levels, the local weather forecast, local events and promotional advertising campaigns. Guess wrong or send the wrong supplies and you lose sales by not having enough of the right supplies for the vending machines to sell.
Most of the leading IoT platforms (including Azure, IBM Watson, Splunk, AWS and Google) now offer machine learning capabilities. This enables the IoT system to analyze sensor data, look for correlations and determine the best response to take. The system continuously checks to see how well its predictions are working and keeps refining its own algorithm. There are two major types of machine learning:
- Supervised Learning refers to developing an algorithm based on a set of examples. For instance, a simple use case may be a record of sales by product per day. The algorithm develops a correlation between how much of each product is likely to be sold per day. This information helps determine when to send the truck to replenish that vending machine.
- Unsupervised Learning does not provide the system with labels (such as sales/day) to analyze. Instead it presents all the data to analyze, which lets the system to identify correlations which are not so obvious; for example, price discounts, local events and weather all influence sales at the vending machine and need to be taken into account to determine the replenishment schedule.
Many firms start off by manually defining the business rules for their IoT system to follow. They then start adding machine learning based rules as they collect more data and information on other external influencing factors.
Resources for Machine Learning systems:
If you think applying machine learning to IoT is advanced, check out Kaytranada’s wonderful new video to see what machines might eventually learn to do one day!
All IoT Agenda network contributors are responsible for the content and accuracy of their posts. Opinions are of the writers and do not necessarily convey the thoughts of IoT Agenda.