A Failure Prediction Platform for Internet of Things Applications
A Failure Prediction Platform for Internet of Things Applications
Abstract: In the Internet of Things (IoT), interconnected devices communicate through standard Internet protocols to
reach common goals. The IoT has reached a wide range of different domains including home automation,
health, or manufacturing. With the rising amount of IoT applications, the demand for robustness is increasing
as well, which is a difficult issue especially in large IoT applications including hundreds or even thousands of
different devices. Devices tend to be very volatile and prone to failures. Usually, IoT devices are comprised
of cheap hardware components which enables the creation of larger applications but also leads to an increased
amount of failures that endanger operation of the IoT applications. To help in increasing robustness in the IoT,
in this paper, we introduce the Failure Prediction Prediction Platform (FPP) for Internet of Things applications,
which uses a machine learning based approach to predict failures. We evaluate our platform by showing how
different failure prediction algorithms can be integrated and applied.
1 INTRODUCTION et al., 2019). At the start of the IoT hype, IoT appli-
cations comprised mostly self-made automation so-
Today, the amount of Internet of Things (IoT) ap- lutions that did not lead to safety issues if a device,
plications is growing rapidly (Vermesan and Friess, sensor or actuator fails. Nowadays, however, IoT is
2013). Whereas the IoT originally started emerging also used for safety critical applications, including
mostly in home automation (Risteska Stojkoska and home security systems, traffic control, or automation
Trivodaliev, 2017), it has now reached nearly every in manufacturing processes (Chen et al., 2018). In
domain of our daily lives, including traffic manage- such applications, device failures can lead to serious
ment (Su et al., 2011), manufacturing (Chen et al., safety issues that can lead to injuries or even death of
2018), health (Solanas et al., 2014), workplaces (Choi the persons involved, e.g., if a traffic light fails or a
et al., 2015), and so on. Internet of Things appli- production robot is malfunctioning. Hence, it has be-
cations are comprised of heterogeneous cheap hard- come an important issue to ensure a high level of ro-
ware devices attached with sensors and actuators. bustness, especially in commercial IoT applications.
These devices communicate through standard Inter- In order to enable this, it is important to ensure
net protocols to reach common goals, e.g., to opti- that IoT devices, their sensors, actuators, and network
mize HVAC systems in a Smart Home. Through sen- connections are working properly. For this, different
sors, different metrics of the environment are mea- monitoring systems have been developed that allow
sured, which are then usually consumed and inter- recognition of any issues and a corresponding reac-
preted by an IoT platform middleware including dash- tion, e.g., by triggering a killswitch or notifying a
boards, rule evaluation systems, or even sophisticated maintenance engineer. However, even if the failures
machine learning techniques, e.g., for image recog- can be recognized timely, only reacting on failures
nition. Based on the sensed data, adjustments in the still leads to endangering the operation of IoT appli-
environment could be invoked, which are then real- cations and, thus, to safety issues. Therefore, it is im-
ized by the actuators, e.g., to turn on an AC or open a portant to be able to react before any safety-critical
window. Overall, IoT platforms play an essential role issues occur, which requires a predictive approach.
in creating IoT applications. Our contributions are (i) an easy way to enhance
However, with the increase of IoT applications, existing IoT platforms with failure prediction, (ii) we
the need for high robustness of these applications in- show how data can be generated to train models for
creases as well (Rafiuzzaman et al., 2019; Soualhia failure prediction and (iii) we evaluate different ma-
141
Gaudio, D., Imeri, A. and Hirmer, P.
A Failure Prediction Platform for Internet of Things Applications.
DOI: 10.5220/0011033700003194
In Proceedings of the 7th International Conference on Internet of Things, Big Data and Security (IoTBDS 2022), pages 141-148
ISBN: 978-989-758-564-7; ISSN: 2184-4976
Copyright c 2022 by SCITEPRESS – Science and Technology Publications, Lda. All rights reserved
IoTBDS 2022 - 7th International Conference on Internet of Things, Big Data and Security
chine learning algorithms whether they fit our failure describe a method to calculate the QoS (Quality of
prediction goals. First, we introduce the architecture Service) outage probability for wireless communica-
of the Prediction Prediction Platform (FPP) and show tion. The authors indicate that ML-based predictions
how it can be integrated with existing IoT platforms. of the QoS values cannot be accurate and sufficient
The FPP is designed generic and extensible to allow if the communication failures are rare in the train-
using different data sets and machine learning models. ing process, which is typically the case. The de-
Furthermore, it is integrated with an adaptive dash- scribed method uses QoS values predicted with PNN,
board to visualize the prediction results to maintainers error distribution of different rarity classes, and the re-
of IoT environments. Second, we evaluate our plat- quired QoS as a threshold to estimate the outage prob-
form by showing how different failure prediction al- ability. Suga et al. achieve a high prediction accuracy
gorithms can be integrated and applied. To train these after evaluating the method in an automobile factory
models, we use the built-in data generator of the FPP, scenario, using different wireless station nodes and a
which can simulate device failures in IoT applications simulated WLAN throughput.
in a realistic manner. The data comprises monitoring Ara et al. (Ara et al., 2020) use ARIMA (Auto-
data of IoT devices as well as of their surroundings Regressive Integrated Moving Average) to predict fail-
(e.g., air temperature, humidity, etc.). ures in wireless sensor nodes. ARIMA uses recog-
nized patterns in the collected time series data to pre-
dict future faults. The authors evaluate the model by
2 RELATED WORK polluting a sensory dataset, simulating faults and cre-
ating specific patterns. Furthermore, the data goes
through different pre-processing steps to achieve op-
Rafiuzzaman et al. (Rafiuzzaman et al., 2019) de-
timal results. The method is shown to be more useful
scribe a failure prediction technique where memory
exhaustion is the cause for the failures of IoT devices. for short-term rather than long-term predictions.
General-purpose applications running on IoT devices Lian et al. (Lian et al., 2019) describe an ageing
are typically not optimized for their constraints and monitoring and lifetime prediction system for IoT de-
often result in failures due to memory exhaustion. vices. The ageing of Integrated Circuit (IC) technol-
The presented technique uses the kNN algorithm to ogy in IoT devices may be specific for each device or
make predictions with different lead times. As part it may depend on the environment. The system pre-
of the solution, Rafiuzzaman et al. created a concept sented by Lian et al. collects information from each
called MARK (Monitor and Analyze Resource Keys) device continuously and then stores and processes
where the data is collected from the devices, is pro- the data in the cloud creating an IC-specific ageing
cessed, and then provided to the kNN-based predic- model. Based on the ageing model, the lifetime of the
tion model. The heterogeneity of the IoT devices asks particular device can be predicted. Another benefit
for pre-processing of the monitored data before anal- of the cloud, stated by the authors, is the central col-
ysis steps. Hence, our FPP will be equipped with a lection of ageing information for all ICs of the same
pre-processing component as well. type, enabling simple identification of abnormalities.
Soualhia et al. (Soualhia et al., 2019) present a We conclude that there exist many well working
framework for fault detection and prediction in edge algorithmic approaches using machine learning and
cloud environments by using machine learning and statistical methods to detect and predict failures in
statistical techniques. The focus of the paper is to IoT environments. Nonetheless, these approaches are
evaluate the framework on HP servers by detecting based on a specific dataset and environment. We in-
and predicting recurrent and accumulative faults (e.g., troduce the FPP to easily apply such methods for fail-
ure prediction in different environments and integrate
CPU, HDD, memory and network faults). They also
them with existing IoT platforms.
performed the evaluation on Raspberry Pis with CPU
fault prediction and memory stress prediction by us-
ing CNN, LSTM, a type of RNN, and their combina-
tions. Based on the results, the framework is suit- 3 FAILURE PREDICTION
able to detect and predict different faults in reasonable PLATFORM
time. The framework also contains a pre-processing
component, which the authors indicate as a crucial To integrate machine learning algorithms into IoT
component that reduces the overhead costs and im- environments with the goal to detect arising fail-
proves the performance. ures, we developed the Failure Prediction Plat-
Wireless communication of IoT devices can also form (FPP), which builds on top of IoT platforms,
be a cause for failures. Suga et al. (Suga et al., 2019) such as the Multipurpose Binding and Provisioning
142
A Failure Prediction Platform for Internet of Things Applications
Data Data
Device and Sensor Data API Adapter
Preprocessing Generation
Data Store
Data API
ML Module
Sensor Data
Data
Broker Controller Algorithm
Processing
Result API
IoT Environment
(Devices/Sensors/Actuators) Model Repository Dashboard
Platform (MBP) (Franco da Silva et al., 2020), which component is required when dealing with heteroge-
we use for evaluation purposes. neous data and conducts the processing needed by
We divided the architecture into two main com- all the models. Assuming the data arrives as entries
ponents, depicted in Figure 1. The first component with timestamps, it can be used to extract meaningful
is the IoT Platform, according to our research and information from the timestamp, such as hour of
experience (left in Figure 1). The second component the day, weekday, holiday, etc. An alternative data
is the FPP (right in Figure 1). source to train the ML algorithms is the data gener-
ation component. Its possible usage is described in
IoT Platform Architecture. The FPP assumes Section 4.
the existence of an IoT platform as illustrated in a Each ML model is integrated as a module (cf. Ma-
simplified manner on the left part of Figure 1. The chine Learning Module in Figure 1) consisting of five
IoT platform receives the data from the IoT environ- main components: Data API, data processing compo-
ment, which is generated by sensors and actuators nent, controller, the actual ML algorithm, and the Re-
(sensor data), or directly from the devices, such as sult API. The Data API has the same composition for
CPU and memory utilization, as well as general meta all modules and consumes previously preprocessed
information about the devices (device data). data. The Data API decouples the ML modules from
IoT platforms typically use a sensor data broker the platform. Although there is a generic data pre-
that receives data from all the different devices in the processing component in the previous step, different
IoT environment. Furthermore, there can be a device types of ML algorithms require the data to be in dif-
and sensor data store which permanently stores the ferent formats. Therefore, an additional data process-
received data from the environment. Usually, those ing component is integrated within each module that
two basic components are part of IoT platforms. The should prepare the data for the specific algorithm. The
IoT platform can explicitly provide a data API com- algorithm itself is the core of the module. It creates a
ponent with access to its data, or a direct connection model that is used or predictions by machine learning
to the broker and database can be established. from the input data. It can be implemented in various
ways and with different libraries, but it should pro-
FPP Architecture. The right part of Figure 1 vide a training and prediction interface. Finally, all
shows the composition of FPP. The adapter compo- the components are orchestrated by the controller that
nent decouples the FPP from specific IoT platform has multiple purposes. It processes the commands re-
implementations and retrieves the data that will be ceived from the outside and performs the correspond-
used by the models. After the data is retrieved by the ing actions. It receives the data, forwards it to the
adapter, in the next step, the data can be processed processing component if necessary, and then to the al-
in the data pre-processing component before it is gorithm. It can implement automated hyperparameter
used by the models. It can be standardized using tuning to find the optimal parameters, i.e., the most
a pre-defined data template, enriched with missing optimal configuration of the algorithm based on the
information, transformed to a specific format, or provided data. The controller also saves and loads
adapted in any other way. Standardizing the data data to the database or file system. It can implement
using a template leads to data consistency, which a scheduler to periodically create backups, retrain the
further eases the implementation of the models. This algorithm if online learning is not possible, or retune
143
IoTBDS 2022 - 7th International Conference on Internet of Things, Big Data and Security
air conditioner
running days
temperature
cpu temp
humidity
weekday
memory
storage
failure
heater
hour
cpu
timestamp
the parameters. The Result API sends the results of 4 DATA GENERATION
the model and status or progress information to the
Model Repository and Dashboard. Real-world IoT data comprises relatively rare device
The Model Repository describes a storage shared failures that could be used to train ML algorithms for
by all the models. The storage can be a database, a failure prediction. Combined with the short time in-
file system, or a combination. The main purpose is terval of data measurements that are required for some
to store the description and the configuration of the metrics, such as CPU or memory utilization, this leads
algorithms, the hyperparameters after tuning, or the to huge amounts of data with a very small number of
complete ML models, i.e., internal parameters after failures. This huge amount of data is not likely to fit
learning. It can also store any other model-relevant in the memory, and solutions, such as online learning,
information. It is accessed over the API components would typically require a very long time to execute.
of the modules and over the dashboard. Therefore, we made the choice to generate synthetic
After an ML model is finalized and can be used data that has the characteristics of real IoT data. These
to make predictions, the corresponding module also characteristics include:
sends the results to the dashboard, which collects (i) Data Volume: The entries are generated with an
all the predictions from different models, processes interval of 1 second, the duration is restricted to two
them and visualizes the results. Furthermore, mod- weeks. This results in roughly 1.2 million entries.
ules can send status and progress information to the (ii) Number of Failures: In contrast to real data, the
dashboard. The dashboard should also provide the failures were increased from hundreds to a few thou-
possibility to interact with the modules and execute sands to be able to properly train the algorithms.
individual steps manually. The steps may include: (iii) Included Timestamp, Environment Data,
importing history, starting automated hyperparame- Monitoring Data and Failures: The data includes
ter tuning, training individual algorithms, starting and measures with discrete values but also measures that
stopping individual model predictions, saving and monitor continuous values. In practice, sensors and
loading models, etc. Furthermore, the dashboard ac- actuators provide data about the environment, while
cesses the model repository to retrieve and show the the devices communicate their internal health state.
relevant model information in the UI. The dashboard An automated system or a maintainer records the fail-
can also be used to insert information during the ures.
model registration process. Finally, a maintainer ob- The first five entries of our generated dataset are
serves the dashboard and performs repairs or replace- shown in Table 1. Excluding timestamps and failures,
ments in the IoT environment. A notification system there are 11 features divided in 3 categories: time,
can also be implemented to inform the maintainer if monitoring and environment features. Time features
some device is in the process of failing or has reached include hour, weekday and running days, which is the
its critical thresholds based on the predictions. number of successive days without a failure. These
In our prototype, we use Apache Kafka for loosely features can usually be extracted from the timestamp
coupled communication between different compo- during the pre-processing step. Besides hour and
nents and JSON to serialize data. Therefore, ML weekday, it is also possible to get further information
modules should implement a Kafka consumer and be from the timestamp, such as minutes, months or holi-
able to serialize and deserialize JSON. Furthermore, days. Monitoring features provide information about
the data sets that are used to train the models should the device itself. These are CPU utilization, mem-
at least contain a timestamp and a column with a flag ory utilization, storage occupancy and CPU tempera-
whether the row denotes a failure or not. ture. Finally, environment features represent the con-
text data of the environment retrieved from sensors
144
A Failure Prediction Platform for Internet of Things Applications
and actuators. These include temperature, humidity, ternoon. Additionally, it is limited by the air condi-
air conditioner and heater. tioner and heater. At 25°C, the air conditioner is ac-
All values are generated as numeric values to tivated and remains active until the temperature drops
avoid the encoding later on. This also includes week- to 23°C. Similarly, the heater is activated at 15°C and
days, which start with 0 (Monday) and end with remains active until the temperature rises to 17°C.
6 (Sunday). Storage occupancy, as well as CPU This results in a clearly visible patterns shown in Fig-
and memory utilization, are displayed in percentages. ure 2. Humidity depends only on the temperature
CPU temperature, environment temperature and hu- value and has no random changes, resulting in a kind
midity are decimal numbers with one digit after the of inverted pattern.
decimal point. The temperatures are portrayed in de- A failure occurs during working days between 8
grees Celsius and humidity in percentage. Air condi- and 16 o’clock. Furthermore, CPU and memory uti-
tioner and heater can have the values 0 meaning off lization need to be above 92%, CPU temperature over
or 1 meaning on. In case of failures, 1 stands for fail- 50.1°C, and the environment temperature between
ure and 0 for no failure. The failure value in a data 19°C and 23.5°C. Note that the temperature never ex-
entry should be interpreted as the condition of the de- ceeds 25°C because of the air conditioner. Setting the
vice after all the other measures were sent. In case limit to 23.5°C covers both cases, failures for which
of a failure, it is the last data sent by the device which the air conditioner is off and failures for which it is
can provide information why the failure occurred. Al- on. The heater is always off. Humidity and storage
though the data is synthetic, an attempt was made to have no direct influence on the failures. There is no
make it as real as possible. reason for choosing this specific data condition for a
Figure 2 illustrates the emerged patterns of the failure, the algorithms should be able to detect pat-
generated data. CPU utilization is not clearly observ- terns regardless of the type of the failure. However,
able because of the very frequent and broad changes. the ranges were chosen to get an appropriate number
Memory utilization, on the other hand, changes less of failures.
frequently and remains in the range of 80%. The us- To compare the selected ML algorithms, two dif-
age of the storage increases over time with a slow ferent datasets were generated. In the first one, the
rate and random ups and downs. CPU temperature failures occur 70% of the time when the specified data
remains in a normal range with a low changing rate. condition is met. In the second one, 30% of the time.
There is no particular relation between the monitoring The first one should show the performance of the al-
features. In contrast, the environment features depend gorithms when there are enough failures to learn (ap-
on each other, mostly on the temperature value. The proximately 4000), the second one should show their
temperature depends on the time of the day, it starts performance on a low number of failures (approxi-
increasing in the morning and decreasing in the af- mately 500).
145
IoTBDS 2022 - 7th International Conference on Internet of Things, Big Data and Security
Table 2: Evaluation metrics for classification (Hossin and M.N, 2015; Sokolova and Lapalme, 2009; Ferri et al., 2009).
146
A Failure Prediction Platform for Internet of Things Applications
results should be interpreted with caution, as they de- proach to predict failures. The FPP architecture allow
pend on the dataset and the parameter configuration easy integration with different IoT platforms or other
of the algorithms. Providing more time for parameter data sources. In order to send data to the FPP, de-
tuning and data for training, the results of the other facto standards, such as Apache Kafka, can be used.
algorithms can also be improved. The FPP offers data pre-processing capabilities, a data
Furthermore, the training and prediction time of generator to train machine learning models, a plat-
the algorithms was measured. To compare the al- form to apply and run these models, and a dashboard
gorithms, we used the best parameter configuration for visualization of the prediction results. Due to the
for each algorithm. The time was measured on the modular design of our FPP architecture, different al-
70% dataset, by using 75%-25% train-test split with- gorithms can easily be exchanged or they can be run
out cross-validation. It is performed on a machine simultaneously. Our platform helps to integrate ma-
with a 2.60 GHz CPU and 24 GB RAM. The results chine learning algorithms into typical IoT platforms.
are listed in Table 3. The slowest algorithms regard- This simplifies the development and research on ma-
ing the training time are MLP and LSTM, followed chine learning algorithms for failure detection in IoT
by LGR. The results for NNs are as expected, since environments. Furthermore, our data generation com-
they are typically slow to train because of their com- ponent speeds up the learning process for these algo-
plexity (Aggarwal, 2015). The fastest algorithms re- rithms, leading to faster results. Nevertheless, the al-
garding training time are DT, NB and SVM, which gorithms can be improved by further learning from
require less than 3 seconds for 907200 entries. Pre- real data, using the FPP. For evaluation purposes, we
diction time is much faster than training. However, showed how to apply different algorithms for failure
because kNN is a lazy learner, its prediction takes prediction in the IoT using the FPP. We integrated dif-
longer than training for this particular data split. With ferent algorithms into the platform, trained and exe-
the total time of over 10 seconds, it is the slowest al- cuted them based on the FPP data generator.
gorithm. The fastest algorithms are DT and the linear In future work, we plan to apply the FPP to a real
classifiers, with prediction time under 0.03 seconds. scenario and evaluate which algorithms are most use-
The prediction was performed on 302 400 entries. ful in predicting failures in IoT environments. We fur-
ther consider the distinction of real data and injected
false data by training the models accordingly.
6 SUMMARY AND OUTLOOK
In this paper, we introduced the Failure Prediction
Platform, which uses a machine learning based ap-
147
IoTBDS 2022 - 7th International Conference on Internet of Things, Big Data and Security
REFERENCES Narasimhan, H., Pan, W., Kar, P., et al. (2016). Optimiz-
ing the Multiclass F-Measure via Biconcave Program-
Aggarwal, C. C. (2015). Data mining: the textbook. ming. In IEEE 16th International Conference on Data
Springer. Mining (ICDM), pages 1101–1106.
Ara, T., M, P., and Bali, M. (2020). Fault prediction in Opitz, J. and Burst, S. (2021). Macro F1 and Macro F1.
wireless sensor networks using soft computing. In Paul, T. and Ueno, K. (2020). Robust Incremental Lo-
2020 International Conference on Smart Technologies gistic Regression for Detection of Anomaly Using
in Computing, Electrical and Electronics (ICSTCEE), Big Data. In 19th IEEE International Conference on
pages 532–538. Machine Learning and Applications (ICMLA), pages
Bekkar, M., Djemaa, H. K., and Alitouche, T. A. (2013). 1167–1173.
Evaluation measures for models assessment over im- Rafiuzzaman, M., Gascon-Samson, J., Pattabiraman, K.,
balanced data sets. J Inf Eng Appl, 3(10). et al. (2019). Failure Prediction in the Internet of
Bordes, A. and Bottou, L. (2005). The Huller: a simple and Things Due to Memory Exhaustion. In Proceedings of
efficient online SVM. In Machine Learning: ECML the 34th ACM/SIGAPP Symposium on Applied Com-
2005, Lecture Notes in Artificial Intelligence, LNAI puting, SAC ’19, page 292–301, New York, USA. As-
3720, pages 505–512. Springer Verlag. sociation for Computing Machinery.
Chen, B., Wan, J., Shu, L., et al. (2018). Smart Factory Risteska Stojkoska, B. L. and Trivodaliev, K. V. (2017). A
of Industry 4.0: Key Technologies, Application Case, review of Internet of Things for smart home: Chal-
and Challenges. IEEE Access, 6:6505–6519. lenges and solutions. Journal of Cleaner Production,
140:1454–1464.
Chen, T. and Guestrin, C. (2016). XGBoost: A Scalable
Tree Boosting System. In Proceedings of the 22nd Saito, T. and Rehmsmeier, M. (2015). The Precision-Recall
ACM SIGKDD International Conference on Knowl- Plot Is More Informative than the ROC Plot When
edge Discovery and Data Mining, KDD ’16, page Evaluating Binary Classifiers on Imbalanced Datasets.
785–794, New York, NY, USA. Association for Com- PLOS ONE, 10(3):1–21.
puting Machinery. Sokolova, M. and Lapalme, G. (2009). A systematic analy-
sis of performance measures for classification tasks.
Choi, M., Park, W.-K., and Lee, I. (2015). Smart office en-
Information Processing & Management, 45(4):427–
ergy management system using bluetooth low energy
437.
based beacons and a mobile app. In IEEE Interna-
tional Conference on Consumer Electronics (ICCE), Solanas, A., Patsakis, C., Conti, M., et al. (2014). Smart
pages 501–502. health: A context-aware health paradigm within smart
cities. IEEE Communications Magazine, 52(8):74–
Ferri, C., Hernández-Orallo, J., and Modroiu, R. (2009).
81.
An experimental comparison of performance mea-
sures for classification. Pattern Recognition Letters, Soualhia, M., Fu, C., and Khomh, F. (2019). Infrastructure
30(1). Fault Detection and Prediction in Edge Cloud Envi-
ronments. In Proceedings of the 4th ACM/IEEE Sym-
Franco da Silva, A. C., Hirmer, P., Schneider, J., et al.
posium on Edge Computing, SEC ’19, page 222–235,
(2020). MBP: Not just an IoT Platform. In IEEE In-
New York, NY, USA. Association for Computing Ma-
ternational Conference on Pervasive Computing and
chinery.
Communications Workshops (PerCom Workshops).
Su, K., Li, J., and Fu, H. (2011). Smart city and the appli-
Friedman, J. H. (2001). Greedy Function Approximation: A cations. In International Conference on Electronics,
Gradient Boosting Machine. The Annals of Statistics, Communications and Control (ICECC), pages 1028–
29(5):1189–1232. 1031.
Goodfellow, I., Bengio, Y., and Courville, A. (2016). Deep Suga, N., Yano, K., Webber, J., et al. (2019). Prediction
Learning. MIT Press. of QoS Outage Probability for Wireless Communica-
Hastie, T., Tibshirani, R., and Friedman, J. (2009). The el- tion in Factory Environments. In International Con-
ements of statistical learning: data mining, inference, ference on Internet of Things, Embedded Systems and
and prediction. Springer Science & Business Media. Communications (IINTEC), pages 124–129.
Hossin, M. and M.N, S. (2015). A Review on Evaluation Vermesan, O. and Friess, P., editors (2013). Internet of
Metrics for Data Classification Evaluations. Interna- Things: Converging Technologies for Smart Environ-
tional Journal of Data Mining & Knowledge Manage- ments and Integrated Ecosystems. River Publishers
ment Process, 5:01–11. Series in Communication. River, Aalborg.
Jiang, F., Sui, Y., and Cao, C. (2013). An incremental de- Wang, A., Wan, G., Cheng, Z., and Li, S. (2009). An in-
cision tree algorithm based on rough sets and its ap- cremental extremely random forest classifier for on-
plication in intrusion detection. Artificial Intelligence line learning and tracking. In 16th IEEE International
Review, 40(4):517–530. Conference on Image Processing (ICIP), pages 1449–
Ketkar, N. (2017). Stochastic Gradient Descent, pages 113– 1452.
132. Apress, Berkeley, CA. Zhang, T. (2004). Solving Large Scale Linear Prediction
Lian, G., Chen, W., and Huang, S. (2019). Cloud-based on- Problems Using Stochastic Gradient Descent Algo-
line ageing monitoring for iot devices. IEEE Access, rithms. In Proceedings of the Twenty-First Interna-
7:135964–135971. tional Conference on Machine Learning, ICML ’04,
page 116, New York, NY, USA. Association for Com-
puting Machinery.
148