ICN Research Group J.K.Choi
Internet-Draft N.K.Kim
Intended status: Informational J.S.Han
Expires: September 12, 2019 M.K.Kim
KAIST
G.M.Lee
Liverpool John Moores University
March 11, 2019
Requirements and Challenges for User-level Service Managements of IoT
Network by utilizing Artificial Intelligence
draft-choi-icnrg-aiot-00
Abstract
This document describes the requirements and challenges to employ
artificial intelligence (AI) into the constraint Internet of Things
(IoT) service environment for embedding intelligence and increasing
efficiency.
The IoT service environment includes heterogeneous and multiple IoT
devices and systems that work together in a cooperative and
intelligent way to manage homes, buildings, and complex autonomous
systems. Therefore, it is becoming very essential to integrate IoT
and AI technologies to increase the synergy between them. However,
there are several limitations to achieve AI enabled IoT as the
availability of IoT devices is not always high, and IoT networks
cannot guarantee a certain level of performance in real-time
applications due to resource constraints.
This document intends to present a right direction to empower AI in
IoT for learning and analyzing the usage behaviors of IoT
devices/systems and human behaviors based on previous records and
experiences. With AI enabled IoT, the IoT service environment can be
intelligently managed in order to compensate for the unexpected
performance degradation often caused by abnormal situations.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Choi, et,al. Expires September 12, 2019 [Page 1]
Internet-Draft IoT with Artificial Intelligence March 2019
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 12, 2019
Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction ................................................ 3
2. Challenging Issues of IoT network
............................ 6
2.1. Untrusted and incorrect IoT devices ..................... 6
2.2. Traffic burstiness of IoT network ....................... 6
2.3. Management overheads of heterogeneous IoT sensors
........ 7
3. Overview of AI/ML-based IoT services ......................... 9
4. Requirements for AI/ML-based IoT services ................... 11
4.1. Requirements for AI/ML-based IoT data collection and delivery
........................................................... 11
4.2. Requirements for intelligent and context-aware IoT services12
5. State of arts of the artificial intelligence/machine learning
technologies for IoT services
.................................. 12
5.1. Machine learning and artificial intelligence technologies
review ..................................................... 12
Choi, et,al. Expires September 12, 2019 [Page 2]
Internet-Draft IoT with Artificial Intelligence March 2019
5.1.1. Supervised learning for IoT ....................... 12
5.1.2. Unsupervised learning for IoT ..................... 13
5.1.3. Reinforcement learning for IoT .................... 14
5.1.4. Neural Network based algorithms for IoT ........... 15
5.2. Technologies for lightweight and real-time intelligence
. 17
6. IANA Considerations ........................................ 18
7. Acknowledgements ........................................... 18
8. Contributors ............................................... 18
9. Informative References
...................................... 19
1. Introduction
The document explains the effects of applying artificial
intelligence/machine learning (AI/ML) algorithms in the Internet of
Thing (IoT) service environments.
IoT applications will be deployed in heterogeneous and different
areas such as the energy, transportation, automation and
manufacturing industries as well as the information and communication
technology (ICT) industry. Many IoT sensors and devices can connect
to an IoT service environment where IoT objects cannot interoperate
with each other and can interact with different applications. The IoT
service may not run in a single administrative domain. If market
demand exists, the cross-domain service scenarios for IoT
applications could be widely deployed. Future IoT applications occur
at multiple domains of heterogeneity with various time scales.
The IoT service requirements for common architectures and public APIs
poses some challenges to the underlying service environment and
networking technologies. Some IoT applications require significant
security and privacy as well as significant resource and time
constraints. These mission-critical applications can be separated
from many common IoT applications that current technology may not
provide. It means that IoT service requirements are difficult to
classify common requirements and functional requirements depending on
IoT service scenario.
Recently, artificial intelligence technologies can help the context-
aware IoT service scenarios apply rule-based knowledge accumulation.
The IoT service assumes that many sensing devices are connected to
single or multiple IoT network domains. Each sensor sends small
packets to the IoT servers periodically or non-periodically.
Choi, et,al. Expires September 12, 2019 [Page 3]
Internet-Draft IoT with Artificial Intelligence March 2019
Detection data contains periodic status information that monitors
whether the system is in a normal state or not. In some cases, alert
information is included for quick processing. Most IoT applications
can operate in two modes. One is a simple monitoring mode and the
other is an abnormal mode for rapid processing. In a simple
monitoring phase, the IoT device periodically sends sensing data to
the server. If the measured data is outside the normal range, the IoT
service can change the operating mode to an abnormal phase and
activate future probes. Alarm conditions should be promptly notified
to responsible persons. For mission-critical applications, reliable
communication with robust QoS requirements in terms of error and
latency is required.
Periodic data accumulation from IoT devices is cumbersome. Under
normal conditions, the IoT data is simply accumulated without further
action. In an unusual situation, incoming IoT data can cause an
urgent action to notify the administrator of the problem. Streaming
data traffic from thousands of IoT devices is annoying to store in
the database because it is not easy to extract unidentified or future
incidents. Only a significant portion of the incoming data stream can
be stored in a real-time database that is time-sensitive and capable
of rapid query processing. A combination of different IoT detection
data, including location, time, and status, allows you to sort and
categorize a portion of streaming data when an additional inspection
is required, and perform real-time processing. One of the missions of
the IoT database is to be able to extract preliminary symptoms of
unexpected accidents from a large amount of streaming data.
If some transmitted data is important to invoke the corresponding
action, there are some questions about whether the incoming data is
correct. If the incoming data contains accurate and time-critical
events, appropriate real-time control and management can be performed.
However, if the incoming data is inaccurate or intentionally
corrupted, additional accidents may occur. In these cases, incoming
data can trigger to initiate additional inspections to protect
against future unacceptable situations. But, if time-critical data is
missed due to errors in the sensing devices and the delivery protocol,
there is no reason to configure IoT networks and devices at a high
cost.
Choi, et,al. Expires September 12, 2019 [Page 4]
Internet-Draft IoT with Artificial Intelligence March 2019
It is not easy to analyze data collected through IoT devices
installed to monitor complex IoT service environments. If the sensor
malfunctions, the data of the sensor cannot be trusted. Additional
investigation should be done if abnormal status from specific sensors
is collected. The data of the redundant sensor installed in the same
area should be received or combined with other sensor information
adjacent to the sensor to determine the abnormal state.
For sensors installed in a specific area, sensing records will remain
for a certain period of time. IoT service operators can look at the
operational history of the sensor for a period of time to determine
what problems were encountered when data was collected. When an
abnormal situation occurs, IoT sensor should investigate whether it
noticed normal operations and notified the IoT service operator. If
the abnormal situation is not properly detected, the operator should
analyze whether it was caused by malfunction of the IoT sensor or
other reasons.
In the IoT service environment, it is possible to analyze the
situation accurately by applying recent artificial intelligence and
machine learning technologies. If there is an operational record of
the past, it is possible to determine when an abnormal situation
arises. Most problems are likely to be repeated, so if the past
learning experience is accumulated, the anomaly of IoT services can
be easily and immediately identified. In addition, when information
gathered from various sensors is synthesized, it is possible to
accurately determine whether abnormal situations have occurred.
Various types of IoT sensors are installed with certain purposes. It
expects that all the IoT sensors intend to monitor the occurrence of
special abnormal situations in advance. Therefore, it should be set
in advance what actions are required when a specific anomaly occurs.
The appropriate work is performed on the abnormal situation according
to the procedure, predefined by the human. By using artificial
intelligence and machine learning algorithms, the appropriate actions
are taken when an abnormal situation is detected from various IoT
sensors.
Choi, et,al. Expires September 12, 2019 [Page 5]
Internet-Draft IoT with Artificial Intelligence March 2019
2. Challenging Issues of IoT network
This section describes the challenging issues of data sensing,
collection, transfer, and intelligent decision from untrusted data
quality and unexpected situations of IoT service environments.
2.1. Untrusted and incorrect IoT devices
IoT traffic is similar to traditional Internet traffic with small
packet sizes. Mobile IoT traffic can cause some errors and delays
because wireless links are unstable and signal strength may be
degraded with device mobility. If the signal strength of the IoT
device with a power limit is not so strong, the reception quality of
the IoT server may not be sufficient to obtain the measurement data.
For mission-critical applications, such as smart-grid and factory-
automation, expensive IoT sensors with self-rechargeable batteries
and redundant hardware logic may be required. However, unexpected
abnormal situations may occur due to sensor malfunctions. There are
trade-offs between implementation cost and efficiency for cost-
effective IoT services. When smart-grid and factory-automation
applications are equipped with IoT devices, the acceptable quality
from IoT solutions can be required. Sometimes, expensive and
duplicated IoT solutions may be needed.
2.2. Traffic burstiness of IoT network
IoT traffic includes two types of traffic characteristic: periodic
with small packet sizes and bursty with high bandwidth. Under normal
conditions, the IoT traffic periodically transmits status information
with a small bandwidth, several kilobits/sec. However, in an abnormal
state, IoT devices need a high bandwidth, up to several tens of
megabits/sec, in order to identify actual events and investigate
accurate status information. In addition, traffic volume can
explosively increase in response to emergencies. For example, in the
case of smart-grid application, the bandwidth of several kilobits/sec
is usually used, and when an urgent situation occurs, a broadband
channel is required up to several tens of megabits/sec.
Choi, et,al. Expires September 12, 2019 [Page 6]
Internet-Draft IoT with Artificial Intelligence March 2019
The other traffic can be integrated at an IoT network to increase
bandwidth efficiency. If an emergency situation occurs in the IoT
service, IoT traffic volumes suddenly increase, in which case network
processing capacity may be not sufficient. If the IoT service is
integrated with voice and video applications, the problem can become
more complex. As time goes by, traffic congestion and bottlenecks are
frequent in some areas. In addition, if an existing service policy
changes (for example, prioritizing certain traffic or suddenly
changing the route), other unexpected problems may be encountered.
Various congestion control and load balancing algorithms with the
help of artificial intelligence can be applied to handle time-varying
traffic on a network.
Until now, much research has been done on traffic variability in an
integrated network service environment. All networks have their own
traffic characteristics, depending on geographical area, number of
subscribers, subscribers' preferences, and types of applications used.
In the case of IoT traffic, the normal bandwidth is very small. If
the IoT traffic volume increases abruptly in an abnormal situation,
the network may suffer unacceptable delay and loss. If emergency
situations detected by IoT networks occur in a smart grid or
intelligent transportation system, the processing power of the IoT
network alone cannot solve the problem and the help of existing
network resources is inevitable.
2.3. Management overheads of heterogeneous IoT sensors
Traffic management in an integrated network environment is not easy.
In order to operate the network steadily, a network operator has its
own know-hows and experiences. If there are plenty of network
resources, it is easy to set up a bypass route even if network
failure or congestion occurs in a specific area. For operating
network steadily, network resources may be designed to be over-
provisioned in order to cope with various possible outages. A network
operator predicts the amount of traffic generated by the
corresponding equipment and grasps to what extent a transmission
bandwidth is required. If traffic fluctuation is very severe, the
network operator can allocate network resources in advance. In case
Choi, et,al. Expires September 12, 2019 [Page 7]
Internet-Draft IoT with Artificial Intelligence March 2019
of frequent failures or severe traffic fluctuation, some network
resources are separated in order not to affect normal traffic.
More than a billion IoT devices are expected to connect to
smartphones, tablets, wearables, and vehicles. Therefore, IoT
services are targeted at mobile applications. In particular,
intelligent transportation systems need the help of IoT technology to
provide traffic monitoring and prevent public or private traffic
accidents. IoT technology can play an important role in reducing
traffic congestion, saving people's travel time and costs, and
providing a pleasant journey.
The IoT service has troublesome administrative problems to configure
an IoT network which consists of IoT servers, gateways, and many
sensing devices. The small-sized but large-numbered IoT devices may
incur administrative overhead since all the IoT devices should be
initialized and the bootstrapping information of IoT resources should
be loaded into the IoT service environments. Whenever some IoT
devices are newly added and some devices have to be removed, the
dynamic reconfiguration of IoT resources is essential. In addition,
the IoT device's preinstalled software should be regularly inspected
and upgraded according to its version. Frequent upgrades and changes
to some IoT devices may require autonomic management and
bootstrapping techniques.
Network management generally assumes that all network resources
operate reliably with acceptable quality. In most failure situations,
the network operator decides to switch to a redundant backup device
or bypass the failed communication path. If some IoT devices are not
stable, duplicate IoT devices can be installed for the same purpose.
If IoT resources are not duplicated, various mechanisms are needed to
reduce the damage. Therefore, it is necessary to prioritize the
management tasks to be performed first when an abnormality occurs in
the IoT service environment. However, managing duplicate networks can
cause another problem. If two IoT devices are running at the same
time, the recipient can get redundant information. If two or more
unusual situations occur at the same time, it is difficult to solve
the problem since tasks for urgent processing should be distinguished
from tasks that can be performed over time.
Choi, et,al. Expires September 12, 2019 [Page 8]
Internet-Draft IoT with Artificial Intelligence March 2019
In addition, the operations manager's mistakes or misunderstanding of
problem situations can lead to other unexpected complications.
Therefore, artificial intelligence technologies can help what kind of
network management work is required when an unexpected complicated
situation occurs even though a procedure for an abnormal situation is
already prepared.
3. Overview of AI/ML-based IoT services
In this section, successful applications of artificial intelligence
in IoT domains are provided. The common property of IoT applications
and services is that they require fast analytics rather than later
analytics with piled data. Recently, neural-network-based artificial
intelligence technologies are widely used across many IoT
applications.
Simple IoT applications include dynamic contexts that share common
features among social relations at the same administration domain.
IoT devices in the same domain can provide their service contexts to
the IoT server. When a dynamic change occurs in an IoT service
context, the IoT device needs real-time processing to activate urgent
events, alert notifications, update, and reconnect contexts. The IoT
service must support real-time interactions between the IoT device
and the system in the same domain. The IoT service contexts must be
shared between physical objects and social members in the same domain
as well.
Artificial intelligence technologies have been shown promising in
many areas, including IoT. For example, contextual information for a
car-sharing business must interact with customers, car owners, and
car sharing providers. All entities in the value chain of a car
sharing business must share the corresponding situation to pick up,
board, and return shared cars. Communication networks and interactive
information, including registration and payment, can be shared
tightly among the entities. Home IoT service environment can be
equipped with sensors for theft detection, door lock, temperature,
fire detection, gas detection, short circuit, air condition to name a
few. Office IoT service environments, including buildings such as
Choi, et,al. Expires September 12, 2019 [Page 9]
Internet-Draft IoT with Artificial Intelligence March 2019
shopping centers and bus/airport terminals, have their own sensors,
including alarm sensors. When an alarm signal is detected by the
sensor, the physical position and occurrence time of the sensor is
determined in advance. All signals from various sensors are analyzed
comprehensively to make the right decision. If some sensors
frequently malfunction, the situation can be grasped more accurately
by analyzing the information of the adjacent sensor. In particular,
when installing multiple sensors in a particular building (e.g.,
surveillance camera, location monitoring, temperature, etc.), a much
wider range of sensors can be used when utilizing artificial
intelligence and machine learning technologies.
(Smart home) Smart home concept span over multiple IoT applications,
health, energy, entertainment, education, etc. It involves voice
recognition, natural language processing, image-based object
recognition, appliance management, and many more artificial
intelligence technologies integrated with IoT. Smart connected-
devices monitor the house to provide better control over home
supplies and expenses. The energy consumption and efficiency of home
appliances are monitored and analyzed with deep learning based
technologies, such as artificial neural network, long-short-term-
memory, etc.
(Smart city) Smart city, as well, contains multiple IoT domains,
transportation, infrastructure, energy, agriculture, etc. Since
heterogeneous data from different domains are gathered in smart
cities, various artificial intelligence approaches are studied in
smart-city application. Public transportation behaviors and crowd
movements patterns are important issues, and they are often dealt
with neural network based methods, long-short-term-memory and
convolutional neural network.
(Smart energy) As two-way communication energy infrastructure is
deployed, smart grid has become a big IoT application, which requires
intelligent data processing. The traditional energy providers are
highly interested in recognizing local energy consumption patterns
and forecasting the needs in order to make appropriate decisions on
real-time. Moreover, the energy consumers, as well, want analyzed
information on their own energy consumption behaviors. Recently, many
Choi, et,al. Expires September 12, 2019 [Page 10]
Internet-Draft IoT with Artificial Intelligence March 2019
works on energy consumption prediction, energy flexibility analysis,
etc. are actively ongoing. Most works are based on the latest deep
learning technologies, such as multi-layered-perceptron, recurrent
neural network, long-short-term-memory, autoencoder, etc.
(Smart transportation) The intelligent transportation system is
another source of big data in IoT domains. Many use cases, such as
traffic flow and congestion prediction, traffic sign recognition,
vehicle intrusion detection, etc., have been studied. Moreover, a lot
of advanced artificial intelligence technologies are required in
autonomous and smart vehicles, which require many intelligent sub-
tasks, such as pedestrian's detection, obstacle avoidance, etc.
(Smart healthcare) IoT and artificial intelligence are integrated
into the healthcare and wellbeing domain as well. By analyzing food
images with convolutional neural network on mobile devices, dietary
intakes can be measured. With voice signal captured from sensor
devices, voice pathologies can be detected. Moreover, recurrent
neural network and long-short-term-memory technologies are actively
being studied for early diagnosis and prediction of diseases with
time series medical data.
(Smart agriculture) To manage a vast area of land, IoT and artificial
intelligence technologies are recently used in agriculture domains.
Deep neural network and convolutional neural network are utilized for
crop detection or classification and disease recognition in the
plants. Moreover, for automatic farming with autonomous machine
operation, obstacle avoidance, fruit location, and many more sub-
tasks are handled with advanced artificial intelligence technologies.
4. Requirements for AI/ML-based IoT services
(to be included)
4.1. Requirements for AI/ML-based IoT data collection and delivery
(to be included)
Choi, et,al. Expires September 12, 2019 [Page 11]
Internet-Draft IoT with Artificial Intelligence March 2019
4.2. Requirements for intelligent and context-aware IoT services
(to be included)
5. State of arts of the artificial intelligence/machine learning
technologies for IoT services
In this section, well-known machine learning and artificial
intelligence technologies applicable to IoT applications are reviewed.
5.1. Machine learning and artificial intelligence technologies review
The classical machine learning models can be divided into three types,
supervised, unsupervised, and reinforcement learnings. Therefore, in
this subsection, machine learning and artificial intelligence
technology reviews are done in four different categories: supervised,
unsupervised, reinforcement, and neural-network-based.
5.1.1. Supervised learning for IoT
Supervised learning is a task-based type of machine learning, which
approximates function describing the relationship and causality
between input and output data. Therefore, the input data needs to be
clearly defined with proper output data since supervised learning
models learn explicitly from direct feedback.
(K-Nearest Neighbor) Given a new data point in K-Nearest Neighbor
(KNN) classifier, it is classified according to its K number of the
closest data points in the training set. To find the K nearest
neighbors of the new data point, it needs to use a distance metric
which can affect classifier performance, such as Euclidean,
Mahalanobis or Hamming. One limitation of KNN in applying for IoT
network is that it is unscalable to large datasets because it
requires the entire training dataset to classify a newly incoming
Choi, et,al. Expires September 12, 2019 [Page 12]
Internet-Draft IoT with Artificial Intelligence March 2019
data. However, KNN required less processing power capability compared
to other complex learning methods.
(Naive Bayes) Given a new data point in Naive Bayes classifiers,
it is classified based on Bayes' theorem with the "naive" assumption
of independence between the features. Since Naive Bayes classifiers
don't need a large number of data points to be trained, they can deal
with high-dimensional data points. Therefore, they are fast and
highly scalable. However, since its "naive" assumptions are somewhat
strong, a certain level of prior knowledge on the dataset is required.
(Support Vector Machine) Support Vector Machine (SVM) is a binary and
non-probabilistic classifier which finds the hyperplane maximizing
the margin between the classes of the training dataset. SVM has been
the most pervasive machine learning technology until the study on
neural network technologies are advanced recently. However, SVM still
has advantages over neural network based and probabilistic approaches
in terms of memory usage and capability to deal with high-dimensional
data. In this manner, SVM can be used for IoT applications with
severe data storage constraint.
(Regression) Regression is a method for approximating the
relationships of the dependent variable, which is being estimated,
with the independent variables, which are used for the estimation.
Therefore, this method is widely used for forecasting and inferring
causal relationships between input data and output data in time-
sensitive IoT application.
(Random Forests) In random forests, instead of training a single
decision tree, a group of trees is trained. Each tree is trained on a
subset of the training set using a randomly chosen subset of M input
variables. Random forests considering various tree structures have
very high accuracy, so it can be utilized in the accuracy-critical
IoT applications.
5.1.2. Unsupervised learning for IoT
Unsupervised learning is a data-driven type of machine learning which
finds hidden structure in unlabeled dataset without feedback during
Choi, et,al. Expires September 12, 2019 [Page 13]
Internet-Draft IoT with Artificial Intelligence March 2019
the learning process. Unlike supervised learning, unsupervised
learning focuses on discovering patterns in the data distributions
and gaining insights from them.
(K-means clustering) K-means clustering aims to assign observations
into K number of clusters in which each observation belongs to the
cluster having the most similarities. The measure of similarity is
the distance between K cluster centers and each observation. K-means
is a very fast and highly scalable clustering algorithm, so it can be
used for IoT applications with real-time processing requirements such
as smart transportation.
(Density-based spatial clustering of applications with noise)
Density-Based approach to Spatial Clustering of Applications with
Noise (DBSCAN) is a method that clusters dataset based on the density
of its data samples. In this model, dense regions which include data
samples with many close neighbors are considered as clusters, and
data samples in low-density regions are classified as outliers
[Kriegal]. Since this method is robust to outliers, DBSCAN is
efficient data clustering method for IoT network environments with
untrusted big datasets in practice.
5.1.3. Reinforcement learning for IoT
Reinforcement learning is a reactive type of machine learning that
learn a series of actions in a given set of possible states, actions,
and rewards or penalties. It can be seen as the exploring decision-
making process and choosing the action series with the most reward or
the least penalty which can be cost, priority, time to name a few.
Reinforcement learning can be helpful for selecting action of IoT
device by providing a guideline.
(Q-learning) Q-Learning is a model-free, off-policy reinforcement
learning algorithm based on the well-known Bellman Equation. The goal
is to learn an action-selection policy maximizing the Q-value, which
tells an agent what action to take. It can be used for IoT device to
determine which action it should take according to conditions.
Choi, et,al. Expires September 12, 2019 [Page 14]
Internet-Draft IoT with Artificial Intelligence March 2019
(State-Action-Reward-State-Action) Though State-Action-Reward-State-
Action (SARSA) is a much similar algorithm to Q-learning, the main
difference is that it is an on-policy algorithm in which agent
interacts with the environment and updates the policy based on
actions taken. It means that the Q-value is updated by an action
performed by the current policy instead of the greed policy that
maximizes Q-value. In this perspective, it is relevant when an action
of one IoT device will greatly influence the condition of the
environment.
(Deep Q Network) Deep Q network (DQN) is developed to solve the
exploration problem for unseen states. In the case of Q-learning, the
agent is not capable of estimating value for unseen states. To handle
this generality problem, DQN leverages neural network technology. As
a variation of the classic Q-Learning algorithm, DQN utilizes a deep
convolutional neural net architecture for Q-function approximation.
In real environments not all possible states and conditions are not
able to be observed. Therefore, DQN is more relevant than Q-learning
or SARSA in real applications such as IoT. Since DQN could be used
within only discrete action space, it can be utilized for traffic
routing in the IoT network.
(Deep Deterministic Policy Gradient) DQN has solved generality and
exploration problem of the unseen or rare states. Deep Deterministic
Policy Gradient (DDPG) takes DQN into the continuous action domain.
DDPG is a deterministic policy gradient based actor-critic, model-
free algorithm. The actor decides the best action for each state and
critic is used to evaluate the policy, the chosen action set. In IoT
applications, DDPG can be utilized for the tasks that require
controlled in continuous action spaces, such as energy-efficient
temperature control, computation offloading, network traffic
scheduling, etc.
5.1.4. Neural Network based algorithms for IoT
(Recurrent Neural Network) Recurrent Neural Network (RNN) is a
discriminative type of supervised learning model that takes serial or
time-series input data. RNN is specifically developed to address
Choi, et,al. Expires September 12, 2019 [Page 15]
Internet-Draft IoT with Artificial Intelligence March 2019
issue of time dependency of sequential time-series input data. It
processes sequences of data through internal memory, and it is useful
in IoT applications with time-dependent data, such as identifying
time-dependent patterns of sensor data, estimating consumption
behavior over time, etc.
(Long Short Term Memory) As an extension of RNN, Long Short Term
Memory (LSTM) is a discriminative type of supervised learning model
that is specialized for serial or time-series input data as well
[Hochreiter]. The main difference of LSTM from RNN is that it
utilizes the concept of gates. It actively controls forget gates to
prevent the long term time dependency from waning. Therefore,
compared to RNN, it is more suitable for data with long time
relationship and IoT applications requiring analysis on the long lag
of dependency, such as activity recognition, disaster prediction, to
name a few [Chung].
(Convolutional Neural Network) Convolutional neural network (CNN) is
a discriminative type of supervised learning model. It is developed
specifically for processing 2-dimensional image data by considering
local connectivity, but now generally used for multidimensional data
such as multi channel sound signals, IoT sensor values, etc. As in
CNN neurons are connected only to a small subset of the input and
share weight parameters, CNN is much more sparse compared to fully
connected network. However, it needs a large training dataset,
especially for visual tasks. In CNN, a new activation function for
neural network, Rectified Linear Unit (ReLU), was proposed, which
accelerates training time without affecting the generalization of the
network [Krizhevsky]. In IoT domains, it is often used for detection
tasks that require some visual analysis.
(Variational Autoencoder) Autoencoder (AE) is a generative type
of unsupervised learning model. AE is trained to generate output to
reconstruct input data, thus it has the same number of input and
output units. It is suitable for feature extraction and
dimensionality reduction. Because of its behavior to reconstructing
the input data at the output layer, it is often used for machinery
fault diagnosis in IoT applications. The most popular type of AE,
Variational Autoencoder (VAE) is a generative type of semi-supervised
Choi, et,al. Expires September 12, 2019 [Page 16]
Internet-Draft IoT with Artificial Intelligence March 2019
learning model. Its assumptions on the structure of the data are weak
enough for real applications and its training process through
backpropagation is fast [Doersch]. Therefore, VAE is suitable in IoT
applications where data tends to be diverse and scarce.
(Generative Adversarial Network) Generative Adversarial Network (GAN)
is a hybrid type of semi-supervised learning model which contain two
neural networks, namely the generative and discriminative networks
[Goodfellow]. The generator is trained to learn the data distribution
from a training dataset in order to generate new data which can
deceive the latter network, so-called the discriminator. Then, the
discriminator learns to discriminate the generated data from the real
data. In IoT applications, GAN can be used in situations when
something needs to be generated from the available data, such as
localization, way-finding, and data type conversion.
5.2. Technologies for lightweight and real-time intelligence
As the era of IoT has come, some sort of light-weight intelligence is
needed to support smart objects. Prior to the era of IoT, most of the
works on learning did not consider resource-constrained environments.
Especially, deep learning models require many resources such as
processing power, memory, stable power source, etc. However, it has
been recently shown that the parameters of the deep learning models
contain redundant information, so that some parts of them can be
delicately removed to reduce complexity without much degradation of
performance [Ba], [Denil]. In this section, the technologies to
achieve real-time and serverless learning in IoT environments are
introduced.
(network compression) Network compression is a method to convert a
dense network into a sparse one. With this technology the network can
be reduced in its size and complexity. By pruning irrelevant parts or
sharing redundant parameters, the storage and computational
requirements can be decreased [Han]. After pruning, the performance
of the network is examined and the pruning process is repeated until
the performance reaches the minimum requirements for the specific
applications and use cases. As many parameters are removed or shared,
Choi, et,al. Expires September 12, 2019 [Page 17]
Internet-Draft IoT with Artificial Intelligence March 2019
the memory required is reduced, as well as computational burden and
energy. Especially as most energy in neural network is used to access
memory, the consumed energy dramatically drops. Although its main
limitation is that there is not a general solution to compress all
kinds of network, but it rather depends on the characteristics of
each network. However, network compression is still the most
widespread method to make deep learning technologies to be
lightweight and IoT-friendly.
(approximate computing) Approximate computing is an approach to
support deep learning in smart devices [Venkataramani], [Moons]. It
is based on the facts that the results of deep learning do not need
to be exact in many IoT applications but still valid if the results
are in an acceptable range. By integrating approximate computing into
deep learning, not only the execution time but also the energy
consumption are reduced [Mohammadi]. Based on the optimal trade-off
between accuracy and run-time or energy consumption, the network can
be adjustably approximated. The network approximate technology can be
well-used in such situations when the response time is more important
than sophisticatedly analyzed results. Although it is a technology to
facilitate real-time and lightweight intelligence, the process of
training models and converting it to approximate network require some
amount of resource. Therefore, the approximated model can be deployed
on smart devices but the learning and approximation processes still
need to take places on resource rich platforms.
6. IANA Considerations
This document requests no action by IANA.
7. Acknowledgements
8. Contributors
Choi, et,al. Expires September 12, 2019 [Page 18]
Internet-Draft IoT with Artificial Intelligence March 2019
9. Informative References
[Hochreiter] S. Hochreiter and J. Schmidhuber, "Long short-term
memory," Neural Comput., vol. 9, no. 8, pp. 1735-1780, Nov. 1997.
[Chung] J. Chung, C. Gulcehre, K. Cho, and Y. Bengio, "Empirical
evaluation of gated recurrent neural networks on sequence modeling,"
arXiv preprint arXiv:1412.3555v1 [cs.NE], 2014.
[Krizhevsky] A. Krizhevsky, I. Sutskever, and G. E. Hinton, "ImageNet
classification with deep convolutional neural networks," in Proc. Adv.
Neural Inf. Process. Syst., 2012, pp. 1097-1105.
[Doersch] C. Doersch, "Tutorial on variational autoencoders," arXiv
preprint arXiv:1606.05908v2 [stat.ML], 2016.
[Goodfellow]. I. Goodfellow et al., "Generative adversarial nets," in
Proc. Adv. Neural Inf. Process. Syst., 2014, pp. 2672-2680.
[Ba] J. Ba and R. Caruana, "Do deep nets really need to be deep?" in
Proc. Adv. Neural Inf. Process. Syst., Montreal, QC, Canada, 2014, pp.
2654-2662.
[Denil] M. Denil, B. Shakibi, L. Dinh, N. de Freitas, and M. Ranzato,
"Predicting parameters in deep learning," in Proc. Adv. Neural Inf.
Process. Syst., 2013, pp. 2148-2156.
[Han] S. Han, J. Pool, J. Tran, and W. Dally, "Learning both weights
and connections for efficient neural network," in Proc. Adv. Neural
Inf. Process. Syst., Montreal, QC, Canada, 2015, pp. 1135-1143.
[Venkataramani] S. Venkataramani, A. Ranjan, K. Roy, and A.
Raghunathan, "AxNN: Energy-efficient neuromorphic systems using
approximate computing," in Proc. Int. Symp. Low Power Electron.
Design, ACM, 2014, pp. 27-32.
[Moons] B. Moons, B. De Brabandere, L. Van Gool, and M. Verhelst,
"Energy- efficient ConvNets through approximate computing," in Proc.
IEEE Winter Conf. Appl. Comput. Vis. (WACV), Lake Placid, NY, USA:
IEEE, 2016, pp. 1-8.
[Mohammadi] Mohammadi, Mehdi, et al. "Deep learning for IoT big data
and streaming analytics: A survey," IEEE Communications Surveys &
Choi, et,al. Expires September 12, 2019 [Page 19]
Internet-Draft IoT with Artificial Intelligence March 2019
Tutorials, 2018, pp. 2923-2960.
[Kriegel] Kriegel, HansPeter, et al. "Densitybased clustering,"
Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery,
2011, pp. 231-240.
Choi, et,al. Expires September 12, 2019 [Page 20]
Internet-Draft IoT with Artificial Intelligence March 2019
Authors' Addresses
Jun Kyun Choi (editor)
Korea Advanced Institute of Science and Technology (KAIST)
193 Munji Ro, Yuseong-gu, Daejeon
Korea
Email: jkchoi59@kaist.ac.kr
Na Kyoung Kim
Korea Advanced Institute of Science and Technology (KAIST)
193 Munji Ro, Yuseong-gu, Daejeon
Korea
Email: nkim71@kaist.ac.kr
Jae Seob Han
Korea Advanced Institute of Science and Technology (KAIST)
193 Munji Ro, Yuseong-gu, Daejeon
Korea
Email: j89449@kaist.ac.kr
Min Kyung Kim
Korea Advanced Institute of Science and Technology (KAIST)
193 Munji Ro, Yuseong-gu, Daejeon
Korea
Email: mkkim1778@kaist.ac.kr
Gyu Myoung Lee
Liverpool John Moores University
Barkhill Rd, Merseyside, Liverpool L17 6BD
United Kingdom
Email: G.M.Lee@ljmu.ac.uk
Choi, et,al. Expires September 12, 2019 [Page 21]