{ "cells": [ { "cell_type": "code", "execution_count": 24, "id": "4b3f3015", "metadata": {}, "outputs": [], "source": [ "import warnings\n", "warnings.filterwarnings('ignore')" ] }, { "cell_type": "code", "execution_count": 25, "id": "e4863a95", "metadata": {}, "outputs": [], "source": [ "import tensorflow as tf\n", "from tensorflow.keras.preprocessing.image import ImageDataGenerator\n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "code", "execution_count": 26, "id": "c5df6c2f", "metadata": {}, "outputs": [], "source": [ "train_path='../Data/train'\n", "test_path='../Data/test'" ] }, { "cell_type": "code", "execution_count": 27, "id": "651f869f", "metadata": {}, "outputs": [], "source": [ "train_datagen=ImageDataGenerator(\n", " rescale=1./255,\n", " rotation_range=20,\n", " zoom_range=0.2,\n", " horizontal_flip=True\n", ")" ] }, { "cell_type": "code", "execution_count": 28, "id": "37b1c666", "metadata": {}, "outputs": [], "source": [ "test_datagen=ImageDataGenerator(rescale=1./255)" ] }, { "cell_type": "code", "execution_count": 29, "id": "cfe34b85", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Found 840 images belonging to 2 classes.\n" ] } ], "source": [ "training_set=train_datagen.flow_from_directory(\n", " '../Data/train',\n", " target_size=(224,224),\n", " batch_size=32,\n", " class_mode='categorical'\n", ")" ] }, { "cell_type": "code", "execution_count": 30, "id": "2cc5df3b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Found 188 images belonging to 2 classes.\n" ] } ], "source": [ "test_set=test_datagen.flow_from_directory(\n", " '../Data/test',\n", " target_size=(224,224),\n", " batch_size=32,\n", " class_mode='categorical'\n", ")" ] }, { "cell_type": "code", "execution_count": 31, "id": "bc5b004b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Class Indices : {'African': 0, 'Asian': 1}\n" ] } ], "source": [ "print(\"Class Indices : \",training_set.class_indices)" ] }, { "cell_type": "markdown", "id": "343c0a40", "metadata": {}, "source": [ "## Model Building" ] }, { "cell_type": "code", "execution_count": 32, "id": "d30d272b", "metadata": {}, "outputs": [], "source": [ "model=tf.keras.models.Sequential()\n", "\n", "model.add(tf.keras.layers.Conv2D(32,(3,3),activation='relu',input_shape=(224,224,3)))\n", "model.add(tf.keras.layers.BatchNormalization())\n", "model.add(tf.keras.layers.MaxPooling2D((2,2)))\n", "\n", "model.add(tf.keras.layers.Conv2D(64,(3,3),activation='relu'))\n", "model.add(tf.keras.layers.BatchNormalization())\n", "model.add(tf.keras.layers.MaxPooling2D(2,2))\n", "\n", "model.add(tf.keras.layers.Conv2D(128,(3,3),activation='relu'))\n", "model.add(tf.keras.layers.BatchNormalization())\n", "model.add(tf.keras.layers.MaxPooling2D(2,2))\n", "\n", "model.add(tf.keras.layers.Conv2D(256,(3,3),activation='relu'))\n", "model.add(tf.keras.layers.BatchNormalization())\n", "model.add(tf.keras.layers.MaxPooling2D(2,2))\n", "\n", "model.add(tf.keras.layers.Flatten())\n", "\n", "model.add(tf.keras.layers.Dense(256,activation='relu'))\n", "model.add(tf.keras.layers.Dropout(0.5))\n", "model.add(tf.keras.layers.Dense(128,activation='relu'))\n", "\n", "model.add(tf.keras.layers.Dense(2,activation='softmax'))\n" ] }, { "cell_type": "code", "execution_count": 33, "id": "837c62fe", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
Model: \"sequential_1\"\n",
       "
\n" ], "text/plain": [ "\u001b[1mModel: \"sequential_1\"\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
       "┃ Layer (type)                     Output Shape                  Param # ┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
       "│ conv2d_4 (Conv2D)               │ (None, 222, 222, 32)   │           896 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ batch_normalization_4           │ (None, 222, 222, 32)   │           128 │\n",
       "│ (BatchNormalization)            │                        │               │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_4 (MaxPooling2D)  │ (None, 111, 111, 32)   │             0 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_5 (Conv2D)               │ (None, 109, 109, 64)   │        18,496 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ batch_normalization_5           │ (None, 109, 109, 64)   │           256 │\n",
       "│ (BatchNormalization)            │                        │               │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_5 (MaxPooling2D)  │ (None, 54, 54, 64)     │             0 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_6 (Conv2D)               │ (None, 52, 52, 128)    │        73,856 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ batch_normalization_6           │ (None, 52, 52, 128)    │           512 │\n",
       "│ (BatchNormalization)            │                        │               │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_6 (MaxPooling2D)  │ (None, 26, 26, 128)    │             0 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ conv2d_7 (Conv2D)               │ (None, 24, 24, 256)    │       295,168 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ batch_normalization_7           │ (None, 24, 24, 256)    │         1,024 │\n",
       "│ (BatchNormalization)            │                        │               │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ max_pooling2d_7 (MaxPooling2D)  │ (None, 12, 12, 256)    │             0 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ flatten_1 (Flatten)             │ (None, 36864)          │             0 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dense_5 (Dense)                 │ (None, 256)            │     9,437,440 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dropout_2 (Dropout)             │ (None, 256)            │             0 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dense_6 (Dense)                 │ (None, 128)            │        32,896 │\n",
       "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
       "│ dense_7 (Dense)                 │ (None, 2)              │           258 │\n",
       "└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
       "
\n" ], "text/plain": [ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n", "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n", "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n", "│ conv2d_4 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m222\u001b[0m, \u001b[38;5;34m222\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m896\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ batch_normalization_4 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m222\u001b[0m, \u001b[38;5;34m222\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m128\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ max_pooling2d_4 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m111\u001b[0m, \u001b[38;5;34m111\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ conv2d_5 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m109\u001b[0m, \u001b[38;5;34m109\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m18,496\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ batch_normalization_5 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m109\u001b[0m, \u001b[38;5;34m109\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m256\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ max_pooling2d_5 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m54\u001b[0m, \u001b[38;5;34m54\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ conv2d_6 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m52\u001b[0m, \u001b[38;5;34m52\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m73,856\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ batch_normalization_6 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m52\u001b[0m, \u001b[38;5;34m52\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m512\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ max_pooling2d_6 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m26\u001b[0m, \u001b[38;5;34m26\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ conv2d_7 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m24\u001b[0m, \u001b[38;5;34m24\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m295,168\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ batch_normalization_7 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m24\u001b[0m, \u001b[38;5;34m24\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m1,024\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ max_pooling2d_7 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m12\u001b[0m, \u001b[38;5;34m12\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ flatten_1 (\u001b[38;5;33mFlatten\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m36864\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ dense_5 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m9,437,440\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ dropout_2 (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ dense_6 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m32,896\u001b[0m │\n", "├─────────────────────────────────┼────────────────────────┼───────────────┤\n", "│ dense_7 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m2\u001b[0m) │ \u001b[38;5;34m258\u001b[0m │\n", "└─────────────────────────────────┴────────────────────────┴───────────────┘\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Total params: 9,860,930 (37.62 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m9,860,930\u001b[0m (37.62 MB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Trainable params: 9,859,970 (37.61 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m9,859,970\u001b[0m (37.61 MB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Non-trainable params: 960 (3.75 KB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m960\u001b[0m (3.75 KB)\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "model.summary()" ] }, { "cell_type": "code", "execution_count": 34, "id": "5b390d30", "metadata": {}, "outputs": [], "source": [ "model.compile(optimizer='adam',loss='categorical_crossentropy',metrics=['accuracy'])" ] }, { "cell_type": "code", "execution_count": 35, "id": "171f5289", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Epoch 1/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m39s\u001b[0m 1s/step - accuracy: 0.5119 - loss: 4.7620 - val_accuracy: 0.5160 - val_loss: 4.2555\n", "Epoch 2/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5179 - loss: 4.8246 - val_accuracy: 0.4840 - val_loss: 9.3489\n", "Epoch 3/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.4976 - loss: 4.4525 - val_accuracy: 0.5160 - val_loss: 4.7892\n", "Epoch 4/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5238 - loss: 3.5669 - val_accuracy: 0.5532 - val_loss: 1.3650\n", "Epoch 5/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5131 - loss: 2.6736 - val_accuracy: 0.5213 - val_loss: 1.9271\n", "Epoch 6/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5321 - loss: 2.2229 - val_accuracy: 0.6064 - val_loss: 0.9964\n", "Epoch 7/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5048 - loss: 2.0965 - val_accuracy: 0.5213 - val_loss: 3.8162\n", "Epoch 8/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5452 - loss: 1.5728 - val_accuracy: 0.6330 - val_loss: 1.0235\n", "Epoch 9/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5560 - loss: 1.4260 - val_accuracy: 0.5000 - val_loss: 2.5531\n", "Epoch 10/10\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5333 - loss: 1.3629 - val_accuracy: 0.5213 - val_loss: 1.0807\n" ] } ], "source": [ "history=model.fit(\n", " training_set,\n", " validation_data=test_set,\n", " epochs=10\n", ")" ] }, { "cell_type": "code", "execution_count": 36, "id": "492268aa", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING:absl:You are saving your model as an HDF5 file via `model.save()` or `keras.saving.save_model(model)`. This file format is considered legacy. We recommend using instead the native Keras format, e.g. `model.save('my_model.keras')` or `keras.saving.save_model(model, 'my_model.keras')`. \n" ] } ], "source": [ "model.save('../Models/base1.h5')" ] }, { "cell_type": "code", "execution_count": 37, "id": "4dbb9775", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Epoch 1/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m31s\u001b[0m 1s/step - accuracy: 0.5369 - loss: 1.1742 - val_accuracy: 0.6064 - val_loss: 0.8373\n", "Epoch 2/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m31s\u001b[0m 1s/step - accuracy: 0.5548 - loss: 0.9726 - val_accuracy: 0.6489 - val_loss: 0.9056\n", "Epoch 3/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5274 - loss: 0.9327 - val_accuracy: 0.5691 - val_loss: 0.8091\n", "Epoch 4/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5369 - loss: 0.8900 - val_accuracy: 0.6277 - val_loss: 0.7191\n", "Epoch 5/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m31s\u001b[0m 1s/step - accuracy: 0.5202 - loss: 0.8681 - val_accuracy: 0.5851 - val_loss: 0.7360\n", "Epoch 6/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5548 - loss: 0.7775 - val_accuracy: 0.6489 - val_loss: 0.6532\n", "Epoch 7/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5643 - loss: 0.7389 - val_accuracy: 0.5319 - val_loss: 0.6811\n", "Epoch 8/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5393 - loss: 0.7063 - val_accuracy: 0.6170 - val_loss: 0.6608\n", "Epoch 9/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m30s\u001b[0m 1s/step - accuracy: 0.5512 - loss: 0.7172 - val_accuracy: 0.6277 - val_loss: 0.6696\n", "Epoch 10/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5417 - loss: 0.7183 - val_accuracy: 0.5638 - val_loss: 0.6854\n", "Epoch 11/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5643 - loss: 0.6935 - val_accuracy: 0.5957 - val_loss: 0.6764\n", "Epoch 12/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5631 - loss: 0.6974 - val_accuracy: 0.6436 - val_loss: 0.6384\n", "Epoch 13/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5786 - loss: 0.7023 - val_accuracy: 0.6543 - val_loss: 0.6457\n", "Epoch 14/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.5548 - loss: 0.7375 - val_accuracy: 0.5745 - val_loss: 0.6696\n", "Epoch 15/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5845 - loss: 0.6946 - val_accuracy: 0.6862 - val_loss: 0.6647\n", "Epoch 16/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5714 - loss: 0.6891 - val_accuracy: 0.6064 - val_loss: 0.6514\n", "Epoch 17/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.5798 - loss: 0.6914 - val_accuracy: 0.6543 - val_loss: 0.6366\n", "Epoch 18/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5548 - loss: 0.7050 - val_accuracy: 0.5957 - val_loss: 0.6579\n", "Epoch 19/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.5690 - loss: 0.6910 - val_accuracy: 0.6330 - val_loss: 0.6527\n", "Epoch 20/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.5905 - loss: 0.6701 - val_accuracy: 0.6170 - val_loss: 0.6625\n", "Epoch 21/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6048 - loss: 0.7065 - val_accuracy: 0.6968 - val_loss: 0.6012\n", "Epoch 22/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5750 - loss: 0.6813 - val_accuracy: 0.6915 - val_loss: 0.6274\n", "Epoch 23/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6071 - loss: 0.6733 - val_accuracy: 0.6755 - val_loss: 0.6364\n", "Epoch 24/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6071 - loss: 0.6666 - val_accuracy: 0.6649 - val_loss: 0.6323\n", "Epoch 25/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6095 - loss: 0.6774 - val_accuracy: 0.6064 - val_loss: 0.6475\n", "Epoch 26/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5988 - loss: 0.6651 - val_accuracy: 0.6436 - val_loss: 0.6887\n", "Epoch 27/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6036 - loss: 0.6679 - val_accuracy: 0.6649 - val_loss: 0.6458\n", "Epoch 28/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5929 - loss: 0.6762 - val_accuracy: 0.5851 - val_loss: 0.6651\n", "Epoch 29/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.5857 - loss: 0.6922 - val_accuracy: 0.6011 - val_loss: 0.6656\n", "Epoch 30/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5893 - loss: 0.6742 - val_accuracy: 0.6330 - val_loss: 0.6494\n", "Epoch 31/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6000 - loss: 0.6782 - val_accuracy: 0.7447 - val_loss: 0.6281\n", "Epoch 32/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6024 - loss: 0.6616 - val_accuracy: 0.6489 - val_loss: 0.6338\n", "Epoch 33/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6179 - loss: 0.6397 - val_accuracy: 0.6862 - val_loss: 0.6303\n", "Epoch 34/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6238 - loss: 0.6547 - val_accuracy: 0.6862 - val_loss: 0.6085\n", "Epoch 35/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6167 - loss: 0.6510 - val_accuracy: 0.6170 - val_loss: 0.6622\n", "Epoch 36/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6071 - loss: 0.6398 - val_accuracy: 0.6809 - val_loss: 0.5858\n", "Epoch 37/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.5917 - loss: 0.6768 - val_accuracy: 0.6064 - val_loss: 0.6660\n", "Epoch 38/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6060 - loss: 0.6479 - val_accuracy: 0.6702 - val_loss: 0.5821\n", "Epoch 39/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6036 - loss: 0.6308 - val_accuracy: 0.7287 - val_loss: 0.5963\n", "Epoch 40/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6345 - loss: 0.6438 - val_accuracy: 0.6915 - val_loss: 0.5844\n", "Epoch 41/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6274 - loss: 0.6509 - val_accuracy: 0.7074 - val_loss: 0.6235\n", "Epoch 42/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.5857 - loss: 0.6454 - val_accuracy: 0.6862 - val_loss: 0.6216\n", "Epoch 43/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6083 - loss: 0.6523 - val_accuracy: 0.6862 - val_loss: 0.6033\n", "Epoch 44/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6238 - loss: 0.6345 - val_accuracy: 0.7234 - val_loss: 0.6017\n", "Epoch 45/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6274 - loss: 0.6544 - val_accuracy: 0.6968 - val_loss: 0.6291\n", "Epoch 46/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6095 - loss: 0.6435 - val_accuracy: 0.7287 - val_loss: 0.5690\n", "Epoch 47/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6190 - loss: 0.6482 - val_accuracy: 0.6755 - val_loss: 0.6380\n", "Epoch 48/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6333 - loss: 0.6108 - val_accuracy: 0.6862 - val_loss: 0.6662\n", "Epoch 49/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6119 - loss: 0.6468 - val_accuracy: 0.6702 - val_loss: 0.6681\n", "Epoch 50/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6167 - loss: 0.6475 - val_accuracy: 0.6223 - val_loss: 0.6837\n", "Epoch 51/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6226 - loss: 0.6247 - val_accuracy: 0.6862 - val_loss: 0.6330\n", "Epoch 52/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6381 - loss: 0.6239 - val_accuracy: 0.6809 - val_loss: 0.6342\n", "Epoch 53/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6190 - loss: 0.6199 - val_accuracy: 0.6702 - val_loss: 0.6709\n", "Epoch 54/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6238 - loss: 0.6135 - val_accuracy: 0.6436 - val_loss: 0.6328\n", "Epoch 55/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6464 - loss: 0.5993 - val_accuracy: 0.7287 - val_loss: 0.6363\n", "Epoch 56/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6429 - loss: 0.6027 - val_accuracy: 0.7074 - val_loss: 0.5894\n", "Epoch 57/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m31s\u001b[0m 1s/step - accuracy: 0.6548 - loss: 0.6120 - val_accuracy: 0.7181 - val_loss: 0.6317\n", "Epoch 58/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6405 - loss: 0.6284 - val_accuracy: 0.6968 - val_loss: 0.5926\n", "Epoch 59/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6679 - loss: 0.5856 - val_accuracy: 0.6862 - val_loss: 0.6262\n", "Epoch 60/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6560 - loss: 0.5948 - val_accuracy: 0.6702 - val_loss: 0.6097\n", "Epoch 61/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6393 - loss: 0.6173 - val_accuracy: 0.6383 - val_loss: 0.6229\n", "Epoch 62/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6476 - loss: 0.6089 - val_accuracy: 0.6755 - val_loss: 0.6023\n", "Epoch 63/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6726 - loss: 0.6037 - val_accuracy: 0.6755 - val_loss: 0.6639\n", "Epoch 64/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6464 - loss: 0.5775 - val_accuracy: 0.6383 - val_loss: 0.6884\n", "Epoch 65/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6524 - loss: 0.5756 - val_accuracy: 0.6649 - val_loss: 0.6095\n", "Epoch 66/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6536 - loss: 0.5950 - val_accuracy: 0.7128 - val_loss: 0.5700\n", "Epoch 67/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6440 - loss: 0.6048 - val_accuracy: 0.6862 - val_loss: 0.6374\n", "Epoch 68/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6357 - loss: 0.6214 - val_accuracy: 0.7074 - val_loss: 0.6137\n", "Epoch 69/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6560 - loss: 0.5908 - val_accuracy: 0.6702 - val_loss: 0.6571\n", "Epoch 70/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6512 - loss: 0.6054 - val_accuracy: 0.6968 - val_loss: 0.6631\n", "Epoch 71/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6333 - loss: 0.6229 - val_accuracy: 0.6543 - val_loss: 0.6650\n", "Epoch 72/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6512 - loss: 0.6380 - val_accuracy: 0.6489 - val_loss: 0.6660\n", "Epoch 73/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6357 - loss: 0.6209 - val_accuracy: 0.6702 - val_loss: 0.5909\n", "Epoch 74/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6560 - loss: 0.6170 - val_accuracy: 0.6862 - val_loss: 0.6224\n", "Epoch 75/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6607 - loss: 0.6028 - val_accuracy: 0.6436 - val_loss: 0.6071\n", "Epoch 76/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6821 - loss: 0.5596 - val_accuracy: 0.6755 - val_loss: 0.6232\n", "Epoch 77/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6548 - loss: 0.5867 - val_accuracy: 0.6809 - val_loss: 0.6329\n", "Epoch 78/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6738 - loss: 0.5704 - val_accuracy: 0.6543 - val_loss: 0.6433\n", "Epoch 79/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6619 - loss: 0.5960 - val_accuracy: 0.6596 - val_loss: 0.6210\n", "Epoch 80/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6619 - loss: 0.6191 - val_accuracy: 0.7181 - val_loss: 0.5745\n", "Epoch 81/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6595 - loss: 0.6065 - val_accuracy: 0.7128 - val_loss: 0.5884\n", "Epoch 82/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6524 - loss: 0.5932 - val_accuracy: 0.6915 - val_loss: 0.5974\n", "Epoch 83/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6583 - loss: 0.6098 - val_accuracy: 0.7181 - val_loss: 0.6132\n", "Epoch 84/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6726 - loss: 0.5707 - val_accuracy: 0.7606 - val_loss: 0.5898\n", "Epoch 85/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6726 - loss: 0.5837 - val_accuracy: 0.7074 - val_loss: 0.6669\n", "Epoch 86/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6524 - loss: 0.5737 - val_accuracy: 0.7394 - val_loss: 0.5837\n", "Epoch 87/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6762 - loss: 0.5636 - val_accuracy: 0.7234 - val_loss: 0.6056\n", "Epoch 88/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m32s\u001b[0m 1s/step - accuracy: 0.6631 - loss: 0.5946 - val_accuracy: 0.6968 - val_loss: 0.6459\n", "Epoch 89/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6429 - loss: 0.6167 - val_accuracy: 0.6862 - val_loss: 0.5977\n", "Epoch 90/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6548 - loss: 0.5919 - val_accuracy: 0.7021 - val_loss: 0.5745\n", "Epoch 91/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6786 - loss: 0.5590 - val_accuracy: 0.6968 - val_loss: 0.5868\n", "Epoch 92/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6857 - loss: 0.5756 - val_accuracy: 0.7021 - val_loss: 0.5933\n", "Epoch 93/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6762 - loss: 0.5603 - val_accuracy: 0.6862 - val_loss: 0.6130\n", "Epoch 94/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m33s\u001b[0m 1s/step - accuracy: 0.6679 - loss: 0.5786 - val_accuracy: 0.7287 - val_loss: 0.5541\n", "Epoch 95/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6583 - loss: 0.5584 - val_accuracy: 0.6968 - val_loss: 0.5849\n", "Epoch 96/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6702 - loss: 0.5529 - val_accuracy: 0.7074 - val_loss: 0.5735\n", "Epoch 97/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6702 - loss: 0.5584 - val_accuracy: 0.7340 - val_loss: 0.6119\n", "Epoch 98/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m34s\u001b[0m 1s/step - accuracy: 0.6726 - loss: 0.5507 - val_accuracy: 0.6011 - val_loss: 0.7393\n", "Epoch 99/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6571 - loss: 0.5671 - val_accuracy: 0.6755 - val_loss: 0.5988\n", "Epoch 100/100\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m35s\u001b[0m 1s/step - accuracy: 0.6976 - loss: 0.5684 - val_accuracy: 0.6649 - val_loss: 0.6447\n" ] } ], "source": [ "history_2=model.fit(\n", " training_set,\n", " validation_data=test_set,\n", " epochs=100\n", ")" ] }, { "cell_type": "code", "execution_count": 38, "id": "5cdd3a92", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING:absl:You are saving your model as an HDF5 file via `model.save()` or `keras.saving.save_model(model)`. This file format is considered legacy. We recommend using instead the native Keras format, e.g. `model.save('my_model.keras')` or `keras.saving.save_model(model, 'my_model.keras')`. \n" ] } ], "source": [ "model.save('../Models/base2.h5')" ] }, { "cell_type": "markdown", "id": "dc0fb547", "metadata": {}, "source": [ "## Transfer Learning" ] }, { "cell_type": "code", "execution_count": 39, "id": "ef3350aa", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
Model: \"functional_35\"\n",
       "
\n" ], "text/plain": [ "\u001b[1mModel: \"functional_35\"\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
┏━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓\n",
       "┃ Layer (type)         Output Shape          Param #  Connected to      ┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩\n",
       "│ input_layer_4       │ (None, 224, 224,  │          0 │ -                 │\n",
       "│ (InputLayer)        │ 3)                │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ Conv1 (Conv2D)      │ (None, 112, 112,  │        864 │ input_layer_4[0]… │\n",
       "│                     │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ bn_Conv1            │ (None, 112, 112,  │        128 │ Conv1[0][0]       │\n",
       "│ (BatchNormalizatio…32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ Conv1_relu (ReLU)   │ (None, 112, 112,  │          0 │ bn_Conv1[0][0]    │\n",
       "│                     │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ expanded_conv_dept… │ (None, 112, 112,  │        288 │ Conv1_relu[0][0]  │\n",
       "│ (DepthwiseConv2D)   │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ expanded_conv_dept… │ (None, 112, 112,  │        128 │ expanded_conv_de… │\n",
       "│ (BatchNormalizatio…32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ expanded_conv_dept… │ (None, 112, 112,  │          0 │ expanded_conv_de… │\n",
       "│ (ReLU)              │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ expanded_conv_proj… │ (None, 112, 112,  │        512 │ expanded_conv_de… │\n",
       "│ (Conv2D)            │ 16)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ expanded_conv_proj… │ (None, 112, 112,  │         64 │ expanded_conv_pr… │\n",
       "│ (BatchNormalizatio…16)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_expand      │ (None, 112, 112,  │      1,536 │ expanded_conv_pr… │\n",
       "│ (Conv2D)            │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_expand_BN   │ (None, 112, 112,  │        384 │ block_1_expand[0… │\n",
       "│ (BatchNormalizatio…96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_expand_relu │ (None, 112, 112,  │          0 │ block_1_expand_B… │\n",
       "│ (ReLU)              │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_pad         │ (None, 113, 113,  │          0 │ block_1_expand_r… │\n",
       "│ (ZeroPadding2D)     │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_depthwise   │ (None, 56, 56,    │        864 │ block_1_pad[0][0] │\n",
       "│ (DepthwiseConv2D)   │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_depthwise_… │ (None, 56, 56,    │        384 │ block_1_depthwis… │\n",
       "│ (BatchNormalizatio…96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_depthwise_… │ (None, 56, 56,    │          0 │ block_1_depthwis… │\n",
       "│ (ReLU)              │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_project     │ (None, 56, 56,    │      2,304 │ block_1_depthwis… │\n",
       "│ (Conv2D)            │ 24)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_1_project_BN  │ (None, 56, 56,    │         96 │ block_1_project[ │\n",
       "│ (BatchNormalizatio…24)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_expand      │ (None, 56, 56,    │      3,456 │ block_1_project_… │\n",
       "│ (Conv2D)            │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_expand_BN   │ (None, 56, 56,    │        576 │ block_2_expand[0… │\n",
       "│ (BatchNormalizatio…144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_expand_relu │ (None, 56, 56,    │          0 │ block_2_expand_B… │\n",
       "│ (ReLU)              │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_depthwise   │ (None, 56, 56,    │      1,296 │ block_2_expand_r… │\n",
       "│ (DepthwiseConv2D)   │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_depthwise_… │ (None, 56, 56,    │        576 │ block_2_depthwis… │\n",
       "│ (BatchNormalizatio…144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_depthwise_… │ (None, 56, 56,    │          0 │ block_2_depthwis… │\n",
       "│ (ReLU)              │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_project     │ (None, 56, 56,    │      3,456 │ block_2_depthwis… │\n",
       "│ (Conv2D)            │ 24)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_project_BN  │ (None, 56, 56,    │         96 │ block_2_project[ │\n",
       "│ (BatchNormalizatio…24)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_2_add (Add)   │ (None, 56, 56,    │          0 │ block_1_project_… │\n",
       "│                     │ 24)               │            │ block_2_project_… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_expand      │ (None, 56, 56,    │      3,456 │ block_2_add[0][0] │\n",
       "│ (Conv2D)            │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_expand_BN   │ (None, 56, 56,    │        576 │ block_3_expand[0… │\n",
       "│ (BatchNormalizatio…144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_expand_relu │ (None, 56, 56,    │          0 │ block_3_expand_B… │\n",
       "│ (ReLU)              │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_pad         │ (None, 57, 57,    │          0 │ block_3_expand_r… │\n",
       "│ (ZeroPadding2D)     │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_depthwise   │ (None, 28, 28,    │      1,296 │ block_3_pad[0][0] │\n",
       "│ (DepthwiseConv2D)   │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_depthwise_… │ (None, 28, 28,    │        576 │ block_3_depthwis… │\n",
       "│ (BatchNormalizatio…144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_depthwise_… │ (None, 28, 28,    │          0 │ block_3_depthwis… │\n",
       "│ (ReLU)              │ 144)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_project     │ (None, 28, 28,    │      4,608 │ block_3_depthwis… │\n",
       "│ (Conv2D)            │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_3_project_BN  │ (None, 28, 28,    │        128 │ block_3_project[ │\n",
       "│ (BatchNormalizatio…32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_expand      │ (None, 28, 28,    │      6,144 │ block_3_project_… │\n",
       "│ (Conv2D)            │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_expand_BN   │ (None, 28, 28,    │        768 │ block_4_expand[0… │\n",
       "│ (BatchNormalizatio…192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_expand_relu │ (None, 28, 28,    │          0 │ block_4_expand_B… │\n",
       "│ (ReLU)              │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_depthwise   │ (None, 28, 28,    │      1,728 │ block_4_expand_r… │\n",
       "│ (DepthwiseConv2D)   │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_depthwise_… │ (None, 28, 28,    │        768 │ block_4_depthwis… │\n",
       "│ (BatchNormalizatio…192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_depthwise_… │ (None, 28, 28,    │          0 │ block_4_depthwis… │\n",
       "│ (ReLU)              │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_project     │ (None, 28, 28,    │      6,144 │ block_4_depthwis… │\n",
       "│ (Conv2D)            │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_project_BN  │ (None, 28, 28,    │        128 │ block_4_project[ │\n",
       "│ (BatchNormalizatio…32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_4_add (Add)   │ (None, 28, 28,    │          0 │ block_3_project_… │\n",
       "│                     │ 32)               │            │ block_4_project_… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_expand      │ (None, 28, 28,    │      6,144 │ block_4_add[0][0] │\n",
       "│ (Conv2D)            │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_expand_BN   │ (None, 28, 28,    │        768 │ block_5_expand[0… │\n",
       "│ (BatchNormalizatio…192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_expand_relu │ (None, 28, 28,    │          0 │ block_5_expand_B… │\n",
       "│ (ReLU)              │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_depthwise   │ (None, 28, 28,    │      1,728 │ block_5_expand_r… │\n",
       "│ (DepthwiseConv2D)   │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_depthwise_… │ (None, 28, 28,    │        768 │ block_5_depthwis… │\n",
       "│ (BatchNormalizatio…192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_depthwise_… │ (None, 28, 28,    │          0 │ block_5_depthwis… │\n",
       "│ (ReLU)              │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_project     │ (None, 28, 28,    │      6,144 │ block_5_depthwis… │\n",
       "│ (Conv2D)            │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_project_BN  │ (None, 28, 28,    │        128 │ block_5_project[ │\n",
       "│ (BatchNormalizatio…32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_5_add (Add)   │ (None, 28, 28,    │          0 │ block_4_add[0][0… │\n",
       "│                     │ 32)               │            │ block_5_project_… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_expand      │ (None, 28, 28,    │      6,144 │ block_5_add[0][0] │\n",
       "│ (Conv2D)            │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_expand_BN   │ (None, 28, 28,    │        768 │ block_6_expand[0… │\n",
       "│ (BatchNormalizatio…192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_expand_relu │ (None, 28, 28,    │          0 │ block_6_expand_B… │\n",
       "│ (ReLU)              │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_pad         │ (None, 29, 29,    │          0 │ block_6_expand_r… │\n",
       "│ (ZeroPadding2D)     │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_depthwise   │ (None, 14, 14,    │      1,728 │ block_6_pad[0][0] │\n",
       "│ (DepthwiseConv2D)   │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_depthwise_… │ (None, 14, 14,    │        768 │ block_6_depthwis… │\n",
       "│ (BatchNormalizatio…192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_depthwise_… │ (None, 14, 14,    │          0 │ block_6_depthwis… │\n",
       "│ (ReLU)              │ 192)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_project     │ (None, 14, 14,    │     12,288 │ block_6_depthwis… │\n",
       "│ (Conv2D)            │ 64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_6_project_BN  │ (None, 14, 14,    │        256 │ block_6_project[ │\n",
       "│ (BatchNormalizatio…64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_expand      │ (None, 14, 14,    │     24,576 │ block_6_project_… │\n",
       "│ (Conv2D)            │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_expand_BN   │ (None, 14, 14,    │      1,536 │ block_7_expand[0… │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_expand_relu │ (None, 14, 14,    │          0 │ block_7_expand_B… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_depthwise   │ (None, 14, 14,    │      3,456 │ block_7_expand_r… │\n",
       "│ (DepthwiseConv2D)   │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_depthwise_… │ (None, 14, 14,    │      1,536 │ block_7_depthwis… │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_depthwise_… │ (None, 14, 14,    │          0 │ block_7_depthwis… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_project     │ (None, 14, 14,    │     24,576 │ block_7_depthwis… │\n",
       "│ (Conv2D)            │ 64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_project_BN  │ (None, 14, 14,    │        256 │ block_7_project[ │\n",
       "│ (BatchNormalizatio…64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_7_add (Add)   │ (None, 14, 14,    │          0 │ block_6_project_… │\n",
       "│                     │ 64)               │            │ block_7_project_… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_expand      │ (None, 14, 14,    │     24,576 │ block_7_add[0][0] │\n",
       "│ (Conv2D)            │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_expand_BN   │ (None, 14, 14,    │      1,536 │ block_8_expand[0… │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_expand_relu │ (None, 14, 14,    │          0 │ block_8_expand_B… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_depthwise   │ (None, 14, 14,    │      3,456 │ block_8_expand_r… │\n",
       "│ (DepthwiseConv2D)   │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_depthwise_… │ (None, 14, 14,    │      1,536 │ block_8_depthwis… │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_depthwise_… │ (None, 14, 14,    │          0 │ block_8_depthwis… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_project     │ (None, 14, 14,    │     24,576 │ block_8_depthwis… │\n",
       "│ (Conv2D)            │ 64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_project_BN  │ (None, 14, 14,    │        256 │ block_8_project[ │\n",
       "│ (BatchNormalizatio…64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_8_add (Add)   │ (None, 14, 14,    │          0 │ block_7_add[0][0… │\n",
       "│                     │ 64)               │            │ block_8_project_… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_expand      │ (None, 14, 14,    │     24,576 │ block_8_add[0][0] │\n",
       "│ (Conv2D)            │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_expand_BN   │ (None, 14, 14,    │      1,536 │ block_9_expand[0… │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_expand_relu │ (None, 14, 14,    │          0 │ block_9_expand_B… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_depthwise   │ (None, 14, 14,    │      3,456 │ block_9_expand_r… │\n",
       "│ (DepthwiseConv2D)   │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_depthwise_… │ (None, 14, 14,    │      1,536 │ block_9_depthwis… │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_depthwise_… │ (None, 14, 14,    │          0 │ block_9_depthwis… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_project     │ (None, 14, 14,    │     24,576 │ block_9_depthwis… │\n",
       "│ (Conv2D)            │ 64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_project_BN  │ (None, 14, 14,    │        256 │ block_9_project[ │\n",
       "│ (BatchNormalizatio…64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_9_add (Add)   │ (None, 14, 14,    │          0 │ block_8_add[0][0… │\n",
       "│                     │ 64)               │            │ block_9_project_… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_expand     │ (None, 14, 14,    │     24,576 │ block_9_add[0][0] │\n",
       "│ (Conv2D)            │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_expand_BN  │ (None, 14, 14,    │      1,536 │ block_10_expand[ │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_expand_re… │ (None, 14, 14,    │          0 │ block_10_expand_… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_depthwise  │ (None, 14, 14,    │      3,456 │ block_10_expand_… │\n",
       "│ (DepthwiseConv2D)   │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_depthwise… │ (None, 14, 14,    │      1,536 │ block_10_depthwi… │\n",
       "│ (BatchNormalizatio…384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_depthwise… │ (None, 14, 14,    │          0 │ block_10_depthwi… │\n",
       "│ (ReLU)              │ 384)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_project    │ (None, 14, 14,    │     36,864 │ block_10_depthwi… │\n",
       "│ (Conv2D)            │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_10_project_BN │ (None, 14, 14,    │        384 │ block_10_project… │\n",
       "│ (BatchNormalizatio…96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_expand     │ (None, 14, 14,    │     55,296 │ block_10_project… │\n",
       "│ (Conv2D)            │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_expand_BN  │ (None, 14, 14,    │      2,304 │ block_11_expand[ │\n",
       "│ (BatchNormalizatio…576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_expand_re… │ (None, 14, 14,    │          0 │ block_11_expand_… │\n",
       "│ (ReLU)              │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_depthwise  │ (None, 14, 14,    │      5,184 │ block_11_expand_… │\n",
       "│ (DepthwiseConv2D)   │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_depthwise… │ (None, 14, 14,    │      2,304 │ block_11_depthwi… │\n",
       "│ (BatchNormalizatio…576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_depthwise… │ (None, 14, 14,    │          0 │ block_11_depthwi… │\n",
       "│ (ReLU)              │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_project    │ (None, 14, 14,    │     55,296 │ block_11_depthwi… │\n",
       "│ (Conv2D)            │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_project_BN │ (None, 14, 14,    │        384 │ block_11_project… │\n",
       "│ (BatchNormalizatio…96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_11_add (Add)  │ (None, 14, 14,    │          0 │ block_10_project… │\n",
       "│                     │ 96)               │            │ block_11_project… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_expand     │ (None, 14, 14,    │     55,296 │ block_11_add[0][ │\n",
       "│ (Conv2D)            │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_expand_BN  │ (None, 14, 14,    │      2,304 │ block_12_expand[ │\n",
       "│ (BatchNormalizatio…576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_expand_re… │ (None, 14, 14,    │          0 │ block_12_expand_… │\n",
       "│ (ReLU)              │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_depthwise  │ (None, 14, 14,    │      5,184 │ block_12_expand_… │\n",
       "│ (DepthwiseConv2D)   │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_depthwise… │ (None, 14, 14,    │      2,304 │ block_12_depthwi… │\n",
       "│ (BatchNormalizatio…576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_depthwise… │ (None, 14, 14,    │          0 │ block_12_depthwi… │\n",
       "│ (ReLU)              │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_project    │ (None, 14, 14,    │     55,296 │ block_12_depthwi… │\n",
       "│ (Conv2D)            │ 96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_project_BN │ (None, 14, 14,    │        384 │ block_12_project… │\n",
       "│ (BatchNormalizatio…96)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_12_add (Add)  │ (None, 14, 14,    │          0 │ block_11_add[0][ │\n",
       "│                     │ 96)               │            │ block_12_project… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_expand     │ (None, 14, 14,    │     55,296 │ block_12_add[0][ │\n",
       "│ (Conv2D)            │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_expand_BN  │ (None, 14, 14,    │      2,304 │ block_13_expand[ │\n",
       "│ (BatchNormalizatio…576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_expand_re… │ (None, 14, 14,    │          0 │ block_13_expand_… │\n",
       "│ (ReLU)              │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_pad        │ (None, 15, 15,    │          0 │ block_13_expand_… │\n",
       "│ (ZeroPadding2D)     │ 576)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_depthwise  │ (None, 7, 7, 576) │      5,184 │ block_13_pad[0][ │\n",
       "│ (DepthwiseConv2D)   │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_depthwise… │ (None, 7, 7, 576) │      2,304 │ block_13_depthwi… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_depthwise… │ (None, 7, 7, 576) │          0 │ block_13_depthwi… │\n",
       "│ (ReLU)              │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_project    │ (None, 7, 7, 160) │     92,160 │ block_13_depthwi… │\n",
       "│ (Conv2D)            │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_13_project_BN │ (None, 7, 7, 160) │        640 │ block_13_project… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_expand     │ (None, 7, 7, 960) │    153,600 │ block_13_project… │\n",
       "│ (Conv2D)            │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_expand_BN  │ (None, 7, 7, 960) │      3,840 │ block_14_expand[ │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_expand_re… │ (None, 7, 7, 960) │          0 │ block_14_expand_… │\n",
       "│ (ReLU)              │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_depthwise  │ (None, 7, 7, 960) │      8,640 │ block_14_expand_… │\n",
       "│ (DepthwiseConv2D)   │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_depthwise… │ (None, 7, 7, 960) │      3,840 │ block_14_depthwi… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_depthwise… │ (None, 7, 7, 960) │          0 │ block_14_depthwi… │\n",
       "│ (ReLU)              │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_project    │ (None, 7, 7, 160) │    153,600 │ block_14_depthwi… │\n",
       "│ (Conv2D)            │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_project_BN │ (None, 7, 7, 160) │        640 │ block_14_project… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_14_add (Add)  │ (None, 7, 7, 160) │          0 │ block_13_project… │\n",
       "│                     │                   │            │ block_14_project… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_expand     │ (None, 7, 7, 960) │    153,600 │ block_14_add[0][ │\n",
       "│ (Conv2D)            │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_expand_BN  │ (None, 7, 7, 960) │      3,840 │ block_15_expand[ │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_expand_re… │ (None, 7, 7, 960) │          0 │ block_15_expand_… │\n",
       "│ (ReLU)              │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_depthwise  │ (None, 7, 7, 960) │      8,640 │ block_15_expand_… │\n",
       "│ (DepthwiseConv2D)   │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_depthwise… │ (None, 7, 7, 960) │      3,840 │ block_15_depthwi… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_depthwise… │ (None, 7, 7, 960) │          0 │ block_15_depthwi… │\n",
       "│ (ReLU)              │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_project    │ (None, 7, 7, 160) │    153,600 │ block_15_depthwi… │\n",
       "│ (Conv2D)            │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_project_BN │ (None, 7, 7, 160) │        640 │ block_15_project… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_15_add (Add)  │ (None, 7, 7, 160) │          0 │ block_14_add[0][ │\n",
       "│                     │                   │            │ block_15_project… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_expand     │ (None, 7, 7, 960) │    153,600 │ block_15_add[0][ │\n",
       "│ (Conv2D)            │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_expand_BN  │ (None, 7, 7, 960) │      3,840 │ block_16_expand[ │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_expand_re… │ (None, 7, 7, 960) │          0 │ block_16_expand_… │\n",
       "│ (ReLU)              │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_depthwise  │ (None, 7, 7, 960) │      8,640 │ block_16_expand_… │\n",
       "│ (DepthwiseConv2D)   │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_depthwise… │ (None, 7, 7, 960) │      3,840 │ block_16_depthwi… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_depthwise… │ (None, 7, 7, 960) │          0 │ block_16_depthwi… │\n",
       "│ (ReLU)              │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_project    │ (None, 7, 7, 320) │    307,200 │ block_16_depthwi… │\n",
       "│ (Conv2D)            │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block_16_project_BN │ (None, 7, 7, 320) │      1,280 │ block_16_project… │\n",
       "│ (BatchNormalizatio… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ Conv_1 (Conv2D)     │ (None, 7, 7,      │    409,600 │ block_16_project… │\n",
       "│                     │ 1280)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ Conv_1_bn           │ (None, 7, 7,      │      5,120 │ Conv_1[0][0]      │\n",
       "│ (BatchNormalizatio…1280)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ out_relu (ReLU)     │ (None, 7, 7,      │          0 │ Conv_1_bn[0][0]   │\n",
       "│                     │ 1280)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ global_average_poo… │ (None, 1280)      │          0 │ out_relu[0][0]    │\n",
       "│ (GlobalAveragePool… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ dense_8 (Dense)     │ (None, 256)       │    327,936 │ global_average_p… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ dropout_3 (Dropout) │ (None, 256)       │          0 │ dense_8[0][0]     │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ dense_9 (Dense)     │ (None, 2)         │        514 │ dropout_3[0][0]   │\n",
       "└─────────────────────┴───────────────────┴────────────┴───────────────────┘\n",
       "
\n" ], "text/plain": [ "┏━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓\n", "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mConnected to \u001b[0m\u001b[1m \u001b[0m┃\n", "┡━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩\n", "│ input_layer_4 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m224\u001b[0m, \u001b[38;5;34m224\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ - │\n", "│ (\u001b[38;5;33mInputLayer\u001b[0m) │ \u001b[38;5;34m3\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ Conv1 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m864\u001b[0m │ input_layer_4[\u001b[38;5;34m0\u001b[0m]… │\n", "│ │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ bn_Conv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m128\u001b[0m │ Conv1[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ Conv1_relu (\u001b[38;5;33mReLU\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ bn_Conv1[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ expanded_conv_dept… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m288\u001b[0m │ Conv1_relu[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ expanded_conv_dept… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m128\u001b[0m │ expanded_conv_de… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ expanded_conv_dept… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ expanded_conv_de… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ expanded_conv_proj… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m512\u001b[0m │ expanded_conv_de… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m16\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ expanded_conv_proj… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m64\u001b[0m │ expanded_conv_pr… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m16\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ expanded_conv_pr… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m384\u001b[0m │ block_1_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m112\u001b[0m, \u001b[38;5;34m112\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_1_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_pad │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m113\u001b[0m, \u001b[38;5;34m113\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_1_expand_r… │\n", "│ (\u001b[38;5;33mZeroPadding2D\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m864\u001b[0m │ block_1_pad[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m384\u001b[0m │ block_1_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_1_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m2,304\u001b[0m │ block_1_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m24\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_1_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m96\u001b[0m │ block_1_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m24\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m3,456\u001b[0m │ block_1_project_… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m576\u001b[0m │ block_2_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_2_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m1,296\u001b[0m │ block_2_expand_r… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m576\u001b[0m │ block_2_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_2_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m3,456\u001b[0m │ block_2_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m24\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m96\u001b[0m │ block_2_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m24\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_2_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_1_project_… │\n", "│ │ \u001b[38;5;34m24\u001b[0m) │ │ block_2_project_… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m3,456\u001b[0m │ block_2_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m576\u001b[0m │ block_3_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m56\u001b[0m, \u001b[38;5;34m56\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_3_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_pad │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m57\u001b[0m, \u001b[38;5;34m57\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_3_expand_r… │\n", "│ (\u001b[38;5;33mZeroPadding2D\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m1,296\u001b[0m │ block_3_pad[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m576\u001b[0m │ block_3_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_3_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m144\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m4,608\u001b[0m │ block_3_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_3_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m128\u001b[0m │ block_3_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m6,144\u001b[0m │ block_3_project_… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m768\u001b[0m │ block_4_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_4_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m1,728\u001b[0m │ block_4_expand_r… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m768\u001b[0m │ block_4_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_4_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m6,144\u001b[0m │ block_4_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m128\u001b[0m │ block_4_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_4_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_3_project_… │\n", "│ │ \u001b[38;5;34m32\u001b[0m) │ │ block_4_project_… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m6,144\u001b[0m │ block_4_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m768\u001b[0m │ block_5_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_5_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m1,728\u001b[0m │ block_5_expand_r… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m768\u001b[0m │ block_5_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_5_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m6,144\u001b[0m │ block_5_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m128\u001b[0m │ block_5_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_5_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_4_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m… │\n", "│ │ \u001b[38;5;34m32\u001b[0m) │ │ block_5_project_… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m6,144\u001b[0m │ block_5_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m768\u001b[0m │ block_6_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m28\u001b[0m, \u001b[38;5;34m28\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_6_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_pad │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m29\u001b[0m, \u001b[38;5;34m29\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_6_expand_r… │\n", "│ (\u001b[38;5;33mZeroPadding2D\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,728\u001b[0m │ block_6_pad[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m768\u001b[0m │ block_6_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_6_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m192\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m12,288\u001b[0m │ block_6_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_6_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m256\u001b[0m │ block_6_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m24,576\u001b[0m │ block_6_project_… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_7_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_7_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m3,456\u001b[0m │ block_7_expand_r… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_7_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_7_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m24,576\u001b[0m │ block_7_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m256\u001b[0m │ block_7_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_7_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_6_project_… │\n", "│ │ \u001b[38;5;34m64\u001b[0m) │ │ block_7_project_… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m24,576\u001b[0m │ block_7_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_8_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_8_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m3,456\u001b[0m │ block_8_expand_r… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_8_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_8_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m24,576\u001b[0m │ block_8_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m256\u001b[0m │ block_8_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_8_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_7_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m… │\n", "│ │ \u001b[38;5;34m64\u001b[0m) │ │ block_8_project_… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m24,576\u001b[0m │ block_8_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_9_expand[\u001b[38;5;34m0\u001b[0m… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_expand_relu │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_9_expand_B… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m3,456\u001b[0m │ block_9_expand_r… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_9_depthwis… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_depthwise_… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_9_depthwis… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m24,576\u001b[0m │ block_9_depthwis… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m256\u001b[0m │ block_9_project[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_9_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_8_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m… │\n", "│ │ \u001b[38;5;34m64\u001b[0m) │ │ block_9_project_… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m24,576\u001b[0m │ block_9_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_10_expand[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_expand_re… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_10_expand_… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m3,456\u001b[0m │ block_10_expand_… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m1,536\u001b[0m │ block_10_depthwi… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_10_depthwi… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m384\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m36,864\u001b[0m │ block_10_depthwi… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_10_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m384\u001b[0m │ block_10_project… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m55,296\u001b[0m │ block_10_project… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m2,304\u001b[0m │ block_11_expand[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_expand_re… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_11_expand_… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m5,184\u001b[0m │ block_11_expand_… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m2,304\u001b[0m │ block_11_depthwi… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_11_depthwi… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m55,296\u001b[0m │ block_11_depthwi… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m384\u001b[0m │ block_11_project… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_11_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_10_project… │\n", "│ │ \u001b[38;5;34m96\u001b[0m) │ │ block_11_project… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m55,296\u001b[0m │ block_11_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m2,304\u001b[0m │ block_12_expand[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_expand_re… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_12_expand_… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m5,184\u001b[0m │ block_12_expand_… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m2,304\u001b[0m │ block_12_depthwi… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_12_depthwi… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m55,296\u001b[0m │ block_12_depthwi… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m384\u001b[0m │ block_12_project… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m96\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_12_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_11_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ │ \u001b[38;5;34m96\u001b[0m) │ │ block_12_project… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m55,296\u001b[0m │ block_12_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m2,304\u001b[0m │ block_13_expand[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_expand_re… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m14\u001b[0m, \u001b[38;5;34m14\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_13_expand_… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_pad │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m15\u001b[0m, \u001b[38;5;34m15\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block_13_expand_… │\n", "│ (\u001b[38;5;33mZeroPadding2D\u001b[0m) │ \u001b[38;5;34m576\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m576\u001b[0m) │ \u001b[38;5;34m5,184\u001b[0m │ block_13_pad[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m576\u001b[0m) │ \u001b[38;5;34m2,304\u001b[0m │ block_13_depthwi… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m576\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_13_depthwi… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m92,160\u001b[0m │ block_13_depthwi… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_13_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m640\u001b[0m │ block_13_project… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m153,600\u001b[0m │ block_13_project… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m3,840\u001b[0m │ block_14_expand[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_expand_re… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_14_expand_… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m8,640\u001b[0m │ block_14_expand_… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m3,840\u001b[0m │ block_14_depthwi… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_14_depthwi… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m153,600\u001b[0m │ block_14_depthwi… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m640\u001b[0m │ block_14_project… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_14_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_13_project… │\n", "│ │ │ │ block_14_project… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m153,600\u001b[0m │ block_14_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m3,840\u001b[0m │ block_15_expand[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_expand_re… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_15_expand_… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m8,640\u001b[0m │ block_15_expand_… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m3,840\u001b[0m │ block_15_depthwi… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_15_depthwi… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m153,600\u001b[0m │ block_15_depthwi… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m640\u001b[0m │ block_15_project… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_15_add (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m160\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_14_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ │ │ │ block_15_project… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_expand │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m153,600\u001b[0m │ block_15_add[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_expand_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m3,840\u001b[0m │ block_16_expand[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_expand_re… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_16_expand_… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_depthwise │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m8,640\u001b[0m │ block_16_expand_… │\n", "│ (\u001b[38;5;33mDepthwiseConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m3,840\u001b[0m │ block_16_depthwi… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_depthwise… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m960\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block_16_depthwi… │\n", "│ (\u001b[38;5;33mReLU\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_project │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m320\u001b[0m) │ \u001b[38;5;34m307,200\u001b[0m │ block_16_depthwi… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block_16_project_BN │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m320\u001b[0m) │ \u001b[38;5;34m1,280\u001b[0m │ block_16_project… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ Conv_1 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, │ \u001b[38;5;34m409,600\u001b[0m │ block_16_project… │\n", "│ │ \u001b[38;5;34m1280\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ Conv_1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, │ \u001b[38;5;34m5,120\u001b[0m │ Conv_1[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m1280\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ out_relu (\u001b[38;5;33mReLU\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m7\u001b[0m, \u001b[38;5;34m7\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ Conv_1_bn[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ │ \u001b[38;5;34m1280\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ global_average_poo… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m1280\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ out_relu[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mGlobalAveragePool…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ dense_8 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m327,936\u001b[0m │ global_average_p… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ dropout_3 (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ dense_8[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ dense_9 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m2\u001b[0m) │ \u001b[38;5;34m514\u001b[0m │ dropout_3[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "└─────────────────────┴───────────────────┴────────────┴───────────────────┘\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Total params: 2,586,434 (9.87 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m2,586,434\u001b[0m (9.87 MB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Trainable params: 328,450 (1.25 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m328,450\u001b[0m (1.25 MB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Non-trainable params: 2,257,984 (8.61 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m2,257,984\u001b[0m (8.61 MB)\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "base=tf.keras.applications.MobileNetV2(\n", " input_shape=(224,224,3),\n", " include_top=False,\n", " weights='imagenet'\n", ")\n", "base.trainable=False\n", "\n", "x=base.output\n", "x=tf.keras.layers.GlobalAveragePooling2D()(x)\n", "x=tf.keras.layers.Dense(256,activation='relu')(x)\n", "x=tf.keras.layers.Dropout(0.4)(x)\n", "outputs=tf.keras.layers.Dense(training_set.num_classes,activation='softmax')(x)\n", "\n", "model_tf=tf.keras.models.Model(inputs=base.input,outputs=outputs)\n", "\n", "model_tf.compile(\n", " optimizer='Adam',\n", " loss='categorical_crossentropy',\n", " metrics=['accuracy']\n", ")\n", "model_tf.summary()" ] }, { "cell_type": "code", "execution_count": 40, "id": "cedf6e98", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Epoch 1/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m28s\u001b[0m 820ms/step - accuracy: 0.6262 - loss: 0.7541 - val_accuracy: 0.8085 - val_loss: 0.4269\n", "Epoch 2/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 686ms/step - accuracy: 0.7190 - loss: 0.5763 - val_accuracy: 0.8617 - val_loss: 0.4284\n", "Epoch 3/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 714ms/step - accuracy: 0.7476 - loss: 0.5511 - val_accuracy: 0.8457 - val_loss: 0.4122\n", "Epoch 4/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m20s\u001b[0m 726ms/step - accuracy: 0.7560 - loss: 0.4985 - val_accuracy: 0.8404 - val_loss: 0.4044\n", "Epoch 5/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 710ms/step - accuracy: 0.7583 - loss: 0.5093 - val_accuracy: 0.8670 - val_loss: 0.3998\n", "Epoch 6/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 691ms/step - accuracy: 0.7774 - loss: 0.4878 - val_accuracy: 0.8564 - val_loss: 0.3859\n", "Epoch 7/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 716ms/step - accuracy: 0.7750 - loss: 0.4683 - val_accuracy: 0.7979 - val_loss: 0.4352\n", "Epoch 8/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 704ms/step - accuracy: 0.7310 - loss: 0.5135 - val_accuracy: 0.8564 - val_loss: 0.4063\n", "Epoch 9/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m20s\u001b[0m 725ms/step - accuracy: 0.8012 - loss: 0.4376 - val_accuracy: 0.8617 - val_loss: 0.3896\n", "Epoch 10/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 710ms/step - accuracy: 0.8083 - loss: 0.4358 - val_accuracy: 0.7819 - val_loss: 0.4385\n", "Epoch 11/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m20s\u001b[0m 723ms/step - accuracy: 0.7810 - loss: 0.4505 - val_accuracy: 0.8191 - val_loss: 0.3866\n", "Epoch 12/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 709ms/step - accuracy: 0.7857 - loss: 0.4518 - val_accuracy: 0.8564 - val_loss: 0.3817\n", "Epoch 13/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 700ms/step - accuracy: 0.8095 - loss: 0.4287 - val_accuracy: 0.8564 - val_loss: 0.3537\n", "Epoch 14/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 703ms/step - accuracy: 0.8012 - loss: 0.4182 - val_accuracy: 0.8777 - val_loss: 0.3614\n", "Epoch 15/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 721ms/step - accuracy: 0.8155 - loss: 0.4063 - val_accuracy: 0.8564 - val_loss: 0.3416\n", "Epoch 16/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 705ms/step - accuracy: 0.8131 - loss: 0.3959 - val_accuracy: 0.7713 - val_loss: 0.4231\n", "Epoch 17/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 699ms/step - accuracy: 0.8071 - loss: 0.4134 - val_accuracy: 0.8032 - val_loss: 0.4276\n", "Epoch 18/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 705ms/step - accuracy: 0.8202 - loss: 0.3994 - val_accuracy: 0.7606 - val_loss: 0.4485\n", "Epoch 19/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 702ms/step - accuracy: 0.8071 - loss: 0.4119 - val_accuracy: 0.8085 - val_loss: 0.3924\n", "Epoch 20/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m19s\u001b[0m 717ms/step - accuracy: 0.8405 - loss: 0.3648 - val_accuracy: 0.7819 - val_loss: 0.4198\n" ] } ], "source": [ "history_3=model_tf.fit(\n", " training_set,\n", " validation_data=test_set,\n", " epochs=20\n", ")" ] }, { "cell_type": "markdown", "id": "2b086691", "metadata": {}, "source": [ "## Hyper Parameter Optimization on MobileNetV2" ] }, { "cell_type": "code", "execution_count": 47, "id": "419a14fd", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Trial 20 Complete [00h 06m 18s]\n", "val_accuracy: 0.8191489577293396\n", "\n", "Best val_accuracy So Far: 0.9042553305625916\n", "Total elapsed time: 01h 44m 18s\n", "Best Hyperparameters:\n", "{'dense_units': 448, 'dropout_rate': 0.30000000000000004, 'learning_rate': 0.0008600386904862594}\n", "best Validation Accuracy From Scratch: 0.9042553305625916\n" ] } ], "source": [ "num_classes=training_set.num_classes\n", "\n", "def build_model(hp):\n", " base=tf.keras.applications.MobileNetV2(\n", " input_shape = (224, 224, 3),\n", " include_top=False,\n", " weights='imagenet'\n", " )\n", "\n", " base.trainable=False\n", "\n", " x=base.output\n", " x=tf.keras.layers.GlobalAveragePooling2D()(x)\n", "\n", " dense_units=hp.Int('dense_units',min_value=128,max_value=512,step=64)\n", " x=tf.keras.layers.Dense(dense_units,activation='relu')(x)\n", "\n", " dropout_rate=hp.Float('dropout_rate',min_value=0.2,max_value=0.6,step=0.1)\n", " x=tf.keras.layers.Dropout(dropout_rate)(x)\n", "\n", " outputs=tf.keras.layers.Dense(num_classes,activation='softmax')(x)\n", "\n", " model=tf.keras.models.Model(inputs=base.input,outputs=outputs)\n", "\n", " learning_rate=hp.Float('learning_rate',min_value=1e-5,max_value=1e-3,sampling='log')\n", "\n", " model.compile(\n", " optimizer=tf.keras.optimizers.Adam(learning_rate=learning_rate),\n", " loss='categorical_crossentropy',\n", " metrics=['accuracy']\n", " )\n", "\n", " return model\n", "\n", "\n", "tuner=keras_tuner.RandomSearch(\n", "\n", " build_model,\n", " objective='val_accuracy',\n", " max_trials=20,\n", " executions_per_trial=1,\n", " directory='tunner_dir',\n", " project_name='mobilenetv2_tune'\n", "\n", ")\n", "\n", "early_stop=tf.keras.callbacks.EarlyStopping(monitor='val_accuracy',patience=5,restore_best_weights=True)\n", "\n", "\n", "tuner.search(\n", " training_set,\n", " validation_data=test_set,\n", " epochs=30,\n", " callbacks=[early_stop]\n", ")\n", "\n", "best_model=tuner.get_best_models(num_models=1)[0]\n", "best_hyperparameters=tuner.get_best_hyperparameters(num_trials=1)[0]\n", "\n", "print(\"Best Hyperparameters:\")\n", "print(best_hyperparameters.values)\n", "\n", "print(\"best Validation Accuracy From Scratch:\",tuner.oracle.get_best_trials(1)[0].score) " ] }, { "cell_type": "code", "execution_count": 48, "id": "34ff25f3", "metadata": {}, "outputs": [], "source": [ "best_model.save_weights('../Models/best_Mobilenetv2.weights.h5')" ] }, { "cell_type": "markdown", "id": "fd9be892", "metadata": {}, "source": [ "## Xception" ] }, { "cell_type": "code", "execution_count": 54, "id": "5fdb82c0", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
Model: \"functional_4\"\n",
       "
\n" ], "text/plain": [ "\u001b[1mModel: \"functional_4\"\u001b[0m\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
┏━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓\n",
       "┃ Layer (type)         Output Shape          Param #  Connected to      ┃\n",
       "┡━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩\n",
       "│ input_layer_4       │ (None, 299, 299,  │          0 │ -                 │\n",
       "│ (InputLayer)        │ 3)                │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block1_conv1        │ (None, 149, 149,  │        864 │ input_layer_4[0]… │\n",
       "│ (Conv2D)            │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block1_conv1_bn     │ (None, 149, 149,  │        128 │ block1_conv1[0][ │\n",
       "│ (BatchNormalizatio…32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block1_conv1_act    │ (None, 149, 149,  │          0 │ block1_conv1_bn[ │\n",
       "│ (Activation)        │ 32)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block1_conv2        │ (None, 147, 147,  │     18,432 │ block1_conv1_act… │\n",
       "│ (Conv2D)            │ 64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block1_conv2_bn     │ (None, 147, 147,  │        256 │ block1_conv2[0][ │\n",
       "│ (BatchNormalizatio…64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block1_conv2_act    │ (None, 147, 147,  │          0 │ block1_conv2_bn[ │\n",
       "│ (Activation)        │ 64)               │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block2_sepconv1     │ (None, 147, 147,  │      8,768 │ block1_conv2_act… │\n",
       "│ (SeparableConv2D)   │ 128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block2_sepconv1_bn  │ (None, 147, 147,  │        512 │ block2_sepconv1[ │\n",
       "│ (BatchNormalizatio…128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block2_sepconv2_act │ (None, 147, 147,  │          0 │ block2_sepconv1_… │\n",
       "│ (Activation)        │ 128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block2_sepconv2     │ (None, 147, 147,  │     17,536 │ block2_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block2_sepconv2_bn  │ (None, 147, 147,  │        512 │ block2_sepconv2[ │\n",
       "│ (BatchNormalizatio…128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ conv2d_12 (Conv2D)  │ (None, 74, 74,    │      8,192 │ block1_conv2_act… │\n",
       "│                     │ 128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block2_pool         │ (None, 74, 74,    │          0 │ block2_sepconv2_… │\n",
       "│ (MaxPooling2D)      │ 128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ batch_normalizatio… │ (None, 74, 74,    │        512 │ conv2d_12[0][0]   │\n",
       "│ (BatchNormalizatio…128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_36 (Add)        │ (None, 74, 74,    │          0 │ block2_pool[0][0… │\n",
       "│                     │ 128)              │            │ batch_normalizat… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block3_sepconv1_act │ (None, 74, 74,    │          0 │ add_36[0][0]      │\n",
       "│ (Activation)        │ 128)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block3_sepconv1     │ (None, 74, 74,    │     33,920 │ block3_sepconv1_… │\n",
       "│ (SeparableConv2D)   │ 256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block3_sepconv1_bn  │ (None, 74, 74,    │      1,024 │ block3_sepconv1[ │\n",
       "│ (BatchNormalizatio…256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block3_sepconv2_act │ (None, 74, 74,    │          0 │ block3_sepconv1_… │\n",
       "│ (Activation)        │ 256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block3_sepconv2     │ (None, 74, 74,    │     67,840 │ block3_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block3_sepconv2_bn  │ (None, 74, 74,    │      1,024 │ block3_sepconv2[ │\n",
       "│ (BatchNormalizatio…256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ conv2d_13 (Conv2D)  │ (None, 37, 37,    │     32,768 │ add_36[0][0]      │\n",
       "│                     │ 256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block3_pool         │ (None, 37, 37,    │          0 │ block3_sepconv2_… │\n",
       "│ (MaxPooling2D)      │ 256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ batch_normalizatio… │ (None, 37, 37,    │      1,024 │ conv2d_13[0][0]   │\n",
       "│ (BatchNormalizatio…256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_37 (Add)        │ (None, 37, 37,    │          0 │ block3_pool[0][0… │\n",
       "│                     │ 256)              │            │ batch_normalizat… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block4_sepconv1_act │ (None, 37, 37,    │          0 │ add_37[0][0]      │\n",
       "│ (Activation)        │ 256)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block4_sepconv1     │ (None, 37, 37,    │    188,672 │ block4_sepconv1_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block4_sepconv1_bn  │ (None, 37, 37,    │      2,912 │ block4_sepconv1[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block4_sepconv2_act │ (None, 37, 37,    │          0 │ block4_sepconv1_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block4_sepconv2     │ (None, 37, 37,    │    536,536 │ block4_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block4_sepconv2_bn  │ (None, 37, 37,    │      2,912 │ block4_sepconv2[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ conv2d_14 (Conv2D)  │ (None, 19, 19,    │    186,368 │ add_37[0][0]      │\n",
       "│                     │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block4_pool         │ (None, 19, 19,    │          0 │ block4_sepconv2_… │\n",
       "│ (MaxPooling2D)      │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ batch_normalizatio… │ (None, 19, 19,    │      2,912 │ conv2d_14[0][0]   │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_38 (Add)        │ (None, 19, 19,    │          0 │ block4_pool[0][0… │\n",
       "│                     │ 728)              │            │ batch_normalizat… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv1_act │ (None, 19, 19,    │          0 │ add_38[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv1     │ (None, 19, 19,    │    536,536 │ block5_sepconv1_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv1_bn  │ (None, 19, 19,    │      2,912 │ block5_sepconv1[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv2_act │ (None, 19, 19,    │          0 │ block5_sepconv1_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv2     │ (None, 19, 19,    │    536,536 │ block5_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv2_bn  │ (None, 19, 19,    │      2,912 │ block5_sepconv2[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv3_act │ (None, 19, 19,    │          0 │ block5_sepconv2_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv3     │ (None, 19, 19,    │    536,536 │ block5_sepconv3_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block5_sepconv3_bn  │ (None, 19, 19,    │      2,912 │ block5_sepconv3[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_39 (Add)        │ (None, 19, 19,    │          0 │ block5_sepconv3_… │\n",
       "│                     │ 728)              │            │ add_38[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv1_act │ (None, 19, 19,    │          0 │ add_39[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv1     │ (None, 19, 19,    │    536,536 │ block6_sepconv1_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv1_bn  │ (None, 19, 19,    │      2,912 │ block6_sepconv1[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv2_act │ (None, 19, 19,    │          0 │ block6_sepconv1_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv2     │ (None, 19, 19,    │    536,536 │ block6_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv2_bn  │ (None, 19, 19,    │      2,912 │ block6_sepconv2[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv3_act │ (None, 19, 19,    │          0 │ block6_sepconv2_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv3     │ (None, 19, 19,    │    536,536 │ block6_sepconv3_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block6_sepconv3_bn  │ (None, 19, 19,    │      2,912 │ block6_sepconv3[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_40 (Add)        │ (None, 19, 19,    │          0 │ block6_sepconv3_… │\n",
       "│                     │ 728)              │            │ add_39[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv1_act │ (None, 19, 19,    │          0 │ add_40[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv1     │ (None, 19, 19,    │    536,536 │ block7_sepconv1_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv1_bn  │ (None, 19, 19,    │      2,912 │ block7_sepconv1[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv2_act │ (None, 19, 19,    │          0 │ block7_sepconv1_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv2     │ (None, 19, 19,    │    536,536 │ block7_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv2_bn  │ (None, 19, 19,    │      2,912 │ block7_sepconv2[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv3_act │ (None, 19, 19,    │          0 │ block7_sepconv2_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv3     │ (None, 19, 19,    │    536,536 │ block7_sepconv3_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block7_sepconv3_bn  │ (None, 19, 19,    │      2,912 │ block7_sepconv3[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_41 (Add)        │ (None, 19, 19,    │          0 │ block7_sepconv3_… │\n",
       "│                     │ 728)              │            │ add_40[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv1_act │ (None, 19, 19,    │          0 │ add_41[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv1     │ (None, 19, 19,    │    536,536 │ block8_sepconv1_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv1_bn  │ (None, 19, 19,    │      2,912 │ block8_sepconv1[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv2_act │ (None, 19, 19,    │          0 │ block8_sepconv1_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv2     │ (None, 19, 19,    │    536,536 │ block8_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv2_bn  │ (None, 19, 19,    │      2,912 │ block8_sepconv2[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv3_act │ (None, 19, 19,    │          0 │ block8_sepconv2_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv3     │ (None, 19, 19,    │    536,536 │ block8_sepconv3_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block8_sepconv3_bn  │ (None, 19, 19,    │      2,912 │ block8_sepconv3[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_42 (Add)        │ (None, 19, 19,    │          0 │ block8_sepconv3_… │\n",
       "│                     │ 728)              │            │ add_41[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv1_act │ (None, 19, 19,    │          0 │ add_42[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv1     │ (None, 19, 19,    │    536,536 │ block9_sepconv1_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv1_bn  │ (None, 19, 19,    │      2,912 │ block9_sepconv1[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv2_act │ (None, 19, 19,    │          0 │ block9_sepconv1_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv2     │ (None, 19, 19,    │    536,536 │ block9_sepconv2_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv2_bn  │ (None, 19, 19,    │      2,912 │ block9_sepconv2[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv3_act │ (None, 19, 19,    │          0 │ block9_sepconv2_… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv3     │ (None, 19, 19,    │    536,536 │ block9_sepconv3_… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block9_sepconv3_bn  │ (None, 19, 19,    │      2,912 │ block9_sepconv3[ │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_43 (Add)        │ (None, 19, 19,    │          0 │ block9_sepconv3_… │\n",
       "│                     │ 728)              │            │ add_42[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv1_a… │ (None, 19, 19,    │          0 │ add_43[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv1    │ (None, 19, 19,    │    536,536 │ block10_sepconv1… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv1_bn │ (None, 19, 19,    │      2,912 │ block10_sepconv1… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv2_a… │ (None, 19, 19,    │          0 │ block10_sepconv1… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv2    │ (None, 19, 19,    │    536,536 │ block10_sepconv2… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv2_bn │ (None, 19, 19,    │      2,912 │ block10_sepconv2… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv3_a… │ (None, 19, 19,    │          0 │ block10_sepconv2… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv3    │ (None, 19, 19,    │    536,536 │ block10_sepconv3… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block10_sepconv3_bn │ (None, 19, 19,    │      2,912 │ block10_sepconv3… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_44 (Add)        │ (None, 19, 19,    │          0 │ block10_sepconv3… │\n",
       "│                     │ 728)              │            │ add_43[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv1_a… │ (None, 19, 19,    │          0 │ add_44[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv1    │ (None, 19, 19,    │    536,536 │ block11_sepconv1… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv1_bn │ (None, 19, 19,    │      2,912 │ block11_sepconv1… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv2_a… │ (None, 19, 19,    │          0 │ block11_sepconv1… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv2    │ (None, 19, 19,    │    536,536 │ block11_sepconv2… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv2_bn │ (None, 19, 19,    │      2,912 │ block11_sepconv2… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv3_a… │ (None, 19, 19,    │          0 │ block11_sepconv2… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv3    │ (None, 19, 19,    │    536,536 │ block11_sepconv3… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block11_sepconv3_bn │ (None, 19, 19,    │      2,912 │ block11_sepconv3… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_45 (Add)        │ (None, 19, 19,    │          0 │ block11_sepconv3… │\n",
       "│                     │ 728)              │            │ add_44[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv1_a… │ (None, 19, 19,    │          0 │ add_45[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv1    │ (None, 19, 19,    │    536,536 │ block12_sepconv1… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv1_bn │ (None, 19, 19,    │      2,912 │ block12_sepconv1… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv2_a… │ (None, 19, 19,    │          0 │ block12_sepconv1… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv2    │ (None, 19, 19,    │    536,536 │ block12_sepconv2… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv2_bn │ (None, 19, 19,    │      2,912 │ block12_sepconv2… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv3_a… │ (None, 19, 19,    │          0 │ block12_sepconv2… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv3    │ (None, 19, 19,    │    536,536 │ block12_sepconv3… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block12_sepconv3_bn │ (None, 19, 19,    │      2,912 │ block12_sepconv3… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_46 (Add)        │ (None, 19, 19,    │          0 │ block12_sepconv3… │\n",
       "│                     │ 728)              │            │ add_45[0][0]      │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block13_sepconv1_a… │ (None, 19, 19,    │          0 │ add_46[0][0]      │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block13_sepconv1    │ (None, 19, 19,    │    536,536 │ block13_sepconv1… │\n",
       "│ (SeparableConv2D)   │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block13_sepconv1_bn │ (None, 19, 19,    │      2,912 │ block13_sepconv1… │\n",
       "│ (BatchNormalizatio…728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block13_sepconv2_a… │ (None, 19, 19,    │          0 │ block13_sepconv1… │\n",
       "│ (Activation)        │ 728)              │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block13_sepconv2    │ (None, 19, 19,    │    752,024 │ block13_sepconv2… │\n",
       "│ (SeparableConv2D)   │ 1024)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block13_sepconv2_bn │ (None, 19, 19,    │      4,096 │ block13_sepconv2… │\n",
       "│ (BatchNormalizatio…1024)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ conv2d_15 (Conv2D)  │ (None, 10, 10,    │    745,472 │ add_46[0][0]      │\n",
       "│                     │ 1024)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block13_pool        │ (None, 10, 10,    │          0 │ block13_sepconv2… │\n",
       "│ (MaxPooling2D)      │ 1024)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ batch_normalizatio… │ (None, 10, 10,    │      4,096 │ conv2d_15[0][0]   │\n",
       "│ (BatchNormalizatio…1024)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ add_47 (Add)        │ (None, 10, 10,    │          0 │ block13_pool[0][ │\n",
       "│                     │ 1024)             │            │ batch_normalizat… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block14_sepconv1    │ (None, 10, 10,    │  1,582,080 │ add_47[0][0]      │\n",
       "│ (SeparableConv2D)   │ 1536)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block14_sepconv1_bn │ (None, 10, 10,    │      6,144 │ block14_sepconv1… │\n",
       "│ (BatchNormalizatio…1536)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block14_sepconv1_a… │ (None, 10, 10,    │          0 │ block14_sepconv1… │\n",
       "│ (Activation)        │ 1536)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block14_sepconv2    │ (None, 10, 10,    │  3,159,552 │ block14_sepconv1… │\n",
       "│ (SeparableConv2D)   │ 2048)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block14_sepconv2_bn │ (None, 10, 10,    │      8,192 │ block14_sepconv2… │\n",
       "│ (BatchNormalizatio…2048)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ block14_sepconv2_a… │ (None, 10, 10,    │          0 │ block14_sepconv2… │\n",
       "│ (Activation)        │ 2048)             │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ global_max_pooling… │ (None, 2048)      │          0 │ block14_sepconv2… │\n",
       "│ (GlobalMaxPooling2… │                   │            │                   │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ dense_6 (Dense)     │ (None, 256)       │    524,544 │ global_max_pooli… │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ dropout_4 (Dropout) │ (None, 256)       │          0 │ dense_6[0][0]     │\n",
       "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n",
       "│ dense_7 (Dense)     │ (None, 2)         │        514 │ dropout_4[0][0]   │\n",
       "└─────────────────────┴───────────────────┴────────────┴───────────────────┘\n",
       "
\n" ], "text/plain": [ "┏━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓\n", "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mConnected to \u001b[0m\u001b[1m \u001b[0m┃\n", "┡━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩\n", "│ input_layer_4 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m299\u001b[0m, \u001b[38;5;34m299\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ - │\n", "│ (\u001b[38;5;33mInputLayer\u001b[0m) │ \u001b[38;5;34m3\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block1_conv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m149\u001b[0m, \u001b[38;5;34m149\u001b[0m, │ \u001b[38;5;34m864\u001b[0m │ input_layer_4[\u001b[38;5;34m0\u001b[0m]… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block1_conv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m149\u001b[0m, \u001b[38;5;34m149\u001b[0m, │ \u001b[38;5;34m128\u001b[0m │ block1_conv1[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block1_conv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m149\u001b[0m, \u001b[38;5;34m149\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block1_conv1_bn[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m32\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block1_conv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m18,432\u001b[0m │ block1_conv1_act… │\n", "│ (\u001b[38;5;33mConv2D\u001b[0m) │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block1_conv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m256\u001b[0m │ block1_conv2[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block1_conv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block1_conv2_bn[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m64\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block2_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m8,768\u001b[0m │ block1_conv2_act… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block2_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m512\u001b[0m │ block2_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block2_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block2_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block2_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m17,536\u001b[0m │ block2_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block2_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m147\u001b[0m, \u001b[38;5;34m147\u001b[0m, │ \u001b[38;5;34m512\u001b[0m │ block2_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ conv2d_12 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m8,192\u001b[0m │ block1_conv2_act… │\n", "│ │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block2_pool │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block2_sepconv2_… │\n", "│ (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ batch_normalizatio… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m512\u001b[0m │ conv2d_12[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_36 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block2_pool[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m… │\n", "│ │ \u001b[38;5;34m128\u001b[0m) │ │ batch_normalizat… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block3_sepconv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_36[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m128\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block3_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m33,920\u001b[0m │ block3_sepconv1_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block3_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m1,024\u001b[0m │ block3_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block3_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block3_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block3_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m67,840\u001b[0m │ block3_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block3_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m74\u001b[0m, \u001b[38;5;34m74\u001b[0m, │ \u001b[38;5;34m1,024\u001b[0m │ block3_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ conv2d_13 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m32,768\u001b[0m │ add_36[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block3_pool │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block3_sepconv2_… │\n", "│ (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ batch_normalizatio… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m1,024\u001b[0m │ conv2d_13[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_37 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block3_pool[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m… │\n", "│ │ \u001b[38;5;34m256\u001b[0m) │ │ batch_normalizat… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block4_sepconv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_37[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m256\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block4_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m188,672\u001b[0m │ block4_sepconv1_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block4_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block4_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block4_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block4_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block4_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block4_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block4_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m37\u001b[0m, \u001b[38;5;34m37\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block4_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ conv2d_14 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m186,368\u001b[0m │ add_37[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block4_pool │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block4_sepconv2_… │\n", "│ (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ batch_normalizatio… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ conv2d_14[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_38 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block4_pool[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ batch_normalizat… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_38[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block5_sepconv1_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block5_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block5_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block5_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block5_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv3_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block5_sepconv2_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block5_sepconv3_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block5_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block5_sepconv3[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_39 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block5_sepconv3_… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_38[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_39[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block6_sepconv1_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block6_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block6_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block6_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block6_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv3_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block6_sepconv2_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block6_sepconv3_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block6_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block6_sepconv3[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_40 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block6_sepconv3_… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_39[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_40[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block7_sepconv1_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block7_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block7_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block7_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block7_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv3_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block7_sepconv2_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block7_sepconv3_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block7_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block7_sepconv3[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_41 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block7_sepconv3_… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_40[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_41[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block8_sepconv1_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block8_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block8_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block8_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block8_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv3_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block8_sepconv2_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block8_sepconv3_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block8_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block8_sepconv3[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_42 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block8_sepconv3_… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_41[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv1_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_42[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block9_sepconv1_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block9_sepconv1[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv2_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block9_sepconv1_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block9_sepconv2_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block9_sepconv2[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv3_act │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block9_sepconv2_… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block9_sepconv3_… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block9_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block9_sepconv3[\u001b[38;5;34m…\u001b[0m │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_43 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block9_sepconv3_… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_42[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv1_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_43[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block10_sepconv1… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block10_sepconv1… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv2_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block10_sepconv1… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block10_sepconv2… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block10_sepconv2… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv3_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block10_sepconv2… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block10_sepconv3… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block10_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block10_sepconv3… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_44 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block10_sepconv3… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_43[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv1_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_44[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block11_sepconv1… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block11_sepconv1… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv2_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block11_sepconv1… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block11_sepconv2… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block11_sepconv2… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv3_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block11_sepconv2… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block11_sepconv3… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block11_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block11_sepconv3… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_45 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block11_sepconv3… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_44[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv1_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_45[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block12_sepconv1… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block12_sepconv1… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv2_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block12_sepconv1… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block12_sepconv2… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block12_sepconv2… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv3_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block12_sepconv2… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv3 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block12_sepconv3… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block12_sepconv3_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block12_sepconv3… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_46 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block12_sepconv3… │\n", "│ │ \u001b[38;5;34m728\u001b[0m) │ │ add_45[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block13_sepconv1_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ add_46[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block13_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m536,536\u001b[0m │ block13_sepconv1… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block13_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m2,912\u001b[0m │ block13_sepconv1… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block13_sepconv2_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block13_sepconv1… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m728\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block13_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m752,024\u001b[0m │ block13_sepconv2… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m1024\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block13_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m19\u001b[0m, \u001b[38;5;34m19\u001b[0m, │ \u001b[38;5;34m4,096\u001b[0m │ block13_sepconv2… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m1024\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ conv2d_15 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m745,472\u001b[0m │ add_46[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ │ \u001b[38;5;34m1024\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block13_pool │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block13_sepconv2… │\n", "│ (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ \u001b[38;5;34m1024\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ batch_normalizatio… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m4,096\u001b[0m │ conv2d_15[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m1024\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ add_47 (\u001b[38;5;33mAdd\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block13_pool[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m…\u001b[0m │\n", "│ │ \u001b[38;5;34m1024\u001b[0m) │ │ batch_normalizat… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block14_sepconv1 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m1,582,080\u001b[0m │ add_47[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m1536\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block14_sepconv1_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m6,144\u001b[0m │ block14_sepconv1… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m1536\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block14_sepconv1_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block14_sepconv1… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m1536\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block14_sepconv2 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m3,159,552\u001b[0m │ block14_sepconv1… │\n", "│ (\u001b[38;5;33mSeparableConv2D\u001b[0m) │ \u001b[38;5;34m2048\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block14_sepconv2_bn │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m8,192\u001b[0m │ block14_sepconv2… │\n", "│ (\u001b[38;5;33mBatchNormalizatio…\u001b[0m │ \u001b[38;5;34m2048\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ block14_sepconv2_a… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m, \u001b[38;5;34m10\u001b[0m, │ \u001b[38;5;34m0\u001b[0m │ block14_sepconv2… │\n", "│ (\u001b[38;5;33mActivation\u001b[0m) │ \u001b[38;5;34m2048\u001b[0m) │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ global_max_pooling… │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m2048\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ block14_sepconv2… │\n", "│ (\u001b[38;5;33mGlobalMaxPooling2…\u001b[0m │ │ │ │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ dense_6 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m524,544\u001b[0m │ global_max_pooli… │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ dropout_4 (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m256\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │ dense_6[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "├─────────────────────┼───────────────────┼────────────┼───────────────────┤\n", "│ dense_7 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m2\u001b[0m) │ \u001b[38;5;34m514\u001b[0m │ dropout_4[\u001b[38;5;34m0\u001b[0m][\u001b[38;5;34m0\u001b[0m] │\n", "└─────────────────────┴───────────────────┴────────────┴───────────────────┘\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Total params: 21,386,538 (81.58 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m21,386,538\u001b[0m (81.58 MB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Trainable params: 525,058 (2.00 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m525,058\u001b[0m (2.00 MB)\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
 Non-trainable params: 20,861,480 (79.58 MB)\n",
       "
\n" ], "text/plain": [ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m20,861,480\u001b[0m (79.58 MB)\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "base=tf.keras.applications.Xception(\n", " input_shape=(299,299,3),\n", " include_top=False,\n", " weights='imagenet'\n", ")\n", "\n", "base.trainable=False\n", "\n", "x=base.output\n", "x=tf.keras.layers.GlobalMaxPooling2D()(x)\n", "x=tf.keras.layers.Dense(256,activation='relu')(x)\n", "x=tf.keras.layers.Dropout(0.4)(x)\n", "outputs=tf.keras.layers.Dense(training_set.num_classes,activation='softmax')(x)\n", "\n", "model_xc=tf.keras.models.Model(inputs=base.input,outputs=outputs)\n", "\n", "model_xc.compile(\n", " optimizer='Adam',\n", " loss='categorical_crossentropy',\n", " metrics=['accuracy']\n", ")\n", "\n", "model_xc.summary()\n" ] }, { "cell_type": "code", "execution_count": 55, "id": "118ef7f7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Found 840 images belonging to 2 classes.\n", "Found 188 images belonging to 2 classes.\n", "Epoch 1/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m74s\u001b[0m 3s/step - accuracy: 0.6226 - loss: 1.2449 - val_accuracy: 0.8457 - val_loss: 0.4007\n", "Epoch 2/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7167 - loss: 0.5777 - val_accuracy: 0.8936 - val_loss: 0.3561\n", "Epoch 3/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m65s\u001b[0m 2s/step - accuracy: 0.7310 - loss: 0.5590 - val_accuracy: 0.8511 - val_loss: 0.3647\n", "Epoch 4/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7405 - loss: 0.5524 - val_accuracy: 0.9043 - val_loss: 0.3607\n", "Epoch 5/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m67s\u001b[0m 2s/step - accuracy: 0.7536 - loss: 0.5333 - val_accuracy: 0.8777 - val_loss: 0.3775\n", "Epoch 6/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m67s\u001b[0m 2s/step - accuracy: 0.7595 - loss: 0.5172 - val_accuracy: 0.8777 - val_loss: 0.3398\n", "Epoch 7/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m67s\u001b[0m 2s/step - accuracy: 0.7369 - loss: 0.5255 - val_accuracy: 0.8936 - val_loss: 0.3198\n", "Epoch 8/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7821 - loss: 0.4752 - val_accuracy: 0.8883 - val_loss: 0.3080\n", "Epoch 9/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7417 - loss: 0.5259 - val_accuracy: 0.8989 - val_loss: 0.3515\n", "Epoch 10/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7571 - loss: 0.5188 - val_accuracy: 0.8883 - val_loss: 0.3405\n", "Epoch 11/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m67s\u001b[0m 2s/step - accuracy: 0.7631 - loss: 0.5162 - val_accuracy: 0.8883 - val_loss: 0.3449\n", "Epoch 12/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7869 - loss: 0.4748 - val_accuracy: 0.8989 - val_loss: 0.3133\n", "Epoch 13/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7667 - loss: 0.5011 - val_accuracy: 0.8989 - val_loss: 0.3580\n", "Epoch 14/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7774 - loss: 0.4846 - val_accuracy: 0.8883 - val_loss: 0.3232\n", "Epoch 15/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m67s\u001b[0m 2s/step - accuracy: 0.7595 - loss: 0.5093 - val_accuracy: 0.8989 - val_loss: 0.3145\n", "Epoch 16/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7583 - loss: 0.4965 - val_accuracy: 0.8830 - val_loss: 0.3407\n", "Epoch 17/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7988 - loss: 0.4706 - val_accuracy: 0.8989 - val_loss: 0.3379\n", "Epoch 18/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7869 - loss: 0.4835 - val_accuracy: 0.8936 - val_loss: 0.3321\n", "Epoch 19/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 2s/step - accuracy: 0.7690 - loss: 0.4987 - val_accuracy: 0.9149 - val_loss: 0.3273\n", "Epoch 20/20\n", "\u001b[1m27/27\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m66s\u001b[0m 3s/step - accuracy: 0.7786 - loss: 0.4723 - val_accuracy: 0.9096 - val_loss: 0.3185\n" ] } ], "source": [ "training_set_xc=train_datagen.flow_from_directory(\n", " train_path,\n", " target_size=(299,299),\n", " batch_size=32,\n", " class_mode='categorical'\n", "\n", ")\n", "\n", "test_set_xc=test_datagen.flow_from_directory(\n", " test_path,\n", " target_size=(299,299),\n", " batch_size=32,\n", " class_mode='categorical'\n", ")\n", "\n", "history_xc=model_xc.fit(\n", " training_set_xc,\n", " validation_data=test_set_xc,\n", " epochs=20\n", ")" ] }, { "cell_type": "code", "execution_count": 58, "id": "9acfe7fe", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "WARNING:absl:You are saving your model as an HDF5 file via `model.save()` or `keras.saving.save_model(model)`. This file format is considered legacy. We recommend using instead the native Keras format, e.g. `model.save('my_model.keras')` or `keras.saving.save_model(model, 'my_model.keras')`. \n" ] } ], "source": [ "model_xc.save(\"../Models/Model_Xception.h5\")" ] } ], "metadata": { "kernelspec": { "display_name": "ai-ml", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.10.20" } }, "nbformat": 4, "nbformat_minor": 5 }