## 3 Results and Discussion
To prevent overfitting, weight regularization techniques are applied by adding a penalty term to the loss function that encourages the model to have smaller weights and reduces its overall complexity. Such an approach was also used in a prior study,  
Figure 4: The model of architecture of the neural network (visualization of layers). Figure 5: Detail model of neural network with dropout: (**a**) part of the network; (**b**) full view and Param #. Color is used because of different dense layer, and red color is used only for bias. where the theory of deep learning was applied for the screening of diabetic retinopathy (detection of bleeding) [44]. Trends of accuracy and model loss are presented in Figure 6. The plot of \"Model Accuracy\" presents the model's performance. The legend shows which line represents which set of data, with \"train\" for training accuracy and \"test\" for validation accuracy. An epoch in the context of neural networks refers to a single iteration of the entire dataset through the neural network during the training process. During an epoch, the training algorithm updates the weights and biases of the neural network based on the error calculated for the output of the model. The number of epochs is a hyperparameter that can be tuned to improve the performance of the model. Increasing the number of epochs can help the model learn more from the data and potentially improve its accuracy but can also increase the overfitting risk. The model is trained for 50 epochs (complete passes through the training data). The plot of \"Model Loss\" shows how the loss decreases over time during the training process. The training loss (blue line) and testing loss (orange line) should both decrease during training. Each epoch shows the loss and accuracy on the training data (the data used to update the model's parameters) and the validation data (a portion of the data held out during training to evaluate the model's performance on unseen data). In this example, we see that as the number of epochs increases, the loss (a measure of how well the model's predictions match the actual values) decreases and the accuracy (a measure of how many predictions the model got right) increases for both the training and validation data. The model was trained for 50 epochs with a decreasing learning rate schedule. The training accuracy started at around 0.69 and increased to 1.0 by the end of the training. Similarly, the validation accuracy started at 0.63 and also increased to 0.98 by the end of the training. On the other hand, the training loss decreased from around 0.60 to 0.04 while the validation loss decreased from around 0.62 to 0.13. Both the training and validation loss decreased gradually throughout the training process. To improve results and simplify the problem, the binary classification of data is used [44]. Results are given in Figure 7.  
The validation accuracy is still high, indicating that the model is generalizing well to new data. In Figure 8, we can see the results from the classification report for the categorical model and the binary model. The classification_report() function is used to generate a report of precision, recall, and F1-score for each class, as well as the average values for these metrics. A high precision score of 0.96 means that the model is making fewer false positive predictions, while a high recall score of 1.0 means that the model is making fewer false negative predictions. A high F1-score of 0.98 indicates a good balance between precision  
Figure 6: The plots of the accuracy and loss of the model during training and validation over epochs. The \(x\)-axis represents the epoch number, and the \(y\)-axis represents the accuracy value. (**a**) Model accuracy. (**b**) Model loss. and recall. As we can see in Figure 7, we have the same score results of the classification report for the categorical model and the binary model.