Recent Machine Learning Applications to Internet of Things (IoT)

Yue Xu (A paper written under the guidance of Prof. Raj Jain) DownloadPDF


Recently Internet of Things(IoT) is growing rapidly, various applications came out from academia and industry. Machine learning can also help machines, millions of machines, get together to understand what people want from the data made by human beings. Also machine learning plays an essential role in IoT aspect for handle the huge amount of date generated by those machine. Machine learning gives IoT and those machines a brain to think, which is called "embedded intelligence" by some scholars [Guo12]. This paper will mainly focus on those intelligent machine learning applications


machine learning, IoT, Internet of Things, embedded intelligence

Table of Contents:

1. Introduction

This paper firstly introduces IoT and machine learning. These are more and more essential in nowadays. Secondly, we have several application examples in machine learning application in IoT. From both research and industry, these application are essential and greatly valued. Section 2 will introduce IoT. Section 3 will introduce ML, essentially the algorithms. Section 4 will introduce some machine learning application to IoT.

2. Basic on Io

In this section, at first I introduce the IoT. Secondly specifically illustrate the "knowledge hierarchy". At last, there are still challenges in IoT, section 3 will focus on that

2.1 Introduction to IoT

Extending the current Internet with all connected devices (or referred to as "Things") and their virtual representation has been a growing trend in decades. This will create a lots of potentially new applications, products and services in many different aspects, such as smart homes, smart health care, automotive, smart transport and logistics, and environmental monitoring [IBM12]. The research in this area has recently gained lots of attention, of course lots of money, and is supported by the collaboration from academia, industry, and standardization bodies in several communities such as telecommunication, health insurance companies, semantic Web, and informatics. This leads to lots of venture capitals go with the tide.

For many years, common systems have been limited designed for specific purposes with limited flexibility. This means that when one system is running, it cannot be changed dynamically and flexible. The current initiative on introducing the IoT (or more general, the future of Internet) demands application, products and service platforms which can capture, communicate, store, access and share data from the physical world, especially they can communicate with the world. This will create new opportunities in a big range of domains, like smart health, retail, green energy, manufacturing, smart homes and also personalized end-user applications.

In this way, IoT plays more and more important role in daily life. The volume of data on the Internet and the Web has already been overwhelming and is still growing at stunning pace: everyday around 2.5 quintillion bytes of data is created and it is estimated that 90% of the data today was generated in the past several years [IBM12]. Sensory data, which stores the data from sensors, can be analyzed through algorithms and transformed into machine knowledge that machines have a better understanding about real human world. In this way machine can deal with human thinking somehow (someone call this kind of techniques:Artificial Intelligence). Furthermore, and most essential, we can innovate more valuable application, products and services, which changes our life automatically and dramatically. For example, readings from meters can be used to better predict and balance power consumption in smart grids; analyzing combination of traffic, pollution, weather and congestion sensory data records can provide better traffic and city management; monitoring and processing sensory devices attached to patients or elderly can provide better remote healthcare[Preethi14]. This data transformation process can be better illustrated using the well-known "knowledge hierarchy". We adapt the meanings of the layers to the context of IoT and semantics (see Figure 1).

2.2 Knowledge Hierarchy

Knowledge Hierarchy

Figure 1 Knowledge Hierarchy in the context of IoT [Preethi14]

The lower layer refers to large amount of data produced by the IoT devices, generally in PB or even more. The layer above helps create filtered, structured and machine-understandable information from abundant data days and nights to summary the statistics among the data. However, what is required by humans and high-level applications and services is not the information. But the hidden knowledge behind the information that provide human a better understanding to the data and machine understandable and capable insights of the enormous data. With the hidden knowledge, machine can conclude some called wisdom that can forecast what will happen in the future. This kinds of wisdom can be developed to some end-to-end products and services. And the key point to IoT is that the knowledge hierarchy can be automatically summarized by machines.

2.3 Technology Challenges in IoT

IoT is an amazing future to the Internet, but there still some challenges to IoT for human have never dealt with so many devices and so much amount of data.

Device management: The number of devices will be extremely huge. And they are going to communicate with each other and servers over large geographical areas. Due to these devices may not be all connected with each other, several data linking issues must be managed efficiently. For example, you want to open the front door remotely, but the command is transmitted through the light in front of the door. Ensuring that all devices are can be managed in elastic topology so that the communication is smoothly.

Device diversity and interoperability: There are so many companies introduce their products and services in one single domain. Take an example in smart grid, there are many kinds of sensors that meters the power consumptions from different corporations and organizations in different standard. To keep those devices work together is a big challenge.

Integration of data from multiple sources: As you deploy an IoT application, you will gather abundant relative data from different sources such as sensors, contextual data from mobile device information, and social network feeds and so on. To build the connection between those data can generate huge values.

