## 4 Results and Discussion  
Our network used video samples in the shape of \(N\times T\times H\times W\times C\), where \(N\) represents the batch size, \(T\) is the number of frames in the video, \(H\) is the height, \(W\) is the width, and \(C\) is the number of channels, which is 3 (red, green, blue). Then, we rescaled the video into black and white format, which reduced the number of channels from 3 to 1.  
For the base of our models, we used EfficientNet v2 B0 and ResNet50, which are pretrained models. Since the two pretrained models we used are intended for image classification, we used a time-distributed layer, which enables the model to classify video recordings. The pretrained model is not trainable. This was followed by 3D Average Pooling. We finished our network with a sequence of Flatten, Dropout, and Dense layers (Figure 4), which led to an output with the number of neurons equal to the number of classes; in our case, four neurons. We used Dropout and regularization for the last dense layer to avoid overfitting. The network's optimizer is either Adam or SGD.  
We optimized the hyperparameters of our network using the _Hyperband_ class from the _keras_tuer_ module [32]. The optimized hyperparameters differ slightly based on the network's optimizer, and the differences can be seen in Table 3.  
The result of the hyperparameter optimization for each type of network and each type of optimizer is shown in Table 4. The best accuracy is achieved with EfficientNet v2 B0 model using Adam optimizer for the hyperparameters shown in Table 5. The validation results for each type of model are poor while the training accuracies are high, which indicates two things. First, the networks are overfitting for each architecture and optimizer, despite the regularization method used to avoid this effect. Second, the presence of overfitting suggest there is some information in the data that can be learnt.  
Figure 4: Diagram of the network architecture. Base model can be one of EfficientNet v2 B0 or ResNet50.  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Hyperparameter** & **Adam** & **SGD** & **Options** \\ \hline Dropout & yes & yes & 0.05, 0.1, 0.2, 0.3 \\ Regularizer & yes & yes & L1, L2, L1 + L2 \\ Initial learning rate & yes & yes & \(1\times 10^{-3},1\times 10^{-4},1\times 10^{-5}\) \\ Final learning rate & yes & no & \(1\times 10^{-5},1\times 10^{-6},1\times 10^{-7}\) \\ Decay steps & yes & no & \(1\times 10^{4},1\times 10^{5},1\times 10^{6}\) \\ Momentum & no & yes & 0.6, 0.8, 1.0 \\ \hline \hline \end{tabular}
\end{table}
Table 3: Hyperparamters optimized for Adam and SGD.  
We observe from the confusion matrix for the validation set (Figure 5) that the main problem of classification is in distinguishing between RBCs with the reduced elasticity, while its ability to distinguish between the healthy and sick RBCs is more precise. Therefore, we decided to train a binary classification NN, where the first class contains the healthy RBCs (\(k_{s}=0.005\)) and the second class consists of all the cells with reduced elasticity. We ran the hyperparameter optimization for 2 types of NNs with 2 different optimizer options.  
From the confusion matrix shown in Figure 6 we discovered that our hypothesis is not true. After changing the classification problem from 4 classes to 2 classes, the final accuracies increased, but not as significantly as the confusion matrix from Figure 5 suggests. We also tried a weighted classification for a combination of EfficientNet v2 B0 and the Adam optimizer where the final accuracy insignificantly increased to 61.74%, showing only a 0.02% increase.  
There is an option to separate healthy and sick RBCs after they are classified into 4 classes, where class 0 is healthy and classes 1, 2 and 3 are sick. In this manner, we achieved a classification accuracy of 93.54%. We elaborate on this in the conclusion.