-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Welcome to the LesNet wiki! This wiki provides an overview of the project, its components, and the underlying technology.
To leverage the power of artificial intelligence to improve early detection and diagnosis of skin cancer. We believe that by providing a user-friendly, accurate, and reliable tool for medical professionals, we can help save lives and foster increased interest in using AI to solve complex medical problems.
The DataScraper tool within this application is designed to download and pre-process skin lesion images. The M-3.1 dataset is 102,225 images.
The dataset used for training the model is sourced from the International Skin Imaging Collaboration (ISIC) Archive. The ISIC Archive is a large-scale resource for skin image analysis, providing open access to a wide variety of images for the development and evaluation of automated diagnostic systems.
For more information about the ISIC Archive and to access the data, visit ISIC Archive.
The images are organized into three folders:
-
data/train
: Contains all images, which are used for training the model. - Images are placed in folders with their label as its name, for example
data/train/melanoma
The SVModel
model employs a sophisticated deep learning architecture based on InceptionV3 but tailored for skin lesion classification.
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Layer (type) ┃ Output Shape ┃ Param # ┃ Connected to ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ input_layer (InputLayer) │ (None, 160, 160, 3) │ 0 │ - │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d (Conv2D) │ (None, 79, 79, 32) │ 864 │ input_layer[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization │ (None, 79, 79, 32) │ 96 │ conv2d[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation (Activation) │ (None, 79, 79, 32) │ 0 │ batch_normalization[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_1 (Conv2D) │ (None, 77, 77, 32) │ 9,216 │ activation[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_1 │ (None, 77, 77, 32) │ 96 │ conv2d_1[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_1 (Activation) │ (None, 77, 77, 32) │ 0 │ batch_normalization_1[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_2 (Conv2D) │ (None, 77, 77, 64) │ 18,432 │ activation_1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_2 │ (None, 77, 77, 64) │ 192 │ conv2d_2[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_2 (Activation) │ (None, 77, 77, 64) │ 0 │ batch_normalization_2[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ max_pooling2d (MaxPooling2D) │ (None, 38, 38, 64) │ 0 │ activation_2[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_3 (Conv2D) │ (None, 38, 38, 80) │ 5,120 │ max_pooling2d[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_3 │ (None, 38, 38, 80) │ 240 │ conv2d_3[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_3 (Activation) │ (None, 38, 38, 80) │ 0 │ batch_normalization_3[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_4 (Conv2D) │ (None, 36, 36, 192) │ 138,240 │ activation_3[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_4 │ (None, 36, 36, 192) │ 576 │ conv2d_4[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_4 (Activation) │ (None, 36, 36, 192) │ 0 │ batch_normalization_4[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ max_pooling2d_1 │ (None, 17, 17, 192) │ 0 │ activation_4[0][0] │
│ (MaxPooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_8 (Conv2D) │ (None, 17, 17, 64) │ 12,288 │ max_pooling2d_1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_8 │ (None, 17, 17, 64) │ 192 │ conv2d_8[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_8 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_8[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_6 (Conv2D) │ (None, 17, 17, 48) │ 9,216 │ max_pooling2d_1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_9 (Conv2D) │ (None, 17, 17, 96) │ 55,296 │ activation_8[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_6 │ (None, 17, 17, 48) │ 144 │ conv2d_6[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_9 │ (None, 17, 17, 96) │ 288 │ conv2d_9[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_6 (Activation) │ (None, 17, 17, 48) │ 0 │ batch_normalization_6[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_9 (Activation) │ (None, 17, 17, 96) │ 0 │ batch_normalization_9[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d │ (None, 17, 17, 192) │ 0 │ max_pooling2d_1[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_5 (Conv2D) │ (None, 17, 17, 64) │ 12,288 │ max_pooling2d_1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_7 (Conv2D) │ (None, 17, 17, 64) │ 76,800 │ activation_6[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_10 (Conv2D) │ (None, 17, 17, 96) │ 82,944 │ activation_9[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_11 (Conv2D) │ (None, 17, 17, 32) │ 6,144 │ average_pooling2d[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_5 │ (None, 17, 17, 64) │ 192 │ conv2d_5[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_7 │ (None, 17, 17, 64) │ 192 │ conv2d_7[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_10 │ (None, 17, 17, 96) │ 288 │ conv2d_10[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_11 │ (None, 17, 17, 32) │ 96 │ conv2d_11[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_5 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_5[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_7 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_7[0][… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_10 (Activation) │ (None, 17, 17, 96) │ 0 │ batch_normalization_10[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_11 (Activation) │ (None, 17, 17, 32) │ 0 │ batch_normalization_11[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed0 (Concatenate) │ (None, 17, 17, 256) │ 0 │ activation_5[0][0], │
│ │ │ │ activation_7[0][0], │
│ │ │ │ activation_10[0][0], │
│ │ │ │ activation_11[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_15 (Conv2D) │ (None, 17, 17, 64) │ 16,384 │ mixed0[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_15 │ (None, 17, 17, 64) │ 192 │ conv2d_15[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_15 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_15[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_13 (Conv2D) │ (None, 17, 17, 48) │ 12,288 │ mixed0[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_16 (Conv2D) │ (None, 17, 17, 96) │ 55,296 │ activation_15[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_13 │ (None, 17, 17, 48) │ 144 │ conv2d_13[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_16 │ (None, 17, 17, 96) │ 288 │ conv2d_16[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_13 (Activation) │ (None, 17, 17, 48) │ 0 │ batch_normalization_13[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_16 (Activation) │ (None, 17, 17, 96) │ 0 │ batch_normalization_16[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_1 │ (None, 17, 17, 256) │ 0 │ mixed0[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_12 (Conv2D) │ (None, 17, 17, 64) │ 16,384 │ mixed0[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_14 (Conv2D) │ (None, 17, 17, 64) │ 76,800 │ activation_13[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_17 (Conv2D) │ (None, 17, 17, 96) │ 82,944 │ activation_16[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_18 (Conv2D) │ (None, 17, 17, 64) │ 16,384 │ average_pooling2d_1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_12 │ (None, 17, 17, 64) │ 192 │ conv2d_12[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_14 │ (None, 17, 17, 64) │ 192 │ conv2d_14[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_17 │ (None, 17, 17, 96) │ 288 │ conv2d_17[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_18 │ (None, 17, 17, 64) │ 192 │ conv2d_18[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_12 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_12[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_14 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_14[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_17 (Activation) │ (None, 17, 17, 96) │ 0 │ batch_normalization_17[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_18 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_18[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed1 (Concatenate) │ (None, 17, 17, 288) │ 0 │ activation_12[0][0], │
│ │ │ │ activation_14[0][0], │
│ │ │ │ activation_17[0][0], │
│ │ │ │ activation_18[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_22 (Conv2D) │ (None, 17, 17, 64) │ 18,432 │ mixed1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_22 │ (None, 17, 17, 64) │ 192 │ conv2d_22[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_22 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_22[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_20 (Conv2D) │ (None, 17, 17, 48) │ 13,824 │ mixed1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_23 (Conv2D) │ (None, 17, 17, 96) │ 55,296 │ activation_22[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_20 │ (None, 17, 17, 48) │ 144 │ conv2d_20[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_23 │ (None, 17, 17, 96) │ 288 │ conv2d_23[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_20 (Activation) │ (None, 17, 17, 48) │ 0 │ batch_normalization_20[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_23 (Activation) │ (None, 17, 17, 96) │ 0 │ batch_normalization_23[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_2 │ (None, 17, 17, 288) │ 0 │ mixed1[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_19 (Conv2D) │ (None, 17, 17, 64) │ 18,432 │ mixed1[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_21 (Conv2D) │ (None, 17, 17, 64) │ 76,800 │ activation_20[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_24 (Conv2D) │ (None, 17, 17, 96) │ 82,944 │ activation_23[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_25 (Conv2D) │ (None, 17, 17, 64) │ 18,432 │ average_pooling2d_2[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_19 │ (None, 17, 17, 64) │ 192 │ conv2d_19[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_21 │ (None, 17, 17, 64) │ 192 │ conv2d_21[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_24 │ (None, 17, 17, 96) │ 288 │ conv2d_24[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_25 │ (None, 17, 17, 64) │ 192 │ conv2d_25[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_19 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_19[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_21 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_21[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_24 (Activation) │ (None, 17, 17, 96) │ 0 │ batch_normalization_24[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_25 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_25[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed2 (Concatenate) │ (None, 17, 17, 288) │ 0 │ activation_19[0][0], │
│ │ │ │ activation_21[0][0], │
│ │ │ │ activation_24[0][0], │
│ │ │ │ activation_25[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_27 (Conv2D) │ (None, 17, 17, 64) │ 18,432 │ mixed2[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_27 │ (None, 17, 17, 64) │ 192 │ conv2d_27[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_27 (Activation) │ (None, 17, 17, 64) │ 0 │ batch_normalization_27[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_28 (Conv2D) │ (None, 17, 17, 96) │ 55,296 │ activation_27[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_28 │ (None, 17, 17, 96) │ 288 │ conv2d_28[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_28 (Activation) │ (None, 17, 17, 96) │ 0 │ batch_normalization_28[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_26 (Conv2D) │ (None, 8, 8, 384) │ 995,328 │ mixed2[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_29 (Conv2D) │ (None, 8, 8, 96) │ 82,944 │ activation_28[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_26 │ (None, 8, 8, 384) │ 1,152 │ conv2d_26[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_29 │ (None, 8, 8, 96) │ 288 │ conv2d_29[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_26 (Activation) │ (None, 8, 8, 384) │ 0 │ batch_normalization_26[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_29 (Activation) │ (None, 8, 8, 96) │ 0 │ batch_normalization_29[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ max_pooling2d_2 │ (None, 8, 8, 288) │ 0 │ mixed2[0][0] │
│ (MaxPooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed3 (Concatenate) │ (None, 8, 8, 768) │ 0 │ activation_26[0][0], │
│ │ │ │ activation_29[0][0], │
│ │ │ │ max_pooling2d_2[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_34 (Conv2D) │ (None, 8, 8, 128) │ 98,304 │ mixed3[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_34 │ (None, 8, 8, 128) │ 384 │ conv2d_34[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_34 (Activation) │ (None, 8, 8, 128) │ 0 │ batch_normalization_34[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_35 (Conv2D) │ (None, 8, 8, 128) │ 114,688 │ activation_34[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_35 │ (None, 8, 8, 128) │ 384 │ conv2d_35[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_35 (Activation) │ (None, 8, 8, 128) │ 0 │ batch_normalization_35[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_31 (Conv2D) │ (None, 8, 8, 128) │ 98,304 │ mixed3[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_36 (Conv2D) │ (None, 8, 8, 128) │ 114,688 │ activation_35[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_31 │ (None, 8, 8, 128) │ 384 │ conv2d_31[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_36 │ (None, 8, 8, 128) │ 384 │ conv2d_36[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_31 (Activation) │ (None, 8, 8, 128) │ 0 │ batch_normalization_31[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_36 (Activation) │ (None, 8, 8, 128) │ 0 │ batch_normalization_36[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_32 (Conv2D) │ (None, 8, 8, 128) │ 114,688 │ activation_31[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_37 (Conv2D) │ (None, 8, 8, 128) │ 114,688 │ activation_36[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_32 │ (None, 8, 8, 128) │ 384 │ conv2d_32[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_37 │ (None, 8, 8, 128) │ 384 │ conv2d_37[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_32 (Activation) │ (None, 8, 8, 128) │ 0 │ batch_normalization_32[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_37 (Activation) │ (None, 8, 8, 128) │ 0 │ batch_normalization_37[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_3 │ (None, 8, 8, 768) │ 0 │ mixed3[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_30 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed3[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_33 (Conv2D) │ (None, 8, 8, 192) │ 172,032 │ activation_32[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_38 (Conv2D) │ (None, 8, 8, 192) │ 172,032 │ activation_37[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_39 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ average_pooling2d_3[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_30 │ (None, 8, 8, 192) │ 576 │ conv2d_30[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_33 │ (None, 8, 8, 192) │ 576 │ conv2d_33[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_38 │ (None, 8, 8, 192) │ 576 │ conv2d_38[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_39 │ (None, 8, 8, 192) │ 576 │ conv2d_39[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_30 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_30[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_33 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_33[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_38 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_38[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_39 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_39[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed4 (Concatenate) │ (None, 8, 8, 768) │ 0 │ activation_30[0][0], │
│ │ │ │ activation_33[0][0], │
│ │ │ │ activation_38[0][0], │
│ │ │ │ activation_39[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_44 (Conv2D) │ (None, 8, 8, 160) │ 122,880 │ mixed4[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_44 │ (None, 8, 8, 160) │ 480 │ conv2d_44[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_44 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_44[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_45 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_44[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_45 │ (None, 8, 8, 160) │ 480 │ conv2d_45[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_45 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_45[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_41 (Conv2D) │ (None, 8, 8, 160) │ 122,880 │ mixed4[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_46 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_45[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_41 │ (None, 8, 8, 160) │ 480 │ conv2d_41[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_46 │ (None, 8, 8, 160) │ 480 │ conv2d_46[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_41 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_41[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_46 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_46[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_42 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_41[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_47 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_46[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_42 │ (None, 8, 8, 160) │ 480 │ conv2d_42[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_47 │ (None, 8, 8, 160) │ 480 │ conv2d_47[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_42 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_42[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_47 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_47[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_4 │ (None, 8, 8, 768) │ 0 │ mixed4[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_40 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed4[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_43 (Conv2D) │ (None, 8, 8, 192) │ 215,040 │ activation_42[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_48 (Conv2D) │ (None, 8, 8, 192) │ 215,040 │ activation_47[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_49 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ average_pooling2d_4[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_40 │ (None, 8, 8, 192) │ 576 │ conv2d_40[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_43 │ (None, 8, 8, 192) │ 576 │ conv2d_43[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_48 │ (None, 8, 8, 192) │ 576 │ conv2d_48[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_49 │ (None, 8, 8, 192) │ 576 │ conv2d_49[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_40 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_40[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_43 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_43[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_48 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_48[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_49 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_49[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed5 (Concatenate) │ (None, 8, 8, 768) │ 0 │ activation_40[0][0], │
│ │ │ │ activation_43[0][0], │
│ │ │ │ activation_48[0][0], │
│ │ │ │ activation_49[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_54 (Conv2D) │ (None, 8, 8, 160) │ 122,880 │ mixed5[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_54 │ (None, 8, 8, 160) │ 480 │ conv2d_54[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_54 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_54[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_55 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_54[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_55 │ (None, 8, 8, 160) │ 480 │ conv2d_55[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_55 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_55[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_51 (Conv2D) │ (None, 8, 8, 160) │ 122,880 │ mixed5[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_56 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_55[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_51 │ (None, 8, 8, 160) │ 480 │ conv2d_51[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_56 │ (None, 8, 8, 160) │ 480 │ conv2d_56[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_51 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_51[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_56 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_56[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_52 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_51[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_57 (Conv2D) │ (None, 8, 8, 160) │ 179,200 │ activation_56[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_52 │ (None, 8, 8, 160) │ 480 │ conv2d_52[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_57 │ (None, 8, 8, 160) │ 480 │ conv2d_57[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_52 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_52[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_57 (Activation) │ (None, 8, 8, 160) │ 0 │ batch_normalization_57[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_5 │ (None, 8, 8, 768) │ 0 │ mixed5[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_50 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed5[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_53 (Conv2D) │ (None, 8, 8, 192) │ 215,040 │ activation_52[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_58 (Conv2D) │ (None, 8, 8, 192) │ 215,040 │ activation_57[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_59 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ average_pooling2d_5[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_50 │ (None, 8, 8, 192) │ 576 │ conv2d_50[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_53 │ (None, 8, 8, 192) │ 576 │ conv2d_53[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_58 │ (None, 8, 8, 192) │ 576 │ conv2d_58[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_59 │ (None, 8, 8, 192) │ 576 │ conv2d_59[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_50 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_50[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_53 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_53[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_58 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_58[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_59 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_59[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed6 (Concatenate) │ (None, 8, 8, 768) │ 0 │ activation_50[0][0], │
│ │ │ │ activation_53[0][0], │
│ │ │ │ activation_58[0][0], │
│ │ │ │ activation_59[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_64 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed6[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_64 │ (None, 8, 8, 192) │ 576 │ conv2d_64[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_64 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_64[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_65 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_64[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_65 │ (None, 8, 8, 192) │ 576 │ conv2d_65[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_65 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_65[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_61 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed6[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_66 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_65[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_61 │ (None, 8, 8, 192) │ 576 │ conv2d_61[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_66 │ (None, 8, 8, 192) │ 576 │ conv2d_66[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_61 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_61[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_66 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_66[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_62 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_61[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_67 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_66[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_62 │ (None, 8, 8, 192) │ 576 │ conv2d_62[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_67 │ (None, 8, 8, 192) │ 576 │ conv2d_67[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_62 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_62[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_67 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_67[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_6 │ (None, 8, 8, 768) │ 0 │ mixed6[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_60 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed6[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_63 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_62[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_68 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_67[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_69 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ average_pooling2d_6[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_60 │ (None, 8, 8, 192) │ 576 │ conv2d_60[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_63 │ (None, 8, 8, 192) │ 576 │ conv2d_63[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_68 │ (None, 8, 8, 192) │ 576 │ conv2d_68[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_69 │ (None, 8, 8, 192) │ 576 │ conv2d_69[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_60 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_60[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_63 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_63[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_68 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_68[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_69 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_69[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed7 (Concatenate) │ (None, 8, 8, 768) │ 0 │ activation_60[0][0], │
│ │ │ │ activation_63[0][0], │
│ │ │ │ activation_68[0][0], │
│ │ │ │ activation_69[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_72 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed7[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_72 │ (None, 8, 8, 192) │ 576 │ conv2d_72[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_72 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_72[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_73 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_72[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_73 │ (None, 8, 8, 192) │ 576 │ conv2d_73[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_73 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_73[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_70 (Conv2D) │ (None, 8, 8, 192) │ 147,456 │ mixed7[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_74 (Conv2D) │ (None, 8, 8, 192) │ 258,048 │ activation_73[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_70 │ (None, 8, 8, 192) │ 576 │ conv2d_70[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_74 │ (None, 8, 8, 192) │ 576 │ conv2d_74[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_70 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_70[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_74 (Activation) │ (None, 8, 8, 192) │ 0 │ batch_normalization_74[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_71 (Conv2D) │ (None, 3, 3, 320) │ 552,960 │ activation_70[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_75 (Conv2D) │ (None, 3, 3, 192) │ 331,776 │ activation_74[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_71 │ (None, 3, 3, 320) │ 960 │ conv2d_71[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_75 │ (None, 3, 3, 192) │ 576 │ conv2d_75[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_71 (Activation) │ (None, 3, 3, 320) │ 0 │ batch_normalization_71[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_75 (Activation) │ (None, 3, 3, 192) │ 0 │ batch_normalization_75[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ max_pooling2d_3 │ (None, 3, 3, 768) │ 0 │ mixed7[0][0] │
│ (MaxPooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed8 (Concatenate) │ (None, 3, 3, 1280) │ 0 │ activation_71[0][0], │
│ │ │ │ activation_75[0][0], │
│ │ │ │ max_pooling2d_3[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_80 (Conv2D) │ (None, 3, 3, 448) │ 573,440 │ mixed8[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_80 │ (None, 3, 3, 448) │ 1,344 │ conv2d_80[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_80 (Activation) │ (None, 3, 3, 448) │ 0 │ batch_normalization_80[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_77 (Conv2D) │ (None, 3, 3, 384) │ 491,520 │ mixed8[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_81 (Conv2D) │ (None, 3, 3, 384) │ 1,548,288 │ activation_80[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_77 │ (None, 3, 3, 384) │ 1,152 │ conv2d_77[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_81 │ (None, 3, 3, 384) │ 1,152 │ conv2d_81[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_77 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_77[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_81 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_81[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_78 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_77[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_79 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_77[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_82 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_81[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_83 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_81[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_7 │ (None, 3, 3, 1280) │ 0 │ mixed8[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_76 (Conv2D) │ (None, 3, 3, 320) │ 409,600 │ mixed8[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_78 │ (None, 3, 3, 384) │ 1,152 │ conv2d_78[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_79 │ (None, 3, 3, 384) │ 1,152 │ conv2d_79[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_82 │ (None, 3, 3, 384) │ 1,152 │ conv2d_82[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_83 │ (None, 3, 3, 384) │ 1,152 │ conv2d_83[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_84 (Conv2D) │ (None, 3, 3, 192) │ 245,760 │ average_pooling2d_7[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_76 │ (None, 3, 3, 320) │ 960 │ conv2d_76[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_78 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_78[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_79 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_79[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_82 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_82[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_83 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_83[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_84 │ (None, 3, 3, 192) │ 576 │ conv2d_84[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_76 (Activation) │ (None, 3, 3, 320) │ 0 │ batch_normalization_76[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed9_0 (Concatenate) │ (None, 3, 3, 768) │ 0 │ activation_78[0][0], │
│ │ │ │ activation_79[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ concatenate (Concatenate) │ (None, 3, 3, 768) │ 0 │ activation_82[0][0], │
│ │ │ │ activation_83[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_84 (Activation) │ (None, 3, 3, 192) │ 0 │ batch_normalization_84[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed9 (Concatenate) │ (None, 3, 3, 2048) │ 0 │ activation_76[0][0], │
│ │ │ │ mixed9_0[0][0], │
│ │ │ │ concatenate[0][0], │
│ │ │ │ activation_84[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_89 (Conv2D) │ (None, 3, 3, 448) │ 917,504 │ mixed9[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_89 │ (None, 3, 3, 448) │ 1,344 │ conv2d_89[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_89 (Activation) │ (None, 3, 3, 448) │ 0 │ batch_normalization_89[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_86 (Conv2D) │ (None, 3, 3, 384) │ 786,432 │ mixed9[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_90 (Conv2D) │ (None, 3, 3, 384) │ 1,548,288 │ activation_89[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_86 │ (None, 3, 3, 384) │ 1,152 │ conv2d_86[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_90 │ (None, 3, 3, 384) │ 1,152 │ conv2d_90[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_86 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_86[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_90 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_90[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_87 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_86[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_88 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_86[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_91 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_90[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_92 (Conv2D) │ (None, 3, 3, 384) │ 442,368 │ activation_90[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ average_pooling2d_8 │ (None, 3, 3, 2048) │ 0 │ mixed9[0][0] │
│ (AveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_85 (Conv2D) │ (None, 3, 3, 320) │ 655,360 │ mixed9[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_87 │ (None, 3, 3, 384) │ 1,152 │ conv2d_87[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_88 │ (None, 3, 3, 384) │ 1,152 │ conv2d_88[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_91 │ (None, 3, 3, 384) │ 1,152 │ conv2d_91[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_92 │ (None, 3, 3, 384) │ 1,152 │ conv2d_92[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ conv2d_93 (Conv2D) │ (None, 3, 3, 192) │ 393,216 │ average_pooling2d_8[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_85 │ (None, 3, 3, 320) │ 960 │ conv2d_85[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_87 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_87[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_88 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_88[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_91 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_91[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_92 (Activation) │ (None, 3, 3, 384) │ 0 │ batch_normalization_92[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_93 │ (None, 3, 3, 192) │ 576 │ conv2d_93[0][0] │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_85 (Activation) │ (None, 3, 3, 320) │ 0 │ batch_normalization_85[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed9_1 (Concatenate) │ (None, 3, 3, 768) │ 0 │ activation_87[0][0], │
│ │ │ │ activation_88[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ concatenate_1 (Concatenate) │ (None, 3, 3, 768) │ 0 │ activation_91[0][0], │
│ │ │ │ activation_92[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ activation_93 (Activation) │ (None, 3, 3, 192) │ 0 │ batch_normalization_93[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ mixed10 (Concatenate) │ (None, 3, 3, 2048) │ 0 │ activation_85[0][0], │
│ │ │ │ mixed9_1[0][0], │
│ │ │ │ concatenate_1[0][0], │
│ │ │ │ activation_93[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ global_average_pooling2d │ (None, 2048) │ 0 │ mixed10[0][0] │
│ (GlobalAveragePooling2D) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ batch_normalization_94 │ (None, 2048) │ 8,192 │ global_average_pooling2d[… │
│ (BatchNormalization) │ │ │ │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ dense (Dense) │ (None, 2048) │ 4,196,352 │ batch_normalization_94[0]… │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ dropout (Dropout) │ (None, 2048) │ 0 │ dense[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ dense_1 (Dense) │ (None, 1024) │ 2,098,176 │ dropout[0][0] │
├───────────────────────────────┼───────────────────────────┼─────────────────┼────────────────────────────┤
│ dense_2 (Dense) │ (None, 28) │ 28,700 │ dense_1[0][0] │
└───────────────────────────────┴───────────────────────────┴─────────────────┴────────────────────────────┘
Total params: 28,134,204 (107.32 MB)
Trainable params: 6,327,516 (24.14 MB)
Non-trainable params: 21,806,688 (83.19 MB)
102,225 files belonging to 28 classes. Using 81,780 files for training. Using 20,445 files for validation.
For a detailed explanation of the training process, refer to the Training Process wiki page.
The updated model demonstrates significant improvements in its ability to classify skin lesions accurately, achieving an accuracy of 84% and a loss of 0.23 on the testing dataset. The model's sensitivity, specificity, precision, and F1 score have also seen considerable enhancements, with the following scores reported on the testing dataset:
- Recall: 69.24%
- Precision: 77.94%
- Accuracy: 72%
- Loss: 1.04571
Metric | Target Range | Progress |
---|---|---|
Loss | Close to 0 | |
Accuracy | 85% - 95% | |
Precision | 80% - 90% | |
Recall | 85% - 95% |