idnits 2.17.1 draft-choi-icnrg-aiot-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == The page length should not exceed 58 lines per page, but there was 1 longer page, the longest (page 21) being 66 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an Introduction section. (A line matching the expected section header was found, but with an unexpected indentation: ' introduction of AI/ML techniques for simultaneous and efficient management of the IoT' ) ** The document seems to lack a Security Considerations section. ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) (A line matching the expected section header was found, but with an unexpected indentation: ' 7. IANA Considerations' ) ** There are 536 instances of too long lines in the document, the longest one being 30 characters in excess of 72. ** The abstract seems to contain references ([Mohammadi], [Hochreiter], [Kriegal], [Krizhevsky], [Moons], [Han], [Doersch], [Chung], [Denil], [Kriegel], [Venkataramani], [Ba], [Goodfellow]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == Line 610 has weird spacing: '...type of unsup...' -- The document date (Novermber 18, 2019) is 1956 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- -- Missing reference section? 'Kriegal' on line 538 looks like a reference -- Missing reference section? 'Hochreiter' on line 754 looks like a reference -- Missing reference section? 'Chung' on line 757 looks like a reference -- Missing reference section? 'Krizhevsky' on line 761 looks like a reference -- Missing reference section? 'Doersch' on line 765 looks like a reference -- Missing reference section? 'Goodfellow' on line 768 looks like a reference -- Missing reference section? 'Ba' on line 771 looks like a reference -- Missing reference section? 'Denil' on line 774 looks like a reference -- Missing reference section? 'Han' on line 777 looks like a reference -- Missing reference section? 'Venkataramani' on line 781 looks like a reference -- Missing reference section? 'Moons' on line 785 looks like a reference -- Missing reference section? 'Mohammadi' on line 789 looks like a reference -- Missing reference section? 'Kriegel' on line 792 looks like a reference Summary: 5 errors (**), 0 flaws (~~), 3 warnings (==), 14 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 ICN Research Group J.K.Choi 3 Internet-Draft J.S.Han 4 Intended status: Informational G.H.Lee 5 Expires: May 19, 2020 N.K.Kim 6 KAIST 7 Novermber 18, 2019 9 Requirements and Challenges for User-level Service Managements of IoT 10 Network by utilizing Artificial Intelligence 11 draft-choi-icnrg-aiot-02 13 Abstract 15 This document describes the requirements and challenges to employ artificial intelligence 16 (AI) into the constraint Internet of Things (IoT) service environment for embedding 17 intelligence and increasing efficiency. 18 The IoT service environment includes heterogeneous and multiple IoT devices and systems 19 that work together in a cooperative and intelligent way to manage homes, buildings, and 20 complex autonomous systems. Therefore, it is becoming very essential to integrate IoT and 21 AI technologies to increase the synergy between them. However, there are several 22 limitations to achieve AI enabled IoT as the availability of IoT devices is not always high, 23 and IoT networks cannot guarantee a certain level of performance in real-time applications 24 due to resource constraints. 25 This document intends to present a right direction to empower AI in IoT for learning and 26 analyzing the usage behaviors of IoT devices/systems and human behaviors based on 27 previous records and experiences. With AI enabled IoT, the IoT service environment can be 28 intelligently managed in order to compensate for the unexpected performance degradation 29 often caused by abnormal situations. 31 This Internet-Draft is submitted in full conformance with the 32 provisions of BCP 78 and BCP 79. 34 Internet-Drafts are working documents of the Internet Engineering 35 Task Force (IETF). Note that other groups may also distribute 36 working documents as Internet-Drafts. The list of current Internet- 37 Drafts is at http://datatracker.ietf.org/drafts/current/. 39 Internet-Drafts are draft documents valid for a maximum of six months 40 and may be updated, replaced, or obsoleted by other documents at any 41 time. It is inappropriate to use Internet-Drafts as reference 42 material or to cite them other than as "work in progress." 44 This Internet-Draft will 45 expire on May 19, 2020 47 Copyright Notice 49 Copyright (c) 2019 IETF Trust and the persons identified as the 50 document authors. All rights reserved. 52 This document is subject to BCP 78 and the IETF Trust's Legal 53 Provisions Relating to IETF Documents 54 (http://trustee.ietf.org/license-info) in effect on the date of 55 publication of this document. Please review these documents 56 carefully, as they describe your rights and restrictions with respect 57 to this document. Code Components extracted from this document must 58 include Simplified BSD License text as described in Section 4.e of 59 the Trust Legal Provisions and are provided without warranty as 60 described in the Simplified BSD License. 62 Table of Contents 64 1. Introduction 65 ....................................................... 3 66 2. Challenging Issues of IoT network ...................................... 5 67 2.1. Untrusted and incorrect IoT devices ............................. 5 68 2.2. Traffic burstiness of IoT network ................................ 6 69 2.3. Management overheads of heterogeneous IoT sensors ............... 7 70 3. Overview of AI/ML-based IoT services................................... 8 71 4. Requirements for AI/ML-based IoT services.............................. 10 72 4.1. Requirements for AI/ML-based IoT data collection and delivery........ 11 73 4.2. Requirements for intelligent and context-aware IoT services ......... 11 74 4.3. Requirements for applying AI/ML to IoT data ...................... 13 75 4.3.2. AI/ML inference in IoT application.......................... 13 76 5. State of arts of the artificial intelligence/machine learning technologies for IoT services14 77 5.1. Machine learning and artificial intelligence technologies review ........ 14 78 5.1.1. Supervised learning for IoT............................... 14 79 5.1.2. Unsupervised learning for IoT............................. 15 80 5.1.3. Reinforcement learning for IoT ............................ 16 81 5.1.4. Neural Network based algorithms for IoT..................... 17 82 5.2. Technologies for lightweight and real-time intelligence .............. 19 83 6. Use cases of AI/ML into IoT service .................................... 20 84 6.1. Surveillance and Security in Smart Home ......................... 20 85 6.1.1. Characteristics of Smart Home for AI/ML processing ............ 21 86 6.1.2. Use case ............................................ 21 87 6.2. Smart Building Management .................................. 21 88 6.2.1. Characteristics of Smart Building for AI/ML processing 89 .......... 22 90 6.2.2. Use case ............................................ 22 91 7. IANA Considerations ............................................... 22 92 8. Acknowledgements ................................................ 22 93 9. Contributors ..................................................... 22 94 10. Informative References ............................................ 22 96 1. Introduction 97 The document explains the effects of applying artificial intelligence/machine learning (AI/M 98 L) algorithms in the Internet of Thing (IoT) service environments. 100 IoT applications will be deployed in heterogeneous and different areas such as the energy, 101 transportation, automation and manufacturing industries as well as the information and com 102 munication technology (ICT) industry. Many IoT sensors and devices can connect to an IoT 103 service environment where IoT objects cannot interoperate with each other and can interact 104 with different applications. The IoT service may not run in a single administrative domain. If 105 market demand exists, the cross-domain service scenarios for IoT applications could be w 106 idely deployed. Future IoT applications occur at multiple domains of heterogeneity with vari 107 ous time scales. 109 The IoT service requirements for common architectures and public APIs poses some challe 110 nges to the underlying service environment and networking technologies. Some IoT applicat 111 ions require signif 112 icant security and privacy as well as significant resource and time constra 113 ints. These mission-critical applications can be separated from many common IoT applicati 115 icult to classify common requirements and functional requirements depending on IoT servic 116 e scenario. 118 Recently, artificial intelligence technologies can help the context-aware IoT service scenari 119 os apply rule-based knowledge accumulation. The IoT service assumes that many sensing 120 devices are connected to single or multiple IoT network domains. Each sensor sends small 121 packets to the IoT servers periodically or non-periodically. Detection data contains periodic 122 status information that monitors whether the system is in a normal state or not. In some ca 123 ses, alert information is included for quick processing. Most IoT applications can operate in 124 two modes. One is a simple monitoring mode and the other is an abnormal mode for rapid 125 processing. In a simple monitoring phase, the IoT device periodically sends sensing data to 126 the server. If the measured data is outside the normal range, the IoT service can change th 127 e operating mode to an abnormal phase and activate future probes. Alarm conditions shoul 128 d be promptly notified to responsible persons. For mission-critical applications, reliable co 129 mmunication with robust QoS requirements in terms of error and latency is required. 131 Periodic data accumulation from IoT devices is cumbersome. Under normal conditions, the 132 IoT data is simply accumulated without further action. In an unusual situation, incoming IoT 133 data can cause an urgent action to notify the administrator of the problem. Streaming data t 134 raffic from thousands of IoT devices is annoying to store in the database because it is not 135 easy to extract unidentified or future incidents. Only a significant portion of the incoming da 136 ta stream can be stored in a real-time database that is time-sensitive and capable of rapid 137 query processing. A combination of different IoT detection data, including location, time, a 138 nd status, allows you to sort and categorize a portion of streaming data when an additional 139 inspection is required, and perform real-time processing. One of the missions of the IoT da 140 tabase is to be able to extract preliminary symptoms of unexpected accidents from a large 141 amount of streaming data. 143 If some transmitted data is important to invoke the corresponding action, there are some qu 144 estions about whether the incoming data is correct. If the incoming data contains accurate 145 and time-critical events, appropriate real-time control and management can be performed. 147 may occur. In these cases, incoming data can trigger to initiate additional inspections to pr 148 otect against future unacceptable situations. But, if time-critical data is missed due to error 149 s in the sensing devices and the delivery protocol, there is no reason to configure IoT netw 150 orks and devices at a high cost. 152 It is not easy to analyze data collected through IoT devices installed to monitor complex IoT 153 service environments. If the sensor malfunctions, the data of the sensor cannot be trusted. 154 Additional investigation should be done if abnormal status from specific sensors is collecte 156 d. The data of the redundant sensor installed in the same area should be received or combi 157 ned with other sensor information adjacent to the sensor to determine the abnormal state. 159 For sensors installed in a specific area, sensing records will 160 remain for a certain period of ti 161 me. IoT service operators can look at the operational history of the sensor for a period of ti 162 me to determine what problems were encountered when data was collected. When an abno 163 rmal situation occurs, IoT sensor should investigate whether it noticed normal operations an 164 d notified the IoT service operator. If the abnormal situation is not properly detected, the op 165 erator should analyze whether it was caused by malfunction of the IoT sensor or other reas 166 ons. 168 In the IoT service environment, it is possible to analyze the situation accurately by applying 169 recent artificial intelligence and machine learning technologies. If there is an operational rec 170 ord of the past, it is possible to determine when an abnormal situation arises. Most problem 171 s are likely to be repeated, so if the past learning experience is accumulated, the anomaly o 172 f IoT services can be easily and immediately identified. In addition, when information gather 173 ed from various sensors is synthesized, it is possible to accurately determine whether abnor 174 mal situations have occurred. 176 Various types of IoT sensors are installed with certain purposes. It expects that all the IoT s 177 ensors intend to monitor the occurrence of special abnormal situations in advance. Therefo 178 re, it should be set in advance what actions are required when a specific anomaly occurs. T 179 he appropriate work is performed on the abnormal situation according to the procedure, pre 181 ppropriate actions are taken when an abnormal situation is detected from various IoT senso 182 rs. 184 2. Challenging Issues of IoT network 185 This section describes the challenging issues of data sensing, collection, transfer, and 186 intelligent decision from untrusted data quality and unexpected situations of IoT service 187 environments. 189 2.1. Untrusted and incorrect IoT devices 190 IoT traffic is similar to traditional Internet traffic with small packet sizes. Mobile IoT 191 traffic can cause some errors and delays because wireless links are unstable and signal 192 strength may be degraded with device mobility. If the signal strength of the IoT device 193 with a power limit is not so strong, the reception quality of the IoT server may not be 194 sufficient to obtain the measurement data. 196 For mission-critical applications, such as smart-grid and factory-automation, 197 expensive IoT sensors with self-rechargeable batteries and redundant hardware logic 198 may be required. However, unexpected abnormal situations may occur due to sensor 199 malfunctions. There are trade-offs between implementation cost and efficiency for 200 cost-effective IoT services. When smart-grid and factory-automation applications are 201 equipped with IoT devices, the acceptable quality from IoT solutions can be required. 202 Sometimes, expensive and duplicated IoT solutions may be needed. 204 2.2. Traffic burstiness of IoT network 205 IoT traffic includes two types of traffic characteristic: periodic with small packet sizes 206 and bursty with high bandwidth. Under normal conditions, the IoT traffic periodically 207 transmits status information with a small bandwidth, several kilobits/sec. However, in an 208 abnormal state, IoT devices need a high bandwidth, up to several tens of megabits/sec, 209 in order to identify actual events and investigate accurate status information. In additi 210 on, 211 traffic volume can explosively increase in response to emergencies. For example, in the 212 case of smart-grid application, the bandwidth of several kilobits/sec is usually used, 213 and when an urgent situation occurs, a broadband channel is required up to several 214 tens of megabits/sec. 216 The other traffic can be integrated at an IoT network to increase bandwidth efficiency. If 217 an emergency situation occurs in the IoT service, IoT traffic volumes suddenly increase, 218 in which case network processing capacity may be not sufficient. If the IoT service is 219 integrated with voice and video applications, the problem can become more complex. 220 As time goes by, traffic congestion and bottlenecks are frequent in some areas. In 221 addition, if an existing service policy changes (for example, prioritizing certain traffic or 222 suddenly changing the route), other unexpected problems may be encountered. Various 223 congestion control and load balancing algorithms with the help of artificial intell 224 Until now, much research has been done on traffic variability in an integrated network 225 service environment. All networks have their own traffic characteristics, depending on 226 geographical area, number of subscribers, subscribers' preferences, and types of 227 applications used. In the case of IoT traffic, the normal bandwidth is very small. If the 228 IoT traffic volume increases abruptly in an abnormal situation, the network may suffer 229 unacceptable delay and loss. If emergency situations detected by IoT networks occur in 230 a smart grid or intelligent transportation system, the processing power of the IoT 231 network alone cannot solve the problem and the help of existing network resources is 232 inevitable. 234 2.3. Management overheads of heterogeneous IoT sensors 235 Traffic management in an integrated network environment is not easy. In order to 236 operate the network steadily, a network operator has its own know-hows and 237 experiences. If there are plenty of network resources, it is easy to set up a bypass route 238 even if network failure or congestion occurs in a specific area. For operating network 239 steadily, network resources may be designed to be over-provisioned in order to cope 240 with various possible outages. A network operator predicts the amount of traffic 241 generated by the corresponding equipment and grasps to what extent a transmission 242 bandwidth is required. If traffic fluctuation is very severe, the network operator can 243 allocate network resources in advance. In case of frequent failures or severe traffic 244 fluctuation, some network resources are separated in order not to affect normal traffic. 246 More than a billion IoT devices are expected to connect to smartphones, tablets, 247 wearables, and vehicles. Therefore, IoT services are targeted at mobile applications. In 248 particular, intelligent transportation systems need the help of IoT technology to provide 249 traffic monitoring and prevent public or private traffic accidents. IoT technology can 250 play an important role in reducing traffic congestion, saving people's travel time and 251 The IoT service has troublesome administrative problems to configure an IoT network 252 which consists of IoT servers, gateways, and many sensing devices. The small-sized 253 but large-numbered IoT devices may incur administrative overhead since all the IoT 254 devices should be initialized and the bootstrapping information of IoT resources should 255 be loaded into the IoT service environments. Whenever some IoT devices are newly 256 added and some devices have to be removed, the dynamic reconfiguration of IoT 257 resources is essential. In addition, the IoT device's preinstalled software should be 258 regularly inspected and upgraded according to its version. Frequent upgrades and 259 changes to some IoT devices may require autonomic management and bootstrapping 260 techniques. 262 Network management generally assumes that all network resources operate reliably with 263 acceptable quality. In most failure situations, the network operator decides to switch to 264 a redundant backup device or bypass the failed communication path. If some IoT 265 devices are not stable, duplicate IoT devices can be installed for the same purpose. If 266 IoT resources are not duplicated, various mechanisms are needed to reduce the 267 damage. Therefore, it is necessary to prioritize the management tasks to be performed 268 first when an abnormality occurs in the IoT service environment. However, managing 269 duplicate networks can cause another problem. If two IoT devices are running at the 270 same time, the recipient can get redundant information. If two or more unusual 271 situations occur at the same time, it is difficult to solve the problem since tasks for 272 urgent processing should be distinguished from tasks that can be performed over time. 274 In addition, the operations manager's mistakes or misunderstanding of problem 275 situations can lead to other unexpected complications. Therefore, artificial intelligence 276 technologies can help what kind of network management work is required when an 277 unexpected complicated situation occurs even though a procedure for an abnormal 278 situation is already prepared. 280 3. Overview of AI/ML-based IoT services 281 In this section, successful applications of artificial intelligence in IoT domains are provided. 283 her than later analytics with piled data. Recently, neural-network-based artificial intelligence 284 technologies are widely used across many IoT applications. 286 Simple IoT applications include dynamic contexts that share common features among socia 287 l relations at the same administration domain. IoT devices in the same domain can provide t 288 heir service contexts to the IoT server. When a dynamic change occurs in an IoT service co 289 ntext, the IoT device needs real-time processing to activate urgent events, alert notification 290 s, update, and reconnect contexts. The IoT service must support real-time interactions bet 291 ween the IoT device and the system in the same domain. The IoT service contexts must be 292 shared between physical objects and social members in the same domain as well. 294 Artificial intelligence technologies have been shown promising in many areas, including IoT. 295 For example, contextual information for a car-sharing business must interact with custome 296 rs, car owners, and car sharing providers. All entities in the value chain of a car sharing bus 297 iness must share the corresponding situation to pick up, board, and return shared cars. Co 298 mmunication networks and interactive information, including registration and payment, can 299 be shared tightly among the entities. Home IoT service environment can be equipped with s 300 ensors for theft detection, door lock, temperature, fire detection, gas detection, short circui 301 t, air condition to name a few. Office IoT service environments, 302 including buildings such as 303 shopping centers and bus/airport terminals, have their own sensors, including alarm sensor 304 s. When an alarm signal is detected by the sensor, the physical position and occurrence ti 305 me of the sensor is determined in advance. All signals from various sensors are analyzed c 306 omprehensively to make the right decision. If some sensors frequently malfunction, the situ 307 ation can be grasped more accurately by analyzing the information of the adjacent sensor. I 308 n particular, when installing multiple sensors in a particular building (e.g., surveillance came 309 ra, location monitoring, temperature, etc.), a much wider range of sensors can be used wh 310 en utilizing artificial intelligence and machine learning technologies. 312 (Smart home) Smart home concept span over multiple IoT applications, health, energy, ente 313 rtainment, education, etc. It involves voice recognition, natural language processing, image 314 -based object recognition, appliance management, and many more artif 315 icial intelligence te 316 er control over home supplies and expenses. The energy consumption and efficiency of ho 317 me appliances are monitored and analyzed with deep learning based technologies, such as 318 artificial neural network, long-short-term-memory, etc. 320 (Smart city) Smart city, as well, contains multiple IoT domains, transportation, infrastructure, 321 energy, agriculture, etc. Since heterogeneous data from different domains are gathered in 322 smart cities, various artificial intelligence approaches are studied in smart-city application. 323 Public transportation behaviors and crowd movements patterns are important issues, and th 324 ey are often dealt with neural network based methods, long-short-term-memory and convo 325 lutional neural network. 327 (Smart energy) As two-way communication energy infrastructure is deployed, smart grid ha 328 s become a big IoT application, which requires intelligent data processing. The traditional e 329 nergy providers are highly interested in recognizing local energy consumption patterns and 330 forecasting the needs in order to make appropriate decisions on real-time. Moreover, the e 331 nergy consumers, as well, want analyzed information on their own energy consumption beh 332 aviors. Recently, many works on energy consumption prediction, energy flexibility analysis, 333 etc. are actively ongoing. Most works are based on the latest deep learning technologies, s 334 uch as multi-layered-perceptron, recurrent neural network, long-short-term-memory, auto 335 encoder, etc. 337 (Smart transportation) The intelligent transportation system is another source of big data in 338 IoT domains. Many use cases, such as traffic flow and congestion prediction, traffic sign re 339 cognition, vehicle intrusion detection, etc., have been studied. Moreover, a lot of advanced 340 artificial intelligence technologies are required in autonomous and smart vehicles, which re 341 quire many intelligent sub-tasks, such as pedestrian's detection, obstacle avoidance, etc. 343 (Smart healthcare) IoT and artificial intelligence are integrated into the healthcare and wellb 344 eing domain as well. By analyzing food images with convolutional neural network on mobile 345 devices, dietary intakes can be measured. With voice signal captured from sensor devices, 346 voice pathologies can be detected. Moreover, recurrent neural network and long-short-ter 347 m-memory technologies are actively being studied for early diagnosis and prediction of dis 348 eases with time series medical data. 350 (Smart agriculture) To manage a vast area of land, IoT and artificial intel ligence technologie 351 twork are utilized for crop detection or classification and disease recognition in the plants. 352 Moreover, for automatic farming with autonomous machine operation, obstacle avoidance, 353 fruit location, and many more sub-tasks are handled with advanced artificial intelligence te 354 chnologies. 356 4. Requirements for AI/ML-based IoT services 357 In this section, the requirements for AI/ML-based IoT data collection and delivery, intelligen 358 t and context-aware IoT services, and applying AI/ML to IoT data willbe described. 360 4.1. Requirements for AI/ML-based IoT data collection and delivery 361 IoT services store a vast amount of data that IoT devices periodically generate, and the 362 refining and analyzing are costly. Effective analysis of IoT data has been considered to 363 be the most important factor in data processing, but the analysis of efficient data 364 collection and delivery methods are becoming other significant factors as the amount of 365 the data collected is explosively increasing. 367 In particular, as a number of IoT devices have been deployed within the IoT network, 368 controlling data collection and delivery for each of them has become impossible. The 369 introduction of AI/ML techniques for simultaneous and efficient management of the IoT 370 devices should be considered as a countermeasure. For IoT data collection and 371 delivery, the following two factors will need to be considered, IoT devices energy and 372 data quality. 374 (IoT Device Energy) As many IoT devices have begun to be deployed within the IoT 375 network, it is impossible to deliver energy to many IoT devices simultaneously. 376 Consequently, the efficient battery use has become an important issue. 378 If IoT data collection and delivery periods are too short, a lifetime of the IoT device will 379 be shortened through the reckless use of IoT device energy. Thereby, it increases the 380 cost required to provide IoT service. On the other hand, if IoT data collection and 381 delivery period are too long, the quality of the IoT services provided will be reduced due 382 to the lack of details in the data for situation recognition and real-time processing. 383 Therefore, taking into account the energy consumption of the IoT devices, research on 384 proper IoT data collection and delivery period is necessary. 386 (Data Quality) Since the data collected from the majority of IoT devices usually contain 387 redundant information, it causes additionalcosts for the data collection and refinement 388 processes. Therefore, it will be necessary to select and deliver meaningful information 389 from redundant IoT data to reduce unnecessary cost on the IoT network. To do so, it 390 will need the research to identify the relationships among the data collected various 391 4.2. Requirements for intelligent and context-aware IoT services 392 In a context-aware IoT service environment, it is important to establish a context to be 393 aware of in advance since IoT devices will be deployed according to a pre-designed 394 architecture and to check how characteristics of IoT data and data-to-data 395 characteristics are expressed under these circumstances. For the data produced by IoT 396 devices, since it contains the device's relative location information, sensing value over 397 time, event information, it should be reviewed to provide the target context-aware 398 service using this information. Some of the necessary technologies will be described in 399 the following. 401 (Physical Clustering) To increase the accuracy of context-awareness, the provision of 402 context-aware services should be considered in a situation where the relationship 403 between IoT devices with respect to physical layout or physical environment is taken 404 into account. Setting a rule using the service provider's domain knowledge may be 405 possible, but introducing the physical clustering into a diverse IoT environment(e.g., in 406 bedroom, kitchen, balcony, or a space connected through an open door) will require 407 identifying the physical relationship between the devices using data generated from IoT 408 devices. 410 (Extra Data Processing) In order to prevent degradation of service quality from errors in 411 data values or device malfunctions, extra sensors should be placed in the majority of 412 IoT environments. In a context-aware service, they contain the same information, so 413 the technologies filtering the data that contains only essential part among the same 414 information while preventing data errors would be required. 416 (Unreported data handling) If an event is detected on a particular IoT device, it will 418 transmit data regardless of the device's sensing and delivery interval. At this time, the 419 data of IoT devices which are physically clustered are needed to accurately detect 420 events that occurred, and it is difficult to expect that these devices will provide data at 421 problem for real-time processing for emergency situations. Therefore, handling 422 unreported data will be required based on previously collected data. 424 (Abnormal data in AI/ML) In the case of context-aware services that operates based on 425 the predetermined rule, the flexibility to cope with emergency situations that have not 426 been considered is low, and thus AI/ML algorithms are required to intelligently cope 427 with a myriad of situations. However, many abnormal data are generated depending on 428 environmental conditions such as device status, so AI/ML algorithms that can operate 429 in that imperfect environment should be considered. 431 4.3. Requirements for applying AI/ML to IoT data 433 In this subsection, the requirements for applying AI/ML to IoT data are described. 435 4.3.1. Training AI/ML algorithm 436 To use AI/ML algorithm, two elements are required, AI/ML model and training data. The 437 presence of training dataset in good quality is an important factor of the AI/ML model 438 performance since the model is iteratively trained with the training data. However, for 439 anomaly detection, there is not enough training data since not only the probability of 440 anomaly occurrence is very low but also it is almost impossible to retrieve the ground 441 truth value even when the situation has occurred. Therefore, using domain knowledge, 442 AI/ML learning based on abnormal situation data generation or simulation should be 443 considered. For example, for an external intrusion detection application within a smart 444 home, when a camera and a motion sensor detect an intruder, a light sensor checks 445 the measuring value. If the light does not turn on, then the IoT application recognizes it 446 as an abnormal situation. In this way, by using the domain knowledge, the rule 447 regarding the operational scenario of the IoT application is generated as the training 448 data, and the generated training data can be used for model learning. This will not only 449 enable learning the anomaly detection algorithm in IoT application but also improving 450 the accuracy. Therefore, IoT application, in which it is difficult to acquire dataset in 451 good quality, willrequire data generation based on domain knowledge for AI/ML. 453 4.3.2. AI/ML inference in IoT application 454 In order for AI ML technology to be applied to IoT applications, the training data and the 455 input data for model testing and inferencing must have the same characteristics such 456 as dimension, time interval, types of features, etc. However, due to the volatile IoT data 457 characteristics that vary from situations in many IoT applications, it is difficult to directly 458 periodically send sensing data, and AI/ML have no difficulty in operating. However, in 459 an abnormal mode, the IoT applications require a fast response, and IoT devices 460 transmit data at shorter intervals than normal, which changes the characteristics of the 461 data being input to the AI/ML algorithm. Therefore, data preprocessing technology 462 handling the abnormal data will be required in advance, such as data imputation, 463 correcting data anomalies, and Interpolation of unreported data. 465 5. State of arts of the artificial intelligence/machine learning technologies for IoT services 467 In this section, well-known machine learning and artificial intelligence technologies 468 applicable to IoT applications are reviewed. 470 5.1. Machine learning and artificial intelligence technologies review 472 The classical machine learning models can be divided into three types, supervised, 473 unsupervised, and reinforcement learnings. Therefore, in this subsection, machine 474 learning and artificial intelligence technology reviews are done in four different 475 categories: supervised, unsupervised, reinforcement, and neural-network-based. 477 5.1.1. Supervised learning for IoT 479 Supervised learning is a task-based type of machine learning, which approximates 480 function describing the relationship and causality between input and output data. 481 Therefore, the input data needs to be clearly defined with proper output data since 482 supervised learning models learn explicitly from direct feedback. 484 (K-Nearest Neighbor) Given a new data point in K-Nearest Neighbor (KNN) classifier, it 485 is classified according to its K number of the closest data points in the training set. To 486 find the K nearest neighbors of the new data point, it needs to use a distance metric 487 which can affect classifier performance, such as Euclidean, Mahalanobis or Hamming. 488 One limitation of KNN in applying for IoT network is that it is unscalable to large 489 datasets because it requires the entire training dataset to classify a newly incoming 490 data. However, KNN required less processing power capability compared to other 491 complex learning methods. 493 (Naive Bayes) Given a new data point in Naive Bayes classifiers, 494 it is classified based on Bayes' theorem with the "naive" assumption of independence 495 between the features. Since Naive Bayes classifiers don't need a large number of data 496 points to be trained, they can deal with high-dimensional data points. Therefore, they 497 are fast and highly scalable. However, since its "naive" assumptions are somewhat 498 strong, a certain level of prior knowledge on the dataset is required. 500 (Support Vector Machine) Support Vector Machine (SVM) is a binary and non- 501 probabilistic classifier which finds the hyperplane maximizing the margin between the 502 classes of the training dataset. SVM has been the most pervasive machine learning 503 technology until the study on neural network technologies are advanced recently. 504 However, SVM still has advantages over neural network based and probabilistic 505 approaches in terms of memory usage and capability to deal with high-dimensional 506 data. In this manner, SVM can be used for IoT applications with severe data storage 507 constraint. 509 (Regression) Regression is a method for approximating the relationships of the 510 dependent variable, which is being estimated, with the independent variables, which are 511 used for the estimation. Therefore, this method is widely used for forecasting and 512 inferring causal relationships between input data and output data in time-sensitive IoT 513 application. 515 (Random Forests) In random forests, instead of training a single decision tree, a group 516 of trees is trained. Each tree is trained on a subset of the training set using a randomly 517 chosen subset of M input variables. Random forests considering various tree structures 518 have very high accuracy, so it can be utilized in the accuracy-critical IoT applications. 520 5.1.2. Unsupervised learning for IoT 522 Unsupervised learning is a data-driven type of machine learning which finds hidden 523 structure in unlabeled dataset without feedback during the learning process. Unlike 524 supervised learning, unsupervised learning focuses on discovering patterns in the data 525 distributions and gaining insights from them. 527 (K-means clustering) K-means clustering aims to assign observations into K number of 528 clusters in which each observation belongs to the cluster having the most similarities. 529 The measure of similarity is the distance between K cluster centers and each 530 observation. K-means is a very fast and highly scalable clustering algorithm, so it can 531 be used for IoT applications with real-time processing requirements such as smart 532 transportation. 534 (Density-based spatial clustering of applications with noise) 535 Density-Based approach to Spatial Clustering of Applications with Noise (DBSCAN) is a 536 method that clusters dataset based on the density of its data samples. In this model, 537 dense regions which include data samples with many close neighbors are considered 538 as clusters, and data samples in low-density regions are classified as outliers [Kriegal]. 539 Since this method is robust to outliers, DBSCAN is efficient data clustering method for 540 IoT network environments with untrusted big datasets in practice. 542 5.1.3. Reinforcement learning for IoT 544 Reinforcement learning is a reactive type of machine learning that learn a series of 545 actions in a given set of possible states, actions, and rewards or penalties. It can be 546 seen as the exploring decision-making process and choosing the action series with the 547 most reward or the least penalty which can be cost, priority, time to name a few. 548 Reinforcement learning can be helpful for selecting action of IoT device by providing a 549 guideline. 551 (Q-learning) Q-Learning is a model-free, off-policy reinforcement learning algorithm 552 based on the well-known Bellman Equation. The goal is to learn an action-selection 553 policy maximizing the Q-value, which tells an agent what action to take. It can be used 554 for IoT device to determine which action it should take according to conditions. 556 (State-Action-Reward-State-Action) Though State-Action-Reward-State-Action 557 (SARSA) is a much similar algorithm to Q-learning, the main difference is that it is an 558 on-policy algorithm in which agent interacts with the environment and updates the 559 policy based on actions taken. It means that the Q-value is updated by an action 560 performed by the current policy instead of the greed policy that maximizes Q-value. In 561 this perspective, it is relevant when an action of one IoT device will greatly influence the 562 condition of the environment. 564 (Deep Q Network) Deep Q network (DQN) is developed to solve the exploration problem 565 for unseen states. In the case of Q-learning, the agent is not capable of estimating 566 value for unseen states. To handle this generality problem, DQN leverages neural 567 network technology. As a variation of the classic Q-Learning algorithm, DQN utilizes a 568 deep convolutional neural net architecture for Q-function approximation. In real 569 environments not all possible states and conditions are not able to be observed. 570 Therefore, DQN is more relevant than Q-learning or SARSA in real applications such as 571 IoT. Since DQN could be used within only discrete action space, it can be utilized for 572 traffic routing in the IoT network. 574 (Deep Deterministic Policy Gradient) DQN has solved generality and exploration 575 problem of the unseen or rare states. Deep Deterministic Policy Gradient (DDPG) takes 576 DQN into the continuous action domain. DDPG is a deterministic policy gradient based 577 actor-critic, model-free algorithm. The actor decides the best action for each state and 578 critic is used to evaluate the policy, the chosen action set. In IoT applications, DDPG 579 can be utilized for the tasks that require controlled in continuous action spaces, such 580 as energy-efficient temperature control, computation offloading, network traffic 581 scheduling, etc. 583 5.1.4. Neural Network based algorithms for IoT 585 (Recurrent Neural Network) Recurrent Neural Network (RNN) is a discriminative type of 586 supervised learning model that takes serial or time-series input data. RNN is specifically 587 developed to address issue of time dependency of sequential time-series input data. It 588 processes sequences of data through internal memory, and it is useful in IoT 589 applications with time-dependent data, such as identifying time-dependent patterns of 590 (Long Short Term Memory) As an extension of RNN, Long Short Term Memory (LSTM) is 591 a discriminative type of supervised learning model that is specialized for serial or time- 592 series input data as well [Hochreiter]. The main difference of LSTM from RNN is that it 593 utilizes the concept of gates. It actively controls forget gates to prevent the long term 594 time dependency from waning. Therefore, compared to RNN, it is more suitable for data 595 with long time relationship and IoT applications requiring analysis on the long lag of 596 dependency, such as activity recognition, disaster prediction, to name a few [Chung]. 598 (Convolutional Neural Network) Convolutional neural network (CNN) is a discriminative 599 type of supervised learning model. It is developed specifically for processing 2- 600 dimensional image data by considering local connectivity, but now generally used for 601 multidimensional data such as multi channel sound signals, IoT sensor values, etc. As 602 in CNN neurons are connected only to a small subset of the input and share weight 603 parameters, CNN is much more sparse compared to fully connected network. However, 604 it needs a large training dataset, especially for visual tasks. In CNN, a new activation 605 function for neural network, Rectified Linear Unit (ReLU), was proposed, which 606 accelerates training time without affecting the generalization of the network 607 [Krizhevsky]. In IoT domains, it is often used for detection tasks that require some 608 visual analysis. 610 (Variational Autoencoder) Autoencoder (AE) is a generative type of unsupervised 611 learning model. AE is trained to generate output to reconstruct input data, thus it has 612 the same number of input and output units. It is suitable for feature extraction and 613 dimensionality reduction. Because of its behavior to reconstructing the input data at the 614 output layer, it is often used for machinery fault diagnosis in IoT applications. The most 615 popular type of AE, Variational Autoencoder (VAE) is a generative type of semi- 616 supervised learning model. Its assumptions on the structure of the data are weak 617 enough for real applications and its training process through backpropagation is fast 618 [Doersch]. Therefore, VAE is suitable in IoT applications where data tends to be diverse 619 and scarce. 621 (Generative Adversarial Network) Generative Adversarial Network (GAN) is a hybrid type 622 of semi-supervised learning model which contain two neural networks, namely the 623 generative and discriminative networks [Goodfellow]. The generator is trained to learn 624 deceive the latter network, so-called the discriminator. Then, the discriminator learns to 625 discriminate the generated data from the real data. In IoT applications, GAN can be 626 used in situations when something needs to be generated from the available data, such 627 as localization, way-finding, and data type conversion. 629 5.2. Technologies for lightweight and real-time intelligence 631 As the era of IoT has come, some sort of light-weight intelligence is needed to support 632 smart objects. Prior to the era of IoT, most of the works on learning did not consider 633 resource-constrained environments. Especially, deep learning models require many 634 resources such as processing power, memory, stable power source, etc. However, it 635 has been recently shown that the parameters of the deep learning models contain 636 redundant information, so that some parts of them can be delicately removed to reduce 637 complexity without much degradation of performance [Ba], [Denil]. In this section, the 638 technologies to achieve real-time and serverless learning in IoT environments are 639 introduced. 641 (network compression) Network compression is a method to convert a dense network 642 into a sparse one. With this technology the network can be reduced in its size and 643 complexity. By pruning irrelevant parts or sharing redundant parameters, the storage 644 and computational requirements can be decreased [Han]. After pruning, the 645 performance of the network is examined and the pruning process is repeated until the 646 performance reaches the minimum requirements for the specific applications and use 647 cases. As many parameters are removed or shared, the memory required is reduced, as 648 well as computational burden and energy. Especially as most energy in neural network 649 is used to access memory, the consumed energy dramatically drops. Although its main 650 limitation is that there is not a general solution to compress all kinds of network, but it 652 rather depends on the characteristics of each network. However, network compression 653 is still the most widespread method to make deep learning technologies to be 654 lightweight and IoT-friendly. 656 (approximate computing) Approximate computing is an approach to support deep 657 learning in smart devices [Venkataramani], [Moons]. It is based on the facts that the 658 results of deep learning do not need to be exact in many IoT applications but still valid 659 deep learning, not only the execution time but also the energy consumption are 660 reduced [Mohammadi]. Based on the optimal trade-off between accuracy and run- 661 time or energy consumption, the network can be adjustably approximated. The network 662 approximate technology can be well-used in such situations when the response time is 663 more important than sophisticatedly analyzed results. Although it is a technology to 664 facilitate real-time and lightweight intelligence, the process of training models and 665 converting it to approximate network require some amount of resource. Therefore, the 666 approximated model can be deployed on smart devices but the learning and 667 approximation processes still need to take places on resource rich platforms. 669 6. Use cases of AI/ML into IoT service 671 Many IoT service environments are equipped with camera, door lock, temperature 672 sensor, fire detector, gas detector, alarm, and so on. Each sensor is deployed with 673 particular purposes of each own to provide a specific service. However, there is a 674 problem that the sensor utilization is not high enough due to the provision of the service 675 using only a single sensor rather than multiple sensors and their mutual relations. 676 Therefore, the quality of the service provided is not high as well. To enhance the sensor 677 utilization and the service quality, all signals from various sensors should be analyzed 678 comprehensively to make the right decision. This section describes the use cases for 679 introducing AI / ML techniques in actual IoT service, utilizing multiple sensors. In 681 advance of each use case description of various IoT service domains, characteristics of 682 each domain to adopt AI/ML techniques are investigated. 684 6.1. Surveillance and Security in Smart Home 686 To minimize users inconvenience and ensure their safety, surveillance and safety IoT 687 applications provided within smart homes require fast notification with good level of 688 precision IoT service quality for abnormal conditions detection. To do this, both data 689 preprocessing techniques and AI/ML technologies for analysis of anomalies with high 690 accuracy will be required. 692 6.1.1. Characteristics of Smart Home for AI/ML processing 694 (Training Data Generation) For Surveillance and Security, the processed data is 695 necessary because there is little data for anomalies and the ground truth values are 696 hardly available. Therefore, first, the steps to detect and calibrate the abnormal data are 697 essential before the anomaly data should be generated using domain knowledge. First, 698 Constructing simulators about targeted smart home and generating events against 699 external intrusions and then collecting the anomaly data can be considered. 700 Furthermore, based on the data collected in the actual environment, anomaly data 701 generation can proceed by breaking the relationship between sensors considering 702 possible links between them within any intrusive environment. 704 (AI/ML Algorithm) One of the characteristics of the IoT environment for surveillance and 705 safety is that a massive amount of data is collected and real-time responses are 706 required. For the kNN algorithm, since the more data sets, the stronger against the 707 noise and the higher the accuracy. If the appropriate dataset is used, the fast response 708 can be expected. It makes suitable for the service environment to be considered. In 709 addition, considering real-time data forecasting and analysis via LSTM, it is believed 710 that improved accuracy for real-time anomalies detection can be expected. 712 6.1.2. Use case 714 (To be continued) 716 6.2. Smart Building Management 718 Smart buildings often consist of heterogeneous IoT devices. These devices cooperate 719 and their data is integrated for efficient autonomous building management. Many of the 720 events in a large building may not require deep, complicated learning or processing. 721 Some of them may require a fast response than an accurate analysis. Above all, a lot of 722 events simultaneously occur and can arise heavy loads on the main server. The edge- 723 computing techniques can be used to offload the main server tasks. 725 6.2.1. Characteristics of Smart Building for AI/ML processing 727 (Training Data Generation) In smart buildings, heterogeneous IoT devices are deployed. 728 They are diverse in their types, functions, performances, etc. To utilize the data from 729 diverse devices, data needs to be able to well integrated. Therefore, it is better for data 730 to be in a common data format, or it needs to be able to transform into one another. 731 The other characteristic is that the IoT devices may interact in local and global 732 environments of the building. Therefore, the scope of the dataset used in training can 733 play a critical role in developing AL/ML model for building management. 735 (AI/ML Algorithm) To offload and reduce the burden of the main server and to provide 736 fast, efficient decision makings, the IoT and the other network-related devices can use 737 their computing resources. Various edge-computing techniques can be applied to do 738 so, such as developing light-weighted AI/ML models that can be easily deployed in the 739 edge devices or balancing the learning and processing computation load from the 740 server to the edge devices. 742 6.2.2. Use case 744 (To be continued) 746 7. IANA Considerations 747 This document requests no action by IANA. 749 8. Acknowledgements 751 9. Contributors 753 10. Informative References 754 [Hochreiter] S. Hochreiter and J. Schmidhuber, "Long short-term memory," Neural 755 Comput., vol. 9, no. 8, pp. 1735-1780, Nov. 1997. 757 [Chung] J. Chung, C. Gulcehre, K. Cho, and Y. Bengio, "Empirical evaluation of gated 758 recurrent neural networks on sequence modeling," arXiv preprint arXiv:1412.3555v1 [cs.NE], 759 2014. 761 [Krizhevsky] A. Krizhevsky, I. Sutskever, and G. E. Hinton, "ImageNet classification with 762 deep convolutional neural networks," in Proc. Adv. Neural Inf. Process. Syst., 2012, pp. 763 1097-1105. 765 [Doersch] C. Doersch, "Tutorial on variational autoencoders," arXiv preprint 766 arXiv:1606.05908v2 [stat.ML], 2016. 768 [Goodfellow]. I. Goodfellow et al., "Generative adversarial nets," in Proc. Adv. Neural Inf. 769 Process. Syst., 2014, pp. 2672-2680. 771 [Ba] J. Ba and R. Caruana, "Do deep nets really need to be deep?" in Proc. Adv. Neural Inf. 772 Process. Syst., Montreal, QC, Canada, 2014, pp. 2654-2662. 774 [Denil] M. Denil, B. Shakibi, L. Dinh, N. de Freitas, and M. Ranzato, "Predicting parameters 775 in deep learning," in Proc. Adv. Neural Inf. Process. Syst., 2013, pp. 2148-2156. 777 [Han] S. Han, J. Pool, J. Tran, and W. Dally, "Learning both weights and connections for 778 efficient neural network," in Proc. Adv. Neural Inf. Process. Syst., Montreal, QC, Canada, 779 2015, pp. 1135-1143. 781 [Venkataramani] S. Venkataramani, A. Ranjan, K. Roy, and A. Raghunathan, "AxNN: 782 Energy-efficient neuromorphic systems using approximate computing," in Proc. Int. Symp. 783 Low Power Electron. Design, ACM, 2014, pp. 27-32. 785 [Moons] B. Moons, B. De Brabandere, L. Van Gool, and M. Verhelst, "Energy- efficient 786 ConvNets through approximate computing," in Proc. IEEE Winter Conf. Appl. Comput. Vis. 787 (WACV), Lake Placid, NY, USA: IEEE, 2016, pp. 1-8. 789 [Mohammadi] Mohammadi, Mehdi, et al. "Deep learning for IoT big data and streaming 790 analytics: A survey," IEEE Communications Surveys & Tutorials, 2018, pp. 2923-2960. 792 [Kriegel] Kriegel, HansPeter, et al. "Densitybased clustering," Wiley Interdisciplinary 793 Reviews: Data Mining and Knowledge Discovery, 2011, pp. 231-240. 795 Authors' Addresses 797 Jun Kyun Choi (editor) 798 Korea Advanced Institute of Science and Technology (KAIST) 799 193 Munji Ro, Yuseong-gu, Daejeon 800 Korea 802 Email: jkchoi59@kaist.ac.kr 804 Jae Seob Han 805 Korea Advanced Institute of Science and Technology (KAIST) 806 193 Munji Ro, Yuseong-gu, Daejeon 807 Korea 809 Email: j89449@kaist.ac.kr 811 Gyeong Ho Lee 812 Korea Advanced Institute of Science and Technology (KAIST) 813 193 Munji Ro, Yuseong-gu, Daejeon 814 Korea 816 Email: gyeongho@kaist.ac.kr 818 Na Kyoung Kim 819 Korea Advanced Institute of Science and Technology (KAIST) 820 193 Munji Ro, Yuseong-gu, Daejeon 821 Korea 823 Email: nkim71@kaist.ac.kr