Scale, data volume, and performance: Prepare your business to manage the scale, data volume, and velocity of IoT applications. You want to provides your products to all the world, so that the data generated is huge. This is a common Big Data problem to dealt with. For IoT, you want it to be nearly real-time operation to handle and analyze the data.

Flexibility and evolution of applications: You will witness sensors and devices evolving with new capabilities and improved functions. This result in creation of new use cases and new business models for you. You will need to quickly develop your products with minimal effort in certain framework to catch up the pace of techniques. To enable and sustain this, you will need ecosystems and platforms to support you [TATA14].

2.4 Summary

IoT tries to connect all things to one network, and combine those date generated to some kind of intelligence. Therefore, the wisdom is concluded and generated automatically by machines. Though, there are stills lots of obstacles and challenges to overcome.

3. Introduction to Machine Learning(ML)

Machine learning (ML) was introduced in the late 1950's as a technique for artificial intelligence (AI). Over time, its focus evolved and shifted more to algorithms which are computationally viable and robust. In the last decade, machine learning techniques have been used extensively for a wide range of tasks including classification, regression and density estimation in a variety of application areas such as bioinformatics, speech recognition, spam detection, computer vision, fraud detection and advertising networks[Safavian91]. The algorithms and techniques come from diverse fields including statistics, mathematics, neuroscience, and computer science and used even boarder, or most areas related to machines nowadays.

The following two classical definitions capture the essence of machine learning:

1) The development of computer models for learning processes that provide solutions to the problem of knowledge acquisition and enhance the performance of developed systems.

2) The adoption of computational methods for improving machine performance by detecting and describing consistencies and patterns in training data[Safavian91].

3.1 Algorithms

Algorithms or mathematics plays the most essential role in machine learning, for this is the tool to deal with the data. Have a look at them may be not vital, but useful to understand the application to it afterwards.

Bayesian Statistics

Bayesian methods adapt probability distribution to efficiently learn uncertain concepts (e.g. θ) without over-fitting. The crux of the matter is to use the current knowledge (e.g., collected data abbreviated as D) to update prior beliefs into posterior beliefs p(θ|D) α Q p(θ)p(D|θ), where p(θ|D) is the posterior probability of the parameter given the observation D, and p(D|θ) is the likelihood of the observation D given the parameter θ [Safavian91].

k-Nearest Neighbors(k-NN)

This supervised learning algorithm classifies a data sample (called a query point) based on the labels (i.e., the output values) of the near data samples. Basically, the algorithm classifies k kinds of cluster that the distance inside is minimum. This is a general classify algorithm.

Neural Network

