## 3 Classification with Machine Learning and Results  
### Machine Learning Classification Models  
Neural networks (NNs) are the mathematical models used to simulate the biological neurons and to perform parallel information processing in a simple and objective way. Single hidden-layer feed-forward NNs typically contain one input layer, a hidden layer and an output layer, while a DNN has more than one hidden layer.  
In this study, we built up an eight-layered DNN with six hidden layers. The input layer has five nodes that are the same number as the types of selected input features. For hidden layers, 100 nodes are located in each one while the output layer contains eight nodes since the data should be classified into eight thickness classes. This model was constructed after comparing different designs. Generally, the accurate classification rate is proportional to the number of hidden layers and the number of nodes in each layer, but it also leads to the remarkable increase in training duration if the architecture of the model is too complex. Therefore, after many considerations, the proposed design in this research is reasonable for this classification problem since it offers good classification results and the proper training time.  
The DNN with a large number of hidden layers and millions of learnable parameters usually suffer from over-fitting without regulation. There are several techniques to overcome this issue including early stopping, \(l_{1}\), and \(l_{2}\) regulation and max norm, etc., but drop-out is the most popular one [25]. In this DNN model, one drop-out layer was implemented on each of the fully connected layers before the output layer. This helps to avoid overfitting by randomly dropping units from the network during training [25; 26; 27] as it can prevent co-adaptation between layers and nodes of deep feedforward neural networks in each training case. The nodes to drop are chosen randomly in this study with a probability of 0.5 [25]. The activation function in the hidden layers is rectified linear unit (ReLU) that is represented as ReLU(x) = max(0,x) since its performance is already proposed for DNN [26; 28; 29]. The soft-max function is used as the activation function in the output layer which is suitable for our multilabel classification problem. The solver stochastic gradient descent with momentum was chosen after the optimization process along with the learning rate of \(10^{-3}\) and a mini-batch size of 500. The structure of our DNN model is shown in Figure 6.  
The SVM algorithms can solve classification and regression problems. This paper also considers the study of SVM to classify eight thicknesses by employing the attained dataset as described in Section 2.3. The software used in this work is MATLAB with the LIBSVM library. Four well-known kernels, linear, polynomial, sigmoid, and radial basis function (RBF), were used to train the models due to their great impacts on the performance of SVM. Each kernel can be fitted to the corresponding model by adjusting the corresponding parameters: cost (C) and gamma (\(\gamma\)). These parameters were optimized using the grid search method in order to maximize the accuracy rates of the thickness classification [30; 31]. To avoid overfitting, a 10-fold cross validation was implemented. The classification accuracy is calculated as:  
\[Accuracy(T)=\frac{\sum_{i=1}^{T}\mathit{Assess}(t_{i})}{|T|}\times 100\%\,\ t_{i}\in T \tag{13}\]  
where \(T\) is the set of test samples and  
\[\mathit{Assess}(t_{i})=\left\{\begin{array}{l}1\ \mathit{if}\ t_{i}\ \mathit{is}\ \mathit{correctly}\ \mathit{ classified}\\ 0\ \mathit{if}\ t_{i}\ \mathit{is}\ \mathit{incorrectly}\ \mathit{ classified}\end{array}\right.\]