## 4 Results
### Performances of the Built Model for Emotion Recognition Based on Voice Features  
The algorithm integrated into the NeuroPredict platform is the one that achieved the best results when trained and tested on the three targeted emotions: positive, neutral, and negative emotions, using the aggregated training and testing dataset (row 2 in Table 7). The model combines convolutional layers for initial feature extraction with bidirectional LSTMs for capturing temporal dependencies, followed by dense layers for classification. The architecture of the neural network used for building the classification model consists of:  
* Four convolutional blocks: each of them contains a convolutional layer, batch normalization that normalizes activations of the previous layers to improve training, and max-pooling to reduce the spatial dimension.
* Two bidirectional LSTM layers: with a dropout rate of 0.3 to prevent overfitting.
* Two fully connected layers: the first one also performs batch normalization, and the second one outputs the classification results.  
The curve in Figure 6 is utilized to understand how well the model generalizes to new data and to detect overfitting or underfitting. The model has a high accuracy, close to 100%, on the training set, which means it has learned well from the training data. The model shows an accuracy of 0.82 on the testing data, which, while lower than the training accuracy, still suggests reasonable generalization to new data. The initial peaks in the test curve show the model's initial adaptation to new data, showcasing its learning process.  
The CNN-LSTM model shows a balanced performance (Table 8) across the three emotion classes, with an overall accuracy of 82%. The precision, recall, and F1 score are relatively high, with the Positive and Negative classes performing slightly better than the Neutral class. The model demonstrates a strong ability to correctly classify the Positive and Negative emotions but has slightly lower performance for Neutral emotions, as indicated by the lower precision and recall for the Neutral class. Recall is also a bit higher for Negative (88.34%) and Positive (75.86%) compared to Neutral (73.44%). A higher recall for Negative means the model is good at finding most of the Negative instances. The lower recall for Neutral indicates it misses a few Neutral instances, classifying them as Positive or Negative instead.  
Figure 6: Learning curve for training and testing accuracy for 150 epochs for the SER algorithm integrated into the NeuroPredict platform.  
The F1 score, which balances precision and recall, is highest for Negative (86.33%), followed by Positive (79.56%), and lowest for Neutral (73.82%). All these suggest that overall, the model is most effective at identifying Negative emotions, followed by Positive, with Neutral having the lowest probability of being correctly identified.  
There is a noticeable drop in precision, recall, and F1 score for the Neutral class. The Neutral class has the highest number of misclassifications, both in terms of false positives and false negatives, indicating that the model finds it harder to distinguish Neutral emotions from Positive and Negative ones. There are some misclassifications between Positive and Neutral, as well as between Negative and Neutral. This could be due to the nuanced nature of these emotions, where Neutral might share characteristics with both Positive and Negative emotions. Also, the Neutral class was the least represented in the training data.