Symulowanie-wizualne/sw_lab8.ipynb
2023-01-07 00:39:16 +01:00

3179 lines
644 KiB
Plaintext

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Zadanie 8 - Alexnet + Dropout & BatchRegularization\n",
"### Aleksandra Jonas, Aleksandra Gronowska, Iwona Christop"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Przygotowanie danych"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"from IPython.display import Image, display"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "2fe63b50",
"metadata": {},
"outputs": [],
"source": [
"import sys\n",
"import subprocess\n",
"import pkg_resources\n",
"import numpy as np\n",
"\n",
"required = { 'scikit-image'}\n",
"installed = {pkg.key for pkg in pkg_resources.working_set}\n",
"missing = required - installed\n",
"# Alexnet requires images to be of dim = (227, 227, 3)\n",
"newSize = (227,227)\n",
"\n",
"if missing: \n",
" python = sys.executable\n",
" subprocess.check_call([python, '-m', 'pip', 'install', *missing], stdout=subprocess.DEVNULL)\n",
"\n",
"def load_train_data(input_dir):\n",
" import numpy as np\n",
" import pandas as pd\n",
" import os\n",
" from skimage.io import imread\n",
" import cv2 as cv\n",
" from pathlib import Path\n",
" import random\n",
" from shutil import copyfile, rmtree\n",
" import json\n",
"\n",
" import seaborn as sns\n",
" import matplotlib.pyplot as plt\n",
"\n",
" import matplotlib\n",
" \n",
" image_dir = Path(input_dir)\n",
" categories_name = []\n",
" for file in os.listdir(image_dir):\n",
" d = os.path.join(image_dir, file)\n",
" if os.path.isdir(d):\n",
" categories_name.append(file)\n",
"\n",
" folders = [directory for directory in image_dir.iterdir() if directory.is_dir()]\n",
"\n",
" train_img = []\n",
" categories_count=[]\n",
" labels=[]\n",
" for i, direc in enumerate(folders):\n",
" count = 0\n",
" for obj in direc.iterdir():\n",
" if os.path.isfile(obj) and os.path.basename(os.path.normpath(obj)) != 'desktop.ini':\n",
" labels.append(os.path.basename(os.path.normpath(direc)))\n",
" count += 1\n",
" img = imread(obj)#zwraca ndarry postaci xSize x ySize x colorDepth\n",
" img = img[:, :, :3]\n",
" img = cv.resize(img, newSize, interpolation=cv.INTER_AREA)# zwraca ndarray\n",
" img = img / 255 #normalizacja\n",
" train_img.append(img)\n",
" categories_count.append(count)\n",
" X={}\n",
" X[\"values\"] = np.array(train_img)\n",
" X[\"categories_name\"] = categories_name\n",
" X[\"categories_count\"] = categories_count\n",
" X[\"labels\"]=labels\n",
" return X\n",
"\n",
"def load_test_data(input_dir):\n",
" import numpy as np\n",
" import pandas as pd\n",
" import os\n",
" from skimage.io import imread\n",
" import cv2 as cv\n",
" from pathlib import Path\n",
" import random\n",
" from shutil import copyfile, rmtree\n",
" import json\n",
"\n",
" import seaborn as sns\n",
" import matplotlib.pyplot as plt\n",
"\n",
" import matplotlib\n",
"\n",
" image_path = Path(input_dir)\n",
"\n",
" labels_path = image_path.parents[0] / 'test_labels.json'\n",
"\n",
" jsonString = labels_path.read_text()\n",
" objects = json.loads(jsonString)\n",
"\n",
" categories_name = []\n",
" categories_count=[]\n",
" count = 0\n",
" c = objects[0]['value']\n",
" for e in objects:\n",
" if e['value'] != c:\n",
" categories_count.append(count)\n",
" c = e['value']\n",
" count = 1\n",
" else:\n",
" count += 1\n",
" if not e['value'] in categories_name:\n",
" categories_name.append(e['value'])\n",
"\n",
" categories_count.append(count)\n",
" \n",
" test_img = []\n",
"\n",
" labels=[]\n",
" for e in objects:\n",
" p = image_path / e['filename']\n",
" img = imread(p)#zwraca ndarry postaci xSize x ySize x colorDepth\n",
" img = img[:, :, :3]\n",
" img = cv.resize(img, newSize, interpolation=cv.INTER_AREA)# zwraca ndarray\n",
" img = img / 255#normalizacja\n",
" test_img.append(img)\n",
" labels.append(e['value'])\n",
"\n",
" X={}\n",
" X[\"values\"] = np.array(test_img)\n",
" X[\"categories_name\"] = categories_name\n",
" X[\"categories_count\"] = categories_count\n",
" X[\"labels\"]=labels\n",
" return X"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "cc941c5a",
"metadata": {},
"outputs": [],
"source": [
"# Data load\n",
"data_train = load_train_data(\"./train_test_sw/train_sw\")\n",
"values_train = data_train['values']\n",
"labels_train = data_train['labels']\n",
"\n",
"data_test = load_test_data(\"./train_test_sw/test_sw\")\n",
"X_test = data_test['values']\n",
"y_test = data_test['labels']"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "25040ac9",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.model_selection import train_test_split"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "18d44949",
"metadata": {},
"outputs": [],
"source": [
"X_train, X_validate, y_train, y_validate = train_test_split(values_train, labels_train, test_size=0.2, random_state=42)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "a1fe47e6",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.preprocessing import LabelEncoder\n",
"class_le = LabelEncoder()\n",
"y_train_enc = class_le.fit_transform(y_train)\n",
"y_validate_enc = class_le.fit_transform(y_validate)\n",
"y_test_enc = class_le.fit_transform(y_test)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "d90af799",
"metadata": {},
"outputs": [],
"source": [
"class_le = LabelEncoder()\n",
"y_train_enc = class_le.fit_transform(y_train)\n",
"y_validate_enc = class_le.fit_transform(y_validate)\n",
"y_test_enc = class_le.fit_transform(y_test)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "c2323985",
"metadata": {},
"outputs": [],
"source": [
"import tensorflow as tf"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "dfe674dc",
"metadata": {},
"outputs": [],
"source": [
"train_ds = tf.data.Dataset.from_tensor_slices((X_train, y_train_enc))\n",
"validation_ds = tf.data.Dataset.from_tensor_slices((X_validate, y_validate_enc))\n",
"test_ds = tf.data.Dataset.from_tensor_slices((X_test, y_test_enc))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "076c8ac9",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Training data size: 820\n",
"Test data size: 259\n",
"Validation data size: 206\n"
]
}
],
"source": [
"train_ds_size = tf.data.experimental.cardinality(train_ds).numpy()\n",
"test_ds_size = tf.data.experimental.cardinality(test_ds).numpy()\n",
"validation_ds_size = tf.data.experimental.cardinality(validation_ds).numpy()\n",
"print(\"Training data size:\", train_ds_size)\n",
"print(\"Test data size:\", test_ds_size)\n",
"print(\"Validation data size:\", validation_ds_size)"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "07ebcd4a",
"metadata": {},
"outputs": [],
"source": [
"train_ds = (train_ds\n",
" .shuffle(buffer_size=train_ds_size)\n",
" .batch(batch_size=32, drop_remainder=True))\n",
"test_ds = (test_ds\n",
" .shuffle(buffer_size=train_ds_size)\n",
" .batch(batch_size=32, drop_remainder=True))\n",
"validation_ds = (validation_ds\n",
" .shuffle(buffer_size=train_ds_size)\n",
" .batch(batch_size=32, drop_remainder=True))"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"from tensorflow import keras"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Dropout"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Do warstw spłaszczonych"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"model_flat_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" max_pooling2d (MaxPooling2D (None, 27, 27, 96) 0 \n",
" ) \n",
" \n",
" conv2d_1 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" max_pooling2d_1 (MaxPooling (None, 13, 13, 256) 0 \n",
" 2D) \n",
" \n",
" conv2d_2 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" conv2d_3 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" conv2d_4 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" max_pooling2d_2 (MaxPooling (None, 6, 6, 256) 0 \n",
" 2D) \n",
" \n",
" flatten (Flatten) (None, 9216) 0 \n",
" \n",
" dense (Dense) (None, 4096) 37752832 \n",
" \n",
" dropout (Dropout) (None, 4096) 0 \n",
" \n",
" dense_1 (Dense) (None, 4096) 16781312 \n",
" \n",
" dropout_1 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_2 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,322,314\n",
"Trainable params: 58,322,314\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_flat_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_flat_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n",
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/1946638494.py:6: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex1 = model_flat_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"2023-01-06 21:33:12.260921: W tensorflow/tsl/platform/profile_utils/cpu_utils.cc:128] Failed to get CPU frequency: 0 Hz\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 2.2671 - accuracy: 0.1963\n",
"Epoch 1: val_accuracy improved from -inf to 0.20312, saving model to alex_1.h5\n",
"25/25 [==============================] - 24s 939ms/step - loss: 2.2671 - accuracy: 0.1963 - val_loss: 2.2120 - val_accuracy: 0.2031\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 2.0757 - accuracy: 0.1875\n",
"Epoch 2: val_accuracy improved from 0.20312 to 0.28125, saving model to alex_1.h5\n",
"25/25 [==============================] - 22s 899ms/step - loss: 2.0757 - accuracy: 0.1875 - val_loss: 1.7334 - val_accuracy: 0.2812\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.7064 - accuracy: 0.2100\n",
"Epoch 3: val_accuracy did not improve from 0.28125\n",
"25/25 [==============================] - 23s 940ms/step - loss: 1.7064 - accuracy: 0.2100 - val_loss: 1.6128 - val_accuracy: 0.2656\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6449 - accuracy: 0.2537\n",
"Epoch 4: val_accuracy improved from 0.28125 to 0.34896, saving model to alex_1.h5\n",
"25/25 [==============================] - 23s 918ms/step - loss: 1.6449 - accuracy: 0.2537 - val_loss: 1.5930 - val_accuracy: 0.3490\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6596 - accuracy: 0.2275\n",
"Epoch 5: val_accuracy did not improve from 0.34896\n",
"25/25 [==============================] - 23s 928ms/step - loss: 1.6596 - accuracy: 0.2275 - val_loss: 1.5650 - val_accuracy: 0.2865\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6292 - accuracy: 0.2625\n",
"Epoch 6: val_accuracy did not improve from 0.34896\n",
"25/25 [==============================] - 23s 935ms/step - loss: 1.6292 - accuracy: 0.2625 - val_loss: 1.5573 - val_accuracy: 0.3021\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6197 - accuracy: 0.2562\n",
"Epoch 7: val_accuracy did not improve from 0.34896\n",
"25/25 [==============================] - 23s 929ms/step - loss: 1.6197 - accuracy: 0.2562 - val_loss: 1.5328 - val_accuracy: 0.3125\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5907 - accuracy: 0.2975\n",
"Epoch 8: val_accuracy improved from 0.34896 to 0.36458, saving model to alex_1.h5\n",
"25/25 [==============================] - 24s 943ms/step - loss: 1.5907 - accuracy: 0.2975 - val_loss: 1.4958 - val_accuracy: 0.3646\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5715 - accuracy: 0.2962\n",
"Epoch 9: val_accuracy improved from 0.36458 to 0.40104, saving model to alex_1.h5\n",
"25/25 [==============================] - 24s 944ms/step - loss: 1.5715 - accuracy: 0.2962 - val_loss: 1.4821 - val_accuracy: 0.4010\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5357 - accuracy: 0.3162\n",
"Epoch 10: val_accuracy did not improve from 0.40104\n",
"25/25 [==============================] - 23s 937ms/step - loss: 1.5357 - accuracy: 0.3162 - val_loss: 1.4562 - val_accuracy: 0.3958\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5030 - accuracy: 0.3262\n",
"Epoch 11: val_accuracy improved from 0.40104 to 0.45833, saving model to alex_1.h5\n",
"25/25 [==============================] - 24s 970ms/step - loss: 1.5030 - accuracy: 0.3262 - val_loss: 1.4106 - val_accuracy: 0.4583\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4862 - accuracy: 0.3613\n",
"Epoch 12: val_accuracy improved from 0.45833 to 0.53125, saving model to alex_1.h5\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.4862 - accuracy: 0.3613 - val_loss: 1.3597 - val_accuracy: 0.5312\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4194 - accuracy: 0.4162\n",
"Epoch 13: val_accuracy did not improve from 0.53125\n",
"25/25 [==============================] - 24s 974ms/step - loss: 1.4194 - accuracy: 0.4162 - val_loss: 1.3095 - val_accuracy: 0.4583\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3418 - accuracy: 0.4437\n",
"Epoch 14: val_accuracy did not improve from 0.53125\n",
"25/25 [==============================] - 24s 959ms/step - loss: 1.3418 - accuracy: 0.4437 - val_loss: 1.2787 - val_accuracy: 0.4792\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3059 - accuracy: 0.4675\n",
"Epoch 15: val_accuracy did not improve from 0.53125\n",
"25/25 [==============================] - 24s 951ms/step - loss: 1.3059 - accuracy: 0.4675 - val_loss: 1.2374 - val_accuracy: 0.4635\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2688 - accuracy: 0.4725\n",
"Epoch 16: val_accuracy did not improve from 0.53125\n",
"25/25 [==============================] - 24s 955ms/step - loss: 1.2688 - accuracy: 0.4725 - val_loss: 1.2178 - val_accuracy: 0.4583\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2209 - accuracy: 0.4875\n",
"Epoch 17: val_accuracy did not improve from 0.53125\n",
"25/25 [==============================] - 24s 958ms/step - loss: 1.2209 - accuracy: 0.4875 - val_loss: 1.2793 - val_accuracy: 0.3958\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1457 - accuracy: 0.5150\n",
"Epoch 18: val_accuracy improved from 0.53125 to 0.55729, saving model to alex_1.h5\n",
"25/25 [==============================] - 24s 980ms/step - loss: 1.1457 - accuracy: 0.5150 - val_loss: 1.0978 - val_accuracy: 0.5573\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1318 - accuracy: 0.5063\n",
"Epoch 19: val_accuracy did not improve from 0.55729\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.1318 - accuracy: 0.5063 - val_loss: 1.0764 - val_accuracy: 0.5104\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1289 - accuracy: 0.5125\n",
"Epoch 20: val_accuracy improved from 0.55729 to 0.56771, saving model to alex_1.h5\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.1289 - accuracy: 0.5125 - val_loss: 1.0067 - val_accuracy: 0.5677\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0175 - accuracy: 0.5638\n",
"Epoch 21: val_accuracy did not improve from 0.56771\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.0175 - accuracy: 0.5638 - val_loss: 1.0095 - val_accuracy: 0.5625\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0559 - accuracy: 0.5288\n",
"Epoch 22: val_accuracy did not improve from 0.56771\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.0559 - accuracy: 0.5288 - val_loss: 1.0557 - val_accuracy: 0.5208\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1151 - accuracy: 0.5412\n",
"Epoch 23: val_accuracy did not improve from 0.56771\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.1151 - accuracy: 0.5412 - val_loss: 1.0837 - val_accuracy: 0.5052\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0158 - accuracy: 0.5625\n",
"Epoch 24: val_accuracy improved from 0.56771 to 0.58333, saving model to alex_1.h5\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.0158 - accuracy: 0.5625 - val_loss: 0.9605 - val_accuracy: 0.5833\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9619 - accuracy: 0.5750\n",
"Epoch 25: val_accuracy did not improve from 0.58333\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.9619 - accuracy: 0.5750 - val_loss: 1.4147 - val_accuracy: 0.3906\n"
]
}
],
"source": [
"from keras.callbacks import ModelCheckpoint, EarlyStopping\n",
"\n",
"checkpoint = ModelCheckpoint(\"alex_1.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex1 = model_flat_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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nbp161J0nV+YxZ2RwFPBVCqVqZXnev14AAKcA5jQwjgz5/t73ie/JL/K6hNCiKoyceJE1q1bx/nz58vsW7hwIWFhYbRs2dLs63p4eGBvb18RJd6Sl5cXWq22Su71888/07x5c5o2bWrxViVFUdDpdBatoaJJ4KkEpsBznX48l00KnYSvoy/J+cl8ffDrqipNCCGqzKBBg/Dw8CA8PLzU9tzcXFauXMnEiRO5ePEio0aNwtfXF3t7e9Oq5zdz7SOt06dP0717d2xtbWnWrBnr1q0rc85LL71E48aNsbe3JygoiFdffZWSEuNyP+Hh4cyePZuDBw+iUqlQqVSmmq99pHX48GF69+6NnZ0dderU4YknniA3N9e0f/z48QwZMoSPPvoIb29v6tSpw5QpU0z3upn58+czZswYxowZw/z588vsP3r0KIMGDcLZ2RknJye6detGdHS0af+CBQto3rw5Wq0Wb29vpk6dCsC5c+dQqVREXTV6ODMzE5VKxaZNmwDYtGkTKpWKv//+m3bt2qHVatm2bRvR0dE8+OCDeHp64ujoSPv27Vm/vvSTiaKiIl566SX8/PzQarU0atSI+fPnoygKjRo14qOPPip1fFRUFCqVijNnztzyz6QiSeCpBKYJCKOiUG7wl9zWypaXO7wMwI/HfuRMRtX+hxdC1HCKAsV5lvkqZ99DKysrxo4dS3h4eKn+iitXrkSv1zNq1CgKCwtp164df/75J0eOHOGJJ57gscceY8+e8i24bDAYePjhh7GxsWH37t18/fXXvPTSS2WOc3JyIjw8nGPHjjF37ly+++47Pv30UwBGjhzJc889R/PmzUlKSiIpKYmRI0eWuUZeXh79+vXDzc2NvXv3snLlStavX28KFpdt3LiR6OhoNm7cyA8//EB4eHiZ0Het6Ohodu7cyYgRIxgxYgRbt24lNjbWtD8hIYHu3buj1WrZsGED+/btY8KECaZWmK+++oopU6bwxBNPcPjwYX777TcaNWpUrj/Dq/3vf//jvffe4/jx47Rs2ZLc3FwGDhxIREQEBw4coH///gwePJi4uCuDbsaOHcvSpUv57LPPOH78ON988w2Ojo6oVComTJjAwoULS91j4cKFdO/e/bbquxNWVXq3u4S2USM0Li7os7IoPHYMu1atrntcD78e9PLrxcb4jby9+20W9FuASqWq4mqFEDVS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T4mIRiEvL09otVphNBo9ll//+tdCCHkm5fXr13v8TXp6utiwYYMQQog//vGPIiQkRNjtdvfxQ4cOCY1G455B3GaziZdffvmWMQAQr7zyinvbbrcLAOLw4cNe+55EpCz24SEixT366KPYtWuXxz6z2exez8jI8DiWkZGBkpISAEB5eTlSU1NhNBrdxxcsWACXy4XKykpIkoT6+npkZmZ+awwpKSnudaPRiMDAQDQ3N3/Xr0REEwwTHiJSnNFoHPaIyVv8/Pzu6DydTuexLUkSXC7XWIRERApgHx4imvBOnDgxbHv69OkAgOnTp+PMmTNwOBzu48eOHYNGo0FiYiJMJhOmTJmCoqKicY2ZiCYWtvAQkeJ6enrQ2Njosc/HxwdhYWEAgMLCQsyZMwcPPfQQdu/ejVOnTuHPf/4zAGD16tUoKChAXl4eduzYgStXrmDTpk34yU9+gsjISADAjh07sH79ekRERCAnJwednZ04duwYNm3aNL5flIgUw4SHiBT3ySefwGq1euxLTExERUUFAPkNqr/97W949tlnYbVasWfPHsyYMQMA4O/vj08//RTPPfcc5s6dC39/f6xYsQJvvPGG+1p5eXno7u7Gb3/7W2zbtg1hYWFYuXLl+H1BIlKcJIQQSgdBRHQrkiRh7969yM3NVToUIrqHsQ8PERERqR4THiIiIlI99uEhogmNT92JyBvYwkNERESqx4SHiIiIVI8JDxEREakeEx4iIiJSPSY8REREpHpMeIiIiEj1mPAQERGR6jHhISIiItVjwkNERESq9//pfXK9Yc+/0gAAAABJRU5ErkJggg==",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.plot(alex1.history[\"accuracy\"])\n",
"plt.plot(alex1.history['val_accuracy'])\n",
"plt.plot(alex1.history['loss'])\n",
"plt.plot(alex1.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 2s 218ms/step - loss: 1.4086 - accuracy: 0.4141\n"
]
},
{
"data": {
"text/plain": [
"[1.4086337089538574, 0.4140625]"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_flat_drop.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Do warstw maxpooling"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [],
"source": [
"model_pool_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_1\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_5 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" max_pooling2d_3 (MaxPooling (None, 27, 27, 96) 0 \n",
" 2D) \n",
" \n",
" dropout_2 (Dropout) (None, 27, 27, 96) 0 \n",
" \n",
" conv2d_6 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" max_pooling2d_4 (MaxPooling (None, 13, 13, 256) 0 \n",
" 2D) \n",
" \n",
" dropout_3 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" conv2d_7 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" conv2d_8 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" conv2d_9 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" max_pooling2d_5 (MaxPooling (None, 6, 6, 256) 0 \n",
" 2D) \n",
" \n",
" dropout_4 (Dropout) (None, 6, 6, 256) 0 \n",
" \n",
" flatten_1 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_3 (Dense) (None, 4096) 37752832 \n",
" \n",
" dense_4 (Dense) (None, 4096) 16781312 \n",
" \n",
" dense_5 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,322,314\n",
"Trainable params: 58,322,314\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_pool_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_pool_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/3758035572.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex2 = model_pool_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 2.0517 - accuracy: 0.1963\n",
"Epoch 1: val_accuracy improved from -inf to 0.26042, saving model to alex_2.h5\n",
"25/25 [==============================] - 24s 926ms/step - loss: 2.0517 - accuracy: 0.1963 - val_loss: 1.8585 - val_accuracy: 0.2604\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6898 - accuracy: 0.2300\n",
"Epoch 2: val_accuracy improved from 0.26042 to 0.30208, saving model to alex_2.h5\n",
"25/25 [==============================] - 23s 937ms/step - loss: 1.6898 - accuracy: 0.2300 - val_loss: 1.7242 - val_accuracy: 0.3021\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6539 - accuracy: 0.2275\n",
"Epoch 3: val_accuracy did not improve from 0.30208\n",
"25/25 [==============================] - 23s 942ms/step - loss: 1.6539 - accuracy: 0.2275 - val_loss: 1.7515 - val_accuracy: 0.2552\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6148 - accuracy: 0.2775\n",
"Epoch 4: val_accuracy did not improve from 0.30208\n",
"25/25 [==============================] - 24s 971ms/step - loss: 1.6148 - accuracy: 0.2775 - val_loss: 1.7084 - val_accuracy: 0.2812\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5876 - accuracy: 0.3013\n",
"Epoch 5: val_accuracy did not improve from 0.30208\n",
"25/25 [==============================] - 24s 947ms/step - loss: 1.5876 - accuracy: 0.3013 - val_loss: 1.6701 - val_accuracy: 0.2344\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5765 - accuracy: 0.2962\n",
"Epoch 6: val_accuracy improved from 0.30208 to 0.34896, saving model to alex_2.h5\n",
"25/25 [==============================] - 22s 894ms/step - loss: 1.5765 - accuracy: 0.2962 - val_loss: 1.6380 - val_accuracy: 0.3490\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5710 - accuracy: 0.2825\n",
"Epoch 7: val_accuracy improved from 0.34896 to 0.36979, saving model to alex_2.h5\n",
"25/25 [==============================] - 22s 865ms/step - loss: 1.5710 - accuracy: 0.2825 - val_loss: 1.6219 - val_accuracy: 0.3698\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5406 - accuracy: 0.3275\n",
"Epoch 8: val_accuracy did not improve from 0.36979\n",
"25/25 [==============================] - 22s 872ms/step - loss: 1.5406 - accuracy: 0.3275 - val_loss: 1.6149 - val_accuracy: 0.3646\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4844 - accuracy: 0.3537\n",
"Epoch 9: val_accuracy did not improve from 0.36979\n",
"25/25 [==============================] - 22s 879ms/step - loss: 1.4844 - accuracy: 0.3537 - val_loss: 1.5673 - val_accuracy: 0.3490\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4884 - accuracy: 0.3462\n",
"Epoch 10: val_accuracy improved from 0.36979 to 0.41146, saving model to alex_2.h5\n",
"25/25 [==============================] - 23s 911ms/step - loss: 1.4884 - accuracy: 0.3462 - val_loss: 1.5698 - val_accuracy: 0.4115\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4408 - accuracy: 0.3887\n",
"Epoch 11: val_accuracy did not improve from 0.41146\n",
"25/25 [==============================] - 22s 897ms/step - loss: 1.4408 - accuracy: 0.3887 - val_loss: 1.5205 - val_accuracy: 0.4115\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3852 - accuracy: 0.4250\n",
"Epoch 12: val_accuracy did not improve from 0.41146\n",
"25/25 [==============================] - 23s 905ms/step - loss: 1.3852 - accuracy: 0.4250 - val_loss: 1.5540 - val_accuracy: 0.3594\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3202 - accuracy: 0.4663\n",
"Epoch 13: val_accuracy did not improve from 0.41146\n",
"25/25 [==============================] - 23s 906ms/step - loss: 1.3202 - accuracy: 0.4663 - val_loss: 1.3669 - val_accuracy: 0.4115\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2614 - accuracy: 0.4700\n",
"Epoch 14: val_accuracy improved from 0.41146 to 0.44792, saving model to alex_2.h5\n",
"25/25 [==============================] - 23s 917ms/step - loss: 1.2614 - accuracy: 0.4700 - val_loss: 1.3723 - val_accuracy: 0.4479\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1812 - accuracy: 0.4900\n",
"Epoch 15: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 23s 931ms/step - loss: 1.1812 - accuracy: 0.4900 - val_loss: 1.4332 - val_accuracy: 0.3854\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1327 - accuracy: 0.5113\n",
"Epoch 16: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 23s 908ms/step - loss: 1.1327 - accuracy: 0.5113 - val_loss: 1.4481 - val_accuracy: 0.3802\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0848 - accuracy: 0.5462\n",
"Epoch 17: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 23s 915ms/step - loss: 1.0848 - accuracy: 0.5462 - val_loss: 1.6393 - val_accuracy: 0.3594\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1003 - accuracy: 0.5462\n",
"Epoch 18: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 23s 915ms/step - loss: 1.1003 - accuracy: 0.5462 - val_loss: 1.9934 - val_accuracy: 0.3333\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0956 - accuracy: 0.5437\n",
"Epoch 19: val_accuracy improved from 0.44792 to 0.47917, saving model to alex_2.h5\n",
"25/25 [==============================] - 24s 951ms/step - loss: 1.0956 - accuracy: 0.5437 - val_loss: 1.1398 - val_accuracy: 0.4792\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0014 - accuracy: 0.5688\n",
"Epoch 20: val_accuracy did not improve from 0.47917\n",
"25/25 [==============================] - 24s 976ms/step - loss: 1.0014 - accuracy: 0.5688 - val_loss: 1.2802 - val_accuracy: 0.4062\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1812 - accuracy: 0.5213\n",
"Epoch 21: val_accuracy did not improve from 0.47917\n",
"25/25 [==============================] - 25s 994ms/step - loss: 1.1812 - accuracy: 0.5213 - val_loss: 1.2117 - val_accuracy: 0.4219\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1199 - accuracy: 0.5362\n",
"Epoch 22: val_accuracy did not improve from 0.47917\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.1199 - accuracy: 0.5362 - val_loss: 1.1858 - val_accuracy: 0.4531\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0079 - accuracy: 0.5700\n",
"Epoch 23: val_accuracy did not improve from 0.47917\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.0079 - accuracy: 0.5700 - val_loss: 1.2529 - val_accuracy: 0.4219\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9996 - accuracy: 0.5750\n",
"Epoch 24: val_accuracy did not improve from 0.47917\n",
"25/25 [==============================] - 25s 1s/step - loss: 0.9996 - accuracy: 0.5750 - val_loss: 1.1984 - val_accuracy: 0.4427\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9713 - accuracy: 0.5825\n",
"Epoch 25: val_accuracy improved from 0.47917 to 0.51042, saving model to alex_2.h5\n",
"25/25 [==============================] - 25s 1s/step - loss: 0.9713 - accuracy: 0.5825 - val_loss: 1.0454 - val_accuracy: 0.5104\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_2.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex2 = model_pool_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex2.history[\"accuracy\"])\n",
"plt.plot(alex2.history['val_accuracy'])\n",
"plt.plot(alex2.history['loss'])\n",
"plt.plot(alex2.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 2s 265ms/step - loss: 1.0271 - accuracy: 0.5391\n"
]
},
{
"data": {
"text/plain": [
"[1.0271097421646118, 0.5390625]"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_pool_drop.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Do warstw splotowych"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [],
"source": [
"model_conv_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_2\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_10 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" dropout_5 (Dropout) (None, 55, 55, 96) 0 \n",
" \n",
" max_pooling2d_6 (MaxPooling (None, 27, 27, 96) 0 \n",
" 2D) \n",
" \n",
" conv2d_11 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" dropout_6 (Dropout) (None, 27, 27, 256) 0 \n",
" \n",
" max_pooling2d_7 (MaxPooling (None, 13, 13, 256) 0 \n",
" 2D) \n",
" \n",
" conv2d_12 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" dropout_7 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_13 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" dropout_8 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_14 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" dropout_9 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" max_pooling2d_8 (MaxPooling (None, 6, 6, 256) 0 \n",
" 2D) \n",
" \n",
" flatten_2 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_6 (Dense) (None, 4096) 37752832 \n",
" \n",
" dense_7 (Dense) (None, 4096) 16781312 \n",
" \n",
" dense_8 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,322,314\n",
"Trainable params: 58,322,314\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_conv_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_conv_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/3866647797.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex3 = model_conv_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 1.8090 - accuracy: 0.2450\n",
"Epoch 1: val_accuracy improved from -inf to 0.21354, saving model to alex_3.h5\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.8090 - accuracy: 0.2450 - val_loss: 2.1443 - val_accuracy: 0.2135\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6573 - accuracy: 0.2738\n",
"Epoch 2: val_accuracy improved from 0.21354 to 0.40104, saving model to alex_3.h5\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.6573 - accuracy: 0.2738 - val_loss: 2.1381 - val_accuracy: 0.4010\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5349 - accuracy: 0.3413\n",
"Epoch 3: val_accuracy did not improve from 0.40104\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.5349 - accuracy: 0.3413 - val_loss: 2.0752 - val_accuracy: 0.2760\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4963 - accuracy: 0.3688\n",
"Epoch 4: val_accuracy did not improve from 0.40104\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.4963 - accuracy: 0.3688 - val_loss: 2.0778 - val_accuracy: 0.2760\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3579 - accuracy: 0.4112\n",
"Epoch 5: val_accuracy improved from 0.40104 to 0.48958, saving model to alex_3.h5\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.3579 - accuracy: 0.4112 - val_loss: 1.9411 - val_accuracy: 0.4896\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2882 - accuracy: 0.4512\n",
"Epoch 6: val_accuracy did not improve from 0.48958\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.2882 - accuracy: 0.4512 - val_loss: 1.8212 - val_accuracy: 0.4323\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1601 - accuracy: 0.5163\n",
"Epoch 7: val_accuracy did not improve from 0.48958\n",
"25/25 [==============================] - 25s 1s/step - loss: 1.1601 - accuracy: 0.5163 - val_loss: 1.7429 - val_accuracy: 0.3802\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2260 - accuracy: 0.4950\n",
"Epoch 8: val_accuracy did not improve from 0.48958\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.2260 - accuracy: 0.4950 - val_loss: 1.8061 - val_accuracy: 0.3490\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1188 - accuracy: 0.5200\n",
"Epoch 9: val_accuracy did not improve from 0.48958\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.1188 - accuracy: 0.5200 - val_loss: 1.7995 - val_accuracy: 0.3177\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9879 - accuracy: 0.5950\n",
"Epoch 10: val_accuracy did not improve from 0.48958\n",
"25/25 [==============================] - 27s 1s/step - loss: 0.9879 - accuracy: 0.5950 - val_loss: 1.8887 - val_accuracy: 0.1875\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9848 - accuracy: 0.5800\n",
"Epoch 11: val_accuracy did not improve from 0.48958\n",
"25/25 [==============================] - 26s 1s/step - loss: 0.9848 - accuracy: 0.5800 - val_loss: 1.7492 - val_accuracy: 0.3073\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9861 - accuracy: 0.6100\n",
"Epoch 12: val_accuracy did not improve from 0.48958\n",
"25/25 [==============================] - 26s 1s/step - loss: 0.9861 - accuracy: 0.6100 - val_loss: 1.6876 - val_accuracy: 0.3646\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9351 - accuracy: 0.6075\n",
"Epoch 13: val_accuracy improved from 0.48958 to 0.51562, saving model to alex_3.h5\n",
"25/25 [==============================] - 27s 1s/step - loss: 0.9351 - accuracy: 0.6075 - val_loss: 1.5044 - val_accuracy: 0.5156\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9683 - accuracy: 0.6125\n",
"Epoch 14: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.9683 - accuracy: 0.6125 - val_loss: 1.5911 - val_accuracy: 0.4375\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9354 - accuracy: 0.6037\n",
"Epoch 15: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.9354 - accuracy: 0.6037 - val_loss: 1.6423 - val_accuracy: 0.3698\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8270 - accuracy: 0.6800\n",
"Epoch 16: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 30s 1s/step - loss: 0.8270 - accuracy: 0.6800 - val_loss: 1.6960 - val_accuracy: 0.2708\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8327 - accuracy: 0.6488\n",
"Epoch 17: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 30s 1s/step - loss: 0.8327 - accuracy: 0.6488 - val_loss: 1.6061 - val_accuracy: 0.3646\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8175 - accuracy: 0.6625\n",
"Epoch 18: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 27s 1s/step - loss: 0.8175 - accuracy: 0.6625 - val_loss: 1.5903 - val_accuracy: 0.4531\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.7260 - accuracy: 0.7063\n",
"Epoch 19: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.7260 - accuracy: 0.7063 - val_loss: 1.4000 - val_accuracy: 0.4896\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.7956 - accuracy: 0.6587\n",
"Epoch 20: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.7956 - accuracy: 0.6587 - val_loss: 1.6044 - val_accuracy: 0.4010\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8474 - accuracy: 0.6625\n",
"Epoch 21: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.8474 - accuracy: 0.6625 - val_loss: 1.5974 - val_accuracy: 0.3490\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.6524 - accuracy: 0.7175\n",
"Epoch 22: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 27s 1s/step - loss: 0.6524 - accuracy: 0.7175 - val_loss: 1.5435 - val_accuracy: 0.3594\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8152 - accuracy: 0.6725\n",
"Epoch 23: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 26s 1s/step - loss: 0.8152 - accuracy: 0.6725 - val_loss: 1.8228 - val_accuracy: 0.2656\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8200 - accuracy: 0.6725\n",
"Epoch 24: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.8200 - accuracy: 0.6725 - val_loss: 1.5864 - val_accuracy: 0.3854\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.7701 - accuracy: 0.6825\n",
"Epoch 25: val_accuracy did not improve from 0.51562\n",
"25/25 [==============================] - 27s 1s/step - loss: 0.7701 - accuracy: 0.6825 - val_loss: 1.4605 - val_accuracy: 0.5104\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_3.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex3 = model_conv_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex3.history[\"accuracy\"])\n",
"plt.plot(alex3.history['val_accuracy'])\n",
"plt.plot(alex3.history['loss'])\n",
"plt.plot(alex3.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 2s 280ms/step - loss: 1.4843 - accuracy: 0.4570\n"
]
},
{
"data": {
"text/plain": [
"[1.4843157529830933, 0.45703125]"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_conv_drop.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Do warstw spłaszczonych i maxpooling"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [],
"source": [
"model_flat_pool_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_3\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_15 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" max_pooling2d_9 (MaxPooling (None, 27, 27, 96) 0 \n",
" 2D) \n",
" \n",
" dropout_10 (Dropout) (None, 27, 27, 96) 0 \n",
" \n",
" conv2d_16 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" max_pooling2d_10 (MaxPoolin (None, 13, 13, 256) 0 \n",
" g2D) \n",
" \n",
" dropout_11 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" conv2d_17 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" conv2d_18 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" conv2d_19 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" max_pooling2d_11 (MaxPoolin (None, 6, 6, 256) 0 \n",
" g2D) \n",
" \n",
" dropout_12 (Dropout) (None, 6, 6, 256) 0 \n",
" \n",
" flatten_3 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_9 (Dense) (None, 4096) 37752832 \n",
" \n",
" dropout_13 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_10 (Dense) (None, 4096) 16781312 \n",
" \n",
" dropout_14 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_11 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,322,314\n",
"Trainable params: 58,322,314\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_flat_pool_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_flat_pool_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/2334869237.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex4 = model_flat_pool_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 2.1044 - accuracy: 0.1750\n",
"Epoch 1: val_accuracy improved from -inf to 0.25000, saving model to alex_4.h5\n",
"25/25 [==============================] - 27s 1s/step - loss: 2.1044 - accuracy: 0.1750 - val_loss: 1.9644 - val_accuracy: 0.2500\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.7691 - accuracy: 0.1875\n",
"Epoch 2: val_accuracy did not improve from 0.25000\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.7691 - accuracy: 0.1875 - val_loss: 1.8190 - val_accuracy: 0.1979\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.7062 - accuracy: 0.2113\n",
"Epoch 3: val_accuracy did not improve from 0.25000\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.7062 - accuracy: 0.2113 - val_loss: 1.8115 - val_accuracy: 0.2083\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6706 - accuracy: 0.2362\n",
"Epoch 4: val_accuracy improved from 0.25000 to 0.30208, saving model to alex_4.h5\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.6706 - accuracy: 0.2362 - val_loss: 1.7808 - val_accuracy: 0.3021\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6715 - accuracy: 0.2113\n",
"Epoch 5: val_accuracy improved from 0.30208 to 0.30729, saving model to alex_4.h5\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.6715 - accuracy: 0.2113 - val_loss: 1.7774 - val_accuracy: 0.3073\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6512 - accuracy: 0.2425\n",
"Epoch 6: val_accuracy improved from 0.30729 to 0.32812, saving model to alex_4.h5\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.6512 - accuracy: 0.2425 - val_loss: 1.7714 - val_accuracy: 0.3281\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6418 - accuracy: 0.2475\n",
"Epoch 7: val_accuracy did not improve from 0.32812\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.6418 - accuracy: 0.2475 - val_loss: 1.7421 - val_accuracy: 0.2969\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5988 - accuracy: 0.2488\n",
"Epoch 8: val_accuracy did not improve from 0.32812\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.5988 - accuracy: 0.2488 - val_loss: 1.7183 - val_accuracy: 0.3177\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5946 - accuracy: 0.2800\n",
"Epoch 9: val_accuracy improved from 0.32812 to 0.34896, saving model to alex_4.h5\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.5946 - accuracy: 0.2800 - val_loss: 1.6653 - val_accuracy: 0.3490\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5646 - accuracy: 0.2875\n",
"Epoch 10: val_accuracy did not improve from 0.34896\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.5646 - accuracy: 0.2875 - val_loss: 1.6476 - val_accuracy: 0.3490\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5359 - accuracy: 0.3200\n",
"Epoch 11: val_accuracy improved from 0.34896 to 0.45312, saving model to alex_4.h5\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.5359 - accuracy: 0.3200 - val_loss: 1.5768 - val_accuracy: 0.4531\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4968 - accuracy: 0.3200\n",
"Epoch 12: val_accuracy did not improve from 0.45312\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.4968 - accuracy: 0.3200 - val_loss: 1.5472 - val_accuracy: 0.3594\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4612 - accuracy: 0.3975\n",
"Epoch 13: val_accuracy did not improve from 0.45312\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.4612 - accuracy: 0.3975 - val_loss: 1.4494 - val_accuracy: 0.4427\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3955 - accuracy: 0.4038\n",
"Epoch 14: val_accuracy did not improve from 0.45312\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.3955 - accuracy: 0.4038 - val_loss: 1.4523 - val_accuracy: 0.3542\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3153 - accuracy: 0.4525\n",
"Epoch 15: val_accuracy did not improve from 0.45312\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.3153 - accuracy: 0.4525 - val_loss: 1.3144 - val_accuracy: 0.4062\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2655 - accuracy: 0.4638\n",
"Epoch 16: val_accuracy did not improve from 0.45312\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.2655 - accuracy: 0.4638 - val_loss: 1.2121 - val_accuracy: 0.4479\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1774 - accuracy: 0.4900\n",
"Epoch 17: val_accuracy improved from 0.45312 to 0.47917, saving model to alex_4.h5\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.1774 - accuracy: 0.4900 - val_loss: 1.1340 - val_accuracy: 0.4792\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1709 - accuracy: 0.4875\n",
"Epoch 18: val_accuracy did not improve from 0.47917\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.1709 - accuracy: 0.4875 - val_loss: 1.1360 - val_accuracy: 0.4635\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1127 - accuracy: 0.5125\n",
"Epoch 19: val_accuracy improved from 0.47917 to 0.48958, saving model to alex_4.h5\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.1127 - accuracy: 0.5125 - val_loss: 1.1156 - val_accuracy: 0.4896\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0822 - accuracy: 0.5263\n",
"Epoch 20: val_accuracy improved from 0.48958 to 0.54167, saving model to alex_4.h5\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.0822 - accuracy: 0.5263 - val_loss: 0.9865 - val_accuracy: 0.5417\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1573 - accuracy: 0.5063\n",
"Epoch 21: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.1573 - accuracy: 0.5063 - val_loss: 1.5426 - val_accuracy: 0.3490\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0643 - accuracy: 0.5400\n",
"Epoch 22: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 26s 1s/step - loss: 1.0643 - accuracy: 0.5400 - val_loss: 1.1197 - val_accuracy: 0.4896\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0817 - accuracy: 0.5512\n",
"Epoch 23: val_accuracy improved from 0.54167 to 0.56771, saving model to alex_4.h5\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.0817 - accuracy: 0.5512 - val_loss: 1.0690 - val_accuracy: 0.5677\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0167 - accuracy: 0.5600\n",
"Epoch 24: val_accuracy did not improve from 0.56771\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.0167 - accuracy: 0.5600 - val_loss: 1.0323 - val_accuracy: 0.5208\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1168 - accuracy: 0.5537\n",
"Epoch 25: val_accuracy did not improve from 0.56771\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.1168 - accuracy: 0.5537 - val_loss: 1.1679 - val_accuracy: 0.4948\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_4.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex4 = model_flat_pool_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex4.history[\"accuracy\"])\n",
"plt.plot(alex4.history['val_accuracy'])\n",
"plt.plot(alex4.history['loss'])\n",
"plt.plot(alex4.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 3s 321ms/step - loss: 1.2209 - accuracy: 0.5000\n"
]
},
{
"data": {
"text/plain": [
"[1.220850944519043, 0.5]"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_flat_pool_drop.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Do warstw spłaszczonych i splotowych"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [],
"source": [
"model_flat_conv_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_4\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_20 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" dropout_15 (Dropout) (None, 55, 55, 96) 0 \n",
" \n",
" max_pooling2d_12 (MaxPoolin (None, 27, 27, 96) 0 \n",
" g2D) \n",
" \n",
" conv2d_21 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" dropout_16 (Dropout) (None, 27, 27, 256) 0 \n",
" \n",
" max_pooling2d_13 (MaxPoolin (None, 13, 13, 256) 0 \n",
" g2D) \n",
" \n",
" conv2d_22 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" dropout_17 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_23 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" dropout_18 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_24 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" dropout_19 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" max_pooling2d_14 (MaxPoolin (None, 6, 6, 256) 0 \n",
" g2D) \n",
" \n",
" flatten_4 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_12 (Dense) (None, 4096) 37752832 \n",
" \n",
" dropout_20 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_13 (Dense) (None, 4096) 16781312 \n",
" \n",
" dropout_21 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_14 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,322,314\n",
"Trainable params: 58,322,314\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_flat_conv_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_flat_conv_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/1544533144.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex5 = model_flat_conv_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 1.8865 - accuracy: 0.2087\n",
"Epoch 1: val_accuracy improved from -inf to 0.31771, saving model to alex_5.h5\n",
"25/25 [==============================] - 31s 1s/step - loss: 1.8865 - accuracy: 0.2087 - val_loss: 2.1611 - val_accuracy: 0.3177\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6987 - accuracy: 0.2250\n",
"Epoch 2: val_accuracy did not improve from 0.31771\n",
"25/25 [==============================] - 33s 1s/step - loss: 1.6987 - accuracy: 0.2250 - val_loss: 2.1324 - val_accuracy: 0.1823\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6349 - accuracy: 0.2675\n",
"Epoch 3: val_accuracy did not improve from 0.31771\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.6349 - accuracy: 0.2675 - val_loss: 2.0670 - val_accuracy: 0.3125\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5613 - accuracy: 0.3212\n",
"Epoch 4: val_accuracy improved from 0.31771 to 0.34896, saving model to alex_5.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.5613 - accuracy: 0.3212 - val_loss: 2.0176 - val_accuracy: 0.3490\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4594 - accuracy: 0.3587\n",
"Epoch 5: val_accuracy did not improve from 0.34896\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.4594 - accuracy: 0.3587 - val_loss: 1.9236 - val_accuracy: 0.3177\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3418 - accuracy: 0.4050\n",
"Epoch 6: val_accuracy improved from 0.34896 to 0.38021, saving model to alex_5.h5\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.3418 - accuracy: 0.4050 - val_loss: 1.8750 - val_accuracy: 0.3802\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3014 - accuracy: 0.4437\n",
"Epoch 7: val_accuracy did not improve from 0.38021\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.3014 - accuracy: 0.4437 - val_loss: 2.0340 - val_accuracy: 0.1979\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2022 - accuracy: 0.4638\n",
"Epoch 8: val_accuracy improved from 0.38021 to 0.44271, saving model to alex_5.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.2022 - accuracy: 0.4638 - val_loss: 1.7184 - val_accuracy: 0.4427\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1867 - accuracy: 0.4712\n",
"Epoch 9: val_accuracy did not improve from 0.44271\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.1867 - accuracy: 0.4712 - val_loss: 1.8339 - val_accuracy: 0.3385\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0586 - accuracy: 0.5225\n",
"Epoch 10: val_accuracy improved from 0.44271 to 0.44792, saving model to alex_5.h5\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.0586 - accuracy: 0.5225 - val_loss: 1.6957 - val_accuracy: 0.4479\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1329 - accuracy: 0.4988\n",
"Epoch 11: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 31s 1s/step - loss: 1.1329 - accuracy: 0.4988 - val_loss: 1.7963 - val_accuracy: 0.3646\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0527 - accuracy: 0.5387\n",
"Epoch 12: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 33s 1s/step - loss: 1.0527 - accuracy: 0.5387 - val_loss: 1.7027 - val_accuracy: 0.4062\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1811 - accuracy: 0.5063\n",
"Epoch 13: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.1811 - accuracy: 0.5063 - val_loss: 1.7790 - val_accuracy: 0.3542\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0314 - accuracy: 0.5450\n",
"Epoch 14: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.0314 - accuracy: 0.5450 - val_loss: 1.6602 - val_accuracy: 0.4323\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0199 - accuracy: 0.5663\n",
"Epoch 15: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.0199 - accuracy: 0.5663 - val_loss: 1.7097 - val_accuracy: 0.3542\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0358 - accuracy: 0.5525\n",
"Epoch 16: val_accuracy did not improve from 0.44792\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.0358 - accuracy: 0.5525 - val_loss: 1.7355 - val_accuracy: 0.3177\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9676 - accuracy: 0.5875\n",
"Epoch 17: val_accuracy improved from 0.44792 to 0.54167, saving model to alex_5.h5\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.9676 - accuracy: 0.5875 - val_loss: 1.5246 - val_accuracy: 0.5417\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9063 - accuracy: 0.5950\n",
"Epoch 18: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.9063 - accuracy: 0.5950 - val_loss: 1.5602 - val_accuracy: 0.4688\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9411 - accuracy: 0.6250\n",
"Epoch 19: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.9411 - accuracy: 0.6250 - val_loss: 1.7089 - val_accuracy: 0.2917\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8750 - accuracy: 0.6475\n",
"Epoch 20: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.8750 - accuracy: 0.6475 - val_loss: 1.7448 - val_accuracy: 0.2812\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8677 - accuracy: 0.6087\n",
"Epoch 21: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.8677 - accuracy: 0.6087 - val_loss: 1.5079 - val_accuracy: 0.5000\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8868 - accuracy: 0.6275\n",
"Epoch 22: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 28s 1s/step - loss: 0.8868 - accuracy: 0.6275 - val_loss: 1.6442 - val_accuracy: 0.3073\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8708 - accuracy: 0.6338\n",
"Epoch 23: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.8708 - accuracy: 0.6338 - val_loss: 1.6207 - val_accuracy: 0.3646\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.7959 - accuracy: 0.6712\n",
"Epoch 24: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.7959 - accuracy: 0.6712 - val_loss: 1.6913 - val_accuracy: 0.3073\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.8158 - accuracy: 0.6775\n",
"Epoch 25: val_accuracy did not improve from 0.54167\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.8158 - accuracy: 0.6775 - val_loss: 1.4933 - val_accuracy: 0.4323\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_5.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex5 = model_flat_conv_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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XZmUlBRlzpw5SoUKFRRjY2PF0dFRad26tXLx4sU09QwYMECxsbFRrKyslC5duighISEvfCT/yZMn6eJ+/Pix8tFHHym2traKjY2N0rlzZyUgICDD9+vRo0dK7969FUdHR8XExETx8PBQhg0bpiQmJqart3LlyoparVYeP3780vdNCKEoKkX5T3+tEEKIQuOtt97C3t6eQ4cO6TsUIfI9GVMkhBCF1IULF7h8+TK9e/fWdyhCFAjSUySEEIXM9evXuXjxIvPmzePp06c8ePAAU1NTfYclRL4nPUVCCFHIbN68mX79+pGcnMyGDRskIRIik6SnSAghhBAC6SkSQgghhAD0nBTNmDGD2rVrY2VlhZOTE+3bt0834+1/rVixgoYNG2JnZ4ednR3Nmzfn3Llzacr07dsXlUqVZmvVqlVuXooQQgghCji9Tt547Ngxhg0bRu3atUlJSeGrr76iRYsW3Lx5EwsLiwzPOXr0KN27d6d+/fqYmpoya9YsWrRowY0bNyhWrJiuXKtWrVizZo3utYmJSabj0mq1BAQEYGVlla2VsIUQQgiRdxRFITo6GldX19db50+PcySl82yys2PHjmX6nJSUFMXKykpZu3atbl+fPn2Udu3avXYczyaYk0022WSTTTbZCt7m5+f3Wp//+WqZj8jISIAXLryYkbi4OJKTk9Odc/ToUZycnLCzs6Np06Z8++23FClSJMM6EhMTSUxM1L1W/h177ufnh7W1dVYvQwghhBB6EBUVhZubW5oFq7Mi3zx9ptVq+fDDD4mIiODkyZOZPu/TTz9l37593LhxQ/fY6e+//465uTmlSpXC29ubr776CktLS86cOaNbePF5U6dOzXDBx8jISEmKhBBCiAIiKioKGxub1/78zjdJ0dChQ9mzZw8nT56kePHimTpn5syZzJ49m6NHj7509ecHDx5QunRpDh48SLNmzdId/29P0bNMU5IiIYQQouDIblKULx7JHz58ODt37uTIkSOZTojmzp3LzJkz2b9//0sTIgAPDw8cHBwyXKEbUgdhW1tbp9mEEEII8WbR65giRVEYMWIE27Zt4+jRo5QqVSpT582ePZvvvvuOffv2UatWrVeWf/z4MaGhobi4uGQ3ZCGEEEIUUnpNioYNG8b69ev5888/sbKyIigoCAAbGxvMzMwA6N27N8WKFWPGjBkAzJo1i8mT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iIULF1K1alUsLCwYNWoUSTn45evMmTP07NmTadOm0bJlS2xsbPj999+ZN29ejrXxvP8mLiqVSpfcZGTfvn34+/vTtWvXNPs1Gg2HDh3i/fffx8zM7IXnv+wYgFqd2keiKIpu34vGOP3383ncuHEcOHCAuXPnUqZMGczMzOjUqZPu7+dVbQMMHDiQjz/+mAULFrBmzRq6du2aZwPln6fXnqK9e/fSt29fKleuTPXq1fHy8sLX15eLFy++8JxFixbRqlUrPv/8cypWrMj06dN5++23WbJkCZD6F7pw4UImTZpEu3btqFatGuvWrSMgIEDvI/ULK5WhIdatW+O+8XeKL12C2tycuLNneditO0mPHuk7vGxRtFoCvpyANiYGsxo1KDJwYOp8TkDkrp16jk6IV1CpwNhCP1smxhM9r0uXLqjVatavX8+6devo37+/bnzRqVOnaNeuHb169aJ69ep4eHhw9+7dTNddsWJF/Pz8CHyud/fvv/9OU+b06dOULFmSiRMnUqtWLcqWLcuj//z/ZWxsjEajeWVbV65cITY2Vrfv1KlTqNVqypcvn+mY/2vVqlV069aNy5cvp9m6deumG3BdrVo1Tpw4kWEyY2Vlhbu7O4cOHcqwfkdHR4A079Hzg65f5tSpU/Tt25ePPvqIqlWr4uzszMOHD3XHq1atilar5dhL1tr84IMPsLCw4Mcff2Tv3r3076+fL5z56umzyMhIAOzt7V9Y5syZMzRv3jzNvpYtW3LmzBkAfHx8CAoKSlPGxsaGunXr6sr8V2JiIlFRUWk2kXUqlQqrZs0ouf43DJ2dSfLx4WHXbsRduKDv0F5bmNda4s6fR2VujuusmagMDbFq2QIMDUm8eYvE557qEEK8PktLS7p27cqECRMIDAykb9++umNly5blwIEDnD59mlu3bvHJJ58QHByc6bqbN29OuXLl6NOnD1euXOHEiRNMnDgxTZmyZcvi6+vL77//jre3N4sXL2bbtm1pyri7u+Pj48Ply5d5+vRphvME9ezZE1NTU/r06cP169c5cuQII0aM4OOPP6Zo0aJZe1P+9eTJE3bs2EGfPn2oUqVKmq13795s376dsLAwhg8fTlRUFN26dePChQvcu3ePX375RXfbburUqcybN4/Fixdz7949Ll26xA8//ACk9ua88847zJw5k1u3bnHs2DEmTZqUqfjK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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex5.history[\"accuracy\"])\n",
"plt.plot(alex5.history['val_accuracy'])\n",
"plt.plot(alex5.history['loss'])\n",
"plt.plot(alex5.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 2s 307ms/step - loss: 1.4823 - accuracy: 0.4531\n"
]
},
{
"data": {
"text/plain": [
"[1.4823071956634521, 0.453125]"
]
},
"execution_count": 38,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_flat_conv_drop.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Do warstw maxpooling i splotowych"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [],
"source": [
"model_pool_conv_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_5\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_25 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" dropout_22 (Dropout) (None, 55, 55, 96) 0 \n",
" \n",
" max_pooling2d_15 (MaxPoolin (None, 27, 27, 96) 0 \n",
" g2D) \n",
" \n",
" dropout_23 (Dropout) (None, 27, 27, 96) 0 \n",
" \n",
" conv2d_26 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" dropout_24 (Dropout) (None, 27, 27, 256) 0 \n",
" \n",
" max_pooling2d_16 (MaxPoolin (None, 13, 13, 256) 0 \n",
" g2D) \n",
" \n",
" dropout_25 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" conv2d_27 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" dropout_26 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_28 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" dropout_27 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_29 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" dropout_28 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" max_pooling2d_17 (MaxPoolin (None, 6, 6, 256) 0 \n",
" g2D) \n",
" \n",
" dropout_29 (Dropout) (None, 6, 6, 256) 0 \n",
" \n",
" flatten_5 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_15 (Dense) (None, 4096) 37752832 \n",
" \n",
" dense_16 (Dense) (None, 4096) 16781312 \n",
" \n",
" dense_17 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,322,314\n",
"Trainable params: 58,322,314\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_pool_conv_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_pool_conv_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/3120705445.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex6 = model_pool_conv_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 1.8171 - accuracy: 0.2288\n",
"Epoch 1: val_accuracy improved from -inf to 0.27604, saving model to alex_6.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.8171 - accuracy: 0.2288 - val_loss: 2.2332 - val_accuracy: 0.2760\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6441 - accuracy: 0.2512\n",
"Epoch 2: val_accuracy did not improve from 0.27604\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.6441 - accuracy: 0.2512 - val_loss: 2.2203 - val_accuracy: 0.1823\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5645 - accuracy: 0.3013\n",
"Epoch 3: val_accuracy did not improve from 0.27604\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.5645 - accuracy: 0.3013 - val_loss: 2.1670 - val_accuracy: 0.2240\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5076 - accuracy: 0.3237\n",
"Epoch 4: val_accuracy did not improve from 0.27604\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.5076 - accuracy: 0.3237 - val_loss: 2.1759 - val_accuracy: 0.1875\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4085 - accuracy: 0.3913\n",
"Epoch 5: val_accuracy did not improve from 0.27604\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.4085 - accuracy: 0.3913 - val_loss: 2.0652 - val_accuracy: 0.2083\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3140 - accuracy: 0.4263\n",
"Epoch 6: val_accuracy did not improve from 0.27604\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.3140 - accuracy: 0.4263 - val_loss: 2.0968 - val_accuracy: 0.1875\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3008 - accuracy: 0.4275\n",
"Epoch 7: val_accuracy did not improve from 0.27604\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.3008 - accuracy: 0.4275 - val_loss: 1.9457 - val_accuracy: 0.2760\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2462 - accuracy: 0.4700\n",
"Epoch 8: val_accuracy improved from 0.27604 to 0.34375, saving model to alex_6.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.2462 - accuracy: 0.4700 - val_loss: 1.8961 - val_accuracy: 0.3438\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.2202 - accuracy: 0.4737\n",
"Epoch 9: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.2202 - accuracy: 0.4737 - val_loss: 2.0365 - val_accuracy: 0.1979\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1927 - accuracy: 0.4975\n",
"Epoch 10: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.1927 - accuracy: 0.4975 - val_loss: 2.0173 - val_accuracy: 0.2083\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1185 - accuracy: 0.5138\n",
"Epoch 11: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.1185 - accuracy: 0.5138 - val_loss: 1.8485 - val_accuracy: 0.3385\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1445 - accuracy: 0.5088\n",
"Epoch 12: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.1445 - accuracy: 0.5088 - val_loss: 1.8848 - val_accuracy: 0.2604\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1042 - accuracy: 0.5387\n",
"Epoch 13: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.1042 - accuracy: 0.5387 - val_loss: 1.9293 - val_accuracy: 0.2135\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0768 - accuracy: 0.5412\n",
"Epoch 14: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.0768 - accuracy: 0.5412 - val_loss: 1.9871 - val_accuracy: 0.1979\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0332 - accuracy: 0.5512\n",
"Epoch 15: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.0332 - accuracy: 0.5512 - val_loss: 1.9616 - val_accuracy: 0.1927\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0965 - accuracy: 0.5475\n",
"Epoch 16: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 35s 1s/step - loss: 1.0965 - accuracy: 0.5475 - val_loss: 1.8993 - val_accuracy: 0.2083\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0335 - accuracy: 0.5387\n",
"Epoch 17: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 31s 1s/step - loss: 1.0335 - accuracy: 0.5387 - val_loss: 1.9000 - val_accuracy: 0.2188\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0124 - accuracy: 0.5475\n",
"Epoch 18: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 32s 1s/step - loss: 1.0124 - accuracy: 0.5475 - val_loss: 1.9711 - val_accuracy: 0.1927\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0936 - accuracy: 0.5512\n",
"Epoch 19: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 31s 1s/step - loss: 1.0936 - accuracy: 0.5512 - val_loss: 1.9364 - val_accuracy: 0.1927\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9696 - accuracy: 0.5775\n",
"Epoch 20: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 31s 1s/step - loss: 0.9696 - accuracy: 0.5775 - val_loss: 1.8897 - val_accuracy: 0.1927\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0047 - accuracy: 0.5288\n",
"Epoch 21: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.0047 - accuracy: 0.5288 - val_loss: 1.8192 - val_accuracy: 0.2083\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9775 - accuracy: 0.5738\n",
"Epoch 22: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.9775 - accuracy: 0.5738 - val_loss: 1.9259 - val_accuracy: 0.1875\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9873 - accuracy: 0.5763\n",
"Epoch 23: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.9873 - accuracy: 0.5763 - val_loss: 1.9257 - val_accuracy: 0.1979\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9560 - accuracy: 0.5938\n",
"Epoch 24: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.9560 - accuracy: 0.5938 - val_loss: 1.8322 - val_accuracy: 0.2031\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9225 - accuracy: 0.6100\n",
"Epoch 25: val_accuracy did not improve from 0.34375\n",
"25/25 [==============================] - 29s 1s/step - loss: 0.9225 - accuracy: 0.6100 - val_loss: 1.7558 - val_accuracy: 0.2448\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_6.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex6 = model_pool_conv_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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juWVV17Bx8cHtVrNlClTrOerSFdq6TGZTFd8zsWtORcMHjyYHTt28NRTT9GiRQvc3Nwwm83ceeed11X3qFGjWLp0KTt27CA6Opqff/6ZRx991Nr6JYS4lAQeIezcgAEDeOihh/jzzz/54YcfrrhfeHg469atIy8vr1Qrz7Fjx6yPX7g1m83WVpQLjh8/Xup4F0ZwmUwmevToUSGvZdmyZXTv3p25c+eW2p6dnY2fn5/1fp06ddi1axclJSVotdrLHqtOnTr8/vvvZGZmXrGVx9vb23r8i11o7SqLrKws1q9fz0svvcSLL75o3X7y5MlS+/n7++Ph4cHhw4evecw777wTf39/vvvuO2655RYKCwsZOXJkmWsS4mYkfw4IYefc3Nz49NNPmTlzJv369bvifn369MFkMjFnzpxS22fPno1KpbKO9Lpw+99RXu+//36p+xqNhkGDBrF8+fLLfomnpaWV+7VoNJpLhsgvXbqUxMTEUtsGDRpEenr6Ja8FsD5/0KBBKIrCSy+9dMV9PDw88PPzY8uWLaUe/+STT8pV88XHvOC/75daraZ///788ssv1mHxl6sJwMHBgaFDh7JkyRIWLFhAdHR0uVvLhLjZSAuPEDeBK11Suli/fv3o3r07zz33HLGxsTRv3pw//viDn376iSlTplj77LRo0YKhQ4fyySefkJOTQ8eOHVm/fj2nTp265JhvvvkmGzdu5JZbbmHChAk0btyYzMxM9u3bx7p168jMzCzX67jrrrt4+eWXeeCBB+jYsSOHDh3iu+++IyoqqtR+o0aNYuHChUybNo2//vqLLl26UFBQwLp163j00Ue555576N69OyNHjuTDDz/k5MmT1stLW7dupXv37kycOBGwDMF/8803GT9+PG3atGHLli2cOHGizDV7eHhw66238vbbb1NSUkJoaCh//PEHMTExl+z7+uuv88cff9C1a1cefPBBGjVqRFJSEkuXLmXbtm2lLkeOGjWKDz/8kI0bN/LWW2+V630U4qZks/FhQohKcfGw9Kv577B0RVGUvLw8ZerUqUpISIii1WqVevXqKbNmzbIOib6gqKhIefzxxxVfX1/F1dVV6devnxIfH3/JUG1FUZSUlBTlscceU8LCwhStVqsEBQUpt99+u/LFF19Y9ynPsPQnnnhCCQ4OVpydnZVOnTopO3fuVLp27ap07dq1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JASA119//ZJ+N88//7z194iICJ588kkWL17M008/jbOzM25ubjg4OFz1Etb3339PcXExCxcutC5KO2fOHPr168dbb71FYGAgAN7e3syZMweNRkPDhg3p27cv69evv67As379eg4dOkRMTAxhYZYhsgsXLqRJkybs3r2btm3bcvbsWZ566ikaNrTMi1KvXj3r88+ePcugQYOIjo4GICqqav96F9VXiFsIIxqPsHUZl4jyjGJq66nW+xlFGRzPOs6JzBMcyzrG8czjxObEkmvILbUMB1iW4oj0jCwVhLYlbuPbo99aj/3WrW+VaQ6h63FX1F3k6HN48683+WT/J3jpvBjacGilnEvYD5sGnoKCApo3b87YsWMZOHDgNfePiYmhb9++PPzww3z33XesX7+e8ePHExwcTK9evSqlRpWzMw32VX7nviudu6waNmxIx44dmTdvHt26dePUqVNs3bqVl19+GQCTycTrr7/OkiVLSExMxGAwoNfrcSlDCxLA0aNHCQsLs4YdgA4dOlyy3w8//MCHH37I6dOnyc/Px2g0lrs3/dGjR2nevLk17AB06tQJs9nM8ePHrYGnSZMmpdZ1Cw4O5tChQ5ccr6znDAsLs4YdgMaNG+Pl5cXRo0dp27Yt06ZNY/z48XzzzTf06NGD++67jzp1LPOvPP744zzyyCP88ccf9OjRg0GDBl1XvykhbMXX2ZeOzh1LrV1lMBk4nX2a41nHOZ55nBNZJziedZwcfQ6nsk9xKvsUq2NKX7od2nAo01pPq/QFTYc3Gk6OPodPD3zKG7vewNPRkz5RfSr1nKJms2ng6d27d7lG5nz22WdERkby7rvvAtCoUSO2bdvG7NmzKy/wqFRluqxUHYwbN45Jkybx8ccfM3/+fOrUqUPXrl0BmDVrFh988AHvv/8+0dHRuLq6MmXKFAwGQ4Wdf+fOnQwfPpyXXnqJXr164enpyeLFi63/vSrahctJF6hUKsxmc6WcCywjzIYNG8aqVav47bffmDFjBosXL2bAgAGMHz+eXr16sWrVKv744w/eeOMN3n33XSZNmlRp9QhR2Rw1jjTybUQj30bWbYqikFKYYgk/5y+HHc88jkalYVqbadxa69Yqq++R5o+Qrc9m0bFFPLftOdwc3Sr0/AaTgT3Je9gQv4EDaQeo5VaLVoGtaBXYigbeDa45h5CoXmrUf62dO3fSo0ePUtt69ep11Xli9Ho9er3eej83N7eyyrO5wYMHM3nyZL7//nsWLlzII488Yu3Ps337du655x5GjLA0rZvNZk6cOEHjxo3LdOxGjRoRHx9PUlISwcHBAPz555+l9tmxYwfh4eE899xz1m1xcXGl9nF0dMRkMl3zXAsWLKCgoMDayrN9+3bUajUNGlTO+kAXXl98fLy1lefIkSNkZ2eXeo/q169P/fr1mTp1KkOHDmX+/PkMGDAAgLCwMB5++GEefvhhpk+fzpdffimBR9gdlUpFkGsQQa5BVRpurlTL/9r9jxx9DqtjVvPEpif4vOfntApsdd3HzNHnsDVxKxvPbmT7ue0UlBRYHzuWeYx1Zy39D121rjT3b06rAEsAivaLrvRWLXFjalTgSU5Otl7OuCAwMJDc3FyKiopwvswloDfeeIOXXnqpqkq0KTc3N4YMGcL06dPJzc0t1bepXr16LFu2jB07duDt7c17771HSkpKmQNPjx49qF+/PqNHj2bWrFnk5uaWCjYXznH27FkWL15M27ZtWbVqFStWrCi1T0REBDExMezfv59atWrh7u6OTle68+Pw4cOZMWMGo0ePZubMmaSlpTFp0iRGjhx5yX//8jKZTOzfv7/UNp1OR48ePYiOjmb48OG8//77GI1GHn30Ubp27UqbNm0oKiriqaee4t577yUyMpKEhAR2797NoEGDAJgyZQq9e/emfv36ZGVlsXHjRho1anSZCoQQFUmtUvNq51fJM+SxNXErE9dPZP6d88u1eGp8Xjwbz25kU8Im9qXsw6T8+0eZn7MfXWt1pX1wexLyE9ibspf9qfvJL8lnx7kd7Di3A7AM/2/q29TSAhTQihYBLfDUXTooQ9hOjQo812P69OlMmzbNej83N7dUPw17M27cOObOnUufPn1K9bd5/vnnOXPmDL169cLFxYUHH3yQ/v37k5OTU6bjqtVqVqxYwbhx42jXrh0RERF8+OGHpSY8vPvuu5k6dSoTJ05Er9fTt29fXnjhBWbOnGndZ9CgQfz44490796d7Oxs5s+ff0mncxcXF37//XcmT55M27ZtcXFxYdCgQbz33ns39N6AZah+y5YtS22rU6cOp06d4qeffmLSpEnceuutqNVq7rzzTj766CMANBoNGRkZjBo1ipSUFPz8/Bg4cKA1TJtMJh577DESEhLw8PDg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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex6.history[\"accuracy\"])\n",
"plt.plot(alex6.history['val_accuracy'])\n",
"plt.plot(alex6.history['loss'])\n",
"plt.plot(alex6.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 2s 306ms/step - loss: 1.7711 - accuracy: 0.2227\n"
]
},
{
"data": {
"text/plain": [
"[1.7710821628570557, 0.22265625]"
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_pool_conv_drop.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Do warstw spłaszczonych, maxpooling i splotowych"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [],
"source": [
"model_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_6\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_30 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" dropout_30 (Dropout) (None, 55, 55, 96) 0 \n",
" \n",
" max_pooling2d_18 (MaxPoolin (None, 27, 27, 96) 0 \n",
" g2D) \n",
" \n",
" dropout_31 (Dropout) (None, 27, 27, 96) 0 \n",
" \n",
" conv2d_31 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" dropout_32 (Dropout) (None, 27, 27, 256) 0 \n",
" \n",
" max_pooling2d_19 (MaxPoolin (None, 13, 13, 256) 0 \n",
" g2D) \n",
" \n",
" dropout_33 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" conv2d_32 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" dropout_34 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_33 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" dropout_35 (Dropout) (None, 13, 13, 384) 0 \n",
" \n",
" conv2d_34 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" dropout_36 (Dropout) (None, 13, 13, 256) 0 \n",
" \n",
" max_pooling2d_20 (MaxPoolin (None, 6, 6, 256) 0 \n",
" g2D) \n",
" \n",
" dropout_37 (Dropout) (None, 6, 6, 256) 0 \n",
" \n",
" flatten_6 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_18 (Dense) (None, 4096) 37752832 \n",
" \n",
" dropout_38 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_19 (Dense) (None, 4096) 16781312 \n",
" \n",
" dropout_39 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_20 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,322,314\n",
"Trainable params: 58,322,314\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/2699219498.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex7 = model_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 1.9261 - accuracy: 0.2025\n",
"Epoch 1: val_accuracy improved from -inf to 0.18229, saving model to alex_7.h5\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.9261 - accuracy: 0.2025 - val_loss: 2.2480 - val_accuracy: 0.1823\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.7103 - accuracy: 0.1963\n",
"Epoch 2: val_accuracy improved from 0.18229 to 0.18750, saving model to alex_7.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.7103 - accuracy: 0.1963 - val_loss: 2.2290 - val_accuracy: 0.1875\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.6472 - accuracy: 0.2362\n",
"Epoch 3: val_accuracy improved from 0.18750 to 0.19271, saving model to alex_7.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.6472 - accuracy: 0.2362 - val_loss: 2.1991 - val_accuracy: 0.1927\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5965 - accuracy: 0.2675\n",
"Epoch 4: val_accuracy did not improve from 0.19271\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.5965 - accuracy: 0.2675 - val_loss: 2.1612 - val_accuracy: 0.1927\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5649 - accuracy: 0.2862\n",
"Epoch 5: val_accuracy did not improve from 0.19271\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.5649 - accuracy: 0.2862 - val_loss: 2.1174 - val_accuracy: 0.1927\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.4497 - accuracy: 0.3750\n",
"Epoch 6: val_accuracy improved from 0.19271 to 0.20312, saving model to alex_7.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.4497 - accuracy: 0.3750 - val_loss: 2.0352 - val_accuracy: 0.2031\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3833 - accuracy: 0.3787\n",
"Epoch 7: val_accuracy did not improve from 0.20312\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.3833 - accuracy: 0.3787 - val_loss: 2.0280 - val_accuracy: 0.1771\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3506 - accuracy: 0.4025\n",
"Epoch 8: val_accuracy did not improve from 0.20312\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.3506 - accuracy: 0.4025 - val_loss: 1.9642 - val_accuracy: 0.1979\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3013 - accuracy: 0.4212\n",
"Epoch 9: val_accuracy did not improve from 0.20312\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.3013 - accuracy: 0.4212 - val_loss: 1.9955 - val_accuracy: 0.1927\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3089 - accuracy: 0.4387\n",
"Epoch 10: val_accuracy did not improve from 0.20312\n",
"25/25 [==============================] - 30s 1s/step - loss: 1.3089 - accuracy: 0.4387 - val_loss: 2.0652 - val_accuracy: 0.1875\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.3030 - accuracy: 0.4400\n",
"Epoch 11: val_accuracy improved from 0.20312 to 0.20833, saving model to alex_7.h5\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.3030 - accuracy: 0.4400 - val_loss: 1.9548 - val_accuracy: 0.2083\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1538 - accuracy: 0.4913\n",
"Epoch 12: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 28s 1s/step - loss: 1.1538 - accuracy: 0.4913 - val_loss: 1.8886 - val_accuracy: 0.2083\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1939 - accuracy: 0.4913\n",
"Epoch 13: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.1939 - accuracy: 0.4913 - val_loss: 1.9482 - val_accuracy: 0.1875\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1846 - accuracy: 0.4775\n",
"Epoch 14: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 27s 1s/step - loss: 1.1846 - accuracy: 0.4775 - val_loss: 2.0470 - val_accuracy: 0.1927\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1359 - accuracy: 0.5075\n",
"Epoch 15: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 29s 1s/step - loss: 1.1359 - accuracy: 0.5075 - val_loss: 1.9831 - val_accuracy: 0.1875\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1575 - accuracy: 0.4963\n",
"Epoch 16: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 96s 4s/step - loss: 1.1575 - accuracy: 0.4963 - val_loss: 1.9085 - val_accuracy: 0.2083\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1165 - accuracy: 0.5113\n",
"Epoch 17: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 110s 4s/step - loss: 1.1165 - accuracy: 0.5113 - val_loss: 1.9389 - val_accuracy: 0.1979\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1276 - accuracy: 0.5163\n",
"Epoch 18: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 107s 4s/step - loss: 1.1276 - accuracy: 0.5163 - val_loss: 1.9441 - val_accuracy: 0.1875\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1038 - accuracy: 0.5238\n",
"Epoch 19: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 69s 3s/step - loss: 1.1038 - accuracy: 0.5238 - val_loss: 2.0581 - val_accuracy: 0.1875\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1174 - accuracy: 0.5250\n",
"Epoch 20: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 68s 3s/step - loss: 1.1174 - accuracy: 0.5250 - val_loss: 1.9579 - val_accuracy: 0.1823\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0253 - accuracy: 0.5575\n",
"Epoch 21: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 69s 3s/step - loss: 1.0253 - accuracy: 0.5575 - val_loss: 1.9376 - val_accuracy: 0.1979\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.1088 - accuracy: 0.5450\n",
"Epoch 22: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 72s 3s/step - loss: 1.1088 - accuracy: 0.5450 - val_loss: 2.0030 - val_accuracy: 0.1875\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0789 - accuracy: 0.5475\n",
"Epoch 23: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 59s 2s/step - loss: 1.0789 - accuracy: 0.5475 - val_loss: 1.9403 - val_accuracy: 0.1979\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0523 - accuracy: 0.5500\n",
"Epoch 24: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 56s 2s/step - loss: 1.0523 - accuracy: 0.5500 - val_loss: 2.0287 - val_accuracy: 0.1875\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.0160 - accuracy: 0.5587\n",
"Epoch 25: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 52s 2s/step - loss: 1.0160 - accuracy: 0.5587 - val_loss: 1.9327 - val_accuracy: 0.1979\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_7.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex7 = model_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAjwAAAHHCAYAAAC7soLdAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAACKrElEQVR4nOzdd3hTZf/H8XeSpuneGwqUvUFApixF2cpQEFRAxvNTAQUciAvQx4lbcCuoj6AigltBRECWDFmyy2zp3k3bNOP+/ZESKS3QQtu06fd1XbmanHNyzjfpafLpfe5zbo1SSiGEEEII4cK0zi5ACCGEEKKySeARQgghhMuTwCOEEEIIlyeBRwghhBAuTwKPEEIIIVyeBB4hhBBCuDwJPEIIIYRweRJ4hBBCCOHyJPAIIYQQwuVJ4BFCVBiNRsO8efPK/byTJ0+i0WhYsmRJhdckhBAggUcIl7NkyRI0Gg0ajYY///yzxHylFNHR0Wg0GoYMGeKECoUQoupJ4BHCRXl4eLB06dIS09evX09cXBwGg8EJVQkhhHNI4BHCRQ0aNIjly5djsViKTV+6dCkdO3YkIiLCSZXVHkaj0dklCCGKSOARwkWNGTOGtLQ01qxZ45hWWFjI119/zdixY0t9jtFo5MEHHyQ6OhqDwUCzZs14+eWXUUoVW85kMjFz5kxCQ0Px9fXl5ptvJi4urtR1xsfHM3HiRMLDwzEYDLRq1YqPP/74il5Teno6Dz30EG3atMHHxwc/Pz8GDhzInj17SixbUFDAvHnzaNq0KR4eHkRGRjJixAhiY2Mdy9hsNt544w3atGmDh4cHoaGhDBgwgB07dgCX7lt0YX+lefPmodFoOHDgAGPHjiUwMJDrrrsOgL179zJhwgQaNmyIh4cHERERTJw4kbS0tFLfr0mTJhEVFYXBYCAmJoZ7772XwsJCjh8/jkaj4bXXXivxvM2bN6PRaFi2bFl531YhagU3ZxcghKgcDRo0oFu3bixbtoyBAwcC8PPPP5OVlcXtt9/Om2++WWx5pRQ333wz69atY9KkSbRv355ff/2Vhx9+mPj4+GJfspMnT+Z///sfY8eOpXv37vz+++8MHjy4RA1JSUl07doVjUbDtGnTCA0N5eeff2bSpElkZ2czY8aMcr2m48ePs2rVKm677TZiYmJISkrivffeo3fv3hw4cICoqCgArFYrQ4YMYe3atdx+++088MAD5OTksGbNGvbv30+jRo0AmDRpEkuWLGHgwIFMnjwZi8XCxo0b2bp1K506dSpXbefcdtttNGnShOeee84RFNesWcPx48e5++67iYiI4J9//uH999/nn3/+YevWrWg0GgDOnj1L586dyczM5D//+Q/NmzcnPj6er7/+mry8PBo2bEiPHj34/PPPmTlzZrHtfv755/j6+nLLLbdcUd1CuDwlhHApixcvVoDavn27WrhwofL19VV5eXlKKaVuu+021bdvX6WUUvXr11eDBw92PG/VqlUKUP/973+Lre/WW29VGo1GHTt2TCml1O7duxWg7rvvvmLLjR07VgFq7ty5jmmTJk1SkZGRKjU1tdiyt99+u/L393fUdeLECQWoxYsXX/K1FRQUKKvVWmzaiRMnlMFgUE8//bRj2scff6wA9eqrr5ZYh81mU0op9fvvvytA3X///Rdd5lJ1Xfha586dqwA1ZsyYEsuee53nW7ZsmQLUhg0bHNPGjRuntFqt2r59+0Vreu+99xSgDh486JhXWFioQkJC1Pjx40s8TwhhJ4e0hHBho0aNIj8/nx9++IGcnBx++OGHix7O+umnn9DpdNx///3Fpj/44IMopfj5558dywEllruwtUYpxYoVKxg6dChKKVJTUx23/v37k5WVxa5du8r1egwGA1qt/WPLarWSlpaGj48PzZo1K7auFStWEBISwvTp00us41xryooVK9BoNMydO/eiy1yJe+65p8Q0T09Px/2CggJSU1Pp2rUrgKNum83GqlWrGDp0aKmtS+dqGjVqFB4eHnz++eeOeb/++iupqanceeedV1y3EK5OAo8QLiw0NJR+/fqxdOlSvvnmG6xWK7feemupy546dYqoqCh8fX2LTW/RooVj/rmfWq3WcVjonGbNmhV7nJKSQmZmJu+//z6hoaHFbnfffTcAycnJ5Xo9NpuN1157jSZNmmAwGAgJCSE0NJS9e/eSlZXlWC42NpZmzZrh5nbxo/axsbFERUURFBRUrhouJyYmpsS09PR0HnjgAcLDw/H09CQ0NNSx3Lm6U1JSyM7OpnXr1pdcf0BAAEOHDi12Bt7nn39OnTp1uP766yvwlQjhWqQPjxAubuzYsUyZMoXExEQGDhxIQEBAlWzXZrMBcOeddzJ+/PhSl2nbtm251vncc8/x5JNPMnHi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wZqTgy07u1xDVWg8PQm++26CJ01E6+1didVfvYKDB0l8+hn7lzTg3qgREU8+gXfXrmVeR8aXX5E4bx4ohf+wYUT+95liXzq1gSk2ljP/dw/muDi0fn7UffNNvLt2ccw3JyaS8uZbZK1cCUqBXk/Q2DEE33MPboGBTqy85sr64UfOzp4NViv+t9xM5HPPodHpSixXcOgQZ/7vHixJSehCQoh+520827RxQsWuyZqZydlH5zi6CQSNH0/Yww9Vy8+AGh14nn/+eb755hsOHTqEp6cn3bt358UXX6RZs2aXfN7y5ct58sknOXnyJE2aNOHFF19k0KBBZdqmBJ7ayWYyYcvJKRaKSoajbAr+OUDBvn0A6EJCCJ02jYBbR1a7P35rdjYpb75FxtKlYLOh8fIidOp9BN111xX1dcj6/nvOPjoHrFZ8Bwygzksv1po+E8YtW4i7/wFsOTnoo6OJfu9dDA0blrpswaFDJC94GeOmTQBo/fwI+b//I/DOO9AaDFVZdo2W9d139v3NZrP30fnvM6WGnXPMiYmcuedeTIcOofHwoM4rL+N7ww1VWLFryt+3j/gHZmA+exb0eijqoO/dsyd1Xn0Fna+vkyssrkYHngEDBnD77bdz7bXXYrFYeOyxx9i/fz8HDhzA+yL/WW/evJlevXrx/PPPM2TIEJYuXcqLL77Irl27aN269WW3KYFHXIpSipzVa0h+9RXMp04D9laTsIcexKdPH6f3cVFKkf3ddyQteBlraipgP8QSPns2+oiIq1p39po19r4UZjM+vXtT5803XP5LPGP5chLnPw0WC54dOlB30cIytdjk/rmJ5AULMB0+DIA+KorQmTPxGzyo1h4SLKvMlatIeOwxUIqA224lYv78Mr1n1lwj8TNnYty4ETQawuc8StC4cVVQsetRSpGxbBnJz7+AMpvR16tH3ddfo/D0Gc4++iiqoAD3hg2JfnsR7g0aOLtchxodeC6UkpJCWFgY69evp1evXqUuM3r0aIxGIz/88INjWteuXWnfvj3vvvvuZbchgUeUhSosJOOLL0l9+22smZkAeHXuTNgjj+DZupVTaio4fITEp58mf+dOANxjYuyHr7p3r7Bt5G7cSNy06SiTCa+uXYletLDaH9a7Espms5+pVnQmkN+QIUQ++99yBTxltZL17XekvP46luRkADxatybskYcdZ8SJ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eSd3tryTjIIM1setZ+3ptWw5u4X43Hg+O/AZnx34jEBDIH2i+3B9vevpGtm1Wg+A6tQWng0bNjB06FCioqJK/Id/MX/88QcdOnTAYDDQuHHjEq0atdXEiROJjY1l/fr1jmmLFy9m5MiR+Pv7U6dOHR566CHat29Pw4YNmT59OgMGDOCrr74q0/p/++03Dh06xKeffkq7du3o1asXzz33XInlnnjiCbp3706DBg0YOnQoDz30kGMbnp6e+Pj44ObmRkREBBEREXh6ljzmvXTpUgoKCvj0009p3bo1119/PQsXLuSzzz4r1uISGBjIwoULad68OUOGDGHw4MGsXbu2vG8dAGvXrmXfvn0sXbqUjh070qVLFz799FPWr1/P9u3bAXsLUL9+/WjevDlNmjThtttuo127do55PXr0oE2bNjRs2JAhQ4bQq9fFOzwKIaq/NqFt+HLIl3QMt//TW8enDp8M/IQpbae4dNi5UKBHIMMaD+Ot699iw+gNvN7ndYY2HIqfux8ZpgxWHlvJ9N+n0+vLXsz6Yxbfx35PlinL2WWX4NQWHqPRSLt27Zg4cSIjRoy47PInTpxg8ODB3HPPPXz++eesXbuWyZMnExkZSf/+/SulRo2nJ8127ayUdZdl22XVvHlzunfvzscff0yfPn04duwYGzdu5OmnnwbAarXy3HPP8dVXXxEfH09hYSEmkwmvMrQgARw8eJDo6GiioqIc07p161ZiuS+//JI333yT2NhYcnNzsVgs5e5Nf/DgQdq1a1esw3SPHj2w2WwcPnyY8PBwAFq1alVsXLfIyEj27dtXrm2dv83o6Giio6Md01q2bElAQAAHDx7k2muvZdasWUyePJnPPvuMfv36cdttt9GoUSMA7r//fu69915Wr15Nv379GDly5BX1mxJCVC8hniF8cNMH/J30N61CWuGtr9gTOWoaL70XN9S/gRvq34DZZmZX0i5Hv59EYyJrTq1hzak1hHmF8dutv1Wrvj5ObeEZOHAg//3vfxk+fHiZln/33XeJiYnhlVdeoUWLFkybNo1bb72V1157rdJq1Gg0aL28nHIr744yadIkVqxYQU5ODosXL6ZRo0b07t0bgAULFvDGG28we/Zs1q1bx+7du+nfvz+FhYUV9l5t2bKFO+64g0GDBvHDDz/w999/8/jjj1foNs537nDSORqNBpvNVinb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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex7.history[\"accuracy\"])\n",
"plt.plot(alex7.history['val_accuracy'])\n",
"plt.plot(alex7.history['loss'])\n",
"plt.plot(alex7.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 4s 534ms/step - loss: 1.9357 - accuracy: 0.2070\n"
]
},
{
"data": {
"text/plain": [
"[1.9356722831726074, 0.20703125]"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_drop.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Batch Regularization"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Bez dropoutu"
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [],
"source": [
"model_batch = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_7\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_35 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" batch_normalization (BatchN (None, 55, 55, 96) 384 \n",
" ormalization) \n",
" \n",
" max_pooling2d_21 (MaxPoolin (None, 27, 27, 96) 0 \n",
" g2D) \n",
" \n",
" conv2d_36 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" batch_normalization_1 (Batc (None, 27, 27, 256) 1024 \n",
" hNormalization) \n",
" \n",
" max_pooling2d_22 (MaxPoolin (None, 13, 13, 256) 0 \n",
" g2D) \n",
" \n",
" conv2d_37 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" batch_normalization_2 (Batc (None, 13, 13, 384) 1536 \n",
" hNormalization) \n",
" \n",
" conv2d_38 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" batch_normalization_3 (Batc (None, 13, 13, 384) 1536 \n",
" hNormalization) \n",
" \n",
" conv2d_39 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" batch_normalization_4 (Batc (None, 13, 13, 256) 1024 \n",
" hNormalization) \n",
" \n",
" max_pooling2d_23 (MaxPoolin (None, 6, 6, 256) 0 \n",
" g2D) \n",
" \n",
" flatten_7 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_21 (Dense) (None, 4096) 37752832 \n",
" \n",
" dense_22 (Dense) (None, 4096) 16781312 \n",
" \n",
" dense_23 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,327,818\n",
"Trainable params: 58,325,066\n",
"Non-trainable params: 2,752\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_batch.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_batch.summary()"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/2334374023.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex8 = model_batch.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 3.5162 - accuracy: 0.4512\n",
"Epoch 1: val_accuracy improved from -inf to 0.20833, saving model to alex_8.h5\n",
"25/25 [==============================] - 51s 2s/step - loss: 3.5162 - accuracy: 0.4512 - val_loss: 2.1169 - val_accuracy: 0.2083\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.6702 - accuracy: 0.7425\n",
"Epoch 2: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 52s 2s/step - loss: 0.6702 - accuracy: 0.7425 - val_loss: 2.1916 - val_accuracy: 0.1771\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.3823 - accuracy: 0.8637\n",
"Epoch 3: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 52s 2s/step - loss: 0.3823 - accuracy: 0.8637 - val_loss: 2.5290 - val_accuracy: 0.1823\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.2204 - accuracy: 0.9388\n",
"Epoch 4: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 52s 2s/step - loss: 0.2204 - accuracy: 0.9388 - val_loss: 3.1773 - val_accuracy: 0.1771\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.1337 - accuracy: 0.9712\n",
"Epoch 5: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 53s 2s/step - loss: 0.1337 - accuracy: 0.9712 - val_loss: 3.4835 - val_accuracy: 0.1875\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0836 - accuracy: 0.9875\n",
"Epoch 6: val_accuracy did not improve from 0.20833\n",
"25/25 [==============================] - 52s 2s/step - loss: 0.0836 - accuracy: 0.9875 - val_loss: 4.0837 - val_accuracy: 0.1927\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0911 - accuracy: 0.9775\n",
"Epoch 7: val_accuracy improved from 0.20833 to 0.24479, saving model to alex_8.h5\n",
"25/25 [==============================] - 56s 2s/step - loss: 0.0911 - accuracy: 0.9775 - val_loss: 4.6900 - val_accuracy: 0.2448\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0658 - accuracy: 0.9862\n",
"Epoch 8: val_accuracy improved from 0.24479 to 0.28646, saving model to alex_8.h5\n",
"25/25 [==============================] - 52s 2s/step - loss: 0.0658 - accuracy: 0.9862 - val_loss: 4.7919 - val_accuracy: 0.2865\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0362 - accuracy: 0.9975\n",
"Epoch 9: val_accuracy improved from 0.28646 to 0.30729, saving model to alex_8.h5\n",
"25/25 [==============================] - 53s 2s/step - loss: 0.0362 - accuracy: 0.9975 - val_loss: 5.1122 - val_accuracy: 0.3073\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0309 - accuracy: 0.9962\n",
"Epoch 10: val_accuracy did not improve from 0.30729\n",
"25/25 [==============================] - 52s 2s/step - loss: 0.0309 - accuracy: 0.9962 - val_loss: 5.5180 - val_accuracy: 0.2760\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0250 - accuracy: 1.0000\n",
"Epoch 11: val_accuracy did not improve from 0.30729\n",
"25/25 [==============================] - 51s 2s/step - loss: 0.0250 - accuracy: 1.0000 - val_loss: 5.7030 - val_accuracy: 0.2969\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0243 - accuracy: 0.9962\n",
"Epoch 12: val_accuracy did not improve from 0.30729\n",
"25/25 [==============================] - 49s 2s/step - loss: 0.0243 - accuracy: 0.9962 - val_loss: 5.8668 - val_accuracy: 0.2917\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0163 - accuracy: 1.0000\n",
"Epoch 13: val_accuracy did not improve from 0.30729\n",
"25/25 [==============================] - 47s 2s/step - loss: 0.0163 - accuracy: 1.0000 - val_loss: 6.0192 - val_accuracy: 0.3021\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0121 - accuracy: 0.9987\n",
"Epoch 14: val_accuracy improved from 0.30729 to 0.32292, saving model to alex_8.h5\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.0121 - accuracy: 0.9987 - val_loss: 5.2193 - val_accuracy: 0.3229\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0131 - accuracy: 1.0000\n",
"Epoch 15: val_accuracy did not improve from 0.32292\n",
"25/25 [==============================] - 43s 2s/step - loss: 0.0131 - accuracy: 1.0000 - val_loss: 5.9107 - val_accuracy: 0.3073\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0113 - accuracy: 1.0000\n",
"Epoch 16: val_accuracy did not improve from 0.32292\n",
"25/25 [==============================] - 43s 2s/step - loss: 0.0113 - accuracy: 1.0000 - val_loss: 5.8355 - val_accuracy: 0.2969\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0097 - accuracy: 1.0000\n",
"Epoch 17: val_accuracy did not improve from 0.32292\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.0097 - accuracy: 1.0000 - val_loss: 5.1658 - val_accuracy: 0.3125\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0104 - accuracy: 0.9987\n",
"Epoch 18: val_accuracy did not improve from 0.32292\n",
"25/25 [==============================] - 44s 2s/step - loss: 0.0104 - accuracy: 0.9987 - val_loss: 4.9559 - val_accuracy: 0.3073\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0083 - accuracy: 1.0000\n",
"Epoch 19: val_accuracy improved from 0.32292 to 0.33333, saving model to alex_8.h5\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.0083 - accuracy: 1.0000 - val_loss: 4.3347 - val_accuracy: 0.3333\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0076 - accuracy: 1.0000\n",
"Epoch 20: val_accuracy improved from 0.33333 to 0.36979, saving model to alex_8.h5\n",
"25/25 [==============================] - 46s 2s/step - loss: 0.0076 - accuracy: 1.0000 - val_loss: 3.3916 - val_accuracy: 0.3698\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0076 - accuracy: 1.0000\n",
"Epoch 21: val_accuracy improved from 0.36979 to 0.39062, saving model to alex_8.h5\n",
"25/25 [==============================] - 46s 2s/step - loss: 0.0076 - accuracy: 1.0000 - val_loss: 2.8197 - val_accuracy: 0.3906\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0056 - accuracy: 1.0000\n",
"Epoch 22: val_accuracy improved from 0.39062 to 0.45312, saving model to alex_8.h5\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.0056 - accuracy: 1.0000 - val_loss: 2.2279 - val_accuracy: 0.4531\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0066 - accuracy: 1.0000\n",
"Epoch 23: val_accuracy improved from 0.45312 to 0.57292, saving model to alex_8.h5\n",
"25/25 [==============================] - 46s 2s/step - loss: 0.0066 - accuracy: 1.0000 - val_loss: 1.3994 - val_accuracy: 0.5729\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0052 - accuracy: 1.0000\n",
"Epoch 24: val_accuracy improved from 0.57292 to 0.63542, saving model to alex_8.h5\n",
"25/25 [==============================] - 49s 2s/step - loss: 0.0052 - accuracy: 1.0000 - val_loss: 1.2914 - val_accuracy: 0.6354\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0059 - accuracy: 1.0000\n",
"Epoch 25: val_accuracy improved from 0.63542 to 0.71354, saving model to alex_8.h5\n",
"25/25 [==============================] - 49s 2s/step - loss: 0.0059 - accuracy: 1.0000 - val_loss: 1.0022 - val_accuracy: 0.7135\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_8.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex8 = model_batch.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAi8AAAHHCAYAAAB3K7g2AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAACKOElEQVR4nOzdd3wU1frH8c/sJtn0npAEQuhF+qWJqHRpoiDSe7UAClgQK9yfih1UFBUR9EoXQcBCkyZFEA1FEOktIb2XTbI7vz82WbIkQAJJJps873v3tdmZ2ZnvLmv2yZkz5yiqqqoIIYQQQtgJndYBhBBCCCGKQ4oXIYQQQtgVKV6EEEIIYVekeBFCCCGEXZHiRQghhBB2RYoXIYQQQtgVKV6EEEIIYVekeBFCCCGEXZHiRQghhBB2RYoXIUShFEVh1qxZxX7e+fPnURSFJUuWlHgmIYQAKV6EKNeWLFmCoigoisJvv/1WYL2qqoSGhqIoCg8++KAGCYUQouxJ8SKEHXB2dmbZsmUFlu/cuZPLly9jMBg0SCWEENqQ4kUIO9CrVy9Wr15NTk6OzfJly5bRsmVLgoKCNEpWeaSlpWkdQQiRS4oXIezAkCFDiIuLY8uWLdZlWVlZfPfddwwdOrTQ56SlpfHMM88QGhqKwWCgfv36vPfee1w/kbzRaGTatGkEBATg4eHBQw89xOXLlwvd55UrVxg7dixVqlTBYDDQqFEjvvrqq9t6TfHx8Tz77LM0adIEd3d3PD096dmzJ4cPHy6wbWZmJrNmzaJevXo4OzsTHBzMI488wpkzZ6zbmM1mPvzwQ5o0aYKzszMBAQH06NGDP/74A7h5X5zr+/fMmjULRVE4fvw4Q4cOxcfHh3vvvReAI0eOMHr0aGrVqoWzszNBQUGMHTuWuLi4Qt+vcePGERISgsFgoGbNmjzxxBNkZWVx9uxZFEVh7ty5BZ63d+9eFEVh+fLlxX1bhagUHLQOIIS4tRo1atCuXTuWL19Oz549Afj5559JSkpi8ODBfPTRRzbbq6rKQw89xPbt2xk3bhzNmzdn06ZNPPfcc1y5csXmC3P8+PF8++23DB06lHvuuYdff/2V3r17F8gQFRXF3XffjaIoTJ48mYCAAH7++WfGjRtHcnIyU6dOLdZrOnv2LOvWrWPAgAHUrFmTqKgoPv/8czp06MDx48cJCQkBwGQy8eCDD7Jt2zYGDx7M008/TUpKClu2bOHYsWPUrl0bgHHjxrFkyRJ69uzJ+PHjycnJYffu3ezfv59WrVoVK1ueAQMGULduXd58801r0bdlyxbOnj3LmDFjCAoK4u+//+aLL77g77//Zv/+/SiKAkBERARt2rQhMTGRiRMn0qBBA65cucJ3331Heno6tWrVon379ixdupRp06bZHHfp0qV4eHjw8MMP31ZuISo8VQhRbi1evFgF1IMHD6rz589XPTw81PT0dFVVVXXAgAFqp06dVFVV1bCwMLV3797W561bt04F1Ndff91mf48++qiqKIp6+vRpVVVVNTw8XAXUJ5980ma7oUOHqoD62muvWZeNGzdODQ4OVmNjY222HTx4sOrl5WXNde7cORVQFy9efNPXlpmZqZpMJptl586dUw0Gg/rf//7Xuuyrr75SAfWDDz4osA+z2ayqqqr++uuvKqA+9dRTN9zmZrmuf62vvfaaCqhDhgwpsG3e68xv+fLlKqDu2rXLumzkyJGqTqdTDx48eMNMn3/+uQqoJ06csK7LyspS/f391VGjRhV4nhDCQk4bCWEnBg4cSEZGBhs3biQlJYWNGzfe8JTRTz/9hF6v56mnnrJZ/swzz6CqKj///LN1O6DAdte3oqiqypo1a+jTpw+qqhIbG2u9de/enaSkJP78889ivR6DwYBOZ/kVZDKZiIuLw93dnfr169vsa82aNfj7+zNlypQC+8hr5VizZg2KovDaa6/dcJvb8fjjjxdY5uLiYv05MzOT2NhY7r77bgBrbrPZzLp16+jTp0+hrT55mQYOHIizszNLly61rtu0aROxsbEMHz78tnMLUdFJ8SKEnQgICKBr164sW7aM77//HpPJxKOPPlrothcuXCAkJAQPDw+b5Q0bNrSuz7vX6XTWUy956tevb/M4JiaGxMREvvjiCwICAmxuY8aMASA6OrpYr8dsNjN37lzq1q2LwWDA39+fgIAAjhw5QlJSknW7M2fOUL9+fRwcbnyW+8yZM4SEhODr61usDLdSs2bNAsvi4+N5+umnqVKlCi4uLgQEBFi3y8sdExNDcnIyjRs3vun+vb296dOnj82VZEuXLqVq1ap07ty5BF+JEBWL9HkRwo4MHTqUCRMmcPXqVXr27Im3t3eZHNdsNgMwfPhwRo0aVeg2TZs2LdY+33zzTV555RXGjh3L//3f/+Hr64tOp2Pq1KnW45WkG7XAmEymGz4nfytLnoEDB7J3716ee+45mjdvjru7O2azmR49etxW7pEjR7J69Wr27t1LkyZNWL9+PU8++aS1VUoIUZAUL0LYkX79+vHYY4+xf/9+Vq5cecPtwsLC2Lp1KykpKTatL//88491fd692Wy2tm7kOXnypM3+8q5EMplMdO3atURey3fffUenTp1YtGiRzfLExET8/f2tj2vXrs3vv/9OdnY2jo6Ohe6rdu3abNq0ifj4+Bu2vvj4+Fj3n19eK1RRJCQksG3bNmbPns2rr75qXX7q1Cmb7QICAvD09OTYsWO33GePHj0ICAhg6dKltG3blvT0dEaMGFHkTEJURlLaC2FH3N3dWbBgAbNmzaJPnz433K5Xr16YTCbmz59vs3zu3LkoimK9Yinv/vqrlebNm2fzWK/X079/f9asWVPoF3JMTEyxX4tery9w2fbq1au5cuWKzbL+/fsTGxtb4LUA1uf3798fVVWZPXv2Dbfx9PTE39+fXbt22az/9NNPi5U5/z7zXP9+6XQ6+vbty4YNG6yXaheWCcDBwYEhQ4awatUqlixZQpMmTYrdiiVEZSMtL0LYmRudtsmvT58+dOrUiZdeeonz58/TrFkzNm/ezA8//MDUqVOtfVyaN2/OkCFD+PTTT0lKSuKee+5h27ZtnD59usA+33rrLbZv307btm2ZMGECd911F/Hx8fz5559s3bqV+Pj4Yr2OBx98kP/+97+MGTOGe+65h6NHj7J06VJq1apls93IkSP55ptvmD59OgcOHOC+++4jLS2NrVu38uSTT/Lwww/TqVMnRowYwUcffcSpU6esp3B2795Np06dmDx5MmC5LPytt95i/PjxtGrVil27dvHvv/8WObOnpyf3338/77zzDtnZ2VStWpXNmzdz7ty5Atu++eabbN68mQ4dOjBx4kQaNmxIZGQkq1ev5rfffrM55Tdy5Eg++ugjtm/fzttvv12s91GISkmz65yEELeU/1Lpm7n+UmlVVdWUlBR12rRpakhIiOro6KjWrVtXfffdd62X6ebJyMhQn3rqKdXPz091c3NT+/Tpo166dKnA5cOqqqpRUVHqpEmT1NDQUNXR0VENCgpSu3Tpon7xxRfWbYpzqfQzzzyjBgcHqy4uLmr79u3Vffv2qR06dFA7dOhgs216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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex8.history[\"accuracy\"])\n",
"plt.plot(alex8.history['val_accuracy'])\n",
"plt.plot(alex8.history['loss'])\n",
"plt.plot(alex8.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 4s 557ms/step - loss: 0.8515 - accuracy: 0.7383\n"
]
},
{
"data": {
"text/plain": [
"[0.8515095114707947, 0.73828125]"
]
},
"execution_count": 53,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_batch.evaluate(test_ds)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Z dropoutem"
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {},
"outputs": [],
"source": [
"model_batch_drop = keras.models.Sequential([\n",
" keras.layers.Conv2D(filters=96, kernel_size=(11,11), strides=(4,4), activation='relu', input_shape=(227,227,3)),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(5,5), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.Conv2D(filters=384, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.Conv2D(filters=256, kernel_size=(3,3), strides=(1,1), activation='relu', padding=\"same\"),\n",
" keras.layers.BatchNormalization(),\n",
" keras.layers.MaxPool2D(pool_size=(3,3), strides=(2,2)),\n",
" keras.layers.Flatten(),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(4096, activation='relu'),\n",
" keras.layers.Dropout(.5),\n",
" keras.layers.Dense(10, activation='softmax')\n",
"])"
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:absl:`lr` is deprecated, please use `learning_rate` instead, or use the legacy optimizer, e.g.,tf.keras.optimizers.legacy.SGD.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_8\"\n",
"_________________________________________________________________\n",
" Layer (type) Output Shape Param # \n",
"=================================================================\n",
" conv2d_40 (Conv2D) (None, 55, 55, 96) 34944 \n",
" \n",
" batch_normalization_5 (Batc (None, 55, 55, 96) 384 \n",
" hNormalization) \n",
" \n",
" max_pooling2d_24 (MaxPoolin (None, 27, 27, 96) 0 \n",
" g2D) \n",
" \n",
" conv2d_41 (Conv2D) (None, 27, 27, 256) 614656 \n",
" \n",
" batch_normalization_6 (Batc (None, 27, 27, 256) 1024 \n",
" hNormalization) \n",
" \n",
" max_pooling2d_25 (MaxPoolin (None, 13, 13, 256) 0 \n",
" g2D) \n",
" \n",
" conv2d_42 (Conv2D) (None, 13, 13, 384) 885120 \n",
" \n",
" batch_normalization_7 (Batc (None, 13, 13, 384) 1536 \n",
" hNormalization) \n",
" \n",
" conv2d_43 (Conv2D) (None, 13, 13, 384) 1327488 \n",
" \n",
" batch_normalization_8 (Batc (None, 13, 13, 384) 1536 \n",
" hNormalization) \n",
" \n",
" conv2d_44 (Conv2D) (None, 13, 13, 256) 884992 \n",
" \n",
" batch_normalization_9 (Batc (None, 13, 13, 256) 1024 \n",
" hNormalization) \n",
" \n",
" max_pooling2d_26 (MaxPoolin (None, 6, 6, 256) 0 \n",
" g2D) \n",
" \n",
" flatten_8 (Flatten) (None, 9216) 0 \n",
" \n",
" dense_24 (Dense) (None, 4096) 37752832 \n",
" \n",
" dropout_40 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_25 (Dense) (None, 4096) 16781312 \n",
" \n",
" dropout_41 (Dropout) (None, 4096) 0 \n",
" \n",
" dense_26 (Dense) (None, 10) 40970 \n",
" \n",
"=================================================================\n",
"Total params: 58,327,818\n",
"Trainable params: 58,325,066\n",
"Non-trainable params: 2,752\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model_batch_drop.compile(loss='sparse_categorical_crossentropy', optimizer=tf.optimizers.SGD(lr=.001), metrics=['accuracy'])\n",
"model_batch_drop.summary()"
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/25\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"/var/folders/6b/j4d60ym516x2s6wymzj707rh0000gn/T/ipykernel_13671/3373435413.py:4: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.\n",
" alex9 = model_batch_drop.fit_generator(\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"25/25 [==============================] - ETA: 0s - loss: 5.1567 - accuracy: 0.3462\n",
"Epoch 1: val_accuracy improved from -inf to 0.39583, saving model to alex_9.h5\n",
"25/25 [==============================] - 53s 2s/step - loss: 5.1567 - accuracy: 0.3462 - val_loss: 1.8424 - val_accuracy: 0.3958\n",
"Epoch 2/25\n",
"25/25 [==============================] - ETA: 0s - loss: 1.5037 - accuracy: 0.5688\n",
"Epoch 2: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 48s 2s/step - loss: 1.5037 - accuracy: 0.5688 - val_loss: 2.2144 - val_accuracy: 0.2396\n",
"Epoch 3/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.9447 - accuracy: 0.6812\n",
"Epoch 3: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.9447 - accuracy: 0.6812 - val_loss: 3.3665 - val_accuracy: 0.1823\n",
"Epoch 4/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.7950 - accuracy: 0.7287\n",
"Epoch 4: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.7950 - accuracy: 0.7287 - val_loss: 4.1486 - val_accuracy: 0.3125\n",
"Epoch 5/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.7825 - accuracy: 0.7600\n",
"Epoch 5: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 44s 2s/step - loss: 0.7825 - accuracy: 0.7600 - val_loss: 5.0991 - val_accuracy: 0.2448\n",
"Epoch 6/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.4594 - accuracy: 0.8425\n",
"Epoch 6: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.4594 - accuracy: 0.8425 - val_loss: 5.7482 - val_accuracy: 0.1771\n",
"Epoch 7/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.4009 - accuracy: 0.8600\n",
"Epoch 7: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 48s 2s/step - loss: 0.4009 - accuracy: 0.8600 - val_loss: 7.0191 - val_accuracy: 0.2135\n",
"Epoch 8/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.2893 - accuracy: 0.9075\n",
"Epoch 8: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 49s 2s/step - loss: 0.2893 - accuracy: 0.9075 - val_loss: 7.8847 - val_accuracy: 0.1979\n",
"Epoch 9/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.2533 - accuracy: 0.8950\n",
"Epoch 9: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 47s 2s/step - loss: 0.2533 - accuracy: 0.8950 - val_loss: 8.0985 - val_accuracy: 0.2500\n",
"Epoch 10/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.2697 - accuracy: 0.9013\n",
"Epoch 10: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 50s 2s/step - loss: 0.2697 - accuracy: 0.9013 - val_loss: 8.7342 - val_accuracy: 0.2865\n",
"Epoch 11/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.2353 - accuracy: 0.9212\n",
"Epoch 11: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 48s 2s/step - loss: 0.2353 - accuracy: 0.9212 - val_loss: 8.8148 - val_accuracy: 0.3021\n",
"Epoch 12/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.1378 - accuracy: 0.9525\n",
"Epoch 12: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 47s 2s/step - loss: 0.1378 - accuracy: 0.9525 - val_loss: 7.8579 - val_accuracy: 0.3177\n",
"Epoch 13/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.1722 - accuracy: 0.9450\n",
"Epoch 13: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 47s 2s/step - loss: 0.1722 - accuracy: 0.9450 - val_loss: 7.5631 - val_accuracy: 0.3125\n",
"Epoch 14/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.1326 - accuracy: 0.9500\n",
"Epoch 14: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 48s 2s/step - loss: 0.1326 - accuracy: 0.9500 - val_loss: 7.8681 - val_accuracy: 0.2760\n",
"Epoch 15/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.1235 - accuracy: 0.9538\n",
"Epoch 15: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 46s 2s/step - loss: 0.1235 - accuracy: 0.9538 - val_loss: 8.4553 - val_accuracy: 0.3021\n",
"Epoch 16/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0752 - accuracy: 0.9737\n",
"Epoch 16: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 44s 2s/step - loss: 0.0752 - accuracy: 0.9737 - val_loss: 6.6568 - val_accuracy: 0.3229\n",
"Epoch 17/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0540 - accuracy: 0.9862\n",
"Epoch 17: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 46s 2s/step - loss: 0.0540 - accuracy: 0.9862 - val_loss: 6.9686 - val_accuracy: 0.3229\n",
"Epoch 18/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0681 - accuracy: 0.9750\n",
"Epoch 18: val_accuracy did not improve from 0.39583\n",
"25/25 [==============================] - 45s 2s/step - loss: 0.0681 - accuracy: 0.9750 - val_loss: 5.2376 - val_accuracy: 0.3281\n",
"Epoch 19/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0530 - accuracy: 0.9800\n",
"Epoch 19: val_accuracy improved from 0.39583 to 0.42708, saving model to alex_9.h5\n",
"25/25 [==============================] - 53s 2s/step - loss: 0.0530 - accuracy: 0.9800 - val_loss: 3.4478 - val_accuracy: 0.4271\n",
"Epoch 20/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0605 - accuracy: 0.9850\n",
"Epoch 20: val_accuracy improved from 0.42708 to 0.44792, saving model to alex_9.h5\n",
"25/25 [==============================] - 50s 2s/step - loss: 0.0605 - accuracy: 0.9850 - val_loss: 2.8303 - val_accuracy: 0.4479\n",
"Epoch 21/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0447 - accuracy: 0.9862\n",
"Epoch 21: val_accuracy improved from 0.44792 to 0.47396, saving model to alex_9.h5\n",
"25/25 [==============================] - 51s 2s/step - loss: 0.0447 - accuracy: 0.9862 - val_loss: 3.0949 - val_accuracy: 0.4740\n",
"Epoch 22/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0601 - accuracy: 0.9825\n",
"Epoch 22: val_accuracy improved from 0.47396 to 0.70312, saving model to alex_9.h5\n",
"25/25 [==============================] - 78s 3s/step - loss: 0.0601 - accuracy: 0.9825 - val_loss: 1.2678 - val_accuracy: 0.7031\n",
"Epoch 23/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0483 - accuracy: 0.9850\n",
"Epoch 23: val_accuracy improved from 0.70312 to 0.76562, saving model to alex_9.h5\n",
"25/25 [==============================] - 55s 2s/step - loss: 0.0483 - accuracy: 0.9850 - val_loss: 1.0314 - val_accuracy: 0.7656\n",
"Epoch 24/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0412 - accuracy: 0.9862\n",
"Epoch 24: val_accuracy did not improve from 0.76562\n",
"25/25 [==============================] - 60s 2s/step - loss: 0.0412 - accuracy: 0.9862 - val_loss: 1.1687 - val_accuracy: 0.7083\n",
"Epoch 25/25\n",
"25/25 [==============================] - ETA: 0s - loss: 0.0650 - accuracy: 0.9725\n",
"Epoch 25: val_accuracy did not improve from 0.76562\n",
"25/25 [==============================] - 48s 2s/step - loss: 0.0650 - accuracy: 0.9725 - val_loss: 1.4878 - val_accuracy: 0.6719\n"
]
}
],
"source": [
"checkpoint = ModelCheckpoint(\"alex_9.h5\", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)\n",
"early = EarlyStopping(monitor='val_accuracy', min_delta=0, patience=20, verbose=1, mode='auto')\n",
"\n",
"alex9 = model_batch_drop.fit_generator(\n",
" steps_per_epoch=len(train_ds), \n",
" generator=train_ds, \n",
" validation_data= validation_ds, \n",
" validation_steps=len(validation_ds), \n",
" epochs=25, \n",
" callbacks=[checkpoint,early])"
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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lVeW6pgzZszg+eefZ9SoUbz00kuEhoai0+mYOHGi53zl6UItME6n84KvKdjKku+uu+5i48aNPPnkk7Rr1w5/f39cLhe33HJLmeoePnw4S5YsYePGjbRp04bvv/+eRx991NMqJYQoSsKLEF7kjjvu4KGHHmLz5s0sWrTogvvVr1+f3377jYyMjEKtL/v27fM8n3/vcrk8rRv59u/fX+h4+VciOZ1OevXqVS7v5euvv+aGG27g008/LbQ9NTWV8PBwz8+NGzdmy5Yt2O12jEZjscdq3LgxK1asIDk5+YKtLyEhIZ7jF5TfClUSKSkprFq1iunTp/PCCy94th88eLDQfhEREQQGBrJnz55LHvOWW24hIiKCL7/8ks6dO5Odnc19991X4pqEqIkk2gvhRfz9/fnwww+ZNm0a/fr1u+B+t956K06nk9mzZxfa/tZbb6EoiueKpfz7869Wevvttwv9rNfrGTRoEEuXLi32CzkxMbHU70Wv1xe5bHvJkiWcOnWq0LZBgwaRlJRU5L0AntcPGjQIVVWZPn36BfcJDAwkPDycP/74o9DzH3zwQalqLnjMfOd/XjqdjgEDBrB8+XLPpdrF1QRgMBgYOnQoixcvZt68ebRp06bUrVhC1DTS8iKEl7lQt01B/fr144YbbuDZZ5/l2LFjtG3bll9//ZXvvvuOiRMnesa4tGvXjqFDh/LBBx+QlpZG165dWbVqFYcOHSpyzFdeeYXVq1fTuXNnxowZQ6tWrUhOTmbHjh389ttvJCcnl+p99O3blxdffJH777+frl27snv3br788ksaNWpUaL/hw4czf/58Jk+ezJ9//sl1111HVlYWv/32G48++ij9+/fnhhtu4L777uPdd9/l4MGDni6cdevWccMNNzBu3DjAfVn4K6+8wgMPPECHDh34448/OHDgQIlrDgwM5Prrr+e1117DbrdTp04dfv31V44ePVpk3xkzZvDrr7/SvXt3HnzwQVq2bEl8fDxLlixh/fr1hbr8hg8fzrvvvsvq1at59dVXS/U5ClEjaXadkxDikgpeKn0x518qraqqmpGRoU6aNEmNjo5WjUaj2rRpU3XWrFmey3Tz5eTkqBMmTFDDwsJUi8Wi9uvXT42NjS1y+bCqquqZM2fUsWPHqjExMarRaFRr166t9uzZU/3kk088+5TmUunHH39cjYqKUn19fdVu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j/Drr7/Sq1cvBg0aVKZxRt7EGBWFqXFjbIcPk7V5C4G9b9a6JFENyZiXMsifqE7rAbuu3FxOT5sOQMi99+Kb99edqHiKoqDz89PkVtrxTKNHj2bp0qVkZGQwd+5cGjduTPfu3QGYNWsW77zzDk8//TSrV69m586d9O7dG5vNVm6f1aZNm7j33nu59dZb+eGHH/jrr7949tlny/UcBRnPm5RRURRcLleFnAvcV0r9888/3Hbbbfz++++0atWKZcuWAfDAAw9w5MgR7rvvPnbv3k2HDh147733KqyWqiJ/oUYZ9yIqioSXMsjvNorPisfuLPtAwMuV9MGH2GNjMdSqRcRjEzSrQ1Rtd911FzqdjgULFjB//nxGjRrlCUAbNmygf//+DBs2jLZt29KoUSMOHDhQ4mO3bNmS2NhY4uPjPds2b95caJ+NGzdSv359nn32WTp06EDTpk05fvx4oX1MJhNOp/OS59q1axdZWVmebRs2bECn09G8efMS11wa+e8vtsCMsf/++y+pqam0atXKs61Zs2ZMmjSJX3/9lYEDBzJ37lzPczExMTz88MN88803PP7448zJm86gOvPPv2R6/foSDzAXojQkvJRBuG84PnofXKqL+Kz4S7+gAuQeOMDZzz4DoPbzz8kS9OKC/P39GTJkCFOmTCE+Pp6RI0d6nmvatCkrV65k48aN7N27l4ceeqjQlTSX0qtXL5o1a8aIESPYtWsX69at49lnny20T9OmTTlx4gRfffUVhw8f5t133/W0TORr0KABR48eZefOnSQlJWG1Wouc695778XHx4cRI0awZ88eVq9ezfjx47nvvvs8XUZl5XQ62blzZ6Hb3r176dWrF23atOHee+9lx44d/PnnnwwfPpzu3bvToUMHcnJyGDduHGvWrOH48eNs2LCBrVu30rJlSwAmTpzIihUrOHr0KDt27GD16tWe56ozv44dUYxG7HFx2I4d07ocUQ1JeCkDRVE0HfeiulycnjoNHA78e/YkoFevSq9BeJfRo0eTkpJC7969C41Pee6557j66qvp3bs3PXr0oHbt2gwYMKDEx9XpdCxbtoycnBw6derEAw88wMsvv1xon9tvv51JkyYxbtw42rVrx8aNG3n++ecL7TNo0CBuueUWbrjhBiIiIoq9XNvPz48VK1aQnJxMx44dufPOO+nZsyezZ88u3YdR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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.plot(alex9.history[\"accuracy\"])\n",
"plt.plot(alex9.history['val_accuracy'])\n",
"plt.plot(alex9.history['loss'])\n",
"plt.plot(alex9.history['val_loss'])\n",
"plt.title(\"Model accuracy\")\n",
"plt.ylabel(\"Value\")\n",
"plt.xlabel(\"Epoch\")\n",
"plt.legend([\"Accuracy\",\"Validation Accuracy\",\"Loss\",\"Validation Loss\"])\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"8/8 [==============================] - 4s 493ms/step - loss: 1.3864 - accuracy: 0.6953\n"
]
},
{
"data": {
"text/plain": [
"[1.386448621749878, 0.6953125]"
]
},
"execution_count": 58,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model_batch_drop.evaluate(test_ds)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"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.9.6"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}