## 3 Materials and Methods
### Experiment Setup  
For the experimental setup, the dataset was split into training and validation sets with an 80:20 ratio. With 1000 images per class, this translated to 800 training images and 200 validation images for each category. Using the new Enhanced GAN, the model was trained on those 800 training images per class. We used a learning rate of 0.00007 for the Generator and 0.00005 for the Discriminator. In the reference paper [12], specifics regarding generated image size and quantity were not provided, so we generated 224 \(\times\) 224 size images, creating one additional image for each training image. Following the methodology in [12], we did not generate images for the normal-ececum and normal-polorus classes as these already demonstrated relatively higher classification performance due to their clear characteristics.  
As in paper [12], additional augmentation techniques implemented during training included random vertical and horizontal flipping, with rotation angles randomly selected between \(-90^{\circ}\) and \(90^{\circ}\), along with random image cropping. Transfer learning was utilized across all models, which were initialized with pre-trained weights and customized by adding a fully connected layer at the end. Most images were resized to 224 \(\times\) 224 \(\times\) 3 pixels for compatibility with the models, with the exception of InceptionNet-V3, which required a larger input size of 299 \(\times\) 299 \(\times\) 3 pixels due to its first convolutional layer specifications. The batch size was generally set at 64, except for EfficientNet-B7, which used a smaller batch size of 32 due to memory constraints.  
Some images contained artifacts such as letters or green screens from endoscope equipment in the lower-left corner. However, since these elements appeared consistently across most categories, they were not expected to significantly impact model learning, and no specific preprocessing was applied to remove them, maintaining consistency with the methodology in [12].  
Five deep learning models were evaluated in this study using PyTorch (v2.1, Meta Platforms, Inc., Menlo Park, CA, USA) as the implementation framework. Each model underwent 300 epochs of training. Optimizer selection varied by model architecture, with Adam optimizer proving most effective for VGG-16 and DenseNet-121, while RMSprop delivered superior performance for ResNet-50, InceptionNet-V3, EfficientNet-B7. The learning rate was initialized at 0.0001, with CosineAnnealingLR employed as the scheduler. CrossEntropyLoss served as the loss function, and the CosineAnnealing scheduler was configured with a maximum of 50 iterations and a minimum learning rate of 0. For every single model architecture and for GAN model training and generating, we used NVIDIA RTX A4500 (NVIDIA Corporation, Santa Clara, CA, USA), except for EfficientNet-B7, where we used RTX 4090 (NVIDIA Corporation, Santa Clara, CA, USA) because the RTX A4500 lacked the memory size to run the model.  
All hyperparameters are listed in Table 1.  
\begin{table}
\begin{tabular}{c c c} \hline
**Component** & **Parameter** & **Value** \\ \hline Enhanced GAN & Generator Learning Rate & 0.00007 \\ \hline  & Discriminator Learning Rate & 0.00005 \\ \hline  & Image Size & 224 \(\times\) 224 \\ \hline \end{tabular}
\end{table}
Table 1: Hyperparameter settings for models and training.