ICN Research Group J.K.Choi Internet-Draft N.K.Kim Intended status: Informational J.S.Han Expires: January 8, 2020 M.K.Kim KAIST July 7, 2019 Requirements and Challenges for User-level Service Managements of IoT Network by utilizing Artificial Intelligence draft-choi-icnrg-aiot-01 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 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/. Choi, et,al. Expires January 8, 2020 [Page 1] Internet-Draft IoT with Artificial Intelligence July 2019 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 January 8, 2020 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 ...................................... 5 2.1. Untrusted and incorrect IoT devices ............................. 5 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................................... 8 4. Requirements for AI/ML-based IoT services.............................. 10 4.1. Requirements for AI/ML-based IoT data collection and delivery........ 11 4.2. Requirements for intelligent and context-aware IoT services ......... 11 4.3. Requirements for applying AI/ML to IoT data ...................... 13 4.3.1. Training AI/ML algorithm................................. 13 4.3.2. AI/ML inference in IoT application.......................... 13 5. State of arts of the artificial intelligence/machine learning technologies for IoT services14 5.1. Machine learning and artificial intelligence technologies review ........ 14 Choi, et,al. Expires January 8, 2020 [Page 2] Internet-Draft IoT with Artificial Intelligence July 2019 5.1.1. Supervised learning for IoT............................... 14 5.1.2. Unsupervised learning for IoT............................. 15 5.1.3. Reinforcement learning for IoT ............................ 16 5.1.4. Neural Network based algorithms for IoT..................... 17 5.2. Technologies for lightweight and real-time intelligence .............. 19 6. Use cases of AI/ML into IoT service.................................... 20 6.1. Use case 1: Surveillance and Security in Smart Home ............... 20 6.2. Use case 2: Smart Health in Smart Home ........................ 21 7. IANA Considerations ............................................... 21 8. Acknowledgements ................................................ 21 9. Contributors ..................................................... 21 10. Informative References ............................................ 21 1. Introduction The document explains the effects of applying artificial intelligence/machine learning (AI/M L) 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 com munication 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 w idely deployed. Future IoT applications occur at multiple domains of heterogeneity with vari ous time scales. The IoT service requirements for common architectures and public APIs poses some challe nges to the underlying service environment and networking technologies. Some IoT applicat ions require signif icant security and privacy as well as significant resource and time constra ints. These mission-critical applications can be separated from many common IoT applicati ons that current technology may not provide. It means that IoT service requirements are diff icult to classify common requirements and functional requirements depending on IoT servic e scenario. Recently, artificial intelligence technologies can help the context-aware IoT service scenari os apply rule-based knowledge accumulation. The IoT service assumes that many sensing Choi, et,al. Expires January 8, 2020 [Page 3] Internet-Draft IoT with Artificial Intelligence July 2019 devices are connected to single or multiple IoT network domains. Each sensor sends small packets to the IoT servers periodically or non-periodically. Detection data contains periodic status information that monitors whether the system is in a normal state or not. In some ca ses, 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 th e operating mode to an abnormal phase and activate future probes. Alarm conditions shoul d be promptly notified to responsible persons. For mission-critical applications, reliable co mmunication 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 t raffic 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 da ta 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, a nd 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 da tabase 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 qu estions 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 pr otect against future unacceptable situations. But, if time-critical data is missed due to error s in the sensing devices and the delivery protocol, there is no reason to configure IoT netw orks and devices at a high cost. 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 collecte Choi, et,al. Expires January 8, 2020 [Page 4] Internet-Draft IoT with Artificial Intelligence July 2019 d. The data of the redundant sensor installed in the same area should be received or combi ned 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 ti me. IoT service operators can look at the operational history of the sensor for a period of ti me to determine what problems were encountered when data was collected. When an abno rmal situation occurs, IoT sensor should investigate whether it noticed normal operations an d notified the IoT service operator. If the abnormal situation is not properly detected, the op erator should analyze whether it was caused by malfunction of the IoT sensor or other reas ons. 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 rec ord of the past, it is possible to determine when an abnormal situation arises. Most problem s are likely to be repeated, so if the past learning experience is accumulated, the anomaly o f IoT services can be easily and immediately identified. In addition, when information gather ed from various sensors is synthesized, it is possible to accurately determine whether abnor mal situations have occurred. Various types of IoT sensors are installed with certain purposes. It expects that all the IoT s ensors intend to monitor the occurrence of special abnormal situations in advance. Therefo re, it should be set in advance what actions are required when a specific anomaly occurs. T he appropriate work is performed on the abnormal situation according to the procedure, pre defined by the human. By using artificial intelligence and machine learning algorithms, the a ppropriate actions are taken when an abnormal situation is detected from various IoT senso rs. 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 Choi, et,al. Expires January 8, 2020 [Page 5] Internet-Draft IoT with Artif icial Intelligence July 2019 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 additi on, 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. 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 intell igence can be applied to handle time-varying traffic on a network. Choi, et,al. Expires January 8, 2020 [Page 6] Internet-Draft IoT with Artificial Intelligence July 2019 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 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 Choi, et,al. Expires January 8, 2020 [Page 7] Internet-Draft IoT with Artificial Intelligence July 2019 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. 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 rat her 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 socia l relations at the same administration domain. IoT devices in the same domain can provide t heir service contexts to the IoT server. When a dynamic change occurs in an IoT service co ntext, the IoT device needs real-time processing to activate urgent events, alert notification Choi, et,al. Expires January 8, 2020 [Page 8] Internet-Draft IoT with Artificial Intelligence July 2019 s, update, and reconnect contexts. The IoT service must support real-time interactions bet ween 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 custome rs, car owners, and car sharing providers. All entities in the value chain of a car sharing bus iness must share the corresponding situation to pick up, board, and return shared cars. Co mmunication networks and interactive information, including registration and payment, can be shared tightly among the entities. Home IoT service environment can be equipped with s ensors for theft detection, door lock, temperature, fire detection, gas detection, short circui t, air condition to name a few. Office IoT service environments, including buildings such as shopping centers and bus/airport terminals, have their own sensors, including alarm sensor s. When an alarm signal is detected by the sensor, the physical position and occurrence ti me of the sensor is determined in advance. All signals from various sensors are analyzed c omprehensively to make the right decision. If some sensors frequently malfunction, the situ ation can be grasped more accurately by analyzing the information of the adjacent sensor. I n particular, when installing multiple sensors in a particular building (e.g., surveillance came ra, location monitoring, temperature, etc.), a much wider range of sensors can be used wh en utilizing artificial intelligence and machine learning technologies. (Smart home) Smart home concept span over multiple IoT applications, health, energy, ente rtainment, education, etc. It involves voice recognition, natural language processing, image -based object recognition, appliance management, and many more artif icial intelligence te chnologies integrated with IoT. Smart connected-devices monitor the house to provide bett er control over home supplies and expenses. The energy consumption and efficiency of ho me 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 th ey are often dealt with neural network based methods, long-short-term-memory and convo lutional neural network. Choi, et,al. Expires January 8, 2020 [Page 9] Internet-Draft IoT with Artificial Intelligence July 2019 (Smart energy) As two-way communication energy infrastructure is deployed, smart grid ha s become a big IoT application, which requires intelligent data processing. The traditional e nergy 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 e nergy consumers, as well, want analyzed information on their own energy consumption beh aviors. Recently, many works on energy consumption prediction, energy flexibility analysis, etc. are actively ongoing. Most works are based on the latest deep learning technologies, s uch as multi-layered-perceptron, recurrent neural network, long-short-term-memory, auto encoder, 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 re cognition, vehicle intrusion detection, etc., have been studied. Moreover, a lot of advanced artificial intelligence technologies are required in autonomous and smart vehicles, which re quire many intelligent sub-tasks, such as pedestrian's detection, obstacle avoidance, etc. (Smart healthcare) IoT and artificial intelligence are integrated into the healthcare and wellb eing 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-ter m-memory technologies are actively being studied for early diagnosis and prediction of dis eases with time series medical data. (Smart agriculture) To manage a vast area of land, IoT and artificial intel ligence technologie s are recently used in agriculture domains. Deep neural network and convolutional neural ne twork 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 te chnologies. 4. Requirements for AI/ML-based IoT services In this section, the requirements for AI/ML-based IoT data collection and delivery, intelligen t and context-aware IoT services, and applying AI/ML to IoT data willbe described. Choi, et,al. Expires January 8, 2020 [Page 10] Internet-Draft IoT with Artificial Intelligence July 2019 4.1. Requirements for AI/ML-based IoT data collection and delivery IoT services store a vast amount of data that IoT devices periodically generate, and the refining and analyzing are costly. Effective analysis of IoT data has been considered to be the most important factor in data processing, but the analysis of efficient data collection and delivery methods are becoming other significant factors as the amount of the data collected is explosively increasing. In particular, as a number of IoT devices have been deployed within the IoT network, controlling data collection and delivery for each of them has become impossible. The introduction of AI/ML techniques for simultaneous and efficient management of the IoT devices should be considered as a countermeasure. For IoT data collection and delivery, the following two factors will need to be considered, IoT devices energy and data quality. (IoT Device Energy) As many IoT devices have begun to be deployed within the IoT network, it is impossible to deliver energy to many IoT devices simultaneously. Consequently, the efficient battery use has become an important issue. If IoT data collection and delivery periods are too short, a lifetime of the IoT device will be shortened through the reckless use of IoT device energy. Thereby, it increases the cost required to provide IoT service. On the other hand, if IoT data collection and delivery period are too long, the quality of the IoT services provided will be reduced due to the lack of details in the data for situation recognition and real-time processing. Therefore, taking into account the energy consumption of the IoT devices, research on proper IoT data collection and delivery period is necessary. (Data Quality) Since the data collected from the majority of IoT devices usually contain redundant information, it causes additionalcosts for the data collection and refinement processes. Therefore, it will be necessary to select and deliver meaningful information from redundant IoT data to reduce unnecessary cost on the IoT network. To do so, it will need the research to identify the relationships among the data collected various devices and interpret the information that the data contains. 4.2. Requirements for intelligent and context-aware IoT services Choi, et,al. Expires January 8, 2020 [Page 11] Internet-Draft IoT with Artificial Intelligence July 2019 In a context-aware IoT service environment, it is important to establish a context to be aware of in advance since IoT devices will be deployed according to a pre-designed architecture and to check how characteristics of IoT data and data-to-data characteristics are expressed under these circumstances. For the data produced by IoT devices, since it contains the device's relative location information, sensing value over time, event information, it should be reviewed to provide the target context-aware service using this information. Some of the necessary technologies will be described in the following. (Physical Clustering) To increase the accuracy of context-awareness, the provision of context-aware services should be considered in a situation where the relationship between IoT devices with respect to physical layout or physical environment is taken into account. Setting a rule using the service provider's domain knowledge may be possible, but introducing the physical clustering into a diverse IoT environment(e.g., in bedroom, kitchen, balcony, or a space connected through an open door) will require identifying the physical relationship between the devices using data generated from IoT devices. (Extra Data Processing) In order to prevent degradation of service quality from errors in data values or device malfunctions, extra sensors should be placed in the majority of IoT environments. In a context-aware service, they contain the same information, so the technologies filtering the data that contains only essential part among the same information while preventing data errors would be required. (Unreported data handling) If an event is detected on a particular IoT device, it will transmit data regardless of the device's sensing and delivery interval. At this time, the data of IoT devices which are physically clustered are needed to accurately detect events that occurred, and it is difficult to expect that these devices will provide data at the same time. A gateway can request data from clustered devices, but it has a problem for real-time processing for emergency situations. Therefore, handling unreported data will be required based on previously collected data. (Abnormal data in AI/ML) In the case of context-aware services that operates based on the predetermined rule, the flexibility to cope with emergency situations that have not been considered is low, and thus AI/ML algorithms are required to intelligently cope Choi, et,al. Expires January 8, 2020 [Page 12] Internet-Draft IoT with Artificial Intelligence July 2019 with a myriad of situations. However, many abnormal data are generated depending on environmental conditions such as device status, so AI/ML algorithms that can operate in that imperfect environment should be considered. 4.3. Requirements for applying AI/ML to IoT data In this subsection, the requirements for applying AI/ML to IoT data are described. 4.3.1. Training AI/ML algorithm To use AI/ML algorithm, two elements are required, AI/ML model and training data. The presence of training dataset in good quality is an important factor of the AI/ML model performance since the model is iteratively trained with the training data. However, for anomaly detection, there is not enough training data since not only the probability of anomaly occurrence is very low but also it is almost impossible to retrieve the ground truth value even when the situation has occurred. Therefore, using domain knowledge, AI/ML learning based on abnormal situation data generation or simulation should be considered. For example, for an external intrusion detection application within a smart home, when a camera and a motion sensor detect an intruder, a light sensor checks the measuring value. If the light does not turn on, then the IoT application recognizes it as an abnormal situation. In this way, by using the domain knowledge, the rule regarding the operational scenario of the IoT application is generated as the training data, and the generated training data can be used for model learning. This will not only enable learning the anomaly detection algorithm in IoT application but also improving the accuracy. Therefore, IoT application, in which it is difficult to acquire dataset in good quality, willrequire data generation based on domain knowledge for AI/ML. 4.3.2. AI/ML inference in IoT application In order for AI ML technology to be applied to IoT applications, the training data and the input data for model testing and inferencing must have the same characteristics such as dimension, time interval, types of features, etc. However, due to the volatile IoT data characteristics that vary from situations in many IoT applications, it is difficult to directly apply the AI/ML algorithms. For example, in a simple monitoring phase, the IoT devices periodically send sensing data, and AI/ML have no difficulty in operating. However, in Choi, et,al. Expires January 8, 2020 [Page 13] Internet-Draft IoT with Artificial Intelligence July 2019 an abnormal mode, the IoT applications require a fast response, and IoT devices transmit data at shorter intervals than normal, which changes the characteristics of the data being input to the AI/ML algorithm. Therefore, data preprocessing technology handling the abnormal data will be required in advance, such as data imputation, correcting data anomalies, and Interpolation of unreported data. 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 t 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 data. However, KNN required less processing power capability compared to other complex learning methods. Choi, et,al. Expires January 8, 2020 [Page 14] Internet-Draft IoT with Artificial Intelligence July 2019 (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 the learning process. Unlike supervised learning, unsupervised learning focuses on discovering patterns in the data distributions and gaining insights from them. Choi, et,al. Expires January 8, 2020 [Page 15] Internet-Draft IoT with Artificial Intelligence July 2019 (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. (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 Choi, et,al. Expires January 8, 2020 [Page 16] Internet-Draft IoT with Artificial Intelligence July 2019 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 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 Choi, et,al. Expires January 8, 2020 [Page 17] Internet-Draft IoT with Artificial Intelligence July 2019 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 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. Choi, et,al. Expires January 8, 2020 [Page 18] Internet-Draft IoT with Artificial Intelligence July 2019 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, 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 Choi, et,al. Expires January 8, 2020 [Page 19] Internet-Draft IoT with Artificial Intelligence July 2019 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. Use cases of AI/ML into IoT service Many IoT service environments are equipped with camera, door lock, temperature sensor, fire detector, gas detector, alarm, and so on. Each sensor is deployed with particular purposes of each own to provide a specific service. However, there is a problem that the sensor utilization is not high enough due to the provision of the service using only a single sensor rather than multiple sensors and their mutual relations. Therefore, the quality of the service provided is not high as well. To enhance the sensor utilization and the service quality, all signals from various sensors should be analyzed comprehensively to make the right decision. This section describes the use cases for introducing AI / ML techniques in actual IoT service, utilizing multiple sensors. 6.1. Use case 1: Surveillance and Security in Smart Home To minimize users inconvenience and ensure their safety, Surveillance and safety IoT applications provided within smart homes require fast notification with good level of precision IoT service quality for abnormal conditions detection. To do this, both data preprocessing techniques and AI/ML technologies for analysis of anomalies with high accuracy will be required. (Training Data Generation) For Surveillance and Security, the processed data is necessary because there is little data for anomalies and the ground truth values are hardly available. Therefore, first, the steps to detect and calibrate the abnormal data are essential before the anomaly data should be generated using domain knowledge. First, Constructing simulators about targeted smart home and generating events against external intrusions and then collecting the anomaly data can be considered. Furthermore, based on the data collected in the actual environment, anomaly data generation can proceed by breaking the relationship between sensors considering possible links between them within any intrusive environment. Choi, et,al. Expires January 8, 2020 [Page 20] Internet-Draft IoT with Artificial Intelligence July 2019 (AI/ML Algorithm) Characteristics of the IoT environment for surveillance and safety are that a massive amount of data is collected and real-time responses are required. For the kNN algorithm, since the more data sets, the stronger against the noise and the higher the accuracy. If the appropriate dataset is used, the fast response can be expected. It makes suitable for the service environment to be considered. In addition, considering real-time data forecasting and analysis via LSTM, it is believed that improved accuracy for real-time anomalies detection can be expected. 6.2. Use case 2: Smart Health in Smart Home (To be continued) 7. IANA Considerations This document requests no action by IANA. 8. Acknowledgements 9. Contributors 10. 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 Choi, et,al. Expires January 8, 2020 [Page 21] Internet-Draft IoT with Artificial Intelligence July 2019 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 & 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 January 8, 2020 [Page 22] Internet-Draft IoT with Artificial Intelligence July 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 Choi, et,al. Expires January 8, 2020 [Page 23]