## 2 Methodology
### Machine Learning Based Localization
#### 2.1.2 Classification Using SVM  
SVM is a machine learning technique used as a supervised classification technique that produces a model using training data sets and maps new data sets [37]. It can be better understood by a two-class problem. The main aim of SVM is to find an optimal margin (hyper-plane) from a set of planes that separates the data point of the two classes. The plane which has the maximum margin is called a hyper-plane. A large margin decision boundary tends to generate better generalization error and a smaller margin corresponding to a small perturbation to the decision boundary can have a significant impact on the classification performance and may lead to an overfitting problem. More detail about SVM can be found in [37].  
SVM is used to classify the feature set calculated from the data obtained from healthy and various loosening cases. SVM parameters are picked out by training the model. The performance of SVM is contingent upon the kernel selection, appropriate kernel parameters, and soft margin parameter '\(P\)'. In the study, a Gaussian kernel with a single parameter, '\(\eta\)' is selected and an optimum combination of '\(P\)' and '\(\eta\)' can be selected based on a grid-search based on the exponentially growing sequences, such as in the given example:\[\begin{split} P\in\left[2^{-7},2^{-5},\ldots 2^{11},2^{13}\right]\\ \eta\in\left[2^{-7},2^{-5},\ldots 2^{3},2^{5}\right]\end{split} \tag{8}\]  
In the process, using cross-validation, the choice of each combination of the parameter is examined. The parameters having the highest accuracy in cross-validation are culled. The selected SVM model for testing and classification of a new dataset is further trained using the entire training dataset based on the chosen parameters [23].  
Three-different polynomial kernels with orders 1, 2, and 3 are tested. A tenfold validation was carried out to check the classifier's performance. The classification performance of the trained SVM model is obtained for the test datasets and the unicity of this model is its decision boundary is dependent on a subset of the training dataset (i.e., support vectors) as presented in [23]. For the given training set '\(X\)' and corresponding labels '\(Y\)' (i.e., \(\pm 1\)), the classification function for the 2-class problem described above can be defined as [23]:  
\[f(X)=sign(w^{T}X+w_{0}) \tag{9}\]  
where '\(w\)' and '\(w_{0}\)' are the parameters of the hyperplane.  
If the data are not linearly separable, an error weighting constant is considered as the penalty for misclassification and the original data space is mapped to feature space. In the kernel (C) formulation, the decision function can be given as follows:  
\[f(\chi)=sign\left[\sum_{i}Y_{i}\zeta_{i}C(\chi,\chi_{i})+w_{0}\right] \tag{10}\]  
where '\(\chi_{i}\)' is the training features obtained from data '\(\chi\)' and the corresponding label is \(Y_{i}\). \(\zeta_{i}\) is '0' for most '\(i\)'. The feature vectors are nothing but the support vector. For multi-class classification, this binary SVM model using the one-versus-one approach is considered. For the '\(N\)' class problem, the number of learners is given by  
\[F=N(N-1)/2 \tag{11}\]