For example, sensor node localization problem (i.e., determining node's geographical position). Node localization can be based on propagating angle and distance measurements of the received signals from anchor nodes [Dargie10]. Such measurements may include received signal strength indicator (RSSI), time of arrival (TOA), and time difference of arrival (TDOA) as illustrated in Figure 2 [Safavian91]. After several training, the neurons can computed the location of the node.

Neural Network

Figure 2 Illustration example of node localization in WSNs in 3D space using supervised neural networks.

Support Vector Machines(SVM)

It is a machine learning algorithm that learns to classify data points using labeled training samples [Steinwart09]. Basically, the problem is to classify those nodes in two parts. These parts are separated by as wide as possible margins (i.e., separation gaps), and new reading will be classified based on which side of the gaps they fall on as shown in Figure 3 [Safavian91]. An SVM algorithm, which includes optimizing a quadratic function with linear constraints (that is, the problem of constructing a set of hyperplanes), provides an alternative method to the multi-layer neural network with nonconvex and unconstrained optimization problem [Ayodele10].

Support Vector Machines

Figure 3 An example of non-linear support vector machines.

Decision Tree(DT)

It is a classification method for predicting labels of data by iterating the input data through a learning tree [Ayodele10]. However, DT works only with linearly separable data and the process of building optimal learning trees is NP-complete [Safavian91].

Principle Component Analysis(PCA)

It is a multivariate method for data compression and dimensionality reduction that aims to extract important information from data and present it as a set of new orthogonal variables called principal components [Safavian91]. As shown in Figure 4, the principal components use the feature reordering that ordinate the original point to the whole data.

Principle Component Analysis

Figure 4 A simple 2D visualization of the principal component analysis algorithm. It is important to note that the potential of the PCA algorithm is high mainly when dealing with high-dimensional data

k-Means Algorithms

This is widely used for node clustering problem due to its linear complexity and simple implementation. The k-means steps to resolve such node clustering problem are

(a) randomly choose k nodes to be the initial centroids for different clusters;

(b) label each node with the closest centroid using a distance function;

(c) re- compute the centroids using the current node memberships

(d) stop if the convergence condition is valid (e.g., a predefined threshold for the sum of distances between nodes and their perspective centroids), otherwise go back to step (b) [Safavian91].

Reinforcement Learning

Reinforcement learning enables an agent (e.g., a sensor node) to learn by keeping trying and gaining experience, just like humans. As shown in Figure 5, an agent regularly updates its achieved rewards based on the taken action at a given state. The future total reward (i.e., the Q-value) of performing an action at a given state st is computed using Eq. (1).

Q (st+1, at+1) = Q (st, at) + γ (r (st, at) + Q (st, at)) (1)

Reinforcement Learning

Figure 5 A Visualization of the Q-learning method

where r(st, at) is the immediate reward of performing an action at a given state st, and γ is the learning rate that determines how fast learning occurs (usually set to value between 0 and 1).

3.2 Summary

ML is developed well and implemented well into nowadays world. The algorithms are the most vital part of whole theory.

4. ML Application to IoT

ML is the main method among those computational application to IoT. And there are lots of application both in research and industry.

4.1 Application for research

In Energy

Some use Arduino MEGA to reduce the energy cost of a coffee machine [Ventura14]. This is a simple implement of the ML algorithm to IoT. But we can surely implement other stuffs such as lights and air conditioners into this kind of IoT.

In details, in the [Ventura14], we manage the coffee machine in to two state, off and in-use. This is a hard division which can be improved by offering more state, so that the performance of the energy saving could be even better. On the other hand, I think this kinds of energy modeling works somehow, but it cannot tackle with the emergency power usage for just one machine. If we can enlarge the scale to whole power grid, it will work much better due the large number theory.

In Routing

With the combination of sensors and ML algorithms, traffic routing is a good field to implement. The scholars in Milano implement a system using the LarKC platform [Celino11]. As shown in Figure 6, with those data from traffic and weather, the whole system can suggests several route to the destination.


Figure 6 LarKC routing

The system uses RESTful API to transmitted the request and respond messages. Inside the system, there are two workflows that runs real-time, which are path-finding and traffic prediction. The data involved are the mapping information and the traffic flow, as well as the weather condition and the calendar.

Such kind of system is quite common nowadays, such like Google Maps and other GPS in-car system. This is a mature system, and ML, as well as IoT, is to improve the precisions of such kind of system. With the sensor to the streets, we can gather real-time traffic conditions. The ML develops a good model behind the data, and therefore using it to predict the future, in minutes or even seconds.

The value of the system is easy to see, but the cost of the sensors of every streets is not a small number. A low cost way would be using the photos, internet info about the traffic to enhance the precision rate and reduce the cost.

In living

Also, IoT application are suitable for home as shown in Figure 7. It's implemented in an apartment for the light and humidity & temperature sensor, as well as heart rate sensor [Sasidharany14]. It's somehow future vision of the living in 20 years.


Figure 7 System design

4.2 Application in industry

There are many companies and government use IoT and ML algorithms for health care, traffic. Etc. With those billions of data gathered from the machines, such kind of application are highly valued.

Application Overview

Figure 8 Overview [TATA14]

As Figure 8 shows, IoT application includes utilities, manufacturing, healthcare, insurance, retail, transportation and etc. Most of these application need ML algorithms to translate the data to something easy-to-see.

In utilities, we want to save the energy by predicting the usage and dynamically allocation. Before this time, we may operate several ways to do this, but we cannot show the customer with exact data and energy saved. But with those smart meters to the gas, electronics and water, we can store the history of usage by machines. Furthermore, we can make load balancing and dynamical allocating.

In manufacturing, there are lots of human resource can be saved by an IoT system with cameras, controllers. If the system detects an abnormal operation done, it can alert first, and operate actions to that. Furthermore, it can predict something like, this field is going wrong at certain time, so that take actions before that happens. By doing this way, factories can save lots of resources preventing the fault by predicting it.

In healthcare, the issue is personalized health history tracking. If the patient has several wearable devices that track those data, doctors can have more accurate analysis to the patient. And this is far cheaper to track everyone's health condition than hiring personal nurse.

In insurance, the industry analyzes the property in the financial papers. But now, we can use the data gather from personal devices. By collecting and analyzing those data, we can provide personal insurance that fits personal situations.

In detailing, we want to predict when will our customer be, what he wants to buy and how much he will buy. The sensors can be placed in the store, and the data can be gathered from internet, such like shopping apps. It's a way to let customers to buy what they want and buy more.

In transportation, we can use the data of the flow the human beings as well as the vehicles. If the supply of vehicles meets the need of transportation, it's an efficient allocation to those buses timing, subways timing. With dynamically arrangement of the limited resources, we can lower the cost of operation when idling or enhance the service level when busy working.

In Steel manufacturing

Many models used in Steel Operations -e.g.

Sinter plant -Ore bed distribution in Sinter Plant

Blast Furnace -Burden Distribution Model

Basic Oxygen Furnace -Steel Bath & Slag models

Steel Manufacturing

Figure 9 Workflow In Steel Manufacturing

Figure 9 shows how steel manufactures use the date to analysis the how the system work. Using the unstructured data such lick texts, sounds, videos, images to build up the whole structured data like the quality of the products, the system can forecast the how will the product be somehow.

In Modern Manufacturin

An company called Sight Machine to inspect the material by using the system shown in Figure 10.

Modern Manufacturing

Figure 10 Workflow in Modern Manufacturing

Figure 10 shows the more common manufactures to use ML application in IoT. With the control of quality and operation, the manufacture system can have a high-level automation.

In everywhere

There are many cases in cisco report [Noronha14]. Like parking and resource saving, and such field is growing rapidly.

IoT values

Figure 11 IoT values [Noronha14]

Deep learning (fog clouding)

Deep learning is somehow fog clouding at this point. With the edge devices shown in Figure 12, edge node can have more capability to compute locally.

Deep Learning

Figure 12 Application in medicine, retail, auto, and smart city [Ota14]

5. Summary

IoT is changing our life. Machine learning changes the machine understanding to human, With the capability dealing Big Data, those application are becoming essential to our life, as well chased by Venture Capitals. On the other hand, those application just can make the prediction based on the previous history, the future is still somehow uncertain, that's the magic.

6. Reference

[Guo12]. Bin Guo, Daqing Zhang, Zhiwen Yu, Yunji Liang, Zhu Wang, Xingshe Zhou,. "From the Internet of Things to Embedded Intelligence". 2012,

[IBM12]. IBM, Bringing Big Data to the Enterprise,; accessed on 10/07/2012.

[Preethi14]. Dr.N. Preethi. "Performance Evaluation of IoT Result for Machine Learning." Transactions on Engineering and Sciences , Vol.2, Issue 11, 2014,

[TATA14]. TATA consultant services, "Unlocking the Value of the Internet of Things (IoT) :A Platform Approach", 2014,

[Alsheikh14]. Mohammad Abu Alsheikh, Shaowei Lin, Dusit Niyato1 and Hwee-Pink Tan, "Machine Learning in Wireless Sensor Networks:Algorithms, Strategies, and Applications", 2014, IEEE Communications Surveys & Tutorials,

[Bengio09]. Y. Bengio, "Learning deep architectures for AI," Foundations and Trends in Machine Learning, vol. 2, no. 1, pp. 1:127, 2009.

[Lippmann87]. R. Lippmann, "An introduction to computing with neural nets," ASSP Magazine, IEEE, vol. 4, no. 2, pp. 4:22, 1987.

[Dargie10]. W. Dargie and C. Poellabauer, "Localization,". John Wiley & Sons, Ltd, 2010, pp. 249:266.

[Steinwart09]. I. Steinwart and A. Christmann, "Support vector machines". Springer, 2008.

[Ayodele10]. T. O. Ayodele, "Types of machine learning algorithms," in New Advances in Machine Learning. InTech, 2010.

[Safavian91]. S. R. Safavian and D. Landgrebe, "A survey of decision tree classifier methodology," IEEE Transactions on Systems, Man and Cybernetics, vol. 21, no. 3, pp. 660:674, 1991.

[Ventura14]. Daniela Ventura, Diego Casado-Mansilla, Juan Lopez-de-Armentia, Pablo Garaizar, Diego Lopez-de-Ipi~na, and Vincenzo Catania, "ARIIMA: A Real IoT Implementation of a Machine-learning Architecture for reducing energy consumption",2014,

[Celino11]. Irene Celino, Daniele Dell'Aglio, Emanuele Della Valle, Ralph, Grothmann, Florian Steinke, and Volker Tresp, "Integrating Machine Learning in a Semantic Web Platform for Trac Forecasting and Routing",2011,

[Sasidharany14]. Swaytha Sasidharany, Andrey Somov, Abdur Rahim Biswas, and Raffaele Giaffreda," Cognitive Management Framework for Internet of Things - A Prototype Implementation", 2014,

[Ota14]. Nobuyuki Ota, "Create Deep IntelligenceTM in the Internet of Things",2014,

[Noronha14]. Andy Noronha, Robert Moriarty, Kathy O'Connell,Nicola Villa, "Attaining IoT Value: How To Move from Connecting Things to Capturing Insights", 2014, CISCO,

[MacDonald14]. Scott MacDonald Whitney Rockley, "The Industrial Internet Of Things", McRockCapital,2014,

7. List of Acronyms

IoT Internet of Things

ML Machine Learning

AI Artificial Intelligence

WSN Wireless Sensor Networks

k-NN k-Nearest Neighbors

SVM Support Vectors Machines

DT Decision Tree

PCA Principal Component Analysis

Last modified on November 30, 2015
This and other papers on recent advances in networking are available online at
Back to Raj Jain's Home Page