## 2 Materials and Methods
### Convolutional Neural Network Architecture  
The EfficientNet architecture, as introduced by [PERSON] and [PERSON] in their 2019 paper [52], stands as a significant milestone in the evolution of deep learning architectures. It is based on the principle of compound scaling, a novel approach that meticulously balances three fundamental dimensions of a neural network: depth, width, and resolution. Depth refers to the number of layers in the network, width to the size of each layer, and resolution to the size of the input image that the network processes. This balance is crucial, as it allows EfficientNet to scale up in a more structured and efficient manner compared to previous architectures. The scaling process itself can be underpinned formaly in Equation (3):  
\[d=\alpha^{\phi}d_{0},\quad w=\beta^{\phi}w_{0},\quad r=\gamma^{\phi}r_{0} \tag{3}\]  
In this formula, \(\alpha,\beta\), and \(\gamma\) are constants that determine how each dimension scales, while \(\phi\) is a user-defined coefficient that dictates the overall scaling of the model. The base values \(d_{0},w_{0},r_{0}\) represent the depth, width, and resolution of the base model, respectively. This formulation allows for a systematic and controlled scaling of the network dimensions, leading to improvements in model performance. At the heart of EfficientNet's design is the MBConv block, a series of transformations that are crucial for its effectiveness. This block sequences a \(1\times 1\) convolution, a depth-wise convolution, a Squeeze-and-Excitation (SE) operation [53], and concludes with another \(1\times 1\) convolution, as shown in Equation (4):  
\[T_{MB}(\mathbf{I})=\mathbf{K}_{2}*SE(\mathbf{D}*(\mathbf{K}_{1}*\mathbf{I})) \tag{4}\]  
Here, \(\mathbf{K}_{1}\) and \(\mathbf{K}_{2}\) represent the \(1\times 1\) convolutional filters, \(\mathbf{D}\) is the depth-wise convolutional filter, and SE denotes the Squeeze-and-Excitation operation. This arrangement of operations is pivotal in enhancing the network's ability to focus on the most informative features of the input. Building upon the foundations laid by EfficientNet, the EfficientNetV2 [47] introduces an evolution in the form of the Fused-MBConv block. This new block design streamlines the architecture by combining the initial \(1\times 1\) and depth-wise convolutions into a single \(3\times 3\) convolution. This is then followed by an SE operation and a final \(1\times 1\) convolution, as detailed in Equation (5):  
\[T_{FMB}(\mathbf{I})=\mathbf{K}_{2}*(SE(\mathbf{K}_{f}*\mathbf{I})) \tag{5}\]  
In this configuration, \(\mathbf{K}_{f}\) refers to the \(3\times 3\) convolutional filter that merges the initial \(1\times 1\) and depth-wise convolutions. \(\mathbf{K}_{2}\) represents the final \(1\times 1\) convolutional filter. Each convolution in this sequence is followed by an activation function, and the architecture may include skip connections to facilitate effective training and convergence. Figure 4 showcases both the MBConv and Fused-MBConv Block. Figure 5 provides a visual representation of the base EfficientNetV2 model (B0) and the modifications we have implemented. These modifications are aimed at enhancing the network's performance in specific applications, demonstrating the adaptability and scalability of the EfficientNet architecture. Figure 4: Illustration of the MBConv and Fused-MBConv blocks. Figure 5: EfficientNetV2 base architecture with our post-pooling modifications. Our study employed EfficientNetV2-M, enhancing it with flattening and 256-neuron dense layers. The training process was executed over 15 epochs using the Adam optimizer [54], with the dataset divided into Training (75%), Validation (15%), and Testing (15%) sets (patient aware splits). The minimum validation loss determined early stopping. All CNN training and online affine augmentations were implemented with the open-source library Deep Fast Vision [55].