Machine Learning for IoT

Andy Slote - Director of Customer Success for ObjectSpectrum

July 1, 2020

So often, IoT applications are dealing with time-series data processing where prompt, effective decisions are essential. Machine learning can be a contributor, with the ability to replace the human element in some situations. Determining when to add machine learning to an IoT solution, however, is not always obvious.

Many of the rules and resulting decisions for IoT use cases are straightforward, with no need for extensive logic to execute. When looking at a stream of temperature data for an industrial machine, for example, a few lines of code could construct an alert when the value exceeds a predetermined threshold. 

If we move up the scale a little in complexity, our example could require an analysis of readings from two different sensor types simultaneously, with interdependence. The actionable threshold for temperature could be lower when the humidity rises to a level when the two together represent a trigger for an action, which also looks like a relatively simple coding task, with an easily understood data universe.

When we talk about machine learning, one of the concepts providing some further definition of its capability is “pattern recognition.” Looking for patterns may yield some additional value, particularly when looking at the data over time, possibly for months or even years.

Going back to our example with temperature and humidity tracking, we need to determine if particular patterns in the data are of significant interest. If a machine learning solution could detect these patterns more efficiently than human observations, we may have a good case for implementation.

Although machine learning is a type of artificial intelligence, it cannot independently discern the patterns of interest. The way the data behaves is represented in a machine learning model first, which requires human knowledge, definition, and input.

Continuing with the temperature and humidity monitoring case, we can create a model with more complex decision definitions by identifying patterns in the data that may require attention. If the temperature rises to a level close to the threshold without exceeding for a single occurrence, there may be no need for notification. But, would multiple instances indicate a pattern worth investigating? The model could include an input definition of five readings where the temperature is within 10 percent of the threshold, for example. The model “learns” to map this input to an output for an application, which could then create a “soft” alert, so this situation shows up on someone’s list for review. In these instances, some additional maintenance or adjustments to the industrial machine could avoid a more critical condition in the future. Some characterize this as adding another type of “sensor,” providing additional real-time data for alerts, charts, etc., similar to hardware sensors. 

After additional data analysis, updates to the model add input definitions and corresponding outputs to increase its usefulness. One caution with an integrated machine learning capability is avoiding the potential to create an environment where the decisions driven by the model are not fully understood. Implementers need to make sure the ML component doesn’t evolve to be a “black box” where the inner workings are not evident in all scenarios but are clearly usable for feedback and adjustment.