<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="2.3" xml:lang="EN">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Comput. Sci.</journal-id>
<journal-title>Frontiers in Computer Science</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Comput. Sci.</abbrev-journal-title>
<issn pub-type="epub">2624-9898</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fcomp.2025.1623375</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Computer Science</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Detecting intrusions in cloud-based ensembles: evaluating voting and stacking methods with machine learning classifiers</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Maodah</surname>
<given-names>Khawla Ali</given-names>
</name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="corresp" rid="c001"><sup>&#x002A;</sup></xref>
<uri xlink:href="https://loop.frontiersin.org/people/3056714/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Alhomdy</surname>
<given-names>Sharaf</given-names>
</name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Thabit</surname>
<given-names>Fursan</given-names>
</name>
<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
<uri xlink:href="https://loop.frontiersin.org/people/2179601/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-review-editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Department of Information Technology, Faculty of Computer and Information Technology, Sana&#x2019;a University</institution>, <addr-line>Sana&#x2019;a</addr-line>, <country>Yemen</country></aff>
<aff id="aff2"><sup>2</sup><institution>Department of Computer Engineering, Faculty of Engineering, Ege University</institution>, <addr-line>Bornova</addr-line>, <country>T&#x00FC;rkiye</country></aff>
<author-notes>
<fn fn-type="edited-by" id="fn0001">
<p>Edited by: Nicholas Kolokotronis, University of Peloponnese, Greece</p>
</fn>
<fn fn-type="edited-by" id="fn0002">
<p>Reviewed by: Santosh I. Gore, Sai Info Solution, India</p>
<p>Fadi Wedyan, Lewis University, United States</p>
</fn>
<corresp id="c001">&#x002A;Correspondence: Khawla Ali Maodah, <email>khawlaa800@gmail.com</email></corresp>
</author-notes>
<pub-date pub-type="epub">
<day>20</day>
<month>08</month>
<year>2025</year>
</pub-date>
<pub-date pub-type="collection">
<year>2025</year>
</pub-date>
<volume>7</volume>
<elocation-id>1623375</elocation-id>
<history>
<date date-type="received">
<day>05</day>
<month>05</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>08</day>
<month>07</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x00A9; 2025 Maodah, Alhomdy and Thabit.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Maodah, Alhomdy and Thabit</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<sec>
<title>Introduction</title>
<p>Cloud computing has revolutionized how organizations manage their infrastructure by providing scalable, on-demand services. However, the dispersed and open nature of cloud systems exposes them to a wide spectrum of cyberattacks. Machine learning provides dynamic options for detecting known and unknown assaults, whereas typical intrusion detection systems that depend on signature or rule-based techniques find it difficult to adjust to complex cyber threats.</p>
</sec>
<sec>
<title>Methods</title>
<p>This study compares the efficacy of an ensemble approach (Voting Hard and Stacking) for intrusion detection in cloud environments with individual machine learning classifiers, such as Random Forest, Decision Tree, Gradient Boosting, XGBoost, Naive Bayes, Support Vector Machine, and Logistic Regression. The study uses the NSL-KDD dataset.</p>
</sec>
<sec>
<title>Results</title>
<p>The results show show that while standalone models perform well, the ensemble technique offers better accuracy (almost 100%) and resilience across precision, recall, and F1-score measures. Furthermore, it is shown via feature selection methods (Random Forest, Gain Information, and Manual Selection) that the ensemble model performs consistently even when feature sets are smaller.</p>
</sec>
<sec>
<title>Discussion</title>
<p>These findings highlight how both individual and group Machine learning approaches may be used to improve Intrusion detection systems for cloud infrastructures, providing implementation flexibility according to threat landscapes and computing limitations.</p>
</sec>
</abstract>
<kwd-group>
<kwd>cloud computing</kwd>
<kwd>machine learning</kwd>
<kwd>voting</kwd>
<kwd>stacking</kwd>
<kwd>intrusion detection system</kwd>
<kwd>NSL-KDD dataset</kwd>
</kwd-group>
<counts>
<fig-count count="20"/>
<table-count count="16"/>
<equation-count count="7"/>
<ref-count count="38"/>
<page-count count="27"/>
<word-count count="12821"/>
</counts>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Computer Security</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="sec1">
<label>1</label>
<title>Introduction</title>
<p>Cloud computing (CC) is a contemporary strategy that gives users access to pre-configured, task-specific, and externally managed internet-based resources. Most businesses increasingly rely on these externally maintained services to fulfill particular goals like operating apps, handling certain data activities, or enhancing existing systems, rather than having complete infrastructure management. In contrast to conventional configurations, cloud services limit direct management but provide remote use of certain tools provided by cloud service providers (CSPs), contingent on network access and availability (<xref ref-type="bibr" rid="ref12">Dattangire et al., 2024</xref>). Whereas before it would just be present as a convenience or access-by-speed device, cloud computing is now an operational and resource management strategy because of the increasing reliance on centralized digital infrastructure. Consumer-accessible services that offer consumers limited access to necessary resources are normally run internally or by trusted partners.</p>
<p>However, cloud infrastructures&#x2019; interconnection and complexity inadvertently lay open vulnerabilities, hence the possibility of security vulnerability exploitation. As a countermeasure to these challenges (<xref ref-type="bibr" rid="ref9">Al-Sharif and Bushnag, 2024</xref>). Whereas intrusion detection systems (IDSs) are usually used to stay up to date with regard to network activity, they tend to be more event-focused on logging instead of proactive intrusion prevention. When confronted with new attack patterns, traditional IDSs, which generally make use of preconfigured rules or signatures, would overfit known threats and tend to produce a high false alarm rate. Furthermore, the inability of their responses to keep up with changing threat environments is due to the static nature of traditional IDSs (<xref ref-type="bibr" rid="ref9">Al-Sharif and Bushnag, 2024</xref>).</p>
<p>ML-based systems are less reliant on human maintenance and are more resilient to as-yet unknown threats because they adapt to evolving habits over time rather than relying merely on pre-determined signatures (<xref ref-type="bibr" rid="ref1">Adhikari and Bal, 2023</xref>). ML has been utilized mostly as an auxiliary method to cloud infrastructure security management for the last few years. Even if they do not necessarily surpass conventional methods in terms of precision, ML algorithms employ training on actual real-world data samples in order to aid in the identification of patterns of cloud-based threats rather than completely automating threat identification (<xref ref-type="bibr" rid="ref12">Dattangire et al., 2024</xref>).</p>
<p>Despite CC being on-demand and dynamic in service, its widespread and expansive nature can make it cumbersome to ensure sustained security. Traditional IDS based on predefined rules or signatures can be lacking.</p>
<p>in the case of changing and cunning attack styles, opening vulnerabilities. Sophisticated and context-aware security solutions are required to counter this. ML methods can be used to identify threats by examining traffic patterns in the network, but their deployment in cloud-based IDS systems is limited and needs to be improved.</p>
<p>In order to improve threat awareness in cloud computing, this study focuses on putting forth a cooperative approach in which IDS facilitates ML-based analysis. When managing different kinds of network risks, the goal is to minimize mistakes, cut down on detection delays, and preserve performance. The experimentation in this study is based on the NSL-KDD dataset.</p>
<sec id="sec2">
<label>1.1</label>
<title>Problem statement</title>
<p>Whereas cloud computing is becoming a growing trend due to its remote availability and simple services, control and data management concerns are invited by its reliance on outside providers. Despite their best effort to provide accessibility and efficiency, cloud systems may inadvertently expose themselves to threats due to their complexity and large distribution. Traditional IDSs are skewed toward familiar attack patterns, which limits their capacity to identify unexpected behavior. IDSs are often employed to audit activity rather than to prevent attacks actively. Although ML is commonly proposed as a means of improving threat detection, it might not always yield stable performance in various situations or real-time reliability. Furthermore, the extent to which ML and IDS can be integrated is still limited, and thus the issues involved in converging automation and adaptive security mechanisms are far from being completely addressed.</p>
</sec>
<sec id="sec3">
<label>1.2</label>
<title>Objective</title>
<p>The objective of this work is to develop an ensemble-driven intrusion detection model that integrates ML techniques into traditional IDS for enhancing cloud computing environment security. It increases the detection accuracy of known and unknown attacks, reduces false alarms, and supports timely and adaptive reactions to novel attack patterns.</p>
</sec>
<sec id="sec4">
<label>1.3</label>
<title>Contributions</title>
<sec id="sec5">
<label>1.3.1</label>
<title>Proposed ensemble model</title>
<p>The ensemble strategy proposed in this study greatly improves cyber threat detection and mitigation for cloud environments by integrating ML methods effectively with IDS. With the use of ensemble ML techniques with Voting hard and Stacking techniques, which outperform single classifiers in terms of accuracy, precision, recall, and F1-score metrics, the model will enhance IDS&#x2019; capability to detect known and new attacks in real time.</p>
</sec>
<sec id="sec6">
<label>1.3.2</label>
<title>Comprehensive classifier evaluation</title>
<p>Moreover, the analysis of the effectiveness of several ML classifiers, such as RF, XGBoost, SVM, DT, GB, LR, and NB, in identifying security threats related to cloud computing. The NSL-KDD dataset was used to assess the classifiers using measures including accuracy, precision, recall, and F1-score.</p>
</sec>
<sec id="sec7">
<label>1.3.3</label>
<title>Practical insights for cloud security</title>
<p>Providing practical insights into how integration of ML and IDS may improve cloud computing security. The results emphasize the potential of the ensemble method in creating more resilient and flexible security systems capable of identifying and countering emerging threats.</p>
</sec>
</sec>
<sec id="sec8">
<label>1.4</label>
<title>The structure of the paper</title>
<p>The remainder of this paper is structured as follows: section 2 contains background, which presents an introduction to cloud computing, IDSs, and ML. Section 3 discusses related work. Section 4 offers an overview of the proposed model, including the NSL-KDD dataset, feature selection methods, classifiers employed, performance metrics for assessment, and experimental framework. Section 5 contains the results and analysis. Finally, section 6 concludes conclusion and future work.</p>
</sec>
</sec>
<sec id="sec9">
<label>2</label>
<title>Background</title>
<sec id="sec10">
<label>2.1</label>
<title>Cloud computing</title>
<p>Cloud computing is the delivery of information technology services such as servers, storage, databases, software, network management, and artificial intelligence (AI) via the Internet. It allows for speedier, more flexible, and cost-effective solutions than traditional techniques, resulting in improved productivity and efficiency. There are several sorts of cloud infrastructures, each with its design and development. Various models, varieties, and services have evolved to meet distinct demands. Cloud services may be delivered in three ways: public, private, and ensemble (<xref ref-type="bibr" rid="ref20">Megouache et al., 2024</xref>; <xref ref-type="bibr" rid="ref38">Zulifqar et al., 2021</xref>).</p>
<p>The public cloud is an example of a computer platform that restricts customization and is run by companies that supply standardized services to a large customer base. This group of services, which rely on shared infrastructure, includes Microsoft Azure, Google App Engine, and Amazon EC2. On the other hand, the private cloud is designed for internal usage only, sometimes at the expense of more stringent data isolation. It is appropriate for businesses with certain operating needs. Microsoft ECI data centers, Ubuntu Enterprise Cloud, and Amazon Virtual Private Cloud are a few examples. Organizations with similar operational objectives employ the community cloud, which divides duties among several users and might result in less consistent administration (<xref ref-type="bibr" rid="ref28">Saran et al., 2022</xref>). New complexity brought forth by cloud technology&#x2019;s ongoing development put both individuals&#x2019; and enterprises&#x2019; current security standards to the test. ML is being investigated as a supplemental technique to help conventional security measures rather than providing a comprehensive answer. Though their function is typically reactive rather than entirely preventive, ML techniques are frequently used in cloud systems to help identify trends and abnormalities (<xref ref-type="bibr" rid="ref23">Nassif et al., 2021</xref>).</p>
</sec>
<sec id="sec11">
<label>2.2</label>
<title>Intrusion detection system</title>
<p>An IDS is a part of the system that watches data flow and system activities passively without taking any active action to prevent problems. It detects abnormalities that can indicate technical problems or unusual use rather than explicitly recognizing malicious activities or breaches. Instead of sending out instant notifications, it creates records when it notices specific trends. By providing insights rather than immediately addressing threats, an IDS indirectly enhances network security in contrast to proactive technologies like firewalls, antivirus software, or access control systems (<xref ref-type="bibr" rid="ref34">Umar et al., 2024</xref>; <xref ref-type="bibr" rid="ref29">Saranya et al., 2020</xref>). Instead of active defensive techniques like honeypots, IDSs are frequently coupled with monitoring tools. Network intrusion detection systems (NIDS) and host-based intrusion detection systems (HIDS) are the two broad categories of IDS development that are often recognized. With host-level modifications, HIDS mainly examines internal operations and file integrity on a single system. However, NIDS may miss host-specific events when monitoring network traffic. NIDS detection usually uses statistical deviations or pre-established procedures to identify anomalies (<xref ref-type="bibr" rid="ref35">Useni et al., 2023</xref>). IDS may be broadly divided into two categories: pattern-matching and behavior-based. Although it may not always employ ML or DL algorithms, behavior-based IDSs rely on departures from predicted activities. However, instead of employing dynamic analysis, pattern-matching IDSs use a database of recognized behaviors to identify matches. Some IDS systems function in intervals rather than continuously, alerting users only when certain thresholds or circumstances are reached.</p>
<p>IDS systems are divided into two types based on their response mechanism:<list list-type="bullet">
<list-item>
<p>Active IDS detects threats but also takes preventative steps such as blocking suspicious traffic to avoid prospective assaults.</p>
</list-item>
<list-item>
<p>Passive IDS: This kind just monitors and analyzes traffic, alerting the administrator to discovered threats and potential vulnerabilities but without taking active action against them (<xref ref-type="bibr" rid="ref35">Useni et al., 2023</xref>; <xref ref-type="bibr" rid="ref16">Hidayat et al., 2023</xref>).</p>
</list-item>
</list></p>
</sec>
<sec id="sec12">
<label>2.3</label>
<title>Machine learning</title>
<p>ML is a subset of AI that allows systems to learn and develop automatically based on experience rather than explicit programming. In IDSs, ML algorithms identify intrusions in huge datasets more quickly. ML algorithms are often classified into three categories. Supervised, Unsupervised, Semi-supervised (<xref ref-type="bibr" rid="ref29">Saranya et al., 2020</xref>). Supervised ML approaches use labeled datasets to train algorithms to spot patterns of normal and aberrant behavior. Common intrusion detection algorithms include LR, Gaussian NB, RF, MLP Classifier, KNN, DT, AdaBoost, XGBoost, and LightGBM. Unsupervised ML approaches use unlabeled data and focus on detecting deviations from usual behavior. Clustering comparable data points and detecting abnormalities is accomplished using algorithms such as K-means and Gaussian Mixture Model (GMM). Semi-supervised ML algorithms use labeled and unlabeled data to increase detection accuracy. They can detect anomalies that are similar to tagged cases, even if they do not completely match. These strategies attempt to improve the performance of anomaly-based IDSs, hence leading to greater computer network security (<xref ref-type="bibr" rid="ref1">Adhikari and Bal, 2023</xref>; <xref ref-type="bibr" rid="ref23">Nassif et al., 2021</xref>; <xref ref-type="bibr" rid="ref25">Parameswarappa et al., 2023</xref>).</p>
</sec>
</sec>
<sec id="sec13">
<label>3</label>
<title>Related work</title>
<p>The related papers listed below examine a range of IDS techniques and methodologies, including IDS types and ML algorithms, with a focus on cloud environments.</p>
<p><xref ref-type="bibr" rid="ref22">Mghames and Ibrahim (2023)</xref> developed an IDS based on ML to identify Distributed Denial of Service (DDoS) attacks. They performed training and testing in the CIC-IDS-2018 dataset using five machine-learning methods: DT, RF, LR, SVM, and multi-layer neural network. They applied PCA to diminish dimensions to improve performance. The multi-layer neural network showed better performance than any other model, achieving a classification accuracy of 99.9992% to identify DDoS attacks.</p>
<p><xref ref-type="bibr" rid="ref15">Eluri et al. (2024)</xref> addressed the issue of detecting disruptions in organizational networks by the definition of network activity as normal or abnormal and striving to rectify misclassification. Two strong algorithms of data mining, SVM, DT, and K-Means, were utilized by them to optimize the organization of the data. This method was developed and tested with the assistance of the KDDCUP99 dataset. The findings revealed that the new approach was more accurate and faster in comparison to previous methods, which suggests that it is particularly effective in new attack detection.</p>
<p><xref ref-type="bibr" rid="ref36">Vibhute et al. (2024)</xref> highlighted cloud data security by designing an IDS from the popular NSL-KDD dataset. The ensemble learning-based RF model was designed to identify the most important features. The system categorized and identified network intrusions with three ML models: SVM, LR, and KNN, and validation accuracies of 87.58, 88.86, and 98.24%, respectively. The suggested method has proved to be effective in identifying cyberattacks in real time.</p>
<p><xref ref-type="bibr" rid="ref17">John et al. (2024)</xref> proposed an IDS that detects illegal access and initiates pre-defined actions to enable secure data transfer using networks. They recognized several problems for IDS models like low detection accuracy and excessive false alarms, which are usually caused by excessive feature dimensionality and class imbalances in network traffic datasets. To address these issues, the study used Principal Component Analysis (PCA) and ensemble ML techniques. AdaBoost was used to overcome the disadvantages of PCA, such as feature selection; LogitBoost was used for multiclass categorization and logistic loss reduction; and RandomForest was used for curvy overfitting reduction. The performance, as well as the WSN-DS, NSL-KDD, and UNSW-N15 datasets, indicated that PCA integrated with RandomForest achieved 100% accuracy on all datasets. PCA with AdaBoost scored 92.3, 89.0, and 67.9% on WSN-DS, NSL-KDD, and UNSW-N15, respectively, and PCA with LogitBoost scored 98.9, 100, and 88.7% on the said datasets.</p>
<p><xref ref-type="bibr" rid="ref36">Vibhute et al. (2024)</xref> experimented with cloud data protection through a network IDS with the commonly used NSL-KDD dataset. They proposed an RF method where ensemble learning was employed to identify the most important features. The system detected and identified network intrusions using three ML models: SVM, LR, and K-nearest neighbors (KNN) with validation accuracy of 87.58, 88.86, and 98.24%, respectively. The presented method has been promising for real-time detection of cyberattacks.</p>
<p><xref ref-type="bibr" rid="ref17">John et al. (2024)</xref> presented an IDS that is capable of detecting unauthorized access and initiating pre-defined actions to support secure data sharing across networks. They realized there were many challenges for IDS models, including low detection rates and high false positives, due to frequent occurrences of high feature dimensionality and class imbalances in network traffic datasets. To tackle these challenges, the research work utilized Principal Component Analysis (PCA) and ensemble ML techniques. AdaBoost was utilized to remedy PCA&#x2019;s limitation in feature selection; LogitBoost was utilized for multiclassing and for reducing logistic loss; and RandomForest was utilized for overfitting reduction. Comparison against the WSN-DS, NSL-KDD, and UNSW-N15 datasets through evaluation showed that PCA integrated with RandomForest outperformed all the datasets with 100% accuracy. PCA with AdaBoost was able to get 92.3, 89.0, and 67.9% accuracy on WSN-DS, NSL-KDD, and UNSW-N15, respectively. PCA with LogitBoost was able to get 98.9, 100, and 88.7% accuracy on the same datasets.</p>
<p><xref ref-type="bibr" rid="ref10">Attou et al. (2023)</xref> suggested a cloud-based IDS that monitors resources, services, and networks for suspicious activities. They combined an RF classifier with feature engineering methods to improve the detection model&#x2019;s accuracy. The model was tested on the Bot-IoT and NSL-KDD datasets, and it achieved 98.3 and 99.99% accuracy, respectively. The findings confirmed the model&#x2019;s exceptional performance in terms of accuracy, precision, and recall, outperforming prior studies in the field.</p>
<p><xref ref-type="bibr" rid="ref9">Al-Sharif and Bushnag (2024)</xref> established an IDS framework for handling security challenges in cloud settings, where standard IDS solutions frequently fail owing to increased complexity and numerous attack vectors. Instead of using a single powerful classifier, they suggested a collective learning approach that combines numerous weaker models to create a more reliable detection system. Their strategy used bagging with Random Forest as the principal model and compared its efficacy to three boosting variants: Ensemble AdaBoost, Ensemble LPBoost, and Ensemble RUSBoost. Evaluations were conducted utilizing several divisions of the CICID2017 dataset. Among the investigated models, Ensemble RUSBoost had the greatest average accuracy at 99.821%, while the bagging approach performed particularly well on the DS2 subgroup, with an accuracy of 99.997%. To further test their technique, the researchers compared their model to an existing solution, emphasizing its comparative benefits and enhanced detection capacity.</p>
<p><xref ref-type="bibr" rid="ref21">Mehmood et al. (2023)</xref> proposed an ML-based method for detecting insider actions in cloud settings, with a focus on recognizing privilege misuse instances. They used a mixed-learning framework to improve detection reliability, including many models such as Random Forest, AdaBoost, XGBoost, and LightGBM. Testing was done on a customized version of the CERT dataset, and LightGBM surpassed the others with a peak accuracy of 97%. XGBoost and AdaBoost followed closely, with 88.27 and 88% accuracy, respectively, while Random Forest achieved 86%. Their findings showed that using several models in tandem improves the system&#x2019;s capacity to detect various insider threat behaviors.</p>
<p><xref ref-type="bibr" rid="ref2">Akinbolaji (2023)</xref> studied the use of sophisticated AI and ML technologies to improve real-time monitoring systems in cloud settings. Their study analyzed current detection frameworks using both statistical and descriptive research tools, as well as newer AI approaches such as deep learning and reinforcement learning, to improve detection efficiency and precision. The results showed that the suggested ensemble model outperformed traditional techniques, with at least a 30% improvement in detecting abnormalities and threats. This study emphasizes the importance of AI in enhancing digital security mechanisms, ensuring data integrity, and assisting compliance efforts, while also laying the way for future advances in cloud-based threat prevention systems.</p>
<p>The study in <xref ref-type="bibr" rid="ref13">Devi and Jain (2024)</xref> examines the issues of protecting privacy and safeguarding data in cloud computing settings, which are particularly vulnerable owing to their dispersed nature. Instead of traditional procedures, the authors advocated using deep learning to improve intrusion detection technologies. They looked at a variety of IDS frameworks and emphasized the need for high-quality datasets in optimizing the training and assessment stages of these models. The goal was to improve the efficacy of IDS systems that operate in both real-time and batch modes by using sophisticated deep-learning algorithms. The findings demonstrated how challenging it may be to identify anomalous behavior when training data does not exhibit these patterns. In detecting anomalous activity across many categorization groups, the study showed that algorithms such as Soft-Max Regression (SMR) and STL-based feature learning outperformed 98% accuracy, indicating encouraging developments in cloud defensive mechanisms.</p>
<p><xref ref-type="bibr" rid="ref31">Sundaramoorthy et al. (2024)</xref> discussed an ensemble IDS system with an emphasis on improved security in cloud-based infrastructure and wireless sensor networks. The system includes various techniques, including ISSIR for optimal feature selection, OSVM for classification error reduction, ELSTM for pattern anomaly detection, and MLPNN for threat response. The resulting ensemble technique recorded a staggering 99.9% accuracy rate, outperforming earlier systems. This unification further improves the IDS performance, corrects serious weaknesses in cloud and WSN networks, and contributes substantially to cybersecurity technique advancements.</p>
<p><xref ref-type="bibr" rid="ref20">Megouache et al. (2024)</xref> proposed a strong approach to identifying attacks on cloud data with emphasis on special challenges due to dispersed nature, scalability problems, and restricted resources available in cloud systems. Unlike traditional models, their approach used unclassified data instead of pre-labeled inputs. They applied k-means clustering to label the raw data, which was further applied to train an Extreme Learning Machine (ELM) classifier for threat identification. Using the KDD99 benchmark dataset, they were successful in showing that their approach provided high accuracy as well as reduced processing time significantly. The method proved to be a good alternative for complementing cloud protection systems, with uniform detection results.</p>
<p>In contrast to other studies, the study uses the NSL-KDD dataset to provide a comprehensive evaluation of many individual classifiers as well as a hard voting ensemble approach designed for cloud-based systems. While the majority of current methods focus on a single model or dataset, the technique combines feature selection with ensemble learning to increase accuracy and outcomes in F1 score, precision, and recall. Whereas previous efforts focus solely on insider threats or DDoS assaults, the approach can detect both known and unknown attack types. In addition, we demonstrate that the ensemble approach overcomes computational efficiency issues in real-time cloud IDSs by maintaining good detection performance even with smaller feature dimensions.</p>
</sec>
<sec id="sec14">
<label>4</label>
<title>Proposed model</title>
<p>This section describes an integrated ML method -IDS model (as shown in <xref ref-type="fig" rid="fig1">Figure 1</xref>) that uses the NSL-KDD dataset to detect abnormal network traffic in cloud settings. The approach involves data pretreatment (normalization and encoding), RandomOverSampler to solve class imbalances, and feature selection techniques (complete feature set, Information Gain, Mutual Information, and RF-based significance). The dataset is then divided into training and test sets. To increase detection accuracy, several classifiers (RF, DT, SVM, XGBoost, LR, GB, and Na&#x00EF;ve Bayes) are trained and merged using ensemble approaches such as voting hard and Stacking. To categorize traffic as normal or abnormal, models are assessed using standard metrics such as accuracy, precision, recall, F1-score, and false positives/negatives, hence enhancing threat detection in cloud environments.</p>
<fig position="float" id="fig1">
<label>Figure 1</label>
<caption>
<p>ML-based IDS flowchart for NSL-KDD.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g001.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Flowchart of a machine learning process using the NSL-KDD dataset. It begins with preprocessing, feature selection, and splitting the dataset into training and test sets. The training set is used for classification models including RF, SVM, XGBoost, GB, DT, Na&#x00EF;ve Bayes, and LR are trained and merged using ensemble approaches such as voting hard and Stacking. To categorize traffic as normal or abnormal, models are assessed using standard metrics such as accuracy, precision, recall, F1-score, and false positives/negatives, hence enhancing threat detection in cloud environments.</alt-text>
</graphic>
</fig>
<sec id="sec15">
<label>4.1</label>
<title>NSL-KDD dataset</title>
<p>The KDDcup99 dataset was generated for the Third International Knowledge Discovery and Data Mining Tools Competition, which took place in 1999 in connection with KDD-99, the Fifth International Conference on Knowledge Discovery and Data Mining. This dataset contains over 5 million training samples and over 2 million testing samples. It also has a high number of duplicate entries and unbalanced class distributions (<xref ref-type="bibr" rid="ref34">Umar et al., 2024</xref>). The NSL-KDD dataset is based on the KDD Cup &#x2018;99 dataset and solves flaws identified in the original, such as duplicated entries in the training set and duplicate records in the test set (<xref ref-type="bibr" rid="ref26">Proti&#x0107; and Stankovi&#x0107;, 2023</xref>). The NSL-KDD dataset has 41 attributes: three are categorical, four are binary, and the remaining 34 are continuous. The training set includes 23 traffic types, whereas the testing set has 30. The assaults in this dataset are divided into four categories: DOS, probing, U2R, and R2L. The features are divided into three categories: (1) fundamental features, (2) content-based features, and (3) traffic-related features (<xref ref-type="bibr" rid="ref7">Alkadi et al., 2023</xref>).</p>
</sec>
<sec id="sec16">
<label>4.2</label>
<title>Data preprocessing</title>
<p>Data preparation is critical in converting raw information into a format that enhances the performance of ML models. Raw data frequently contains missing, null, or inconsistent values, as well as unused or duplicated fields that provide no useful information. To solve this, the process starts by identifying and eliminating inconsistencies in the data to ensure it is clean. The following stages describe how the dataset was prepared for ML applications:<list list-type="bullet">
<list-item>
<p>The preparation begins with the load _data function, which imports the text file and converts it into a pandas DataFrame with easy-to-understand column names.</p>
</list-item>
<list-item>
<p>Clean up categorical columns such as protocol_type, service, and flag by removing unnecessary spaces and newline characters using the clean_column_values function.</p>
</list-item>
<list-item>
<p>Following cleaning, one-hot encoding via Pandas is used to convert these category characteristics into a numerical representation. Get-dummies (), which qualifies them for use in ML models.</p>
</list-item>
<list-item>
<p>The normalize_data function uses StandardScaler to standardize the dataset, bringing its mean down to zero and its standard deviation up to one, in order to further improve speed.</p>
</list-item>
<list-item>
<p>The dataset is then balanced by using RandomOverSampler from the learning module, which helps to lessen prediction bias by producing extra samples for the underrepresented class.</p>
</list-item>
<list-item>
<p>The data is optimized for ML through the processes of cleaning, encoding, scaling, and balancing, which raises the precision and dependability of model predictions.</p>
</list-item>
</list></p>
</sec>
<sec id="sec17">
<label>4.3</label>
<title>Feature selection</title>
<p>Choosing the pertinent attributes comes next after data analysis. By determining the most important variables, feature selection improves the accuracy of ML models, which is why it is so important in intrusion detection (<xref ref-type="bibr" rid="ref36">Vibhute et al., 2024</xref>). The process of feature subset selection aims to improve classification performance by selecting a smaller set of features from a larger pool. While some researchers describe feature subset selection (FSS) as a technique for decreasing the size of the feature set, others view it as a means of improving classifier accuracy. FSS is thought to be a method for finding the best feature subsets that, by removing unnecessary and duplicated features, preserve the most important information in a dataset (<xref ref-type="bibr" rid="ref5">Alhayali et al., 2021</xref>). The most significant characteristics are found using feature selection approaches, which also remove redundant or superfluous data and increase the dataset&#x2019;s overall effectiveness (<xref ref-type="bibr" rid="ref36">Vibhute et al., 2024</xref>). In the beginning, the study employed all of the features without using any feature selection techniques. Following that, two filter-based feature selection strategies were presented: Mutual Information and Gain Information. These methods rank the features according to their scores, which assess each feature&#x2019;s importance and pertinence to the class label. The characteristics with the highest ranking are then used to create the IDS. Filter approaches have the advantage of being computationally efficient because they do not need IDS training (<xref ref-type="bibr" rid="ref3">Alalhareth and Hong, 2023</xref>). Filters are employed in the popular feature selection method known as Gain Information. It reduces the impact of irrelevant data by ranking characteristics according to their significance. By doing so, it discovers the characteristics that give the most information to a certain class, improving the model&#x2019;s overall performance (<xref ref-type="bibr" rid="ref18">Kurniabudi et al., 2020</xref>). In Gain Information (GI), the quantity of information is primarily assessed using the entropy and conditional entropy concepts. Firstly, a discrete random variable&#x2019;s entropy, &#x201C;&#x1D44B;, is defined as follows in <xref ref-type="disp-formula" rid="EQ1">Equation 1</xref>&#x201D;:<disp-formula id="EQ1">
<label>(1)</label>
<mml:math id="M1">
<mml:mi mathvariant="normal">H</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:munder>
<mml:mo movablelimits="false">&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mi>p</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo>log</mml:mo>
<mml:mo stretchy="true">(</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo stretchy="true">)</mml:mo>
</mml:math>
</disp-formula></p>
<p>Here, a specific outcome of the random variable &#x1D44B; is indicated by &#x1D465;&#x1D456;, and the probability that &#x1D465;&#x1D456; will occur among the potential values of &#x1D44B; is shown by <italic>P</italic>(&#x1D465;&#x1D456;). According to another discrete random variable &#x1D44C;, the conditional entropy of &#x201C;&#x1D44B; is defined as follows in <xref ref-type="disp-formula" rid="EQ2">Equation 2</xref>&#x201D;:<disp-formula id="EQ2">
<label>(2)</label>
<mml:math id="M2">
<mml:mi>H</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>/</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:munder>
<mml:mo movablelimits="false">&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>Y</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mi>p</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
<mml:mspace width="0.25em"/>
<mml:munder>
<mml:mo movablelimits="false">&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mi>P</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo>log</mml:mo>
<mml:mo stretchy="true">(</mml:mo>
<mml:mi>P</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo stretchy="true">)</mml:mo>
</mml:math>
</disp-formula></p>
<p>The chance of seeing &#x1D466;&#x1D457; from &#x1D44C; is represented by &#x1D443;(&#x1D466;&#x1D457;) in this instance, but the conditional probability of seeing &#x1D465;&#x1D456; from &#x1D44B; provided that &#x1D466;&#x1D457; from &#x1D44C; has happened is shown by &#x1D443;(&#x1D465;&#x1D456;|&#x1D466;&#x1D457;). The Gain Information (GI) between &#x1D44B; and &#x1D44C; quantifies the amount of information communicated between both variables as follows in <xref ref-type="disp-formula" rid="EQ3">Equation 3</xref>:<disp-formula id="EQ3">
<label>(3)</label>
<mml:math id="M3">
<mml:mtable columnalign="left" displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="italic">IG</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi>H</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>H</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:mi>X</mml:mi>
<mml:mo>/</mml:mo>
<mml:mi>Y</mml:mi>
<mml:mo stretchy="true">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munder>
<mml:mo movablelimits="false">&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>X</mml:mi>
</mml:mrow>
</mml:munder>
<mml:munder>
<mml:mo movablelimits="false">&#x2211;</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2208;</mml:mo>
<mml:mi>Y</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mi>P</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mo>log</mml:mo>
<mml:mo stretchy="true">(</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>P</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo stretchy="true">(</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo stretchy="true">)</mml:mo>
</mml:mrow>
</mml:mfrac>
<mml:mo stretchy="true">)</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula></p>
<p>(&#x1D465;&#x1D456;, &#x1D466;&#x1D457;) refers to the joint probability of &#x1D465;&#x1D456; and &#x1D466;&#x1D457; occurring together (<xref ref-type="bibr" rid="ref37">Zhang et al., 2024</xref>). Mutual Information (MI)-based feature selection is an approach for dimensionality reduction that works independently of classifiers. It seeks to address the difficulty of picking a meaningful collection of characteristics (<xref ref-type="bibr" rid="ref19">Liu and Motani, 2022</xref>). Mutual information feature selection is a popular strategy for improving the effectiveness of IDSs. It assesses the link between each characteristic and the class label, deciding which features have the highest mutual information values (<xref ref-type="bibr" rid="ref3">Alalhareth and Hong, 2023</xref>). The study used an RF classifier, which is an ensemble-based ML technique that integrates numerous DTs. To limit the danger of overfitting and improve the model&#x2019;s generalizability, each DT in the forest is built separately from a randomly selected subset of the training data and features. The RF algorithm&#x2019;s ultimate output is selected by a majority vote among all DTs. Each tree in the forest votes for the class of the input data point and the class that receives the most votes is chosen as the prediction (<xref ref-type="bibr" rid="ref6">Ali et al., 2023</xref>). As shown in <xref ref-type="table" rid="tab1">Table 1</xref>, multiple feature selection approaches discover critical properties for the IDS. The whole feature set has 41 characteristics, however, approaches like manual information acquisition and RF selection emphasize essential aspects like &#x201C;src_bytes,&#x201D; &#x201C;dst_host_serror_rate,&#x201D; and &#x201C;count.&#x201D; These features serve to improve the IDS model&#x2019;s performance in identifying unusual network traffic.</p>
<table-wrap position="float" id="tab1">
<label>Table 1</label>
<caption>
<p>Feature selection for IDS using different methods.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Methods of features selection</th>
<th align="left" valign="top">Features</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">Full features</td>
<td align="left" valign="middle">&#x201C;duration,&#x201D; &#x201C;protocol_type,&#x201D; &#x201C;service,&#x201D; &#x201C;flag,&#x201D; &#x201C;src_bytes,&#x201D; &#x201C;dst_bytes,&#x201D; &#x201C;land,&#x201D; &#x201C;wrong_fragment,&#x201D; &#x201C;urgent,&#x201D; &#x201C;hot,&#x201D; &#x201C;num_failed_logins,&#x201D; &#x201C;logged_in,&#x201D; &#x201C;num_compromised,&#x201D; &#x201C;root_shell,&#x201D; &#x201C;su_attempted,&#x201D; &#x201C;num_root,&#x201D; &#x201C;num_file_creations,&#x201D; &#x201C;num_shells,&#x201D; &#x201C;num_access_files,&#x201D; &#x201C;num_outbound_cmds,&#x201D; &#x201C;is_host_login,&#x201D; &#x201C;is_guest_login,&#x201D; &#x201C;count,&#x201D; &#x201C;srv_count,&#x201D; &#x201C;serror_rate,&#x201D; &#x201C;srv_serror_rate,&#x201D; &#x201C;rerror_rate,&#x201D; &#x201C;srv_rerror_rate,&#x201D; &#x201C;same_srv_rate,&#x201D; &#x201C;diff_srv_rate,&#x201D; &#x201C;srv_diff_host_rate,&#x201D; &#x201C;dst_host_count,&#x201D; &#x201C;dst_host_srv_count,&#x201D; &#x201C;dst_host_same_srv_rate,&#x201D; &#x201C;dst_host_diff_srv_rate,&#x201D; &#x201C;dst_host_same_src_port_rate,&#x201D; &#x201C;dst_host_srv_diff_host_rate,&#x201D; &#x201C;dst_host_serror_rate,&#x201D; &#x201C;dst_host_srv_serror_rate,&#x201D; &#x201C;dst_host_rerror_rate,&#x201D; &#x201C;dst_host_srv_rerror_rate,&#x201D; &#x201C;labels&#x201D;</td>
</tr>
<tr>
<td align="left" valign="middle">Selected features by manual information and gain information</td>
<td align="left" valign="middle">&#x201C;src_bytes,&#x201D; &#x201C;flag_SH,&#x201D; &#x201C;service_auth,&#x201D; &#x201C;dst_host_diff_srv_rate,&#x201D; &#x201C;dst_host_same_src_port_rate,&#x201D; &#x201C;dst_host_srv_diff_host_rate,&#x201D; &#x201C;dst_host_serror_rate,&#x201D; &#x201C;dst_host_srv_serror_rate,&#x201D; &#x201C;dst_host_rerror_rate,&#x201D; and &#x201C;dst_host_srv_rerror_rate&#x201D;</td>
</tr>
<tr>
<td align="left" valign="middle">Selected features by RF</td>
<td align="left" valign="middle">&#x201C;src_bytes,&#x201D; &#x201C;data_transfer,&#x201D; &#x201C;same_srv_rate,&#x201D; &#x201C;count,&#x201D; &#x201C;dst_bytes,&#x201D; &#x201C;dst_host_serror_rate,&#x201D; &#x201C;dst_host_diff_srv_rate,&#x201D; &#x201C;dst_host_srv_serror_rate,&#x201D; &#x201C;srv_serror_rate,&#x201D; &#x201C;error_rate,&#x201D; and &#x201C;attack&#x201D;</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="sec18">
<label>4.4</label>
<title>Classification model</title>
<p><italic>Support Vector Machine (SVM)</italic>: is commonly regarded as one of the most successful algorithms for binary classification, notably in IDSs (IDS), where transactions are classified as normal or invasive (<xref ref-type="bibr" rid="ref4">Aldallal and Alisa, 2021</xref>). The primary goal of SVM is to identify a hyperplane within an n-dimensional feature space that maximizes the separation margin between classes. One of the key advantages of SVM is its ability to work effectively with smaller training datasets, as it only relies on a few support vectors to define the hyperplane. However, SVM performance can be negatively impacted by noise near the hyperplane (<xref ref-type="bibr" rid="ref8">Alotaibi and Rassam, 2023</xref>).</p>
<p><italic>Gradient boosting (GB)</italic>: is an ensemble learning method that combines many decision trees to increase prediction accuracy. This method builds decision trees progressively, with each node making a binary choice. The model&#x2019;s performance is progressively improved as each tree fixes the mistakes of the one before it. GB is an effective technique for challenging jobs because of its iterative approach, which produces forecasts that are more accurate (<xref ref-type="bibr" rid="ref11">Boldini et al., 2023</xref>).</p>
<p><italic>XGBoost</italic>: To improve efficiency and performance, XGBoost is a sophisticated and optimized variant of gradient boosting. It enhances the approach and system design of conventional GB models. Parallel processing, distributed computing, out-of-core execution, and cache optimization are some of the characteristics that XGBoost integrates to provide quicker processing and more accurate convergence to the global minimum. Its speed and accuracy are increased by these enhancements, which enable it to handle massive amounts of data across several devices (<xref ref-type="bibr" rid="ref33">Thapa et al., 2020</xref>).</p>
<p><italic>Logistic regression (LR)</italic>: A classification method for categorical outcome prediction, logistic regression may be applied to both binary and multi-class classification applications. It uses the logistic function to determine the likelihood of an event happening, with values ranging from 0 to 1. Usually, a threshold of 0.5 is used to differentiate between two classes: values below 0.5 are categorized as class 0, whereas those over 0.5 are classified as class 1. F(x)&#x202F;=&#x202F;1/(1&#x202F;+&#x202F;e^-x) is the logistic sigmoid function, which is used to convert the input into a number between 0 and 1 that indicates the likelihood of a specific result. The wider application of the logistic sigmoid function in multi-class classification situations is not the same as this method (<xref ref-type="bibr" rid="ref30">Somogyi, 2021</xref>).</p>
<p><italic>Na&#x00EF;ve Bayes (NB)</italic>: is a variation of Bayes&#x2019; Theorem in which the qualities are assumed to be extremely independent of one another. It is a classification approach based on Bayes&#x2019; probability theory, with the assumption that the presence of one characteristic does not affect the chance of another (<xref ref-type="bibr" rid="ref14">Devidas and Adesh, 2021</xref>). The Na&#x00EF;ve Bayes method uses conditional probability and the premise that characteristics are independent. The classifier assigns the sample to the class with the highest probability after calculating the conditional probabilities for each class for each input (<xref ref-type="bibr" rid="ref35">Useni et al., 2023</xref>).</p>
<p><italic>Decision Tree (DT)</italic>: For classification problems, the DT method is frequently utilized. It organizes data in a tree structure, with classifications determined by decisions made at every level. The branches show the results of those tests, the leaf nodes show the final classification, and each non-terminal node denotes a test or decision point.</p>
<p><italic>Random Forest (RF)</italic>: For both classification and regression tasks, RF, an ensemble learning technique, is employed. During training, it creates numerous DTs and forecasts the class using the majority vote from each tree. This strategy seeks to decrease overfitting and underfitting by averaging predictions to strike a balance between bias and variance (<xref ref-type="bibr" rid="ref14">Devidas and Adesh, 2021</xref>).</p>
<p><italic>Ensemble Model:</italic> This ensemble model guarantees thorough and accurate threat detection by combining the various strengths of the individual classifiers to improve classification accuracy through the use of Voting Hard and Stacking with DT, RF, and GB.</p>
</sec>
<sec id="sec19">
<label>4.5</label>
<title>Performance evaluation metrics</title>
<p>A number of essential criteria will be used to assess threat detection algorithms&#x2019; performance. These measurements will provide quantitative insights into how well the models recognize and respond to threats in real-time settings (<xref ref-type="bibr" rid="ref2">Akinbolaji, 2023</xref>).</p>
</sec>
<sec id="sec20">
<label>4.6</label>
<title>The performance evaluation metrics can be expressed as accuracy, precision, recall, and F1-score</title>
<p><italic>Accuracy:</italic> is the percentage of correctly categorized cases, which include both normal and pathological data points. as follows in <xref ref-type="disp-formula" rid="EQ4">Equation 4</xref>:<disp-formula id="EQ4">
<label>(4)</label>
<mml:math id="M4">
<mml:mtext mathvariant="italic">Accuracy</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">TN</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">TN</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">FP</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">FN</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
</disp-formula></p>
<p><italic>Precision</italic>: refers to the fraction of forecasted threats that are valid. It is the proportion of accurately recognized anomalies to total presented anomalies. as follows in <xref ref-type="disp-formula" rid="EQ5">Equation 5</xref>:<disp-formula id="EQ5">
<label>(5)</label>
<mml:math id="M5">
<mml:mtext mathvariant="italic">Precision</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">FP</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
</disp-formula></p>
<p><italic>Recall</italic>: The proportion of genuine positive records (e.g., true anomalies) that are accurately identified. It calculates the ratio of detected attacks to total attacks. as follows in <xref ref-type="disp-formula" rid="EQ6">Equation 6</xref>:<disp-formula id="EQ6">
<label>(6)</label>
<mml:math id="M6">
<mml:mtext mathvariant="italic">Recall</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mrow>
<mml:mi mathvariant="italic">TP</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi mathvariant="italic">FN</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
</disp-formula></p>
<p><italic>The F1 Score</italic>: is the harmonic mean of accuracy and recall, providing a single statistic for evaluating the model&#x2019;s overall efficacy. as follows in <xref ref-type="disp-formula" rid="EQ7">Equation 7</xref>:<disp-formula id="EQ7">
<label>(7)</label>
<mml:math id="M7">
<mml:mi>F</mml:mi>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mtext mathvariant="italic">Sccore</mml:mtext>
<mml:mo>=</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mtext mathvariant="italic">Recall</mml:mtext>
<mml:mo>&#x2217;</mml:mo>
<mml:mtext mathvariant="italic">Precision</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mtext mathvariant="italic">Recall</mml:mtext>
<mml:mo>+</mml:mo>
<mml:mtext mathvariant="italic">Precision</mml:mtext>
</mml:mrow>
</mml:mfrac>
</mml:math>
</disp-formula></p>
<p>True Negative (TN) represents accurately anticipated normal cases.</p>
<p>False Negative (FN) indicates incidents that were mistakenly anticipated as normal.</p>
<p>True Positive (TP) represents successfully anticipated abnormal incidences.</p>
<p>False Positive (FP) indicates incidents that were wrongly anticipated as abnormal (<xref ref-type="bibr" rid="ref17">John et al., 2024</xref>; <xref ref-type="bibr" rid="ref36">Vibhute et al., 2024</xref>; <xref ref-type="bibr" rid="ref20">Megouache et al., 2024</xref>).</p>
</sec>
<sec id="sec21">
<label>4.7</label>
<title>Experimental environment</title>
<p>All of the study&#x2019;s experiments were carried out on a top-tier workstation running Windows 10 Pro and equipped with an AMD Ryzen 95,950X CPU (3.7&#x202F;GHz) and 64&#x202F;GB of RAM. This setup was intended to guarantee that repeated tests with various feature sets and numerous ensemble classifiers would go well. This configuration is not representative of situations with restricted resources, such as low-cost systems or edge devices. Future research will evaluate the effectiveness of the IDS on these platforms and investigate real-time optimization techniques including pruning, quantization, and compression.</p>
</sec>
</sec>
<sec sec-type="results" id="sec22">
<label>5</label>
<title>Results and discussion</title>
<p>This section presents the results obtained from the ensemble model, which was evaluated using the NSL-KDD dataset&#x2019;s features and yields a total of 41 attributes as shown in <xref ref-type="table" rid="tab1">Table 1</xref> to assess the effectiveness of the integrated approach. It begins by analyzing the performance of various individual classifiers RF, DT, GB, XGBoost, NB, SVM, and LR, and the ensemble model using standard evaluation metrics, including accuracy, precision, recall, F1-score, and false positive/negative rates in three case that are full features, selection methods such as Information Gain, Mutual Information. These findings emphasize the need to use the whole feature set to improve the IDS&#x2019;s capacity to detect unexpected network traffic. The subsection discussion is as follows:</p>
<sec id="sec23">
<label>5.1</label>
<title>Individual classifiers using full features</title>
<p>Ensemble models outperform individual classifiers in measures like accuracy, precision, recall, and F1-score when using all available features as shown in <xref ref-type="table" rid="tab1">Table 1</xref>.<list list-type="alpha-lower">
<list-item>
<p>Random Forest</p>
<list list-type="simple">
<list-item>
<p>The RF model achieved an outstanding 99.99% accuracy, with perfect precision and recall (1.00), correctly identifying all positive cases. Its F1-score of 1.00 reflects a balanced and excellent performance in both accuracy and recall, as illustrated in <xref ref-type="table" rid="tab2">Table 2</xref> and <xref ref-type="fig" rid="fig2">Figure 2</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Decision Trees</p>
<list list-type="simple">
<list-item>
<p>The DT model demonstrated exceptional performance with an accuracy of 99.98%, perfect precision and recall of 1.00, and an F1-score of 1.00, indicating flawless prediction and detection of positive cases, as shown in <xref ref-type="table" rid="tab2">Table 2</xref> and <xref ref-type="fig" rid="fig3">Figure 3</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Logistic Regression</p>
<list list-type="simple">
<list-item>
<p>The LR model achieved 97% accuracy, with a precision of 0.98 and a recall of 0.97, accurately detecting 97% of true positive events. Its F1-score of 0.97 reflects strong overall performance, as shown in <xref ref-type="table" rid="tab2">Table 2</xref> and <xref ref-type="fig" rid="fig4">Figure 4</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>XGBossting</p>
<list list-type="simple">
<list-item>
<p>XGBoost achieved an impressive accuracy of 99.99%, with perfect precision and recall of 1.00, correctly predicting all positive events. Its F1-score of 1.00 highlights its excellent balance of precision and recall, making it the top performer, as shown in <xref ref-type="table" rid="tab2">Table 2</xref> and <xref ref-type="fig" rid="fig5">Figure 5</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Na&#x00EF;ve Bayes</p>
<list list-type="simple">
<list-item>
<p>The NB model had a lower accuracy of 78%, correctly predicting 81% of positive cases. Its recall was 78%, and the F1-score of 0.76 indicates an imbalanced model with room for improvement in both precision and recall, as shown in <xref ref-type="table" rid="tab2">Table 2</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Gradient boosting</p>
<list list-type="simple">
<list-item>
<p>The GB model achieved an impressive accuracy of 99.82%, with perfect accuracy and recall (1.00), correctly predicting all positive cases and detecting all actual positives. Its F1-score of 1.00 reflects excellent balance and performance across all parameters, as shown in <xref ref-type="table" rid="tab2">Table 2</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Support Vector Machine</p>
<list list-type="simple">
<list-item>
<p>The SVM model achieved 99.26% accuracy, with excellent precision (0.99) and recall (0.99), demonstrating strong performance in predicting and identifying positive cases. Its F1-score of 0.99 indicates a well-balanced model, as shown in <xref ref-type="table" rid="tab3">Table 3</xref>.</p>
</list-item>
</list>
</list-item>
</list></p>
<table-wrap position="float" id="tab2">
<label>Table 2</label>
<caption>
<p>Individual classifiers using full features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Metric</th>
<th align="center" valign="top" colspan="5">Value</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle" colspan="6">Random Forest</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Decision Tree</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Logistic Regression</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.97</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="top">6,196</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.98</td>
<td align="center" valign="top">0.97</td>
<td align="center" valign="top">0.97</td>
<td align="center" valign="top">6,196</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.98</td>
<td align="center" valign="top">0.97</td>
<td align="center" valign="top">0.97</td>
<td align="center" valign="top">6,196</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">XGBossting</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">precision</td>
<td align="center" valign="middle" rowspan="2">recall</td>
<td align="center" valign="middle" rowspan="2">f1-score</td>
<td align="center" valign="top">support</td>
</tr>
<tr>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Na&#x00EF;ve-Bayes</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.78</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">123,912</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.81</td>
<td align="center" valign="top">0.78</td>
<td align="center" valign="top">0.76</td>
<td align="center" valign="top">123,912</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.81</td>
<td align="center" valign="top">0.78</td>
<td align="center" valign="top">0.76</td>
<td align="center" valign="top">123,912</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Gradient boosting</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="top">6,196</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">6,196</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">6,196</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig position="float" id="fig2">
<label>Figure 2</label>
<caption>
<p>Random Forest.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g002.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix illustrating a classification model's performance on various categories, including "back," "buffer_overflow," and "neptune," among others. Each category is on both axes, with diagonal values at 346 indicating correct predictions. A color gradient bar ranges from light to dark blue, representing values from zero to over twelve thousand.</alt-text>
</graphic>
</fig>
<fig position="float" id="fig3">
<label>Figure 3</label>
<caption>
<p>Decision Tree.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g003.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix displaying the performance of a classification model. True and predicted classes are labeled on the vertical and horizontal axes, respectively. Diagonal cells show high numbers like 346, indicating correct classifications. Off-diagonal cells show errors, with sparse numbers. A color scale on the right transitions from light to dark blue, representing lower to higher values.</alt-text>
</graphic>
</fig>
<fig position="float" id="fig4">
<label>Figure 4</label>
<caption>
<p>Logistic Regression.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g004.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix showing predicted versus actual values for various attack types and normal actions. The diagonal values indicate correct predictions, with high accuracy for most categories. A color gradient ranges from light to dark blue, representing low to high counts, respectively.</alt-text>
</graphic>
</fig>
<fig position="float" id="fig5">
<label>Figure 5</label>
<caption>
<p>XGBossting.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g005.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix illustrating classification results for 23 classes. Diagonal elements show high accuracy with the value 346 for most classes, indicating correct predictions. Off-diagonal values are mostly zero, implying few misclassifications. A color gradient bar on the right represents counts from zero to over 12,000.</alt-text>
</graphic>
</fig>
<table-wrap position="float" id="tab3">
<label>Table 3</label>
<caption>
<p>Support Vector Machine using full features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th/>
<th align="center" valign="top">Precision</th>
<th align="center" valign="top">Recall</th>
<th align="center" valign="top">F1-score</th>
<th align="center" valign="top">Support</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="top">Accuracy</td>
<td align="center" valign="top">0.9925753760733420</td>
<td align="center" valign="top">0.9925753760733420</td>
<td align="center" valign="top">0.9925753760733420</td>
<td align="center" valign="top">0.9925753760733420</td>
</tr>
<tr>
<td align="left" valign="top">Macro avg</td>
<td align="center" valign="top">0.9926361652890440</td>
<td align="center" valign="top">0.9925724355169420</td>
<td align="center" valign="top">0.992555391610573</td>
<td align="center" valign="top">15489.0</td>
</tr>
<tr>
<td align="left" valign="top">Weighted avg</td>
<td align="center" valign="top">0.9926457833302430</td>
<td align="center" valign="top">0.9925753760733420</td>
<td align="center" valign="top">0.992562131963623</td>
<td align="center" valign="top">15489.0</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="tab4">Table 4</xref> compares the performance of several classifiers using accuracy, precision, recall, and F1-score. RF, DT, and XGBoost all produced near-perfect results, with 99.99% accuracy and perfect precision, recall, and F1-score values of 1.00. NB has a much lower accuracy (78%), as well as worse precision, recall, and F1-score. SVM and LR both performed well, with accuracy rates of 99.26 and 97%, respectively, while retaining good precision, recall, and F1 scores. GB likewise produced outstanding results, with 99.82% accuracy and flawless precision, recall, and F1-score.</p>
<table-wrap position="float" id="tab4">
<label>Table 4</label>
<caption>
<p>Performance evaluation of classifiers using accuracy, precision, recall, and F1-score using full features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Classifiers</th>
<th align="center" valign="top">Accuracy</th>
<th align="center" valign="top">Precision</th>
<th align="center" valign="top">Recall</th>
<th align="center" valign="top">F1-score</th>
<th align="center" valign="top">Execution TIME</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">Random Forest</td>
<td align="center" valign="middle">99.99%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">332.34395813941956 s</td>
</tr>
<tr>
<td align="left" valign="middle">Decision Tree</td>
<td align="center" valign="middle">99.98%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">95.22518181800842 s</td>
</tr>
<tr>
<td align="left" valign="middle">XGBoost</td>
<td align="center" valign="middle">99.99%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">120.07075381278992&#x202F;s</td>
</tr>
<tr>
<td align="left" valign="middle">Naive Bayes</td>
<td align="center" valign="middle">78%</td>
<td align="center" valign="middle">0.81</td>
<td align="center" valign="middle">0.78</td>
<td align="center" valign="middle">0.76</td>
<td align="center" valign="middle">13.097240209579468&#x202F;s</td>
</tr>
<tr>
<td align="left" valign="middle">Support Vector Machine</td>
<td align="center" valign="middle">99.26%</td>
<td align="center" valign="middle">0.99</td>
<td align="center" valign="middle">0.99</td>
<td align="center" valign="middle">0.99</td>
<td align="center" valign="middle">128.66907286643982 s</td>
</tr>
<tr>
<td align="left" valign="middle">Logistic Regression</td>
<td align="center" valign="middle">97%</td>
<td align="center" valign="middle">0.98</td>
<td align="center" valign="middle">0.97</td>
<td align="center" valign="middle">0.97</td>
<td align="center" valign="middle">131.4768099784851 s</td>
</tr>
<tr>
<td align="left" valign="middle">Gradient Boosting</td>
<td align="center" valign="middle">99.82%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">161.10451579093933 s</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="sec24">
<label>5.2</label>
<title>Ensemble model using full features</title>
<p>
<list list-type="alpha-lower">
<list-item>
<p>(DT+ RF+ GB) Voting hard</p>
</list-item>
</list>
</p>
<p>The ensemble model, which combines Decision Tree, Random Forest, and Gradient Boosting with hard voting, produced flawless classification results. It achieved an accuracy of 1.00, with precision, recall, and F1-score all at 1.00. This demonstrates strong predictive potential for the test results. As shown in <xref ref-type="table" rid="tab5">Table 5</xref> and <xref ref-type="fig" rid="fig6">Figure 6</xref>.<list list-type="simple">
<list-item>
<p>b. (DT+ RF+ GB) Stacking</p>
</list-item>
</list></p>
<table-wrap position="float" id="tab5">
<label>Table 5</label>
<caption>
<p>Ensemble model using full features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Metric</th>
<th align="center" valign="top" colspan="5">Value</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle" colspan="6">DT, RF, GB (voting hard)</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">DT, RF, GB (stacking)</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">15,489</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig position="float" id="fig6">
<label>Figure 6</label>
<caption>
<p>DT, RF, GB (voting hard).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g006.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix displaying classifications for various attack types, with true positives along the diagonal. Values range from zero to seven hundred, with a color gradient from light to dark blue indicating frequency.</alt-text>
</graphic>
</fig>
<p>The stacking ensemble model, which combines Decision Tree, Random Forest, and Gradient Boosting, likewise performed perfectly. It scored 1.00 for accuracy, precision, recall, and F1-score. This implies that stacking effectively harnessed the strengths of each base model. as shown in <xref ref-type="table" rid="tab5">Table 5</xref> and <xref ref-type="fig" rid="fig7">Figure 7</xref>.</p>
<fig position="float" id="fig7">
<label>Figure 7</label>
<caption>
<p>DT, RF, GB (stacking).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g007.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix for a classification model showing true positive rates along the diagonal. Categories include various cyber threats like back, smurf, and nmap. Most predictions are accurate with high values on the diagonal, such as 691 for buffer_overflow and 675 for normal. Some off-diagonal cells show misclassifications, like portscan classified as normal, indicated by a value of 1. Color intensity represents the number of instances, with darker shades indicating higher values.</alt-text>
</graphic>
</fig>
<p><xref ref-type="table" rid="tab6">Table 6</xref> shows the performance of an ensemble model that combines DT, RF, and GB with the Voting Hard and stacking methods. The ensemble models performed flawlessly across all criteria, with accuracy, precision, recall, and an F1 score of 1.00.</p>
<table-wrap position="float" id="tab6">
<label>Table 6</label>
<caption>
<p>Performance evaluation of ensemble model using accuracy, precision, recall, and F1-score using full features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Classifier (ensemble model)</th>
<th align="center" valign="top">Accuracy</th>
<th align="center" valign="top">Precision</th>
<th align="center" valign="top">Recall</th>
<th align="center" valign="top">F1-score</th>
<th align="center" valign="top">Execution Time</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GB (voting hard)</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">139.073&#x202F;s</td>
</tr>
<tr>
<td align="left" valign="middle">DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GB (stacking)</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">3571.27&#x202F;s</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="sec25">
<label>5.3</label>
<title>Individual classifiers using gain information and manual information</title>
<p>The performance of Individual Classifiers by Gain Information and Manual Information, as shown in <xref ref-type="table" rid="tab1">Table 1</xref> is evaluated based on accuracy, precision, recall, and F1-score, the evaluation of different classifiers and ensemble models reveals the advantages and disadvantages of each model for certain classification tasks. In order to improve overall performance, this section covers both single classifiers and ensemble models, which integrate many classifiers.<list list-type="alpha-lower">
<list-item>
<p>XGBoosting</p>
<list list-type="simple">
<list-item>
<p>The XGBoost model achieved impressive results with an accuracy of 99.97%, along with perfect precision, recall, and F1-score of 1.00, indicating flawless predictions and accurate detection of positive cases. This outstanding performance highlights XGBoost as a highly effective model, as shown in <xref ref-type="table" rid="tab7">Table 7</xref> and <xref ref-type="fig" rid="fig8">Figure 8</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Decision Trees</p>
<list list-type="simple">
<list-item>
<p>The DT model achieved an accuracy of 99.97%, with perfect precision, recall, and F1-score values of 1.00, indicating flawless categorization of both positive and negative cases. It performed excellently in precision and recall, as shown in <xref ref-type="table" rid="tab7">Table 7</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Random forest</p>
<list list-type="simple">
<list-item>
<p>The RF model achieved an accuracy of 99.97%, with perfect precision, recall, and F1-score values of 1.00, indicating flawless performance in predicting and detecting positive cases. This makes it highly effective for the task, as shown in <xref ref-type="table" rid="tab7">Table 7</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Support Vector Machine</p>
<list list-type="simple">
<list-item>
<p>The SVM model achieved an accuracy of 88.09%, with precision and recall scores of 0.90 and 0.88, respectively. While it demonstrated balanced performance with an F1-score of 0.88, its performance was notably lower compared to top models like RF and XGBoost, as shown in <xref ref-type="table" rid="tab7">Table 7</xref> and <xref ref-type="fig" rid="fig9">Figure 9</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Na&#x00EF;ve-Bayes</p>
<list list-type="simple">
<list-item>
<p>The NB model performed poorly, achieving an accuracy of 0.63. With a precision of 0.71 and recall of 0.63, it only correctly identified 63% of actual positive events. The F1-score of 0.60 indicates an imbalanced performance, highlighting the model&#x2019;s struggles in this classification task, as shown in <xref ref-type="table" rid="tab7">Table 7</xref> and <xref ref-type="fig" rid="fig10">Figure 10</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Gradient Boosting</p>
</list-item>
</list></p>
<table-wrap position="float" id="tab7">
<label>Table 7</label>
<caption>
<p>Individual classifiers using gain information and manual information.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">
<bold>Metric</bold>
</th>
<th align="center" valign="top" colspan="5">
<bold>Value</bold>
</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="top" colspan="6">XGBoosting</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Decision Trees</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Randomforest</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">309,778</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Support Vector Machine</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.88</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="middle">9,294</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.90</td>
<td align="center" valign="top">0.88</td>
<td align="center" valign="top">0.88</td>
<td align="center" valign="top">9,294</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.90</td>
<td align="center" valign="top">0.88</td>
<td align="center" valign="top">0.88</td>
<td align="center" valign="top">9,294</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Na&#x00EF;ve-Bayes</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.63</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.71</td>
<td align="center" valign="top">0.63</td>
<td align="center" valign="top">0.60</td>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.71</td>
<td align="center" valign="top">0.63</td>
<td align="center" valign="top">0.60</td>
<td align="center" valign="top">15,489</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Gradient Boosting</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="middle">6,196</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">6,196</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">6,196</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig position="float" id="fig8">
<label>Figure 8</label>
<caption>
<p>XGBoosting.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g008.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix displaying 23 categories with a color gradient scale from light to dark blue, indicating accuracy. Diagonal entries represent correct predictions, all with a value of 346 except for variations in the "nmap" and "normal" categories.</alt-text>
</graphic>
</fig>
<fig position="float" id="fig9">
<label>Figure 9</label>
<caption>
<p>Support Vector Machine.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g009.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix displaying classification results for various categories, including "back," "buffer_overflow," "normal," among others. Diagonal elements show correctly predicted instances, with darker shades indicating higher values. A color gradient from light to dark blue represents value ranges from zero to over four hundred.</alt-text>
</graphic>
</fig>
<fig position="float" id="fig10">
<label>Figure 10</label>
<caption>
<p>Na&#x00EF;ve-Bayes.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g010.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix depicting classification results for various attack types with true labels on the y-axis and predicted labels on the x-axis. Darker blue shades indicate higher values, with diagonal prominence showing correct classifications. Notable high values are for 'back', 'smurf', 'neptune', and 'ftp_write'. Color scale ranges from zero to over six hundred on the right.</alt-text>
</graphic>
</fig>
<p>The GB model performed excellently with an accuracy of 99.89%. It achieved perfect values of 1.00 for accuracy, recall, and F1-score, indicating flawless classification of both positive and negative cases. This model outperformed all other classifiers, as shown in <xref ref-type="table" rid="tab7">Table 7</xref>.<list list-type="simple">
<list-item>
<p>g. Logistic Regression</p>
<list list-type="simple">
<list-item>
<p>The LR model has an accuracy of 72.0%, which means it accurately predicted 72% of the occurrences. Its accuracy of 0.74 and recall of 0.72 indicate that it made some mistakes in both forecasting positive events and detecting true positives. The F1-score of 0.71 indicates that the model&#x2019;s performance is not as great as that of some of the others, showing that there is still potential for development in terms of accuracy and recall, as shown in <xref ref-type="table" rid="tab8">Table 8</xref>.</p>
</list-item>
</list>
</list-item>
</list></p>
<table-wrap position="float" id="tab8">
<label>Table 8</label>
<caption>
<p>Logistic regression classifiers using gain information and manual information <xref ref-type="fig" rid="fig9">Figure 9</xref>: support vector machine.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Metric</th>
<th align="center" valign="top" colspan="5">Value</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.72</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="middle">3,098</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.74</td>
<td align="center" valign="top">0.72</td>
<td align="center" valign="top">0.71</td>
<td align="center" valign="top">3,098</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.74</td>
<td align="center" valign="top">0.72</td>
<td align="center" valign="top">0.71</td>
<td align="center" valign="top">3,098</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The performance of each classifier is displayed in <xref ref-type="table" rid="tab9">Table 9</xref>, with particular attention paid to accuracy, precision, recall, and F1-score. <xref ref-type="table" rid="tab9">Table 9</xref> compares the performance of multiple classifiers, revealing that RF, DT, XGBoost, and GB all obtained near-perfect results, with 99.97% or 99.89% accuracy and flawless precision, recall, and F1 scores. In contrast, NB had an extremely low accuracy of 0.63%, as well as poor precision, recall, and F1 scores. SVM and LR performed moderately, with accuracy rates of 88.09 and 72.0%, respectively.</p>
<table-wrap position="float" id="tab9">
<label>Table 9</label>
<caption>
<p>Performance evaluation of classifiers using accuracy, precision, recall, and F1-score using GI and MI.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Classifiers</th>
<th align="center" valign="top">Accuracy</th>
<th align="center" valign="top">Precision</th>
<th align="center" valign="top">Recall</th>
<th align="center" valign="top">F1-score</th>
<th align="center" valign="top">Execution time</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">Random Forest</td>
<td align="center" valign="middle">99.97%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">818.7610149383545 s</td>
</tr>
<tr>
<td align="left" valign="middle">Decision Tree</td>
<td align="center" valign="middle">99.97%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">34.62117004394531 s</td>
</tr>
<tr>
<td align="left" valign="middle">XGBoost</td>
<td align="center" valign="middle">99.97%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">91.20186018943787 s</td>
</tr>
<tr>
<td align="left" valign="middle">Naive Bayes</td>
<td align="center" valign="middle">0.63%</td>
<td align="center" valign="middle">0.71</td>
<td align="center" valign="middle">0.63</td>
<td align="center" valign="middle">0.60</td>
<td align="center" valign="middle">3.237001895904541 s</td>
</tr>
<tr>
<td align="left" valign="middle">Support Vector Machine</td>
<td align="center" valign="middle">88.09%</td>
<td align="center" valign="middle">0.90</td>
<td align="center" valign="middle">0.88</td>
<td align="center" valign="middle">0.88</td>
<td align="center" valign="middle">275.7197570800781 s</td>
</tr>
<tr>
<td align="left" valign="middle">Logistic Regression</td>
<td align="center" valign="middle">72.0%</td>
<td align="center" valign="middle">0.74</td>
<td align="center" valign="middle">0.72</td>
<td align="center" valign="middle">0.71</td>
<td align="center" valign="middle">1381.2660410404205 s</td>
</tr>
<tr>
<td align="left" valign="middle">Gradient Boosting</td>
<td align="center" valign="middle">99.89%</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">240.0945920944214&#x202F;s</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="sec26">
<label>5.4</label>
<title>Ensemble model using gain information and manual information</title>
<p>
<list list-type="alpha-lower">
<list-item>
<p>(DT+ RF+ GB) Voting hard</p>
<list list-type="simple">
<list-item>
<p>The ensemble model, which integrates different classifiers, performed exceptionally well across the board. It achieved perfect scores of 1.00 in all metrics. This combination leverages the interpretability of DTs, the robustness of RFs, and the precision of GB, resulting in enhanced overall performance, as shown in <xref ref-type="table" rid="tab10">Table 10</xref> and <xref ref-type="fig" rid="fig11">Figure 11</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>(DT+ RF+ GB) Stacking</p>
<list list-type="simple">
<list-item>
<p>The ensemble model incorporating Decision Tree, Random Forest, and Gradient Boosting with stacking likewise performed flawlessly, with accuracy, precision, recall, and F1-score all equal to 1.00. This demonstrates strong predictive potential for the test results. As shown in <xref ref-type="table" rid="tab10">Table 10</xref> and <xref ref-type="fig" rid="fig12">Figure 12</xref>.</p>
</list-item>
</list>
</list-item>
</list>
</p>
<table-wrap position="float" id="tab10">
<label>Table 10</label>
<caption>
<p>Ensemble model using gain information and manual information.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">
<bold>Metric</bold>
</th>
<th align="center" valign="top" colspan="5">
<bold>Value</bold>
</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle" colspan="6">DT, RF, GB (voting hard)</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">30,978</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">30,978</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">30,978</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">DT, RF, GB (stacking)</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">1.00</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="middle">30,978</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">30,978</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">1.00</td>
<td align="center" valign="top">30,978</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig position="float" id="fig11">
<label>Figure 11</label>
<caption>
<p>DT, RF, GB (voting hard).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g011.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix visualizing classification results with categories such as "back," "multihop," "land," showing strong diagonal values indicating correct predictions. A color gradient bar on the right indicates frequency, ranging from light to dark blue.</alt-text>
</graphic>
</fig>
<fig position="float" id="fig12">
<label>Figure 12</label>
<caption>
<p>DT, RF, GB (stacking).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g012.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix showing classification performance with labels on both axes. Each cell contains a count, indicating true positives on the diagonal from top-left to bottom-right. A color gradient, ranging from light to dark blue, represents frequency, with darker shades indicating higher values.</alt-text>
</graphic>
</fig>
<p>In order to attain flawless detection performance across all measures, ensemble models incorporate multiple classifiers, as shown in <xref ref-type="table" rid="tab11">Table 11</xref>.</p>
<table-wrap position="float" id="tab11">
<label>Table 11</label>
<caption>
<p>Performance evaluation of ensemble model using accuracy, precision, recall, and F1-score using GI and MI.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Classifier (ensemble model)</th>
<th align="center" valign="top">Accuracy</th>
<th align="center" valign="top">Precision</th>
<th align="center" valign="top">Recall</th>
<th align="center" valign="top">F1-score</th>
<th align="center" valign="top">Execution time</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GB (voting hard)</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">178.5962700843811 s</td>
</tr>
<tr>
<td align="left" valign="middle">DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GB (stacking)</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">1.00</td>
<td align="center" valign="middle">878&#x202F;s</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="tab11">Table 11</xref> shows the performance of ensemble models that combine DT, RF, and GB with the Voting Hard and Stacking approaches. The ensemble models performed flawlessly across all measures, including accuracy, precision, recall, and an F1-score of 1.00.</p>
</sec>
<sec id="sec27">
<label>5.5</label>
<title>Individual classifiers using RF-selected features</title>
<p>The performance of Individual Classifiers by RF-Selected Features, as shown in <xref ref-type="table" rid="tab1">Table 1</xref> evaluated based on accuracy, precision, recall, and F1-score of separate classifiers and ensemble models are compared in this investigation. The objective is to evaluate the performance of each model separately and the classification skills of ensemble models, which combine many classifiers.<list list-type="alpha-lower">
<list-item>
<p>Decision Tree</p>
<list list-type="simple">
<list-item>
<p>The DT model achieved an accuracy of 98.71%, nearly matching the RF model. However, its precision was 0.69, meaning only 69% of predicted positives were accurate. The recall was 0.65, indicating that the model correctly identified 65% of true positive events. The F1-score of 0.65 suggests that the DT model needs further improvement to balance precision and recall effectively, as shown in <xref ref-type="table" rid="tab12">Table 12</xref> and <xref ref-type="fig" rid="fig13">Figure 13</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Naive Bayes</p>
<list list-type="simple">
<list-item>
<p>NB demonstrated poor performance, with an accuracy of just 33%. Its precision was 0.19, the recall was 0.37, and F1 score was 0.16. The model&#x2019;s poor results likely stem from the assumption of feature independence, which is not suitable for this dataset. The low accuracy and F1-score emphasize NB&#x2019;s limitations for this classification task, as shown in <xref ref-type="table" rid="tab12">Table 12</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Logistic Regression</p>
<list list-type="simple">
<list-item>
<p>LR achieved an accuracy of 90.56% but struggled with low precision (0.24), recall (0.20), and F1-score (0.21). As a linear model, it faced difficulty handling complex data correlations, which resulted in poor performance. The model&#x2019;s limited flexibility in adapting to the dataset&#x2019;s structure contributed to these lower metrics, as shown in <xref ref-type="table" rid="tab12">Table 12</xref> and <xref ref-type="fig" rid="fig14">Figure 14</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>Gradient Boosting</p>
</list-item>
</list></p>
<table-wrap position="float" id="tab12">
<label>Table 12</label>
<caption>
<p>Individual classifiers using RF-selected features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Metric</th>
<th align="center" valign="top" colspan="5">Value</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle" colspan="6">Decision Tree</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.99</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="middle">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.69</td>
<td align="center" valign="top">0.65</td>
<td align="center" valign="top">0.65</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Naive Bayes</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.33</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.19</td>
<td align="center" valign="top">0.37</td>
<td align="center" valign="top">0.16</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.88</td>
<td align="center" valign="top">0.33</td>
<td align="center" valign="top">0.35</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Logistic Regression</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.91</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="middle">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.24</td>
<td align="center" valign="top">0.20</td>
<td align="center" valign="top">0.21</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.86</td>
<td align="center" valign="top">0.91</td>
<td align="center" valign="top">0.88</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Gradient Boosting</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.49</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="middle">25,193</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.48</td>
<td align="center" valign="top">0.29</td>
<td align="center" valign="top">0.29</td>
<td align="center" valign="top">25,193</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.96</td>
<td align="center" valign="top">0.49</td>
<td align="center" valign="top">0.57</td>
<td align="center" valign="top">25,193</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Random Forest</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.99</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="middle">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.80</td>
<td align="center" valign="top">0.75</td>
<td align="center" valign="top">0.76</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">XGBoosting</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.99</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="middle">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.76</td>
<td align="center" valign="top">0.74</td>
<td align="center" valign="top">0.74</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">Support Vector Machine</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.92</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="top">Support</td>
</tr>
<tr>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.39</td>
<td align="center" valign="top">0.27</td>
<td align="center" valign="top">0.29</td>
<td align="center" valign="top">25,195</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.91</td>
<td align="center" valign="top">0.92</td>
<td align="center" valign="top">0.90</td>
<td align="center" valign="top">25,195</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig position="float" id="fig13">
<label>Figure 13</label>
<caption>
<p>Decision Tree.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g013.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix displaying various categories on both axes, with values ranging from 0 to over 12,000. Key values include significant concentrations such as 8,238 and 344 under categories like "neptune" and "normal." A color gradient legend on the right indicates frequency intensity, with darker colors representing higher counts.</alt-text>
</graphic>
</fig>
<fig position="float" id="fig14">
<label>Figure 14</label>
<caption>
<p>Logistic Regression.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g014.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix showing predicted versus actual classifications for various attack types and normal activity. The matrix includes categories like Neptune, Pod, and normal, among others. Key values highlighted include 626 correct predictions for Ipsweep and 333 for Normal. A color scale on the right indicates the frequency range from 0 to over 12,000.</alt-text>
</graphic>
</fig>
<p>GB showed poor performance with an accuracy of 49.35%, precision of 0.48, recall of 0.29, and F1-score of 0.29. This underperformance may be due to overfitting or a mismatch with the dataset&#x2019;s characteristics, like data imbalance or feature correlation, as shown in <xref ref-type="table" rid="tab12">Table 12</xref>.<list list-type="simple">
<list-item>
<p>e. Random Forest</p>
</list-item>
</list>RF achieved an accuracy of 98.83%, with a precision of 0.80, a recall of 0.75, and an F1-score of 0.76. While the accuracy is strong, the precision and recall indicate difficulties in managing false positives and false negatives. Overall, it performs well but could benefit from further adjustments, particularly to address class imbalances, as shown in <xref ref-type="table" rid="tab12">Table 12</xref> and <xref ref-type="fig" rid="fig15">Figure 15</xref>.<list list-type="simple">
<list-item>
<p>f. XGBoost</p>
</list-item>
</list></p>
<fig position="float" id="fig15">
<label>Figure 15</label>
<caption>
<p>Random Forest.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g015.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix displaying classification results for various network attack types and normal traffic. Axes represent predicted and actual categories. Darker colors indicate higher values. Notable values include high true positives for "neptune" with 924 and "normal" with 345.</alt-text>
</graphic>
</fig>
<p>XGBoost achieved 98.79% accuracy, with precision, recall, and F1-score of 0.76, 0.74, and 0.74, respectively. Although strong, its performance was slightly lower than RF, possibly due to hyperparameter settings or the dataset&#x2019;s structure, as shown in <xref ref-type="table" rid="tab12">Table 12</xref>.<list list-type="simple">
<list-item>
<p>g. Support Vector Machine</p>
</list-item>
</list></p>
<p>SVM achieved 92.40% accuracy but with poor precision (0.39), recall (0.27), and F1-score (0.29). Its low performance suggests it struggles with the dataset&#x2019;s complexity, possibly due to kernel selection or insufficient tuning, as shown in <xref ref-type="table" rid="tab12">Table 12</xref> and <xref ref-type="fig" rid="fig16">Figure 16</xref>.</p>
<fig position="float" id="fig16">
<label>Figure 16</label>
<caption>
<p>Support Vector Machine.</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g016.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix displaying predicted versus actual classifications for network intrusion types. Diagonal dominance indicates high accuracy. Major classifications include "neptune" with 8,236 correct predictions, "ipsweep" with 626, and "normal" with 340. Color gradient ranges from light blue to dark blue, representing low to high values.</alt-text>
</graphic>
</fig>
<p><xref ref-type="table" rid="tab13">Table 13</xref> summarizes the performance of different classifiers, emphasizing accuracy, precision, recall, and F1 score.</p>
<table-wrap position="float" id="tab13">
<label>Table 13</label>
<caption>
<p>Performance evaluation of classifiers using accuracy, precision, recall, and F1-score using RF-selected features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Classifiers</th>
<th align="center" valign="top">Accuracy</th>
<th align="center" valign="top">Precision</th>
<th align="center" valign="top">Recall</th>
<th align="center" valign="top">F1-score</th>
<th align="center" valign="top">Execution time</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">Random Forest</td>
<td align="center" valign="middle">98.83%</td>
<td align="center" valign="middle">0.80</td>
<td align="center" valign="middle">0.75</td>
<td align="center" valign="middle">0.76</td>
<td align="center" valign="middle">29.910604000091553 s</td>
</tr>
<tr>
<td align="left" valign="middle">Decision Tree</td>
<td align="center" valign="middle">98.71%</td>
<td align="center" valign="middle">0.69</td>
<td align="center" valign="middle">0.65</td>
<td align="center" valign="middle">0.65</td>
<td align="center" valign="middle">17.27623677253723 s</td>
</tr>
<tr>
<td align="left" valign="middle">XGBoost</td>
<td align="center" valign="middle">98.79%</td>
<td align="center" valign="middle">0.76</td>
<td align="center" valign="middle">0.74</td>
<td align="center" valign="middle">0.74</td>
<td align="center" valign="middle">29.366595029830933 s</td>
</tr>
<tr>
<td align="left" valign="middle">Naive Bayes</td>
<td align="center" valign="middle">33%</td>
<td align="center" valign="middle">0.19</td>
<td align="center" valign="middle">0.37</td>
<td align="center" valign="middle">0.16</td>
<td align="center" valign="middle">5.824549198150635 s</td>
</tr>
<tr>
<td align="left" valign="middle">Support Vector Machine</td>
<td align="center" valign="middle">92.40%</td>
<td align="center" valign="middle">0.39</td>
<td align="center" valign="middle">0.27</td>
<td align="center" valign="middle">0.29</td>
<td align="center" valign="middle">221.10965991020203 s</td>
</tr>
<tr>
<td align="left" valign="middle">Logistic Regression</td>
<td align="center" valign="middle">90.56%</td>
<td align="center" valign="middle">0.24</td>
<td align="center" valign="middle">0.2</td>
<td align="center" valign="middle">0.2</td>
<td align="center" valign="middle">35.62619614601135 s</td>
</tr>
<tr>
<td align="left" valign="middle">Gradient Boosting</td>
<td align="center" valign="middle">49.35%</td>
<td align="center" valign="middle">0.48</td>
<td align="center" valign="middle">0.29</td>
<td align="center" valign="middle">0.29</td>
<td align="center" valign="middle">379.5056371688843 s</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="tab13">Table 13</xref> shows the performance evaluations of several classifiers. RF and DT produced reasonably high accuracy (98.83 and 98.71%, respectively), but with modest precision, recall, and F1 scores. XGBoost also fared well, with 98.79% accuracy, although it had lesser precision and recall than RF and DT. NB performed poorly, with an accuracy of just 33% and low precision, recall, and F1 scores. SVM and LR fared rather well, with accuracy values of 92.40 and 90.56%, respectively, but with low precision and recall. GB had the poorest result, with an accuracy of 49.35% and similarly low precision, recall, and F1 score.</p>
</sec>
<sec id="sec28">
<label>5.6</label>
<title>Ensemble model using RF-selected features</title>
<p>
<list list-type="alpha-lower">
<list-item>
<p>(DT+ RF+ GB) Voting hard</p>
</list-item>
</list>
</p>
<p>The Voting Hard ensemble model, consisting of DT, RF, and GR, achieved 0.99 accuracy. However, its precision (0.71), recall (0.68), and F1-score (0.68) were slightly lower than the stacking model, indicating room for improvement in precision and recall, as shown in <xref ref-type="table" rid="tab14">Table 14</xref> and <xref ref-type="fig" rid="fig17">Figure 17</xref>.<list list-type="simple">
<list-item>
<p>b. (DT+ RF+ GB) Stacking</p>
</list-item>
</list></p>
<table-wrap position="float" id="tab14">
<label>Table 14</label>
<caption>
<p>Ensemble model using RF-selected features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Metric</th>
<th align="center" valign="top" colspan="5">Value</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="top" colspan="6">DT, RF, GR (hard voting)</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.99</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">12,597</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.71</td>
<td align="center" valign="top">0.68</td>
<td align="center" valign="top">0.68</td>
<td align="center" valign="top">12,597</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">12,597</td>
</tr>
<tr>
<td align="left" valign="top" colspan="6">DT, RF, GB (stacking)</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="2">Accuracy</td>
<td align="center" valign="middle" rowspan="2">0.99</td>
<td align="center" valign="middle" rowspan="2">Precision</td>
<td align="center" valign="middle" rowspan="2">Recall</td>
<td align="center" valign="middle" rowspan="2">F1-score</td>
<td align="center" valign="middle">Support</td>
</tr>
<tr>
<td align="center" valign="top">12,597</td>
</tr>
<tr>
<td align="left" valign="top">Macro</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.75</td>
<td align="center" valign="top">0.68</td>
<td align="center" valign="top">0.70</td>
<td align="center" valign="top">12,597</td>
</tr>
<tr>
<td align="left" valign="top">Weighted</td>
<td align="center" valign="top">Avg</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">0.99</td>
<td align="center" valign="top">12,597</td>
</tr>
</tbody>
</table>
</table-wrap>
<fig position="float" id="fig17">
<label>Figure 17</label>
<caption>
<p>DT, RF, GR (hard voting).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g017.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix for a classification model showing rows and columns labeled with attack types. The diagonal indicates correct classifications with high values such as 354 for ipsweep and 5720 for phf, showing accuracy. A color gradient from white to blue signifies value intensity.</alt-text>
</graphic>
</fig>
<p>The ensemble model, which used stacking to combine Decision Tree, Random Forest, and Gradient Boosting, obtained an accuracy of 0.99, a precision of 0.75, a recall of 0.68, and an F1 score of 0.70. This represents higher accuracy and F1-scores compared to the hard voting, stacking model, indicating room for improvement in precision and recall, as shown in <xref ref-type="table" rid="tab14">Table 14</xref> and <xref ref-type="fig" rid="fig18">Figure 18</xref>.</p>
<fig position="float" id="fig18">
<label>Figure 18</label>
<caption>
<p>DT, RF, GB (stacking).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g018.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Confusion matrix depicting various network attacks. The matrix includes attack types like neptune, ipsweep, and warezclient. Significant values include ipsweep with 354, warezclient with 105, and phf with 5724. A blue color gradient represents frequency, scaling from zero to over six thousand on the sidebar.</alt-text>
</graphic>
</fig>
<p><xref ref-type="table" rid="tab15">Table 15</xref> evaluates the ensemble models, which integrate several classifiers to attain flawless detection performance across all criteria.</p>
<table-wrap position="float" id="tab15">
<label>Table 15</label>
<caption>
<p>Performance evaluation of ensemble model using accuracy, precision, recall, and F1-score using RF-selected features.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Classifiers</th>
<th align="center" valign="top">Accuracy</th>
<th align="center" valign="top">Precision</th>
<th align="center" valign="top">Recall</th>
<th align="center" valign="top">F1-score</th>
<th align="center" valign="top">Execution time</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GB (voting hard)</td>
<td align="center" valign="middle">0.99</td>
<td align="center" valign="middle">0.71</td>
<td align="center" valign="middle">0.68</td>
<td align="center" valign="middle">0.68</td>
<td align="center" valign="middle">409.4272561073303 s</td>
</tr>
<tr>
<td align="left" valign="middle">DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GB (stacking)</td>
<td align="center" valign="middle">0.99</td>
<td align="center" valign="middle">0.75</td>
<td align="center" valign="middle">0.68</td>
<td align="center" valign="middle">0.70</td>
<td align="center" valign="middle">2263.97&#x202F;s</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="tab15">Table 15</xref> shows the performance of the ensemble model that combines DT, RF, and GR with the Voting Hard and stacking approaches. The ensemble model with stacking outperforms hard voting in terms of precision (0.75 vs. 0.71), F1-score (0.70 vs. 0.68), and accuracy (0.99) while retaining recall (0.68). This shows that stacking gives a more balanced and effective mix of classifiers, increasing the model&#x2019;s capacity to properly detect positive situations while maintaining overall accuracy.</p>
</sec>
<sec id="sec29">
<label>5.7</label>
<title>Comparing models and their statistical importance</title>
<p>
<list list-type="bullet">
<list-item>
<p>The study used five-fold cross-validation on individual models, such as Random Forest (RF) and Gradient Boosting (GB), to evaluate and compare classifier performance. This ensured that the findings showed strong generalization and did not overfit to a particular data split (20%test_size, 80%train_size).</p>
</list-item>
<list-item>
<p>Performance differences were then statistically assessed using paired t-tests. A t-statistic of 42.7393 with a <italic>p</italic> &#x003C; 0.0001 was obtained when comparing RF to GB, indicating a statistically significant advantage for RF in classification performance.</p>
</list-item>
</list>
</p>
<p>Furthermore, a hard Voting Classifier was assessed as compared to its base learners. While the differences between RF (<italic>t</italic>&#x202F;=&#x202F;0.3780, <italic>p</italic>&#x202F;=&#x202F;0.7055) and GB (<italic>t</italic>&#x202F;=&#x202F;0.7746, <italic>p</italic>&#x202F;=&#x202F;0.4386) were not statistically significant, the Voting Classifier performed much better than the Decision Tree (<italic>t</italic>&#x202F;=&#x202F;4.0835, <italic>p</italic>&#x202F;&#x003C;&#x202F;0.0001), according to the results of the <italic>t</italic>-test. Given that it outperforms the strongest base models while enhancing overall resilience, this demonstrates the Voting ensemble&#x2019;s resilience.<list list-type="bullet">
<list-item>
<p>In addition, <italic>t</italic>-tests were used to choose features using Mutual Information and Information Gain in order to verify that the chosen features improved generalization by reducing dimensionality and greatly enhancing model performance.</p>
</list-item>
</list></p>
</sec>
<sec id="sec30">
<label>5.8</label>
<title>Analysis of SHAP-driven feature importance in Random Forest and decision tree classifiers for intrusion detection</title>
<p>SHAP values for the Random Forest and Decision Tree classifiers were calculated to interpret model options. In order to visualize the effects of features on both individual predictions and the overall relevance of features, SHAP provides both local and global interpretability.</p>
<p>According to the SHAP study, several variables were consistently more influential in both models, which is consistent with behaviors associated with documented network intrusions. This consistency provides information about possible dimensionality reduction techniques in addition to confirming the models&#x2019; validity.</p>
<p>While the Decision Tree model&#x2019;s simple structure makes it easier to grasp., the Random Forest model outperformed it while allowing for insight through SHAP. SHAP&#x2019;s ability to clearly explain feature contributions reduced the complexity of the ensemble, proving that accuracy and interpretability do not have to be mutually incompatible.</p>
<p><xref ref-type="fig" rid="fig19">Figure 19</xref> demonstrates that while service_auth is of little significance, network packet sizes (src_bytes, dst_bytes) and connection flags are the most important features for attack detection in the model. This illustrates how the model successfully identifies malicious activity by concentrating on network traffic patterns.</p>
<fig position="float" id="fig19">
<label>Figure 19</label>
<caption>
<p>Global feature importance based on SHAP (DT).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g019.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Horizontal bar chart displaying feature importance using SHAP values in a machine learning model. Bars represent the average impact of each feature on model output. Key features include "src_bytes," "dst_bytes," and "dst_host_srv_serror_rate." Color-coded legend identifies classes from Class 0 to Class 22.</alt-text>
</graphic>
</fig>
<p>As seen in <xref ref-type="fig" rid="fig20">Figure 20</xref>: The graphic shows that while service authentication data (service_auth) makes very little contribution to attack detection, network packet metrics (src_bytes, dst_bytes) and connection flags dominate feature relevance. These outcomes demonstrate how well the model uses fundamental network traffic features to identify malicious behavior across all threat categories.</p>
<fig position="float" id="fig20">
<label>Figure 20</label>
<caption>
<p>Global feature importance based on SHAP (RF).</p>
</caption>
<graphic xlink:href="fcomp-07-1623375-g020.tif" mimetype="image" mime-subtype="tiff">
<alt-text content-type="machine-generated">Bar chart showing the average impact of features on model output using SHAP values. The top features include src_bytes, dst_bytes, and count. Each feature's impact is color-coded by class, with 23 classes represented in varying colors from blue to green. The x-axis displays the mean absolute SHAP value, indicating the average impact magnitude.</alt-text>
</graphic>
</fig>
</sec>
<sec id="sec31">
<label>5.9</label>
<title>Comparison of accuracy and feature selection methods in various studies</title>
<p><xref ref-type="table" rid="tab16">Table 16</xref> compares several ML algorithms used to identify intrusions on the NSL-KDD dataset. Accuracy rates vary greatly based on the classifier and feature selection strategy employed.</p>
<table-wrap position="float" id="tab16">
<label>Table 16</label>
<caption>
<p>Comparison of accuracy and feature selection methods in various studies and the proposed model on the NSL-KDD dataset.</p>
</caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="left" valign="top">Research</th>
<th align="center" valign="top">Dataset</th>
<th align="center" valign="top">ML technique</th>
<th align="center" valign="top">Accuracy</th>
<th align="center" valign="top">Feature selection</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left" valign="middle">
<xref ref-type="bibr" rid="ref10">Attou et al. (2023)</xref>
</td>
<td align="center" valign="middle">NSL-KDD</td>
<td align="center" valign="middle">RBFNN classifier</td>
<td align="center" valign="middle">90.49<break/>92.12<break/>94.16</td>
<td align="center" valign="middle">Full dataset<break/>10 Features by RF<break/>4 Features by RF</td>
</tr>
<tr>
<td align="left" valign="middle">
<xref ref-type="bibr" rid="ref24">Ogwara et al. (2022)</xref>
</td>
<td align="center" valign="middle">NSL KDD</td>
<td align="center" valign="middle">DT<break/>RF<break/>AdaBoost<break/>N&#x0131;ve Bayes<break/>Stochastic dual coordinate ascent<break/>Multilayer perceptron<break/>K-Nearest Neighbors<break/>Linear discriminant analysis<break/>LR<break/>SVM</td>
<td align="center" valign="middle">99.07<break/>99.22<break/>94.05<break/>9.64<break/>16.91<break/>84.79<break/>98.06<break/>89.16<break/>79.69<break/>79.62</td>
<td align="center" valign="middle">Full features</td>
</tr>
<tr>
<td align="left" valign="middle">
<xref ref-type="bibr" rid="ref27">Rawat et al. (2022)</xref>
</td>
<td align="center" valign="middle">NSL-KDD</td>
<td align="center" valign="middle">DT<break/>Extra Tree<break/>Ensemble Extra Tree<break/>Light GBM<break/>Deep Neural Network<break/>PCA&#x202F;+&#x202F;Deep Neural Network</td>
<td align="center" valign="middle">0.778<break/>0.767<break/>0.769<break/>0.776<break/>0.772<break/>0.793</td>
<td align="center" valign="middle">Full features</td>
</tr>
<tr>
<td align="left" valign="middle">
<xref ref-type="bibr" rid="ref32">Tauscher et al. (2021)</xref>
</td>
<td align="center" valign="middle">NSL-KDD</td>
<td align="center" valign="middle">RF<break/>SVM<break/>NB<break/>DT<break/>GB</td>
<td align="center" valign="middle">76.00%<break/>80.47%<break/>76.86%<break/>68.28%<break/>68.12%</td>
<td align="center" valign="middle">Full features</td>
</tr>
<tr>
<td align="left" valign="middle" rowspan="3">Our proposed approach</td>
<td align="center" valign="middle" rowspan="3">NSL-KDD</td>
<td align="center" valign="middle">RF<break/>DT<break/>XGBoost<break/>NB<break/>SVM<break/>LR<break/>GB<break/>DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GR (Voting hard)<break/>DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GR (Stacking)</td>
<td align="center" valign="middle">99.99%<break/>99.98%<break/>99.99%<break/>78%<break/>99.26%<break/>97%<break/>99.82%<break/>1.00<break/>1.00</td>
<td align="center" valign="middle">Full features</td>
</tr>
<tr>
<td align="center" valign="middle">RF<break/>DT<break/>XGBoost<break/>NB<break/>SVM<break/>LR<break/>GB<break/>DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GR (Voting hard)<break/>DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GR (Stacking)</td>
<td align="center" valign="middle">99.97%<break/>99.97%<break/>99.97%<break/>0.63%<break/>88.09%<break/>72.0%<break/>99.89%<break/>1.00<break/>1.00</td>
<td align="center" valign="middle">Selected features by manual information and gain information</td>
</tr>
<tr>
<td align="center" valign="middle">RF<break/>DT<break/>XGBoost<break/>NB<break/>SVM<break/>LR<break/>GB<break/>DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GR (Voting hard)<break/>DT&#x202F;+&#x202F;RF&#x202F;+&#x202F;GR (Stacking)</td>
<td align="center" valign="middle">98.83%<break/>98.71%<break/>98.79%<break/>32.41%<break/>92.40%<break/>90.56%<break/>49.35%<break/>0.99%<break/>0.99%</td>
<td align="center" valign="middle">Selected features by RF</td>
</tr>
</tbody>
</table>
</table-wrap>
<sec id="sec32">
<label>5.9.1</label>
<title>In prior studies</title>
<p>
<list list-type="bullet">
<list-item>
<p><xref ref-type="bibr" rid="ref10">Attou et al. (2023)</xref> shown that utilizing RBFNN with all features resulted in an accuracy of 90.49%, which increased to 94.1% when only four features were picked by Random Forest (RF). This demonstrates that focused feature selection may improve speed while reducing complexity.</p>
</list-item>
<list-item>
<p><xref ref-type="bibr" rid="ref24">Ogwara et al. (2022)</xref> produced exceptionally high performance with classic ML models, notably Random Forest (99.22%), Decision Tree (99.07%), and KNN (98.06%), utilizing the whole feature set. This implies that with adequate training, even classical models can perform well when all important attributes are kept.</p>
</list-item>
<list-item>
<p><xref ref-type="bibr" rid="ref27">Rawat et al. (2022)</xref> investigated ensemble and deep learning approaches, such as LightGBM, DNN, and PCA&#x202F;+&#x202F;DNN, and found low accuracies ranging from 76.7 to 79.3%, indicating a potential mismatch between model complexity and dataset properties, or a lack of efficient feature reduction.</p>
</list-item>
<list-item>
<p><xref ref-type="bibr" rid="ref32">Tauscher et al. (2021)</xref> presented results using five classifiers, with SVM outperforming the others at 80.47%, while Gradient Boosting (GB) and Decision Tree (DT) fared below 70% on the whole feature set.</p>
</list-item>
</list>
</p>
</sec>
<sec id="sec33">
<label>5.9.2</label>
<title>In contrast, the approach suggested in the study demonstrates consistently higher performance</title>
<p>
<list list-type="bullet">
<list-item>
<p>Voting Hard and Stacking DT, RF, and GB models resulted in a flawless 1.00 accuracy on both entire and chosen feature sets.</p>
</list-item>
<list-item>
<p>XGBoost, RF, and GB obtained accuracies close to or greater than 99%, independent of the feature selection technique utilized.</p>
</list-item>
<list-item>
<p>Models such as Naive Bayes (NB) and Logistic Regression (LR) fared worse when combined with specific characteristics, particularly those picked by RF alone (e.g., NB at 32.41%, GB at 49.35%).</p>
</list-item>
</list>
</p>
</sec>
<sec id="sec34">
<label>5.9.3</label>
<title>Feature selection analysis</title>
<p>Three different feature selection approaches were tested:<list list-type="bullet">
<list-item>
<p>
<italic>Full Feature Set</italic>
</p>
<p>Most models performed well with complete data, particularly ensemble approaches and tree-based classifiers.</p>
<p>Voting and Stacking performed flawlessly (1.00).</p>
</list-item>
<list-item>
<p>
<italic>Manual Selection (Information Gain &#x0026; Domain Knowledge)</italic>
</p>
</list-item>
</list></p>
<p>This strategy used statistics and expert analysis to maintain critical qualities.</p>
<p>The bulk of classifiers still scored well, with Voting Hard and Stacking scoring 1.00 and RF, DT, and XGBoost approaching 99.97%.</p>
<p>NB and LR&#x2019;s accuracy was reduced, demonstrating their sensitivity to feature reduction.<list list-type="bullet">
<list-item>
<p>
<italic>RF-Based Feature Selection</italic>
</p>
<list list-type="simple">
<list-item>
<p>When Random Forest was used alone to choose features, performance declined marginally.</p>
<p>Ensemble techniques such as Voting and Stacking maintained excellent accuracy (0.99), while individual classifiers such as NB (32.41%) and GB (49.35%) had considerable decreases, indicating that critical features may have been over-reduced or eliminated.</p>
</list-item>
</list>
</list-item>
</list></p>
</sec>
</sec>
</sec>
<sec id="sec35">
<label>6</label>
<title>Conclusion and future work</title>
<p>
<list list-type="order">
<list-item>
<p>Cloud computing&#x2019;s rapid development has made it easier to use, but it has also made people more vulnerable to cyberattacks, necessitating the employment of sophisticated IDSs to combat sophisticated assaults. By offering an ensemble IDS architecture driven by ML, tailored for cloud systems, and evaluated on the NSL-KDD dataset, this paper addresses these problems.</p>
</list-item>
<list-item>
<p>When all features are used, the method achieves perfect scores (100%) in accuracy, precision, recall, and F1-score, combining ensemble classifiers Random Forest, Decision Tree, and Gradient Boosting through voting hard and Stacking strategies, proving that combining different models improves detection capabilities. By concentrating on significant characteristics like src_bytes and dst_host_serror_rate, feature selection strategies like Information Gain and Mutual Information improved detection. However, depending only on Random Forest-selected features occasionally resulted in decreased performance, suggesting the need for additional context-sensitive selection techniques.</p>
</list-item>
<list-item>
<p>SVM produced mediocre results, but ensemble-based models routinely outperformed standalone classifiers such as Naive Bayes and Logistic Regression, which were hampered by class imbalance and dependence problems. Despite slight decreases in precision and recall, the ensemble system demonstrated resilience across several feature sets, retaining almost perfect accuracy (99.97%) with manually selected features and 99% with Random Forest features. The superior accuracy and dependability of the suggested model were validated by comparisons with previous studies.</p>
</list-item>
<list-item>
<p>Application-wise, this study provides helpful recommendations for deploying scalable and effective IDS in cloud environments, emphasizing the necessity of striking a balance between resource requirements and accuracy. In the future, the model should be expanded with unsupervised approaches to identify zero-day threats, evaluated in real-time cloud settings, and made more visible using explainable AI methodologies. Overall, the study contributes a strong plan to defend contemporary cloud infrastructure against new cyber threats by bridging the gap between academic research and real-world application.</p>
</list-item>
<list-item>
<p>The study stresses the growing need for integrating AI-driven solutions into cloud security infrastructures. It highlights how combining a number of ML algorithms improves the flexibility and precision of threat identification, laying the groundwork for next-generation security systems that are both proactive and efficient. With cyberattacks becoming more complicated, the study promotes the development of intelligent, scalable, and robust cloud defense systems suited for both academic research and real-world applications.</p>
</list-item>
</list>
</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="sec36">
<title>Data availability statement</title>
<p>The raw data supporting the conclusions of this article will be made available by the authors, without undue reservation.</p>
</sec>
<sec sec-type="author-contributions" id="sec37">
<title>Author contributions</title>
<p>KM: Writing &#x2013; original draft, Methodology, Software, Visualization, Investigation, Data curation, Conceptualization, Funding acquisition, Formal analysis, Writing &#x2013; review &#x0026; editing. SA: Project administration, Writing &#x2013; review &#x0026; editing, Supervision, Formal analysis. FT: Validation, Writing &#x2013; review &#x0026; editing, Resources.</p>
</sec>
<sec sec-type="funding-information" id="sec38">
<title>Funding</title>
<p>The author(s) declare that no financial support was received for the research and/or publication of this article.</p>
</sec>
<sec sec-type="COI-statement" id="sec39">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="ai-statement" id="sec40">
<title>Generative AI statement</title>
<p>The authors declare that no Gen AI was used in the creation of this manuscript.</p>
</sec>
<sec sec-type="disclaimer" id="sec41">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="ref1"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Adhikari</surname><given-names>A.</given-names></name> <name><surname>Bal</surname><given-names>B. K.</given-names></name></person-group>, <source>Machine learning technique for intrusion detection in the field of the intrusion detection system</source>. Conference Paper (<year>2023</year>). Available at: <ext-link xlink:href="https://www.researchgate.net/publication/372312413" ext-link-type="uri">https://www.researchgate.net/publication/372312413</ext-link></citation></ref>
<ref id="ref2"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Akinbolaji</surname><given-names>T. J.</given-names></name></person-group> (<year>2023</year>). <article-title>Advanced integration of artificial intelligence and machine learning for real-time threat detection in cloud computing environments</article-title>. <source>Iconic Research and Engineering Journals</source>. vol. <volume>6</volume>, <fpage>980</fpage>&#x2013;<lpage>991</lpage>. doi: <pub-id pub-id-type="doi">10.5281/zenodo.13963675</pub-id></citation></ref>
<ref id="ref3"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Alalhareth</surname><given-names>M.</given-names></name> <name><surname>Hong</surname><given-names>S.</given-names></name></person-group>, &#x201C;<article-title>An improved mutual information feature selection technique for intrusion detection systems in the Internet of Medical Things</article-title>.&#x201D; <source>Sensors</source>. (<year>2023</year>) <volume>23</volume>:<fpage>4971</fpage>. doi: <pub-id pub-id-type="doi">10.3390/s23104971</pub-id></citation></ref>
<ref id="ref4"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Aldallal</surname><given-names>A.</given-names></name> <name><surname>Alisa</surname><given-names>F.</given-names></name></person-group> (<year>2021</year>). <article-title>Effective intrusion detection system to secure data in the cloud using machine learning</article-title>. <source>Symmetry</source> <volume>13</volume>:<fpage>2306</fpage>. doi: <pub-id pub-id-type="doi">10.3390/sym13122306</pub-id>, PMID: <pub-id pub-id-type="pmid">40607831</pub-id></citation></ref>
<ref id="ref5"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Alhayali</surname><given-names>R. A. I.</given-names></name> <name><surname>Aljanabi</surname><given-names>M.</given-names></name> <name><surname>Ali</surname><given-names>A. H.</given-names></name> <name><surname>Mohammed</surname><given-names>M. A.</given-names></name> <name><surname>Sutikno</surname><given-names>T.</given-names></name></person-group> (<year>2021</year>). <article-title>Optimized machine learning algorithm for intrusion detection</article-title>. <source>Indon. J. Electr. Eng. Comput. Sci.</source> <volume>24</volume>, <fpage>590</fpage>&#x2013;<lpage>599</lpage>. doi: <pub-id pub-id-type="doi">10.11591/ijeecs.v24.i1.pp590-599</pub-id></citation></ref>
<ref id="ref6"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ali</surname><given-names>T. E.</given-names></name> <name><surname>Chong</surname><given-names>Y. W.</given-names></name> <name><surname>Manickam</surname><given-names>S.</given-names></name></person-group> (<year>2023</year>). <article-title>Machine learning techniques to detect a DDoS Attack in SDN: a systematic review</article-title>. <source>Appl. Sci.</source> <volume>13</volume>:<fpage>3183</fpage>. doi: <pub-id pub-id-type="doi">10.3390/app13053183</pub-id>, PMID: <pub-id pub-id-type="pmid">40607831</pub-id></citation></ref>
<ref id="ref7"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Alkadi</surname><given-names>S.</given-names></name> <name><surname>Al-Ahmadi</surname><given-names>S.</given-names></name> <name><surname>Ben Ismail</surname><given-names>M. M.</given-names></name></person-group> (<year>2023</year>). <article-title>Toward improved machine learning-based intrusion detection for internet of things traffic</article-title>. <source>Computers</source> <volume>12</volume>. doi: <pub-id pub-id-type="doi">10.3390/computers12080148</pub-id></citation></ref>
<ref id="ref8"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Alotaibi</surname><given-names>A.</given-names></name> <name><surname>Rassam</surname><given-names>M. A.</given-names></name></person-group>, &#x201C;<article-title>Adversarial machine learning attacks against intrusion detection systems: a survey on strategies and defense</article-title>,&#x201D; (<year>2023</year>), <source>MDPI</source> <volume>15</volume>:<fpage>62</fpage>. doi: <pub-id pub-id-type="doi">10.3390/fi15020062</pub-id>, PMID: <pub-id pub-id-type="pmid">40607831</pub-id></citation></ref>
<ref id="ref9"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Al-Sharif</surname><given-names>M.</given-names></name> <name><surname>Bushnag</surname><given-names>A.</given-names></name></person-group> (<year>2024</year>). <article-title>Enhancing cloud security: a study on ensemble learning-based intrusion detection systems</article-title>. <source>IET Commun.</source> <volume>18</volume>, <fpage>950</fpage>&#x2013;<lpage>965</lpage>. doi: <pub-id pub-id-type="doi">10.1049/cmu2.12801</pub-id>, PMID: <pub-id pub-id-type="pmid">40688697</pub-id></citation></ref>
<ref id="ref10"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Attou</surname><given-names>H.</given-names></name> <name><surname>Mohy-eddine</surname><given-names>M.</given-names></name> <name><surname>Guezzaz</surname><given-names>A.</given-names></name> <name><surname>Benkirane</surname><given-names>S.</given-names></name> <name><surname>Azrour</surname><given-names>M.</given-names></name> <name><surname>Alabdultif</surname><given-names>A.</given-names></name> <etal/></person-group>. (<year>2023</year>). <article-title>Towards an intelligent intrusion detection system to detect malicious activities in cloud computing</article-title>. <source>Appl. Sci.</source> <volume>13</volume>, <fpage>1</fpage>&#x2013;<lpage>19</lpage>. doi: <pub-id pub-id-type="doi">10.3390/app13179588</pub-id>, PMID: <pub-id pub-id-type="pmid">40607831</pub-id></citation></ref>
<ref id="ref11"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Boldini</surname><given-names>D.</given-names></name> <name><surname>Grisoni</surname><given-names>F.</given-names></name> <name><surname>Kuhn</surname><given-names>D.</given-names></name> <name><surname>Friedrich</surname><given-names>L.</given-names></name> <name><surname>Sieber</surname><given-names>S. A.</given-names></name></person-group> (<year>2023</year>). <article-title>Practical guidelines for the use of gradient boosting for molecular property prediction</article-title>. <source>J. Cheminform.</source> <volume>15</volume>:<fpage>73</fpage>. doi: <pub-id pub-id-type="doi">10.1186/s13321-023-00743-7</pub-id>, PMID: <pub-id pub-id-type="pmid">37641120</pub-id></citation></ref>
<ref id="ref12"><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Dattangire</surname><given-names>R.</given-names></name> <name><surname>Burle</surname><given-names>R.</given-names></name> <name><surname>Biradar</surname><given-names>D.</given-names></name> <name><surname>Dewangan</surname><given-names>L.</given-names></name></person-group>, &#x201C;<source>Machine learning-based security for cloud Proceedings of the 2024 IEEE North Karnataka Subsection Flagship International Conference (NKCon), computing challenges and implications</source>,&#x201D; in Proceedings of the <year>2024</year> <conf-name>IEEE North Karnataka Subsection Flagship International Conference</conf-name>, (<publisher-loc>Bagalkote, India</publisher-loc>: <publisher-name>NKCon</publisher-name>) <volume>2024</volume>, pp. <fpage>1</fpage>&#x2013;<lpage>7</lpage>. doi: <pub-id pub-id-type="doi">10.1109/NKCon62728.2024.10774633</pub-id></citation></ref>
<ref id="ref13"><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Devi</surname><given-names>T. A.</given-names></name> <name><surname>Jain</surname><given-names>A.</given-names></name></person-group>, &#x201C;<article-title>Enhancing cloud security with deep learning-based intrusion detection in cloud computing environments</article-title>,&#x201D; in <conf-name>2024 2nd International Conference on Advancement in Computation &#x0026; Computer Technologies (InCACCT)</conf-name>, (<year>2024</year>), pp. <fpage>541</fpage>&#x2013;<lpage>546</lpage>.</citation></ref>
<ref id="ref14"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Devidas</surname><given-names>V. P.</given-names></name> <name><surname>Adesh</surname><given-names>N. D.</given-names></name></person-group> (<year>2021</year>). <article-title>Comparative analysis of machine learning algorithms for intrusion detection</article-title>. <source>IOP Conf. Ser. Mater. Sci. Eng.</source> <volume>1013</volume>:<fpage>012038</fpage>, 1&#x2013;8. doi: <pub-id pub-id-type="doi">10.1088/1757-899X/1013/1/012038</pub-id></citation></ref>
<ref id="ref15"><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Eluri</surname><given-names>R. K.</given-names></name> <name><surname>Valicharla</surname><given-names>K.</given-names></name> <name><surname>Divya</surname><given-names>M.</given-names></name> <name><surname>Anusha</surname><given-names>K. B.</given-names></name></person-group>, &#x201C;<article-title>A scrutiny of machine learning methods for the detection and identification of cyber Intrusion</article-title>,&#x201D; <conf-name>2024 International Conference on Advances in Modern Age Technologies for Health and Engineering Science</conf-name>, <publisher-loc>Shivamogga, India</publisher-loc>: <publisher-name>AMATHE</publisher-name>, <fpage>11</fpage>&#x2013;<lpage>14</lpage>, (<year>2024</year>). doi: <pub-id pub-id-type="doi">10.1109/AMATHE61652.2024.10582241</pub-id></citation></ref>
<ref id="ref16"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hidayat</surname><given-names>I.</given-names></name> <name><surname>Ali</surname><given-names>M. Z.</given-names></name> <name><surname>Arshad</surname><given-names>A.</given-names></name></person-group> (<year>2023</year>). <article-title>Machine learning-based intrusion detection system: an experimental comparison</article-title>. <source>J. Comput. Cogn. Eng.</source> <volume>2</volume>, <fpage>88</fpage>&#x2013;<lpage>97</lpage>. doi: <pub-id pub-id-type="doi">10.47852/bonviewJCCE2202270</pub-id>, PMID: <pub-id pub-id-type="pmid">38765126</pub-id></citation></ref>
<ref id="ref17"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>John</surname><given-names>A.</given-names></name> <name><surname>Bin Isnin</surname><given-names>I. F.</given-names></name> <name><surname>Madni</surname><given-names>S. H. H.</given-names></name> <name><surname>Muchtar</surname><given-names>F. B.</given-names></name></person-group> (<year>2024</year>). <article-title>Enhanced intrusion detection model based on principal component analysis and variable ensemble machine learning algorithm</article-title>. <source>Intell. Syst. Appl.</source> <volume>24</volume>:<fpage>200442</fpage>. doi: <pub-id pub-id-type="doi">10.1016/j.iswa.2024.200442</pub-id>, PMID: <pub-id pub-id-type="pmid">40717848</pub-id></citation></ref>
<ref id="ref18"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kurniabudi</surname><given-names>D. S.</given-names></name> <name><surname>Darmawijoyo</surname><given-names>M. Y.</given-names></name> <name><surname>Idris</surname><given-names>B. B.</given-names></name> <name><surname>Bamhdi</surname><given-names>A. M.</given-names></name> <name><surname>Budiarto</surname><given-names>R.</given-names></name></person-group> (<year>2020</year>). <article-title>CICIDS-2017 dataset feature analysis with information gain for anomaly detection</article-title>. <source>IEEE Access</source> <volume>8</volume>, <fpage>132911</fpage>&#x2013;<lpage>132921</lpage>. doi: <pub-id pub-id-type="doi">10.1109/ACCESS.2020.3009843</pub-id></citation></ref>
<ref id="ref19"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Liu</surname><given-names>S.</given-names></name> <name><surname>Motani</surname><given-names>M.</given-names></name></person-group>, &#x201C;<source>Improving mutual information based feature selection by boosting unique relevance</source>,&#x201D; <fpage>1</fpage>&#x2013;<lpage>13</lpage> (<year>2022</year>). Available online at: <ext-link xlink:href="http://arxiv.org/abs/2212.06143" ext-link-type="uri">http://arxiv.org/abs/2212.06143</ext-link></citation></ref>
<ref id="ref20"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Megouache</surname><given-names>L.</given-names></name> <name><surname>Zitouni</surname><given-names>A.</given-names></name> <name><surname>Sadouni</surname><given-names>S.</given-names></name> <name><surname>Djoudi</surname><given-names>M.</given-names></name></person-group> (<year>2024</year>). <article-title>Machine Learning for Cloud Data Classification and Anomaly Intrusion Detection</article-title>. <source>Ingen. Syst. Inform.</source> <volume>29</volume>, <fpage>1809</fpage>&#x2013;<lpage>1819</lpage>. doi: <pub-id pub-id-type="doi">10.18280/isi.290514</pub-id></citation></ref>
<ref id="ref21"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mehmood</surname><given-names>M.</given-names></name> <name><surname>Amin</surname><given-names>R.</given-names></name> <name><surname>Magboul</surname><given-names>M.</given-names></name> <name><surname>Muslam</surname><given-names>A. L. I.</given-names></name> <name><surname>Xie</surname><given-names>J.</given-names></name> <name><surname>Aldabbas</surname><given-names>H.</given-names></name></person-group> (<year>2023</year>). <article-title>Privilege escalation attack detection and mitigation in cloud using machine learning</article-title>. <source>IEEE Access</source> <volume>11</volume>, <fpage>46561</fpage>&#x2013;<lpage>46576</lpage>. doi: <pub-id pub-id-type="doi">10.1109/ACCESS.2023.3273895</pub-id>, PMID: <pub-id pub-id-type="pmid">40668715</pub-id></citation></ref>
<ref id="ref22"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mghames</surname><given-names>S. A. Z.</given-names></name> <name><surname>Ibrahim</surname><given-names>A. A.</given-names></name></person-group> (<year>2023</year>). <article-title>Intrusion detection system for detecting distributed denial of service attacks using machine learning algorithms</article-title>. <source>Indon. J. Electr. Eng. Comput. Sci.</source> <volume>32</volume>, <fpage>304</fpage>&#x2013;<lpage>311</lpage>. doi: <pub-id pub-id-type="doi">10.11591/ijeecs.v32.i1.pp304-311</pub-id></citation></ref>
<ref id="ref23"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Nassif</surname><given-names>A. B.</given-names></name> <name><surname>Talib</surname><given-names>M. A.</given-names></name> <name><surname>Nasir</surname><given-names>Q.</given-names></name> <name><surname>Albadani</surname><given-names>H.</given-names></name> <name><surname>Dakalbab</surname><given-names>F. M.</given-names></name></person-group> (<year>2021</year>). <source>Machine learning for cloud security: a systematic review</source>: <publisher-name>Institute of Electrical and Electronics Engineers Inc.</publisher-name> <volume>9</volume>, <fpage>20717</fpage>&#x2013;<lpage>20735</lpage>. doi: <pub-id pub-id-type="doi">10.1109/ACCESS.2021.3054129</pub-id></citation></ref>
<ref id="ref24"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ogwara</surname><given-names>N. O.</given-names></name> <name><surname>Petrova</surname><given-names>K.</given-names></name> <name><surname>Yang</surname><given-names>M. L.</given-names></name></person-group> (<year>2022</year>). <article-title>Towards the development of a cloud computing intrusion detection framework using an ensemble hybrid feature selection approach</article-title>. <source>J. Comput. Netw. Commun.</source> <volume>2022</volume>, <fpage>1</fpage>&#x2013;<lpage>16</lpage>. doi: <pub-id pub-id-type="doi">10.1155/2022/5988567</pub-id></citation></ref>
<ref id="ref25"><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Parameswarappa</surname><given-names>P.</given-names></name> <name><surname>Shah</surname><given-names>T.</given-names></name> <name><surname>Lanke</surname><given-names>G. R.</given-names></name></person-group> (<year>2023</year>). &#x201C;<article-title>A machine learning-based approach for anomaly detection for secure cloud computing environments</article-title>,&#x201D; <conf-name>IDCIoT 2023 - International Conference on Intelligent Data Communication Technologies and Internet of Things, Proceedings, no. IDCIoT</conf-name>, <publisher-loc>Bengaluru, India</publisher-loc>: <publisher-name>Institute of Electrical and Electronics Engineers (IEEE)</publisher-name>. <fpage>931</fpage>&#x2013;<lpage>940</lpage>.</citation></ref>
<ref id="ref26"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Proti&#x0107;</surname><given-names>D.</given-names></name> <name><surname>Stankovi&#x0107;</surname><given-names>M.</given-names></name></person-group> (<year>2023</year>). <article-title>Cybersecurity attacks: Which dataset should be used to evaluate an intrusion detection system?</article-title> <source>Vojnotehni&#x010D;ki</source> <volume>71</volume>, <fpage>970</fpage>&#x2013;<lpage>995</lpage>. doi: <pub-id pub-id-type="doi">10.5937/vojtehg71-46524</pub-id></citation></ref>
<ref id="ref27"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Rawat</surname><given-names>S.</given-names></name> <name><surname>Srinivasan</surname><given-names>A.</given-names></name> <name><surname>Ravi</surname><given-names>V.</given-names></name> <name><surname>Ghosh</surname><given-names>U.</given-names></name></person-group> (<year>2022</year>). &#x201C;<article-title>Intrusion detection systems using classical machine learning techniques versus integrated unsupervised feature learning and deep neural network&#x201D;</article-title>. <source>Internet Technology Letters</source>. <volume>5</volume>:<fpage>e232</fpage>. doi: <pub-id pub-id-type="doi">10.1002/itl2.232</pub-id></citation></ref>
<ref id="ref28"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Saran</surname><given-names>M.</given-names></name> <name><surname>Yadav</surname><given-names>R. K.</given-names></name> <name><surname>Tripathi</surname><given-names>U. N.</given-names></name></person-group> (<year>2022</year>). <article-title>Machine learning based security for cloud computing: a survey</article-title>. <source>International Journal of Applied Engineering Research</source>. <volume>17</volume>, <fpage>338</fpage>&#x2013;<lpage>344</lpage>. doi: <pub-id pub-id-type="doi">10.37622/IJAER/17.4.2022.338-344</pub-id></citation></ref>
<ref id="ref29"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Saranya</surname><given-names>T.</given-names></name> <name><surname>Sridevi</surname><given-names>S.</given-names></name> <name><surname>Deisy</surname><given-names>C.</given-names></name> <name><surname>Chung</surname><given-names>T. D.</given-names></name> <name><surname>Khan</surname><given-names>M. K. A. A.</given-names></name></person-group> (<year>2020</year>). <article-title>Performance analysis of machine learning algorithms in intrusion detection system: a review</article-title>. <source>Proc. Comput. Sci.</source> <volume>171</volume>, <fpage>1251</fpage>&#x2013;<lpage>1260</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.procs.2020.04.133</pub-id>, PMID: <pub-id pub-id-type="pmid">40717848</pub-id></citation></ref>
<ref id="ref30"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Somogyi</surname><given-names>Z.</given-names></name></person-group> (<year>2021</year>). <article-title>Performance evaluation of machine learning models</article-title>. <source>Appl. Artif. Intell.</source>, <fpage>87</fpage>&#x2013;<lpage>112</lpage>. doi: <pub-id pub-id-type="doi">10.1007/978-3-030-60032-7_3</pub-id>, PMID: <pub-id pub-id-type="pmid">40718863</pub-id></citation></ref>
<ref id="ref31"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sundaramoorthy</surname><given-names>K.</given-names></name> <name><surname>Purushothaman</surname><given-names>K. E.</given-names></name> <name><surname>Jeba Sonia</surname><given-names>J.</given-names></name> <name><surname>Kanthimathi</surname><given-names>N.</given-names></name></person-group> (<year>2024</year>). <article-title>Enhancing cybersecurity in cloud computing and WSNs: a hybrid IDS approach</article-title>. <source>Comput. Secur.</source> <volume>147</volume>:<fpage>104081</fpage>. doi: <pub-id pub-id-type="doi">10.1016/j.cose.2024.104081</pub-id></citation></ref>
<ref id="ref32"><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Tauscher</surname><given-names>Z.</given-names></name> <name><surname>Jiang</surname><given-names>Y.</given-names></name> <name><surname>Zhang</surname><given-names>K.</given-names></name> <name><surname>Wang</surname><given-names>J.</given-names></name> <name><surname>Song</surname><given-names>H.</given-names></name></person-group>, &#x201C;<article-title>Learning to detect: a data-driven approach for network intrusion detection</article-title>,&#x201D; <conf-name>Conference Proceedings of the IEEE International Performance, Computing, and Communications Conference</conf-name>, <source>Institute of Electrical and Electronics Engineers (IEEE)</source>. (<year>2021</year>).</citation></ref>
<ref id="ref33"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Thapa</surname><given-names>N.</given-names></name> <name><surname>Liu</surname><given-names>Z.</given-names></name> <name><surname>Kc</surname><given-names>D. B.</given-names></name> <name><surname>Gokaraju</surname><given-names>B.</given-names></name> <name><surname>Roy</surname><given-names>K.</given-names></name></person-group> (<year>2020</year>). <article-title>Comparison of machine learning and deep learning models for network intrusion detection systems</article-title>. <source>Future Internet</source> <volume>12</volume>, <fpage>1</fpage>&#x2013;<lpage>16</lpage>. doi: <pub-id pub-id-type="doi">10.3390/fi12100167</pub-id>, PMID: <pub-id pub-id-type="pmid">40607831</pub-id></citation></ref>
<ref id="ref34"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Umar</surname><given-names>M. A.</given-names></name> <name><surname>Chen</surname><given-names>Z.</given-names></name> <name><surname>Shuaib</surname><given-names>K.</given-names></name> <name><surname>Liu</surname><given-names>Y.</given-names></name></person-group> (<year>2024</year>). <article-title>Effects of feature selection and normalization on network intrusion detection</article-title>. <source>Data Sci. Manag.</source> <volume>8</volume>, <fpage>23</fpage>&#x2013;<lpage>39</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.dsm.2024.08.001</pub-id>, PMID: <pub-id pub-id-type="pmid">40717848</pub-id></citation></ref>
<ref id="ref35"><citation citation-type="other"><person-group person-group-type="author"><name><surname>Useni</surname><given-names>D. E.</given-names></name> <name><surname>Emmanuel</surname><given-names>O. C.</given-names></name> <name><surname>Job</surname><given-names>G. K.</given-names></name> <name><surname>Ahmad</surname><given-names>A.</given-names></name></person-group> (<year>2023</year>). <article-title>A review of machine learning-based algorithms for intrusion detection system</article-title>, <source>International Journal of Engineering Research &#x0026; Technology (IJERT)</source>, vol. <volume>12</volume>, <fpage>251</fpage>&#x2013;<lpage>256</lpage>. Available at: <ext-link xlink:href="https://www.ijert.org/research/a-review-of-machine-learning-based-algorithms-for-intrusion-detectionsystem-IJERTV12IS010082.pdf" ext-link-type="uri">https://www.ijert.org/research/a-review-of-machine-learning-based-algorithms-for-intrusion-detectionsystem-IJERTV12IS010082.pdf</ext-link></citation></ref>
<ref id="ref36"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Vibhute</surname><given-names>A. D.</given-names></name> <name><surname>Patil</surname><given-names>C. H.</given-names></name> <name><surname>Mane</surname><given-names>A. V.</given-names></name> <name><surname>Kale</surname><given-names>K. V.</given-names></name></person-group> (<year>2024</year>). <article-title>Towards detection of network anomalies using machine learning algorithms on the NSL-KDD benchmark datasets</article-title>. <source>Proc. Comput. Sci.</source> <volume>233</volume>, <fpage>960</fpage>&#x2013;<lpage>969</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.procs.2024.03.285</pub-id></citation></ref>
<ref id="ref37"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhang</surname><given-names>B.</given-names></name> <name><surname>Wang</surname><given-names>Z.</given-names></name> <name><surname>Li</surname><given-names>H.</given-names></name> <name><surname>Lei</surname><given-names>Z.</given-names></name> <name><surname>Cheng</surname><given-names>J.</given-names></name> <name><surname>Gao</surname><given-names>S.</given-names></name></person-group> (<year>2024</year>). <article-title>Information gain-based multi-objective evolutionary algorithm for feature selection</article-title>. <source>Inf. Sci.</source> <volume>677</volume>:<fpage>120901</fpage>. doi: <pub-id pub-id-type="doi">10.1016/j.ins.2024.120901</pub-id>, PMID: <pub-id pub-id-type="pmid">40717848</pub-id></citation></ref>
<ref id="ref38"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zulifqar</surname><given-names>I.</given-names></name> <name><surname>Anayat</surname><given-names>S.</given-names></name> <name><surname>Kharal</surname><given-names>I.</given-names></name></person-group> (<year>2021</year>). <article-title>A Review of data security challenges and their solutions in cloud computing</article-title>. <source>Int. J. Inform. Eng. Electro. Bus.</source> <volume>13</volume>, <fpage>30</fpage>&#x2013;<lpage>38</lpage>. doi: <pub-id pub-id-type="doi">10.5815/ijieeb.2021.03.04</pub-id></citation></ref>
</ref-list>
</back>
</article>