# Signal Preprocessing for Enhanced IoT Device Identification Using Support Vector Machine
## 2 Materials and Methods
### Classifier Description and Experimental Setup  
The SVM classifier was parameterized according to the methodology outlined in [27], using a quadratic polynomial kernel to effectively handle complex, non-linear relationships in Bluetooth signal data. The data split was conducted randomly to ensure robust and unbiased evaluation, while feature extraction focused on higher-order statistics (HOS) derived from transient Bluetooth signals, providing a rich set of attributes for classification. The implementation was performed using MATLAB(tm) R2023b by MathWorks, Inc., in Massachusetts, USA., facilitating efficient data processing and experimentation. The  
Figure 8: Envelopes of the min-normalized raw signals for signals shown in Figure 4.  
Figure 7: Envelopes of the max-normalized raw signals for signals shown in Figure 4.  
computational setup for this study included a device with the following specifications: A processor AMD Ryzen 5 2500U with Radeon Vega Mobile Graphics manufactured by Advanced Micro Devices, Inc., California, USA operating at 2.00 GHz, 32 GB of RAM (30.9 GB usable), and a 64-bit operating system. This hardware configuration ensured smooth execution of the computationally intensive tasks associated with SVM training and testing. The results highlight the potential of the classifier as a powerful tool for RFFs, particularly when optimized for transient signal characteristics. The SVM-based classifier procedure is illustrated step-by-step in the Algorithm 1. It begins with loading the parameters and the RF dataset, which includes preparing the data for analysis. The dataset preparation involves creating separate storage for training and testing data, which is followed by iterating through each device to extract 150 RF signal samples for each Bluetooth device in the dataset. Overall, 30 samples are reserved for testing, while the remaining 120 are used for training. Afterward, the training signals from all devices are shuffled and placed in a single training set, ensuring a randomized distribution of data. This action is also performed with the test signals. Therefore, xtrain and xtest contain the RF signals used by the classifier and ytrain and ytest contain their classes corresponding to each device. According to [27], the algorithm proceeds by training an SVM model using a fourth-order polynomial kernel, which provides an optimal balance between classification accuracy and computational efficiency and ensures that the data are standardized to improve training consistency. Once the model is trained, it is evaluated in the test set, with predictions generated for the test samples. To assess the performance of the model, a confusion matrix is computed, and the accuracy is calculated by comparing the predicted labels to the true labels. The procedure concludes by outputting the overall classification accuracy, which provides insight into the effectiveness of the model. The flowchart in Figure 9 captures the entire process, ensuring a comprehensive overview of the algorithm's workflow from data loading to final evaluation, this process aligns with the algorithm detailed in Algorithm 1. For each option of the signal preprocessing technique applied to the dataset used, this algorithm was run once. Figure 9: Flowchart of the SVM-based classifier.