# Enhancing IoT Network Security Using Feature Selection for Intrusion Detection Systems
## 4 Results  
The work described herein was performed using the system specifications shown in Table 1. The Pandas and NumPy libraries were used for preprocessing, and the Matplotliblibrary was used to visualize the dataset. Additionally, the Scikit-learn and Weka platforms were used for data analysis. The Weka platform was used to perform CFS, determine the gain ratio, and ascertain symmetrical uncertainty, while the Scikit-learn package was used to perform [PERSON]'s analysis, determine information gain, and employ the MLP classifier. Using the open-source RT-IoT2022 dataset, we considered 123,117 instances. In this section, we provide an overview of the experimental results of this work and assess the performance of the feature selection methods. We employed five distinct feature selection techniques: CFS, [PERSON]'s analysis, the gain ratio, information gain, and symmetrical uncertainty. The list of reduced features (five features) is given for the CFS technique only, while in other techniques, an importance score for each feature is generated to identify strong correlations for detecting intrusions. Therefore, we analyzed the importance scores for each technique in order to specify the possible optimal threshold values, as illustrated in Figures 2a-5a. To determine a reasonable threshold for feature selection, one approach is to identify the knee points in the importance score plots. The knee point represents the feature after which the importance scores drop sharply, indicating diminishing returns when adding more features. We identified 4-5 knee points for each technique. To find the most significant features that would most strongly influence the models, the threshold values were assessed with the MLP classifier, as shown in Figures 2b-5b. \begin{table}
\begin{tabular}{c c} \hline \hline
**Hardware/Software** & **Specification/Version** \\ \hline OS & Big Sur version 11.7.10 \\ \hline CPU & 2.3 GHz 8-Core Intel Core i9 \\ \hline Hard disk space & 1 TB \\ \hline RAM & 16 GB \\ \hline GPU & AMD Radeon Pro 4 GB \\ Intel UHD Graphics 630 1536 MB \\ \hline Weka & 3.8.6 \\ \hline Python & 3.9 \\ \hline NumPy & 1.26.4 \\ \hline Pandas & 2.2.2 \\ \hline Matplotlib & 3.8.4 \\ \hline Scikit-learn & 1.4.2 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Environment setup. Figure 2: Pearson’s analysis: feature importance analysis. (**a**) The importance scores for all features. (**b**) Performance when using the MLP classifier, with the respective threshold values. Figure 4: Information gain: feature importance analysis. (**a**) The importance scores for all features. (**b**) Performance when using the MLP classifier, with the respective threshold values. Figure 5: Symmetrical uncertainty: feature importance analysis. (**a**) The importance scores for all features. (**b**) Performance when using the MLP classifier, with the respective threshold values. Figure 3: Gain ratio: feature importance analysis. (**a**) The importance scores for all features. (**b**) Performance when using the MLP classifier, with the respective threshold values. The experimental results showed the impact of threshold values for the various feature selection methods on the performance of the MLP classifier. In the Pearson analysis, the optimal threshold of 0.2 resulted in the highest accuracy of 94.84%, indicating a strong correlation between the selected features and attack classification. Similarly, the gain ratio method achieved its best accuracy of 95.96% at a threshold of 0.41. Information gain showed the highest performance at a threshold of 0.6, achieving an accuracy of 95.12%, highlighting its ability to prioritize features based on entropy reduction. Symmetrical uncertainty reached its optimal performance of 95.6% at a threshold of 0.3, reflecting its capacity to measure non-linear relationships effectively. These findings emphasize the significance of selecting appropriate thresholds for feature selection methods to enhance the predictive accuracy of classification models in IoT security scenarios.