# Enhancing Skin Lesion Classification Performance with the ABC Ensemble Model
## 3 Materials and Methods
### Experiments  
This section summarizes the experiments that effectively demonstrate the performance of our model. It covers the configurations of the 15 experimental models, the training and testing setup, the category-wise classification performance, the Grad-CAM analysis, and the weight optimization. **Experimental Configurations:** To demonstrate the superiority of our proposed model, we conducted 15 experiments using different configurations:  
* GoogLeNet without preprocessing;
* AlexNet without preprocessing;
* ViT-B/16 without preprocessing;
* DenseNet121 without preprocessing;
* EfficientNet-B0 without preprocessing;
* MobileNetV2 without preprocessing;
* ResNet50 without preprocessing;
* ViT-B/16 with preprocessing (ROI extraction);
* DenseNet121 with preprocessing (ROI extraction, Upsampling);
* EfficientNet-B0 with preprocessing (ROI extraction, Segmentation);
* MobileNetV2 with preprocessing (ROI extraction, Morphological Transformation);
* ResNet50 with preprocessing (ROI extraction, Adjust Hue);
* Ensemble with weights and without ABCD;
* Ensemble with weights and with ABCD (Ours). These 15 experiments can be broadly divided into three categories. The first seven evaluate the performance of a single algorithm trained on raw data without preprocessing. These seven algorithms include the five used in our ensemble model (ViT-B/16 [21], DenseNet121 [14], EfficientNet-B0 [16], MobileNetV2 [15], and ResNet50 [12]), as well as two additional algorithms (GoogLeNet [49] AND AlexNet [50]). The next five experiments measure the performance of each of the five algorithms used in the ensemble model, with preprocessing applied (using different techniques depending on the algorithm). The final three experiments involve ensemble models, each differing in the application of weights and the ABCD rule. Detailed results for each configuration are provided in Section 4.1. **Training and Testing Setup:** For model training and testing, we divided the HAM10000 dataset into 80% training and 20% testing sets, using 5-fold cross-validation to avoid biased results towards specific test sets. The 10,015 images were split into 8012 training images and 2003 testing images, ensuring no overlap in the test sets for each fold. We trained the model five times and averaged the accuracy, recall, precision, and F1-score across the five folds to measure performance consistently. Table 2 shows the distribution of data per fold during THE K-fold cross-validation of the HAM10000 dataset used in the experiments. For hyperparameters, we set the batch size at 64 and the image size at \(256\times 256\) pixels. The learning rate was adjusted to 0.0001, and the Adam optimizer was employed for training. We selected 70 epochs after confirming that the model had sufficiently converged. Given that our model has an ensemble structure with multiple internal models, we aimed to keep the number of epochs as low as possible to prevent excessive training time. **Category-wise Classification Performance:** We visualized the confusion matrix to assess how effectively the ABC ensemble model performs for each class in skin lesion classification. The confusion matrix allows us to evaluate how closely the model's final predictions align with the actual classes and identify which class the model predicted incorrectly. This not only demonstrates the model's classification performance, but also allows us to see which classes the model has effectively learned and which classes it has struggled to learn adequately. The classification performance results for each of the seven skin lesion classes are presented in Section 4.2. **Grad-CAM Analysis:** We perform A Grad-CAM analysis to understand how our ABC ensemble model interprets and processes skin lesions. This demonstrates that our model is not simply performing well by chance, but is actually making correct and meaningful decisions. Grad-CAM (Gradient-weighted Class Activation Mapping) [51] is a technique used to visualize which areas of an input image a neural network focuses on when making a decision.