diff --git a/labworks/LW1/model_1h100_2h50.keras b/labworks/LW1/model_1h100_2h50.keras
new file mode 100644
index 0000000..9cdd812
Binary files /dev/null and b/labworks/LW1/model_1h100_2h50.keras differ
diff --git a/labworks/LW3/images/1.png b/labworks/LW3/images/1.png
new file mode 100644
index 0000000..19d337b
Binary files /dev/null and b/labworks/LW3/images/1.png differ
diff --git a/labworks/LW3/images/2.png b/labworks/LW3/images/2.png
new file mode 100644
index 0000000..5f39f43
Binary files /dev/null and b/labworks/LW3/images/2.png differ
diff --git a/labworks/LW3/images/3.png b/labworks/LW3/images/3.png
new file mode 100644
index 0000000..f9592d8
Binary files /dev/null and b/labworks/LW3/images/3.png differ
diff --git a/labworks/LW3/images/4.png b/labworks/LW3/images/4.png
new file mode 100644
index 0000000..e714465
Binary files /dev/null and b/labworks/LW3/images/4.png differ
diff --git a/labworks/LW3/images/5.png b/labworks/LW3/images/5.png
new file mode 100644
index 0000000..49dfaa3
Binary files /dev/null and b/labworks/LW3/images/5.png differ
diff --git a/labworks/LW3/images/6.png b/labworks/LW3/images/6.png
new file mode 100644
index 0000000..a88cdf5
Binary files /dev/null and b/labworks/LW3/images/6.png differ
diff --git a/labworks/LW3/images/7.png b/labworks/LW3/images/7.png
new file mode 100644
index 0000000..05bcbaa
Binary files /dev/null and b/labworks/LW3/images/7.png differ
diff --git a/labworks/LW3/images/8.png b/labworks/LW3/images/8.png
new file mode 100644
index 0000000..fbc3877
Binary files /dev/null and b/labworks/LW3/images/8.png differ
diff --git a/labworks/LW3/images/9.png b/labworks/LW3/images/9.png
new file mode 100644
index 0000000..7efdd61
Binary files /dev/null and b/labworks/LW3/images/9.png differ
diff --git a/labworks/LW3/lab3.ipynb b/labworks/LW3/lab3.ipynb
new file mode 100644
index 0000000..616afe9
--- /dev/null
+++ b/labworks/LW3/lab3.ipynb
@@ -0,0 +1,739 @@
+{
+ "nbformat": 4,
+ "nbformat_minor": 0,
+ "metadata": {
+ "colab": {
+ "provenance": [],
+ "gpuType": "T4"
+ },
+ "kernelspec": {
+ "name": "python3",
+ "display_name": "Python 3"
+ },
+ "language_info": {
+ "name": "python"
+ },
+ "accelerator": "GPU"
+ },
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "source": [
+ "## Задание 1"
+ ],
+ "metadata": {
+ "id": "oZs0KGcz01BY"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 1) В среде Google Colab создали новый блокнот (notebook). Импортировали необходимые для работы библиотеки и модули."
+ ],
+ "metadata": {
+ "id": "gz18QPRz03Ec"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# импорт модулей\n",
+ "import os\n",
+ "os.chdir('/content/drive/MyDrive/Colab Notebooks/is_lab3')\n",
+ "\n",
+ "from tensorflow import keras\n",
+ "from tensorflow.keras import layers\n",
+ "from tensorflow.keras.models import Sequential\n",
+ "import matplotlib.pyplot as plt\n",
+ "import numpy as np\n",
+ "from sklearn.metrics import classification_report, confusion_matrix\n",
+ "from sklearn.metrics import ConfusionMatrixDisplay"
+ ],
+ "metadata": {
+ "id": "mr9IszuQ1ANG"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 2) Загрузили набор данных MNIST, содержащий размеченные изображения рукописных цифр. "
+ ],
+ "metadata": {
+ "id": "FFRtE0TN1AiA"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# загрузка датасета\n",
+ "from keras.datasets import mnist\n",
+ "(X_train, y_train), (X_test, y_test) = mnist.load_data()"
+ ],
+ "metadata": {
+ "id": "Ixw5Sp0_1A-w"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 3) Разбили набор данных на обучающие и тестовые данные в соотношении 60 000:10 000 элементов. Параметр random_state выбрали равным (4k – 1)=23, где k=6 –номер бригады. Вывели размерности полученных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "aCo_lUXl1BPV"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создание своего разбиения датасета\n",
+ "from sklearn.model_selection import train_test_split\n",
+ "\n",
+ "# объединяем в один набор\n",
+ "X = np.concatenate((X_train, X_test))\n",
+ "y = np.concatenate((y_train, y_test))\n",
+ "\n",
+ "# разбиваем по вариантам\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y,\n",
+ " test_size = 10000,\n",
+ " train_size = 60000,\n",
+ " random_state = 23)\n",
+ "# вывод размерностей\n",
+ "print('Shape of X train:', X_train.shape)\n",
+ "print('Shape of y train:', y_train.shape)\n",
+ "print('Shape of X test:', X_test.shape)\n",
+ "print('Shape of y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "id": "BrSjcpEe1BeV"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 4) Провели предобработку данных: привели обучающие и тестовые данные к формату, пригодному для обучения сверточной нейронной сети. Входные данные принимают значения от 0 до 1, метки цифр закодированы по принципу «one-hot encoding». Вывели размерности предобработанных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "4hclnNaD1BuB"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Зададим параметры данных и модели\n",
+ "num_classes = 10\n",
+ "input_shape = (28, 28, 1)\n",
+ "\n",
+ "# Приведение входных данных к диапазону [0, 1]\n",
+ "X_train = X_train / 255\n",
+ "X_test = X_test / 255\n",
+ "\n",
+ "# Расширяем размерность входных данных, чтобы каждое изображение имело\n",
+ "# размерность (высота, ширина, количество каналов)\n",
+ "\n",
+ "X_train = np.expand_dims(X_train, -1)\n",
+ "X_test = np.expand_dims(X_test, -1)\n",
+ "print('Shape of transformed X train:', X_train.shape)\n",
+ "print('Shape of transformed X test:', X_test.shape)\n",
+ "\n",
+ "# переведем метки в one-hot\n",
+ "y_train = keras.utils.to_categorical(y_train, num_classes)\n",
+ "y_test = keras.utils.to_categorical(y_test, num_classes)\n",
+ "print('Shape of transformed y train:', y_train.shape)\n",
+ "print('Shape of transformed y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "id": "xJH87ISq1B9h"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 5) Реализовали модель сверточной нейронной сети и обучили ее на обучающих данных с выделением части обучающих данных в качестве валидационных. Вывели информацию об архитектуре нейронной сети."
+ ],
+ "metadata": {
+ "id": "7x99O8ig1CLh"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создаем модель\n",
+ "model = Sequential()\n",
+ "model.add(layers.Conv2D(32, kernel_size=(3, 3), activation=\"relu\", input_shape=input_shape))\n",
+ "model.add(layers.MaxPooling2D(pool_size=(2, 2)))\n",
+ "model.add(layers.Conv2D(64, kernel_size=(3, 3), activation=\"relu\"))\n",
+ "model.add(layers.MaxPooling2D(pool_size=(2, 2)))\n",
+ "model.add(layers.Dropout(0.5))\n",
+ "model.add(layers.Flatten())\n",
+ "model.add(layers.Dense(num_classes, activation=\"softmax\"))\n",
+ "\n",
+ "model.summary()"
+ ],
+ "metadata": {
+ "id": "Un561zSH1Cmv"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# компилируем и обучаем модель\n",
+ "batch_size = 512\n",
+ "epochs = 15\n",
+ "model.compile(loss=\"categorical_crossentropy\", optimizer=\"adam\", metrics=[\"accuracy\"])\n",
+ "model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, validation_split=0.1)"
+ ],
+ "metadata": {
+ "id": "q_h8PxkN9m0v"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 6) Оценили качество обучения на тестовых данных. Вывели значение функции ошибки и значение метрики качества классификации на тестовых данных."
+ ],
+ "metadata": {
+ "id": "HL2_LVga1C3l"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Оценка качества работы модели на тестовых данных\n",
+ "scores = model.evaluate(X_test, y_test)\n",
+ "print('Loss on test data:', scores[0])\n",
+ "print('Accuracy on test data:', scores[1])"
+ ],
+ "metadata": {
+ "id": "81Cgq8dn9uL6"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 7) Подали на вход обученной модели два тестовых изображения. Вывели изображения, истинные метки и результаты распознавания."
+ ],
+ "metadata": {
+ "id": "KzrVY1SR1DZh"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# вывод двух тестовых изображений и результатов распознавания\n",
+ "\n",
+ "for n in [3,26]:\n",
+ " result = model.predict(X_test[n:n+1])\n",
+ " print('NN output:', result)\n",
+ "\n",
+ " plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray'))\n",
+ " plt.show()\n",
+ " print('Real mark: ', np.argmax(y_test[n]))\n",
+ " print('NN answer: ', np.argmax(result))"
+ ],
+ "metadata": {
+ "id": "dbfkWjDI1Dp7"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 8) Вывели отчет о качестве классификации тестовой выборки и матрицу ошибок для тестовой выборки."
+ ],
+ "metadata": {
+ "id": "YgiVGr5_1D3u"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# истинные метки классов\n",
+ "true_labels = np.argmax(y_test, axis=1)\n",
+ "# предсказанные метки классов\n",
+ "predicted_labels = np.argmax(model.predict(X_test), axis=1)\n",
+ "\n",
+ "# отчет о качестве классификации\n",
+ "print(classification_report(true_labels, predicted_labels))\n",
+ "# вычисление матрицы ошибок\n",
+ "conf_matrix = confusion_matrix(true_labels, predicted_labels)\n",
+ "# отрисовка матрицы ошибок в виде \"тепловой карты\"\n",
+ "display = ConfusionMatrixDisplay(confusion_matrix=conf_matrix)\n",
+ "display.plot()\n",
+ "plt.show()"
+ ],
+ "metadata": {
+ "id": "7MqcG_wl1EHI"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 9) Загрузили, предобработали и подали на вход обученной нейронной сети собственное изображение, созданное при выполнении лабораторной работы №1. Вывели изображение и результат распознавания."
+ ],
+ "metadata": {
+ "id": "amaspXGW1EVy"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# загрузка собственного изображения\n",
+ "from PIL import Image\n",
+ "\n",
+ "for name_image in ['цифра 3.png', 'цифра 6.png']:\n",
+ " file_data = Image.open(name_image)\n",
+ " file_data = file_data.convert('L') # перевод в градации серого\n",
+ " test_img = np.array(file_data)\n",
+ "\n",
+ " # вывод собственного изображения\n",
+ " plt.imshow(test_img, cmap=plt.get_cmap('gray'))\n",
+ " plt.show()\n",
+ "\n",
+ " # предобработка\n",
+ " test_img = test_img / 255\n",
+ " test_img = np.reshape(test_img, (1,28,28,1))\n",
+ "\n",
+ " # распознавание\n",
+ " result = model.predict(test_img)\n",
+ " print('I think it\\'s', np.argmax(result))"
+ ],
+ "metadata": {
+ "id": "ktWEeqWd1EyF"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 10) Загрузили с диска модель, сохраненную при выполнении лабораторной работы №1. Вывели информацию об архитектуре модели. Повторили для этой модели п. 6."
+ ],
+ "metadata": {
+ "id": "mgrihPd61E8w"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "model_lr1 = keras.models.load_model(\"model_1h100_2h50.keras\")\n",
+ "\n",
+ "model_lr1.summary()"
+ ],
+ "metadata": {
+ "id": "DblXqn3l1FL2"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# развернем каждое изображение 28*28 в вектор 784\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y,\n",
+ " test_size = 10000,\n",
+ " train_size = 60000,\n",
+ " random_state = 23)\n",
+ "num_pixels = X_train.shape[1] * X_train.shape[2]\n",
+ "X_train = X_train.reshape(X_train.shape[0], num_pixels) / 255\n",
+ "X_test = X_test.reshape(X_test.shape[0], num_pixels) / 255\n",
+ "print('Shape of transformed X train:', X_train.shape)\n",
+ "print('Shape of transformed X train:', X_test.shape)\n",
+ "\n",
+ "# переведем метки в one-hot\n",
+ "y_train = keras.utils.to_categorical(y_train, num_classes)\n",
+ "y_test = keras.utils.to_categorical(y_test, num_classes)\n",
+ "print('Shape of transformed y train:', y_train.shape)\n",
+ "print('Shape of transformed y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "id": "0ki8fhJrEyEt"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Оценка качества работы модели на тестовых данных\n",
+ "scores = model_lr1.evaluate(X_test, y_test)\n",
+ "print('Loss on test data:', scores[0])\n",
+ "print('Accuracy on test data:', scores[1])"
+ ],
+ "metadata": {
+ "id": "0Yj0fzLNE12k"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 11) Сравнили обученную модель сверточной сети и наилучшую модель полносвязной сети из лабораторной работы №1 по следующим показателям:\n",
+ "### - количество настраиваемых параметров в сети\n",
+ "### - количество эпох обучения\n",
+ "### - качество классификации тестовой выборки.\n",
+ "### Сделали выводы по результатам применения сверточной нейронной сети для распознавания изображений. "
+ ],
+ "metadata": {
+ "id": "MsM3ew3d1FYq"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "Таблица1:"
+ ],
+ "metadata": {
+ "id": "xxFO4CXbIG88"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "| Модель | Количество настраиваемых параметров | Количество эпох обучения | Качество классификации тестовой выборки |\n",
+ "|----------|-------------------------------------|---------------------------|-----------------------------------------|\n",
+ "| Сверточная | 34 826 | 15 | accuracy:0.990 ; loss:0.029 |\n",
+ "| Полносвязная | 84 062 | 50 | accuracy:0.942 ; loss:0.198 |\n"
+ ],
+ "metadata": {
+ "id": "xvoivjuNFlEf"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#####По результатам применения сверточной НС, а также по результатам таблицы 1 делаем выводы, что сверточная НС намного лучше справляется с задачами распознования изображений, чем полносвязная - имеет меньше настраиваемых параметров, быстрее обучается, имеет лучшие показатели качества."
+ ],
+ "metadata": {
+ "id": "YctF8h_sIB-P"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "## Задание 2"
+ ],
+ "metadata": {
+ "id": "wCLHZPGB1F1y"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### В новом блокноте выполнили п. 2–8 задания 1, изменив набор данных MNIST на CIFAR-10, содержащий размеченные цветные изображения объектов, разделенные на 10 классов. \n",
+ "### При этом:\n",
+ "### - в п. 3 разбиение данных на обучающие и тестовые произвели в соотношении 50 000:10 000\n",
+ "### - после разбиения данных (между п. 3 и 4) вывели 25 изображений из обучающей выборки с подписями классов\n",
+ "### - в п. 7 одно из тестовых изображений должно распознаваться корректно, а другое – ошибочно. "
+ ],
+ "metadata": {
+ "id": "DUOYls124TT8"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 1) Загрузили набор данных CIFAR-10, содержащий цветные изображения размеченные на 10 классов: самолет, автомобиль, птица, кошка, олень, собака, лягушка, лошадь, корабль, грузовик."
+ ],
+ "metadata": {
+ "id": "XDStuSpEJa8o"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# загрузка датасета\n",
+ "from keras.datasets import cifar10\n",
+ "\n",
+ "(X_train, y_train), (X_test, y_test) = cifar10.load_data()"
+ ],
+ "metadata": {
+ "id": "y0qK7eKL4Tjy"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 2) Разбили набор данных на обучающие и тестовые данные в соотношении 50 000:10 000 элементов. Параметр random_state выбрали равным (4k – 1)=23, где k=6 –номер бригады. Вывели размерности полученных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "wTHiBy-ZJ5oh"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создание своего разбиения датасета\n",
+ "\n",
+ "# объединяем в один набор\n",
+ "X = np.concatenate((X_train, X_test))\n",
+ "y = np.concatenate((y_train, y_test))\n",
+ "\n",
+ "# разбиваем по вариантам\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y,\n",
+ " test_size = 10000,\n",
+ " train_size = 50000,\n",
+ " random_state = 23)\n",
+ "# вывод размерностей\n",
+ "print('Shape of X train:', X_train.shape)\n",
+ "print('Shape of y train:', y_train.shape)\n",
+ "print('Shape of X test:', X_test.shape)\n",
+ "print('Shape of y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "id": "DlnFbQogKD2v"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### Вывели 25 изображений из обучающей выборки с подписью классов."
+ ],
+ "metadata": {
+ "id": "pj3bMaz1KZ3a"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer',\n",
+ " 'dog', 'frog', 'horse', 'ship', 'truck']\n",
+ "\n",
+ "plt.figure(figsize=(10,10))\n",
+ "for i in range(25):\n",
+ " plt.subplot(5,5,i+1)\n",
+ " plt.xticks([])\n",
+ " plt.yticks([])\n",
+ " plt.grid(False)\n",
+ " plt.imshow(X_train[i])\n",
+ " plt.xlabel(class_names[y_train[i][0]])\n",
+ "plt.show()"
+ ],
+ "metadata": {
+ "id": "TW8D67KEKhVE"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 3) Провели предобработку данных: привели обучающие и тестовые данные к формату, пригодному для обучения сверточной нейронной сети. Входные данные принимают значения от 0 до 1, метки цифр закодированы по принципу «one-hot encoding». Вывели размерности предобработанных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "d3TPr2w1KQTK"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Зададим параметры данных и модели\n",
+ "num_classes = 10\n",
+ "input_shape = (32, 32, 3)\n",
+ "\n",
+ "# Приведение входных данных к диапазону [0, 1]\n",
+ "X_train = X_train / 255\n",
+ "X_test = X_test / 255\n",
+ "\n",
+ "print('Shape of transformed X train:', X_train.shape)\n",
+ "print('Shape of transformed X test:', X_test.shape)\n",
+ "\n",
+ "# переведем метки в one-hot\n",
+ "y_train = keras.utils.to_categorical(y_train, num_classes)\n",
+ "y_test = keras.utils.to_categorical(y_test, num_classes)\n",
+ "print('Shape of transformed y train:', y_train.shape)\n",
+ "print('Shape of transformed y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "id": "iFDpxEauLZ8j"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 4) Реализовали модель сверточной нейронной сети и обучили ее на обучающих данных с выделением части обучающих данных в качестве валидационных. Вывели информацию об архитектуре нейронной сети."
+ ],
+ "metadata": {
+ "id": "ydNITXptLeGT"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создаем модель\n",
+ "model = Sequential()\n",
+ "\n",
+ "# Блок 1\n",
+ "model.add(layers.Conv2D(32, (3, 3), padding=\"same\",\n",
+ " activation=\"relu\", input_shape=input_shape))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.Conv2D(32, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.MaxPooling2D((2, 2)))\n",
+ "model.add(layers.Dropout(0.25))\n",
+ "\n",
+ "# Блок 2\n",
+ "model.add(layers.Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.MaxPooling2D((2, 2)))\n",
+ "model.add(layers.Dropout(0.25))\n",
+ "\n",
+ "# Блок 3\n",
+ "model.add(layers.Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.MaxPooling2D((2, 2)))\n",
+ "model.add(layers.Dropout(0.4))\n",
+ "\n",
+ "model.add(layers.Flatten())\n",
+ "model.add(layers.Dense(128, activation='relu'))\n",
+ "model.add(layers.Dropout(0.5))\n",
+ "model.add(layers.Dense(num_classes, activation=\"softmax\"))\n",
+ "\n",
+ "\n",
+ "model.summary()"
+ ],
+ "metadata": {
+ "id": "YhAD5CllLlv7"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# компилируем и обучаем модель\n",
+ "batch_size = 64\n",
+ "epochs = 50\n",
+ "model.compile(loss=\"categorical_crossentropy\", optimizer=\"adam\", metrics=[\"accuracy\"])\n",
+ "model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, validation_split=0.1)"
+ ],
+ "metadata": {
+ "id": "3otvqMjjOdq5"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 5) Оценили качество обучения на тестовых данных. Вывели значение функции ошибки и значение метрики качества классификации на тестовых данных."
+ ],
+ "metadata": {
+ "id": "Vv1kUHWTLl9B"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Оценка качества работы модели на тестовых данных\n",
+ "scores = model.evaluate(X_test, y_test)\n",
+ "print('Loss on test data:', scores[0])\n",
+ "print('Accuracy on test data:', scores[1])"
+ ],
+ "metadata": {
+ "id": "SaDxydiyLmRX"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 6) Подали на вход обученной модели два тестовых изображения. Вывели изображения, истинные метки и результаты распознавания."
+ ],
+ "metadata": {
+ "id": "OdgEiyUGLmhP"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# вывод двух тестовых изображений и результатов распознавания\n",
+ "\n",
+ "for n in [3,15]:\n",
+ " result = model.predict(X_test[n:n+1])\n",
+ " print('NN output:', result)\n",
+ "\n",
+ " plt.imshow(X_test[n].reshape(32,32,3), cmap=plt.get_cmap('gray'))\n",
+ " plt.show()\n",
+ " print('Real mark: ', np.argmax(y_test[n]))\n",
+ " print('NN answer: ', np.argmax(result))"
+ ],
+ "metadata": {
+ "id": "t3yGj1MlLm9H"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 7) Вывели отчет о качестве классификации тестовой выборки и матрицу ошибок для тестовой выборки."
+ ],
+ "metadata": {
+ "id": "3h6VGDRrLnNC"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# истинные метки классов\n",
+ "true_labels = np.argmax(y_test, axis=1)\n",
+ "# предсказанные метки классов\n",
+ "predicted_labels = np.argmax(model.predict(X_test), axis=1)\n",
+ "\n",
+ "# отчет о качестве классификации\n",
+ "print(classification_report(true_labels, predicted_labels, target_names=class_names))\n",
+ "# вычисление матрицы ошибок\n",
+ "conf_matrix = confusion_matrix(true_labels, predicted_labels)\n",
+ "# отрисовка матрицы ошибок в виде \"тепловой карты\"\n",
+ "fig, ax = plt.subplots(figsize=(6, 6))\n",
+ "disp = ConfusionMatrixDisplay(confusion_matrix=conf_matrix,display_labels=class_names)\n",
+ "disp.plot(ax=ax, xticks_rotation=45) # поворот подписей по X и приятная палитра\n",
+ "plt.tight_layout() # чтобы всё влезло\n",
+ "plt.show()"
+ ],
+ "metadata": {
+ "id": "od56oyyzM0nw"
+ },
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "#### По результатам классификации датасета CIFAR-10 созданной сверточной моделью можно сделать вывод, что она довольно неплохо справилась с задачей. Полученные метрики оценки качества имеют показатели в районе 0.85."
+ ],
+ "metadata": {
+ "id": "RF4xK1cxamBc"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/labworks/LW3/notebook с полными выводами/lab3_full.ipynb b/labworks/LW3/notebook с полными выводами/lab3_full.ipynb
new file mode 100644
index 0000000..6f7511b
--- /dev/null
+++ b/labworks/LW3/notebook с полными выводами/lab3_full.ipynb
@@ -0,0 +1,1661 @@
+{
+ "nbformat": 4,
+ "nbformat_minor": 0,
+ "metadata": {
+ "colab": {
+ "provenance": [],
+ "gpuType": "T4"
+ },
+ "kernelspec": {
+ "name": "python3",
+ "display_name": "Python 3"
+ },
+ "language_info": {
+ "name": "python"
+ },
+ "accelerator": "GPU"
+ },
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "source": [
+ "## Задание 1"
+ ],
+ "metadata": {
+ "id": "oZs0KGcz01BY"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 1) В среде Google Colab создали новый блокнот (notebook). Импортировали необходимые для работы библиотеки и модули."
+ ],
+ "metadata": {
+ "id": "gz18QPRz03Ec"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# импорт модулей\n",
+ "import os\n",
+ "os.chdir('/content/drive/MyDrive/Colab Notebooks/is_lab3')\n",
+ "\n",
+ "from tensorflow import keras\n",
+ "from tensorflow.keras import layers\n",
+ "from tensorflow.keras.models import Sequential\n",
+ "import matplotlib.pyplot as plt\n",
+ "import numpy as np\n",
+ "from sklearn.metrics import classification_report, confusion_matrix\n",
+ "from sklearn.metrics import ConfusionMatrixDisplay"
+ ],
+ "metadata": {
+ "id": "mr9IszuQ1ANG"
+ },
+ "execution_count": 40,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 2) Загрузили набор данных MNIST, содержащий размеченные изображения рукописных цифр. "
+ ],
+ "metadata": {
+ "id": "FFRtE0TN1AiA"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# загрузка датасета\n",
+ "from keras.datasets import mnist\n",
+ "(X_train, y_train), (X_test, y_test) = mnist.load_data()"
+ ],
+ "metadata": {
+ "id": "Ixw5Sp0_1A-w"
+ },
+ "execution_count": 41,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 3) Разбили набор данных на обучающие и тестовые данные в соотношении 60 000:10 000 элементов. Параметр random_state выбрали равным (4k – 1)=23, где k=6 –номер бригады. Вывели размерности полученных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "aCo_lUXl1BPV"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создание своего разбиения датасета\n",
+ "from sklearn.model_selection import train_test_split\n",
+ "\n",
+ "# объединяем в один набор\n",
+ "X = np.concatenate((X_train, X_test))\n",
+ "y = np.concatenate((y_train, y_test))\n",
+ "\n",
+ "# разбиваем по вариантам\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y,\n",
+ " test_size = 10000,\n",
+ " train_size = 60000,\n",
+ " random_state = 23)\n",
+ "# вывод размерностей\n",
+ "print('Shape of X train:', X_train.shape)\n",
+ "print('Shape of y train:', y_train.shape)\n",
+ "print('Shape of X test:', X_test.shape)\n",
+ "print('Shape of y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "BrSjcpEe1BeV",
+ "outputId": "7952fd1d-10e4-453b-c687-49a858e48d78"
+ },
+ "execution_count": 42,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Shape of X train: (60000, 28, 28)\n",
+ "Shape of y train: (60000,)\n",
+ "Shape of X test: (10000, 28, 28)\n",
+ "Shape of y test: (10000,)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 4) Провели предобработку данных: привели обучающие и тестовые данные к формату, пригодному для обучения сверточной нейронной сети. Входные данные принимают значения от 0 до 1, метки цифр закодированы по принципу «one-hot encoding». Вывели размерности предобработанных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "4hclnNaD1BuB"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Зададим параметры данных и модели\n",
+ "num_classes = 10\n",
+ "input_shape = (28, 28, 1)\n",
+ "\n",
+ "# Приведение входных данных к диапазону [0, 1]\n",
+ "X_train = X_train / 255\n",
+ "X_test = X_test / 255\n",
+ "\n",
+ "# Расширяем размерность входных данных, чтобы каждое изображение имело\n",
+ "# размерность (высота, ширина, количество каналов)\n",
+ "\n",
+ "X_train = np.expand_dims(X_train, -1)\n",
+ "X_test = np.expand_dims(X_test, -1)\n",
+ "print('Shape of transformed X train:', X_train.shape)\n",
+ "print('Shape of transformed X test:', X_test.shape)\n",
+ "\n",
+ "# переведем метки в one-hot\n",
+ "y_train = keras.utils.to_categorical(y_train, num_classes)\n",
+ "y_test = keras.utils.to_categorical(y_test, num_classes)\n",
+ "print('Shape of transformed y train:', y_train.shape)\n",
+ "print('Shape of transformed y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "xJH87ISq1B9h",
+ "outputId": "c3cec4ef-3b57-4d93-9412-58c1231708b5"
+ },
+ "execution_count": 39,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Shape of transformed X train: (50000, 32, 32, 3, 1, 1, 1, 1)\n",
+ "Shape of transformed X test: (10000, 32, 32, 3, 1, 1, 1, 1)\n",
+ "Shape of transformed y train: (50000, 10, 10, 10, 10)\n",
+ "Shape of transformed y test: (10000, 10, 10, 10, 10)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 5) Реализовали модель сверточной нейронной сети и обучили ее на обучающих данных с выделением части обучающих данных в качестве валидационных. Вывели информацию об архитектуре нейронной сети."
+ ],
+ "metadata": {
+ "id": "7x99O8ig1CLh"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создаем модель\n",
+ "model = Sequential()\n",
+ "model.add(layers.Conv2D(32, kernel_size=(3, 3), activation=\"relu\", input_shape=input_shape))\n",
+ "model.add(layers.MaxPooling2D(pool_size=(2, 2)))\n",
+ "model.add(layers.Conv2D(64, kernel_size=(3, 3), activation=\"relu\"))\n",
+ "model.add(layers.MaxPooling2D(pool_size=(2, 2)))\n",
+ "model.add(layers.Dropout(0.5))\n",
+ "model.add(layers.Flatten())\n",
+ "model.add(layers.Dense(num_classes, activation=\"softmax\"))\n",
+ "\n",
+ "model.summary()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 416
+ },
+ "id": "Un561zSH1Cmv",
+ "outputId": "131f4e97-7b44-45ea-f266-36366c063fcb"
+ },
+ "execution_count": 6,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stderr",
+ "text": [
+ "/usr/local/lib/python3.12/dist-packages/keras/src/layers/convolutional/base_conv.py:113: UserWarning: Do not pass an `input_shape`/`input_dim` argument to a layer. When using Sequential models, prefer using an `Input(shape)` object as the first layer in the model instead.\n",
+ " super().__init__(activity_regularizer=activity_regularizer, **kwargs)\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1mModel: \"sequential\"\u001b[0m\n"
+ ],
+ "text/html": [
+ "
Model: \"sequential\"\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ conv2d (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m26\u001b[0m, \u001b[38;5;34m26\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m320\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m13\u001b[0m, \u001b[38;5;34m13\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_1 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m11\u001b[0m, \u001b[38;5;34m11\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m18,496\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_1 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m5\u001b[0m, \u001b[38;5;34m5\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m5\u001b[0m, \u001b[38;5;34m5\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ flatten (\u001b[38;5;33mFlatten\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m1600\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m) │ \u001b[38;5;34m16,010\u001b[0m │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n"
+ ],
+ "text/html": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃ Layer (type) ┃ Output Shape ┃ Param # ┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ conv2d (Conv2D) │ (None, 26, 26, 32) │ 320 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d (MaxPooling2D) │ (None, 13, 13, 32) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_1 (Conv2D) │ (None, 11, 11, 64) │ 18,496 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_1 (MaxPooling2D) │ (None, 5, 5, 64) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout (Dropout) │ (None, 5, 5, 64) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ flatten (Flatten) │ (None, 1600) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense (Dense) │ (None, 10) │ 16,010 │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m34,826\u001b[0m (136.04 KB)\n"
+ ],
+ "text/html": [
+ " Total params: 34,826 (136.04 KB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m34,826\u001b[0m (136.04 KB)\n"
+ ],
+ "text/html": [
+ " Trainable params: 34,826 (136.04 KB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"
+ ],
+ "text/html": [
+ " Non-trainable params: 0 (0.00 B)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# компилируем и обучаем модель\n",
+ "batch_size = 512\n",
+ "epochs = 15\n",
+ "model.compile(loss=\"categorical_crossentropy\", optimizer=\"adam\", metrics=[\"accuracy\"])\n",
+ "model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, validation_split=0.1)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "q_h8PxkN9m0v",
+ "outputId": "a855528a-f08e-47b9-c1c9-5db7fcae47af"
+ },
+ "execution_count": 8,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Epoch 1/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 36ms/step - accuracy: 0.9800 - loss: 0.0627 - val_accuracy: 0.9838 - val_loss: 0.0546\n",
+ "Epoch 2/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 11ms/step - accuracy: 0.9814 - loss: 0.0590 - val_accuracy: 0.9840 - val_loss: 0.0505\n",
+ "Epoch 3/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 11ms/step - accuracy: 0.9839 - loss: 0.0532 - val_accuracy: 0.9845 - val_loss: 0.0486\n",
+ "Epoch 4/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 9ms/step - accuracy: 0.9839 - loss: 0.0511 - val_accuracy: 0.9845 - val_loss: 0.0466\n",
+ "Epoch 5/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 10ms/step - accuracy: 0.9870 - loss: 0.0437 - val_accuracy: 0.9857 - val_loss: 0.0464\n",
+ "Epoch 6/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 10ms/step - accuracy: 0.9866 - loss: 0.0440 - val_accuracy: 0.9865 - val_loss: 0.0443\n",
+ "Epoch 7/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 9ms/step - accuracy: 0.9872 - loss: 0.0434 - val_accuracy: 0.9855 - val_loss: 0.0455\n",
+ "Epoch 8/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 10ms/step - accuracy: 0.9871 - loss: 0.0395 - val_accuracy: 0.9865 - val_loss: 0.0451\n",
+ "Epoch 9/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 10ms/step - accuracy: 0.9878 - loss: 0.0373 - val_accuracy: 0.9882 - val_loss: 0.0422\n",
+ "Epoch 10/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 10ms/step - accuracy: 0.9897 - loss: 0.0331 - val_accuracy: 0.9872 - val_loss: 0.0435\n",
+ "Epoch 11/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 10ms/step - accuracy: 0.9894 - loss: 0.0339 - val_accuracy: 0.9880 - val_loss: 0.0424\n",
+ "Epoch 12/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 10ms/step - accuracy: 0.9898 - loss: 0.0334 - val_accuracy: 0.9875 - val_loss: 0.0419\n",
+ "Epoch 13/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 11ms/step - accuracy: 0.9900 - loss: 0.0330 - val_accuracy: 0.9873 - val_loss: 0.0415\n",
+ "Epoch 14/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 11ms/step - accuracy: 0.9905 - loss: 0.0315 - val_accuracy: 0.9885 - val_loss: 0.0396\n",
+ "Epoch 15/15\n",
+ "\u001b[1m106/106\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 11ms/step - accuracy: 0.9892 - loss: 0.0328 - val_accuracy: 0.9877 - val_loss: 0.0408\n"
+ ]
+ },
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 8
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 6) Оценили качество обучения на тестовых данных. Вывели значение функции ошибки и значение метрики качества классификации на тестовых данных."
+ ],
+ "metadata": {
+ "id": "HL2_LVga1C3l"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Оценка качества работы модели на тестовых данных\n",
+ "scores = model.evaluate(X_test, y_test)\n",
+ "print('Loss on test data:', scores[0])\n",
+ "print('Accuracy on test data:', scores[1])"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "81Cgq8dn9uL6",
+ "outputId": "7cfa29b8-51ed-4d74-c7ba-4e67d519790b"
+ },
+ "execution_count": 9,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m2s\u001b[0m 4ms/step - accuracy: 0.9909 - loss: 0.0257\n",
+ "Loss on test data: 0.02905484288930893\n",
+ "Accuracy on test data: 0.9904999732971191\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 7) Подали на вход обученной модели два тестовых изображения. Вывели изображения, истинные метки и результаты распознавания."
+ ],
+ "metadata": {
+ "id": "KzrVY1SR1DZh"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# вывод двух тестовых изображений и результатов распознавания\n",
+ "\n",
+ "for n in [3,26]:\n",
+ " result = model.predict(X_test[n:n+1])\n",
+ " print('NN output:', result)\n",
+ "\n",
+ " plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray'))\n",
+ " plt.show()\n",
+ " print('Real mark: ', np.argmax(y_test[n]))\n",
+ " print('NN answer: ', np.argmax(result))"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 1000
+ },
+ "id": "dbfkWjDI1Dp7",
+ "outputId": "13925d9d-998b-415a-ff89-eed93e54c22c"
+ },
+ "execution_count": 15,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 28ms/step\n",
+ "NN output: [[6.8512822e-09 1.5158575e-15 1.0000000e+00 9.0422042e-10 5.9816353e-12\n",
+ " 5.8040170e-12 1.7400075e-13 1.9021928e-11 4.2980776e-08 6.8364819e-12]]\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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\n"
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Real mark: 2\n",
+ "NN answer: 2\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 27ms/step\n",
+ "NN output: [[7.5003503e-11 1.8689699e-14 1.8644093e-10 2.7299168e-06 3.8650401e-06\n",
+ " 7.5222495e-09 4.5316078e-13 3.9882584e-06 6.8186014e-06 9.9998260e-01]]\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAG2xJREFUeJzt3X9sVfX9x/HXLdALaHtZKe3tlYIFBRZB3BC6RkQdDaXbjPz4Q8UlwAhELGbQOU2Nij+WVFniDAuDP7bATEQdCT8i2VikSJmzhYCwhmyrtHYCoS2ThHtLgULo5/tHs/v1ShHP5d6+ey/PR/JJuOec9z1vPh768vSefupzzjkBANDHMqwbAADcnAggAIAJAggAYIIAAgCYIIAAACYIIACACQIIAGCCAAIAmBho3cDXdXd369SpU8rKypLP57NuBwDgkXNOHR0dCoVCysi49n1OvwugU6dOqbCw0LoNAMANOnHihEaOHHnN/f3uW3BZWVnWLQAAEuB6X8+TFkDr1q3T7bffrsGDB6u4uFgHDhz4VnV82w0A0sP1vp4nJYDef/99VVZWavXq1fr00081efJklZWV6fTp08k4HQAgFbkkmDZtmquoqIi+vnLliguFQq66uvq6teFw2EliMBgMRoqPcDj8jV/vE34HdOnSJR06dEilpaXRbRkZGSotLVVdXd1Vx3d1dSkSicQMAED6S3gAffnll7py5Yry8/Njtufn56utre2q46urqxUIBKKDJ+AA4OZg/hRcVVWVwuFwdJw4ccK6JQBAH0j4zwHl5uZqwIABam9vj9ne3t6uYDB41fF+v19+vz/RbQAA+rmE3wFlZmZqypQpqqmpiW7r7u5WTU2NSkpKEn06AECKSspKCJWVlVq4cKHuvfdeTZs2TW+99ZY6Ozu1ePHiZJwOAJCCkhJAjz76qP773//qpZdeUltbm+655x7t2rXrqgcTAAA3L59zzlk38VWRSESBQMC6DQDADQqHw8rOzr7mfvOn4AAANycCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYSHgAvfzyy/L5fDFjwoQJiT4NACDFDUzGm951113avXv3/59kYFJOAwBIYUlJhoEDByoYDCbjrQEAaSIpnwEdO3ZMoVBIY8aM0RNPPKHjx49f89iuri5FIpGYAQBIfwkPoOLiYm3atEm7du3S+vXr1dLSovvvv18dHR29Hl9dXa1AIBAdhYWFiW4JANAP+ZxzLpknOHv2rEaPHq0333xTS5YsuWp/V1eXurq6oq8jkQghBABpIBwOKzs7+5r7k/50wLBhwzRu3Dg1NTX1ut/v98vv9ye7DQBAP5P0nwM6d+6cmpubVVBQkOxTAQBSSMID6JlnnlFtba3+85//6JNPPtHcuXM1YMAAPf7444k+FQAghSX8W3AnT57U448/rjNnzmjEiBGaPn266uvrNWLEiESfCgCQwpL+EIJXkUhEgUDAug3gW8vPz/dcs3jxYs81c+fO9VyTl5fnuUaK7+80ePBgzzWvv/6655rXXnvNc82FCxc81+DGXe8hBNaCAwCYIIAAACYIIACACQIIAGCCAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYILFSNGnBg0a5Llm+vTpnmumTp3quUZSXL82JJ4FP+P5/Vj97J9qQvh8Ps817733nueaBQsWeK7BjWMxUgBAv0QAAQBMEEAAABMEEADABAEEADBBAAEATBBAAAATBBAAwAQBBAAwQQABAEwQQAAAEwQQAMAEAQQAMMFq2OhTv//97z3XLF68OAmd2IpnFeh+9k81IeKZh66uLs81DzzwgOcaSTpw4EBcdejBatgAgH6JAAIAmCCAAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIAAgCYIIAAACYIIACAiYHWDcBeXl5eXHWvvvqq55qf/exnnmv6chHOS5cuea75/PPPPdc8//zznmvGjRvnueazzz7zXCNJ+fn5nmsaGho813zyySeeazIzMz3XBINBzzVIPu6AAAAmCCAAgAkCCABgggACAJgggAAAJgggAIAJAggAYIIA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99xzamxs1NatWw27jdXvAwj/r7y8PPrnu+++W8XFxRo9erT+9Kc/acmSJYadoT947LHHon+eNGmS7r77bo0dO1Z79+7VzJkzDTtLjoqKCh09evSm+Bz0m1xrHpYtWxb986RJk1RQUKCZM2equblZY8eO7es2e9XvvwWXm5urAQMGXPUUS3t7u4LBoFFX/cOwYcM0btw4NTU1Wbdi5n/XANfH1caMGaPc3Ny0vD5WrFihnTt36qOPPor59S3BYFCXLl3S2bNnY45P1+vhWvPQm+LiYknqV9dDvw+gzMxMTZkyRTU1NdFt3d3dqqmpUUlJiWFn9s6dO6fm5mYVFBRYt2KmqKhIwWAw5vqIRCLav3//TX99nDx5UmfOnEmr68M5pxUrVmjbtm3as2ePioqKYvZPmTJFgwYNirkeGhsbdfz48bS6Hq43D705cuSIJPWv68H6KYhv47333nN+v99t2rTJ/fOf/3TLli1zw4YNc21tbdat9alf/OIXbu/eva6lpcX9/e9/d6WlpS43N9edPn3aurWk6ujocIcPH3aHDx92ktybb77pDh8+7L744gvnnHOvv/66GzZsmNuxY4draGhwjzzyiCsqKnIXLlww7jyxvmkeOjo63DPPPOPq6upcS0uL2717t/v+97/v7rzzTnfx4kXr1hNm+fLlLhAIuL1797rW1tboOH/+fPSYJ5980o0aNcrt2bPHHTx40JWUlLiSkhLDrhPvevPQ1NTkXn31VXfw4EHX0tLiduzY4caMGeNmzJhh3HmslAgg55z77W9/60aNGuUyMzPdtGnTXH19vXVLfe7RRx91BQUFLjMz0912223u0UcfdU1NTdZtJd1HH33kJF01Fi5c6JzreRT7xRdfdPn5+c7v97uZM2e6xsZG26aT4Jvm4fz5827WrFluxIgRbtCgQW706NFu6dKlafc/ab39/SW5jRs3Ro+5cOGCe+qpp9x3vvMdN3ToUDd37lzX2tpq13QSXG8ejh8/7mbMmOFycnKc3+93d9xxh/vlL3/pwuGwbeNfw69jAACY6PefAQEA0hMBBAAwQQABAEwQQAAAEwQQAMAEAQQAMEEAAQBMEEAAABMEEADABAEEADBBAAEATBBAAAAT/wc5Hussv8h9zQAAAABJRU5ErkJggg==\n"
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Real mark: 9\n",
+ "NN answer: 9\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 8) Вывели отчет о качестве классификации тестовой выборки и матрицу ошибок для тестовой выборки."
+ ],
+ "metadata": {
+ "id": "YgiVGr5_1D3u"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# истинные метки классов\n",
+ "true_labels = np.argmax(y_test, axis=1)\n",
+ "# предсказанные метки классов\n",
+ "predicted_labels = np.argmax(model.predict(X_test), axis=1)\n",
+ "\n",
+ "# отчет о качестве классификации\n",
+ "print(classification_report(true_labels, predicted_labels))\n",
+ "# вычисление матрицы ошибок\n",
+ "conf_matrix = confusion_matrix(true_labels, predicted_labels)\n",
+ "# отрисовка матрицы ошибок в виде \"тепловой карты\"\n",
+ "display = ConfusionMatrixDisplay(confusion_matrix=conf_matrix)\n",
+ "display.plot()\n",
+ "plt.show()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 778
+ },
+ "id": "7MqcG_wl1EHI",
+ "outputId": "00a4491e-92e1-445d-c3eb-f450f5ccc537"
+ },
+ "execution_count": 16,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m2s\u001b[0m 5ms/step\n",
+ " precision recall f1-score support\n",
+ "\n",
+ " 0 0.99 0.99 0.99 997\n",
+ " 1 1.00 1.00 1.00 1164\n",
+ " 2 0.99 0.98 0.99 1030\n",
+ " 3 1.00 0.99 0.99 1031\n",
+ " 4 0.99 1.00 0.99 967\n",
+ " 5 0.98 1.00 0.99 860\n",
+ " 6 0.99 1.00 1.00 977\n",
+ " 7 0.99 0.99 0.99 1072\n",
+ " 8 0.99 0.98 0.99 939\n",
+ " 9 0.99 0.98 0.99 963\n",
+ "\n",
+ " accuracy 0.99 10000\n",
+ " macro avg 0.99 0.99 0.99 10000\n",
+ "weighted avg 0.99 0.99 0.99 10000\n",
+ "\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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9uxxaT9CCPeRZEDUS8OHD0en06HT6RyjGz733HNYrVa3H/uLL77g+eefr9a61fkBF0IId1N/NA4h3OTGG29k4cKFlJeX89VXX5GYmIi3tzeTJk06b92Kigp8fHxq5bihoaG1sh8hhKgrUjMg6i2j0UhkZCRNmjThkUceoW/fvqxcuRI4W7U/c+ZMoqOjadWqFQBpaWncddddBAcHExoayuDBg/n9998d+7TZbIwbN47g4GDCwsJ46qmn+OvwHn9tJigvL2fixInExMRgNBpp3rw5H3zwAb///jt9+vQBICQkBJ1Ox/Dhw4HKEfSSkpKIi4vD19eXTp068Z///MfpOF999RUtW7bE19eXPn36OMVZXRMnTqRly5b4+fkRHx/PlClTsFgs5633zjvvEBMTg5+fH3fddRf5+flOy99//33atGmDyWSidevWvP322zWORQihHkkGhMfw9fWloqLC8XnDhg2kpKSwfv16Vq9ejcVioX///gQGBrJp0yZ++uknAgICuPHGGx3bvfrqqyxatIgPP/yQH3/8kZycHL788su/Pe7999/PZ599xty5czl48CDvvPMOAQEBxMTE8PnnnwOQkpLCqVOneOONNwBISkri448/ZsGCBRw4cICxY8dy7733snHjRqAyabn99tsZNGgQe/bs4aGHHuLpp5+ucZkEBgayaNEikpOTeeONN3jvvfd4/fXXndb57bffWL58OatWrWLNmjXs3r2bRx991LF88eLFTJ06lZkzZ3Lw4EFmzZrFlClT+Oijj2ocjxBCJSqPmiiEWwwbNkwZPHiwoiiKYrfblfXr1ytGo1EZP368Y3lERITTcLCffPKJ0qpVK8VutzvmlZeXK76+vsratWsVRVGUqKgoZfbs2Y7lFotFady4seNYiuI8bHFKSooCKOvXr79gnGeGq87NzXXMKysrU/z8/JTNmzc7rfvggw8q99xzj6IoijJp0iSlbdu2TssnTpx43r7+ClC+/PLLKpe//PLLSteuXR2fp02bphgMBuXEiROOeV9//bWi1+uVU6dOKYqiKM2aNVOWLFnitJ/nn39eSUhIUBRFUY4ePaoAyu7du6s8rhBCXdJnQNRbq1evJiAgAIvFgt1u51//+hfTp093LO/QoYNTP4G9e/fy22+/ERgY6LSfsrIyjhw5Qn5+PqdOnaJ79+6OZV5eXnTr1u28poIz9uzZg8FgoHfv3tWO+7fffqOkpIQbbrjBaX5FRQVdunQB4ODBg05xACQkJFT7GGcsW7aMuXPncuTIEYqKirBarQQFBTmtExsbS6NGjZyOY7fbSUlJITAwkCNHjvDggw8ycuRIxzpWqxWz2VzjeIQQ6pBkQNRbffr0Yf78+fj4+BAdHY2Xl/Pl7u/v7/S5qKiIrl27snjx4vP21bBhw0uKwdfXt8bbFBUVAfC///3P6UcYKvtB1JYtW7YwdOhQZsyYQf/+/TGbzSxdupRXX321xrG+99575yUnBoOh1mIVQriXJAOi3vL396d58+bVXv+KK65g2bJlhIeHn3d3fEZUVBTbtm3jmmuuASrvgHfu3MkVV1xxwfU7dOiA3W5n48aN9O3b97zlZ2ombDabY17btm0xGo0cP368yhqFNm3aODpDnrF169aL/5Hn2Lx5M02aNGHy5MmOeceOHTtvvePHj5Oenk50dLTjOHq9nlatWhEREUF0dDSpqakMHTq0RscXQmiHdCAU4k9Dhw6lQYMGDB48mE2bNnH06FG+//57Hn/8cU6cOAHAE088wYsvvsiKFSv49ddfefTRR//2HQFNmzZl2LBhjBgxghUrVjj2uXz5cgCaNGmCTqdj9erVZGVlUVRURGBgIOPHj2fs2LF89NFHHDlyhF27dvHmm286OuU9/PDDHD58mAkTJpCSksKSJUtYtGhRjf7eFi1acPz4cZYuXcqRI0eYO3fuBTtDmkwmhg0bxt69e9m0aROPP/44d911F5GRkQDMmDGDpKQk5s6dy6FDh9i3bx8LFy7ktddeq1E8Qgj1SDIgxJ/8/Pz44YcfiI2N5fbbb6dNmzY8+OCDlJWVOWoKnnzySe677z6GDRtGQkICgYGB3HbbbX+73/nz5/PPf/6TRx99lNatWzNy5EiKi4sBaNSoETNmzODpp58mIiKC0aNHA/D8888zZcoUkpKSaNOmDTfeeCP/+9//iIuLAyrb8T///HNWrFhBp06dWLBgAbNmzarR33vLLbcwduxYRo8eTefOndm8eTNTpkw5b73mzZtz++23c9NNN9GvXz86duzo9OjgQw89xPvvv8/ChQvp0KEDvXv3ZtGiRY5YhRDap1Oq6vkkhBBCCI8gNQNCCCGEh5NkQAghhPBwkgwIIYQQHk6SASGEEMLDSTIghBBCeDhJBoQQQggPJ8mAEEII4eEkGRBCCCE8nCQDQgghhIeTZEAIIYTwcJIMCCGEEB7u/wGysGwVMTliqAAAAABJRU5ErkJggg==\n"
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 9) Загрузили, предобработали и подали на вход обученной нейронной сети собственное изображение, созданное при выполнении лабораторной работы №1. Вывели изображение и результат распознавания."
+ ],
+ "metadata": {
+ "id": "amaspXGW1EVy"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# загрузка собственного изображения\n",
+ "from PIL import Image\n",
+ "\n",
+ "for name_image in ['цифра 3.png', 'цифра 6.png']:\n",
+ " file_data = Image.open(name_image)\n",
+ " file_data = file_data.convert('L') # перевод в градации серого\n",
+ " test_img = np.array(file_data)\n",
+ "\n",
+ " # вывод собственного изображения\n",
+ " plt.imshow(test_img, cmap=plt.get_cmap('gray'))\n",
+ " plt.show()\n",
+ "\n",
+ " # предобработка\n",
+ " test_img = test_img / 255\n",
+ " test_img = np.reshape(test_img, (1,28,28,1))\n",
+ "\n",
+ " # распознавание\n",
+ " result = model.predict(test_img)\n",
+ " print('I think it\\'s', np.argmax(result))"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 916
+ },
+ "id": "ktWEeqWd1EyF",
+ "outputId": "533c0d70-1a20-42b9-f8eb-2aeaff515439"
+ },
+ "execution_count": 18,
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAHYxJREFUeJzt3X9s1PUdx/HXFeiB0l4ppb+kQMEfKL+WIXQV7VQ6SrcQQbLgjz9gMRJZMSLzx7pMkW1JN+Y2w8I0SxaYiYg/IjDNxoIgJWpBQRkzakObImBpEbLelQKltJ/9QbztpIif4453W56P5JvQu++r9+bbb/rqt3f9XMA55wQAwCWWYj0AAODyRAEBAExQQAAAExQQAMAEBQQAMEEBAQBMUEAAABMUEADARH/rAb6qq6tLjY2NSktLUyAQsB4HAODJOafW1lbl5+crJeX81zk9roAaGxtVUFBgPQYA4CIdPHhQw4cPP+/9Pe5XcGlpadYjAAAS4ELfz5NWQKtWrdKoUaM0cOBAFRUV6b333vtGOX7tBgB9w4W+nyelgF566SUtXbpUy5Yt0wcffKBJkyaprKxMR44cScbDAQB6I5cEU6dOdRUVFdGPOzs7XX5+vquqqrpgNhwOO0lsbGxsbL18C4fDX/v9PuFXQKdPn9bu3btVWloavS0lJUWlpaWqqak5Z//29nZFIpGYDQDQ9yW8gI4eParOzk7l5OTE3J6Tk6OmpqZz9q+qqlIoFIpuvAIOAC4P5q+Cq6ysVDgcjm4HDx60HgkAcAkk/O+AsrKy1K9fPzU3N8fc3tzcrNzc3HP2DwaDCgaDiR4DANDDJfwKKDU1VZMnT9aWLVuit3V1dWnLli0qLi5O9MMBAHqppKyEsHTpUs2fP1833nijpk6dqmeeeUZtbW360Y9+lIyHAwD0QkkpoHnz5umLL77Qk08+qaamJn3rW9/Spk2bznlhAgDg8hVwzjnrIf5fJBJRKBSyHgMAcJHC4bDS09PPe7/5q+AAAJcnCggAYIICAgCYoIAAACYoIACACQoIAGCCAgIAmKCAAAAmKCAAgAkKCABgggICAJiggAAAJpKyGjbQW/Xr1887E88bKsaT6ezs9M6cOnXKOyNJHR0d3pketq4xegGugAAAJiggAIAJCggAYIICAgCYoIAAACYoIACACQoIAGCCAgIAmKCAAAAmKCAAgAkKCABgggICAJiggAAAJlgNGz3egAEDvDN5eXlxPdbkyZO9MzfccIN3Jicnxztz+vRp70x9fb13RpLeffdd78ynn37qnWlvb/fOoO/gCggAYIICAgCYoIAAACYoIACACQoIAGCCAgIAmKCAAAAmKCAAgAkKCABgggICAJiggAAAJiggAIAJFiNF3AKBgHdm2LBh3pmSkhLvTFlZmXdGkoqKirwzubm53pl+/fp5Z+I53m1tbd4ZSdq5c6d35umnn/bOvPfee96Zrq4u7wx6Jq6AAAAmKCAAgAkKCABgggICAJiggAAAJiggAIAJCggAYIICAgCYoIAAACYoIACACQoIAGCCAgIAmGAxUsRtyJAh3pl58+Z5ZxYuXOidueqqq7wzktTc3Oyd2bx5s3fms88+886kpaV5Z+JZXFWSZsyY4Z35/PPPvTP79+/3zjQ1NXln0DNxBQQAMEEBAQBMJLyAnnrqKQUCgZht7NixiX4YAEAvl5TngMaNG6c333zzfw/Sn6eaAACxktIM/fv3j+tdIgEAl4+kPAe0b98+5efna/To0br33nt14MCB8+7b3t6uSCQSswEA+r6EF1BRUZHWrFmjTZs26dlnn1VDQ4NuueUWtba2drt/VVWVQqFQdCsoKEj0SACAHijhBVReXq4f/vCHmjhxosrKyvT3v/9dLS0tevnll7vdv7KyUuFwOLodPHgw0SMBAHqgpL86ICMjQ9dee63q6uq6vT8YDCoYDCZ7DABAD5P0vwM6fvy46uvrlZeXl+yHAgD0IgkvoEceeUTV1dXav3+/3n33Xc2ZM0f9+vXT3XffneiHAgD0Ygn/FdyhQ4d0991369ixYxo2bJhuvvlm7dixQ8OGDUv0QwEAerGEF9C6desS/SmRZIFAIK7cqFGjvDM/+MEPvDNZWVnembfeess7I0nr16/3zuzYscM709jY6J254oorvDPz58/3zkjSQw895J25/fbbvTObNm3yzvzzn//0znR1dXlnkHysBQcAMEEBAQBMUEAAABMUEADABAUEADBBAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMBE0t+QDn1XOBz2zrz//vvemb1793pnXn31Ve+MJO3Zs8c7c/r06bgey9fJkye9M5s3b47rsb73ve95Z6ZNm+adGTdunHcmnv8Ti5H2TFwBAQBMUEAA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kvSHP/xBKSkpmjt3rtrb21VWVqY//elPCRkWANB3BJxzznqI/xeJRBQKhazHuKzEszCmJM2aNcs78+UPMT6++OIL78zf/vY374wU3yKm7e3t3pkhQ4Z4Z2644QbvzE033eSdkaQJEyZ4Z06dOuWdefXVV70zK1eu9M7s37/fO4OLFw6HlZ6eft77WQsOAGCCAgIAmKCAAAAmKCAAgAkKCABgggICAJiggAAAJiggAIAJCggAYIICAgCYoIAAACYoIACACQoIAGCC1bARtzFjxnhnHn30Ue/MnDlzvDOnT5/2zkjxrbx95swZ78yVV17pnRk6dKh3pqOjwzsjSZ9++ql3ZvPmzd6ZDRs2eGfq6+u9M52dnd4ZXDxWwwYA9EgUEADABAUEADBBAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMAEBQQAMEEBAQBM9LceAL1XQ0ODd2blypXemSNHjnhnioqKvDOSNGzYMO9MMBj0zhw/ftw78+9//9s78/7773tnJOmdd97xznzyySfemUgk4p3pYesn4yJwBQQAMEEBAQBMUEAAABMUEADABAUEADBBAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMBEwPWwlf0ikYhCoZD1GEiSfv36eWeGDBninRk1apR3RpJyc3O9M/37+6/pG89ipPv37/fONDY2emck6eTJk96ZHvatBD1AOBxWenr6ee/nCggAYIICAgCYoIAAACYoIACACQoIAGCCAgIAmKCAAAAmKCAAgAkKCABgggICAJiggAAAJiggAIAJ/1UUgYvQ2dnpnTl69Kh35tixY94ZSQoEAnHlfMWzcCeLfaKv4QoIAGCCAgIAmPAqoKqqKk2ZMkVpaWnKzs7W7NmzVVtbG7PPrbfeqkAgELM98MADCR0aAND7eRVQdXW1KioqtGPHDm3evFkdHR2aMWOG2traYva7//77dfjw4ei2YsWKhA4NAOj9vF6EsGnTppiP16xZo+zsbO3evVslJSXR26+44oq43lkSAHD5uKjngMLhsCQpMzMz5vYXXnhBWVlZGj9+vCorK3XixInzfo729nZFIpGYDQDQ98X9Muyuri4tWbJE06ZN0/jx46O333PPPRo5cqTy8/O1d+9ePf7446qtrdVrr73W7eepqqrS8uXL4x0DANBLBVycf1ywaNEi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CxcudBkZGa6pqcl6tEvqJz/5idu2bZtraGhw77zzjistLXVZWVnuyJEj1qMlVWtrq/vwww/dhx9+6CS53//+9+7DDz90n332mXPOuV//+tcuIyPDbdy40e3du9fdcccdrrCw0J08edJ48sT6uuPQ2trqHnnkEVdTU+MaGhrcm2++6b797W+7a665xp06dcp69IRZtGiRC4VCbtu2be7w4cPR7cSJE9F9HnjgATdixAi3detWt2vXLldcXOyKi4sNp068Cx2Huro694tf/MLt2rXLNTQ0uI0bN7rRo0e7kpIS48lj9YoCcs65P/7xj27EiBEuNTXVTZ061e3YscN6pEtu3rx5Li8vz6WmprqrrrrKzZs3z9XV1VmPlXRvvfWWk3TONn/+fOfc2ZdiP/HEEy4nJ8cFg0E3ffp0V1tbazt0EnzdcThx4oSbMWOGGzZsmBswYIAbOXKku//++/vcD2nd/f8ludWrV0f3OXnypPvxj3/shgwZ4q644go3Z84cd/jwYbuhk+BCx+HAgQOupKTEZWZmumAw6K6++mr36KOPunA4bDv4V/B2DAAAEz3+OSAAQN9EAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMAEBQQAMEEBAQBMUEAAABMUEADAxH8BHkyBMgyZJIkAAAAASUVORK5CYII=\n"
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 46ms/step\n",
+ "I think it's 3\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "iVBORw0KGgoAAAANSUhEUgAAAaAAAAGdCAYAAABU0qcqAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAHQBJREFUeJzt3X1slfX9//HXKbanqO2pFeiNFCyooHLjROkY2sHoaLvFiBLj3RJcjA5WjMrUpXOKumXdcNmMjql/LDCj4E0iENnG1GJLNgpKBYmbdLR2UkdbhNhzoECp7ef3Bz/O1yMU/BxO+27L85F8EnrO9ep5c3nZF1fP1asB55wTAAB9LMl6AADAmYkCAgCYoIAAACYoIACACQoIAGCCAgIAmKCAAAAmKCAAgImzrAf4qu7ubu3evVtpaWkKBALW4wAAPDnntH//fuXm5iopqefznH5XQLt371ZeXp71GACA09TU1KSRI0f2+Hy/+xZcWlqa9QgAgAQ41dfzXiugpUuX6sILL1RqaqoKCgr07rvvfq0c33YDgMHhVF/Pe6WAXnnlFS1atEiLFy/W+++/r8mTJ6u4uFh79uzpjZcDAAxErhdMnTrVlZWVRT/u6upyubm5rqKi4pTZcDjsJLFYLBZrgK9wOHzSr/cJPwM6cuSIamtrVVRUFH0sKSlJRUVFqqmpOW77jo4ORSKRmAUAGPwSXkB79+5VV1eXsrKyYh7PyspSS0vLcdtXVFQoFApFF1fAAcCZwfwquPLycoXD4ehqamqyHgkA0AcS/nNAw4YN05AhQ9Ta2hrzeGtrq7Kzs4/bPhgMKhgMJnoMAEA/l/AzoJSUFE2ZMkWVlZXRx7q7u1VZWalp06Yl+uUAAANUr9wJYdGiRZo3b56uuuoqTZ06VU899ZTa29v1wx/+sDdeDgAwAPVKAd1888367LPP9Oijj6qlpUVXXHGF1q1bd9yFCQCAM1fAOeesh/iySCSiUChkPQYA4DSFw2Glp6f3+Lz5VXAAgDMTBQQAMEEBAQBMUEAAABMUEADABAUEADBBAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAE71yN2wAiZeU5P/vxaFDh8b1WsnJyd6Z9vZ270xnZ6d3BoMHZ0AAABMUEADABAUEADBBAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMAEBQQAMEEBAQBMUEAAABPcDRswEM/dpidOnOidue2227wzkpSVleWdqaqq8s787W9/8860tLR4Z7q7u70z6H2cAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMAEBQQAMEEBAQBMUEAAABMUEADABAUEADDBzUiB03T22Wd7Z6655hrvzL333uudmTFjhndGklJSUrwz3/rWt7wzaWlp3pkXX3zRO7N3717vDHofZ0AAABMUEADABAUEADBBAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMAEBQQAMEEBAQBMcDNS4EvOO+8878x3v/td78yPfvQj78zMmTO9M5988ol3RpI+//xz70xqaqp35rLLLvPOhEIh7ww3I+2fOAMCAJiggAAAJhJeQI899pgCgUDMGj9+fKJfBgAwwPXKe0CXX3653n777f97kbN4qwkAEKtXmuGss85SdnZ2b3xqAMAg0SvvAe3cuVO5ubkaM2aMbr/9du3atavHbTs6OhSJRGIWAGDwS3gBFRQUaPny5Vq3bp2effZZNTY26tprr9X+/ftPuH1FRYVCoVB05eXlJXokAEA/lPACKi0t1U033aRJkyapuLhYf/3rX9XW1qZXX331hNuXl5crHA5HV1NTU6JHAgD0Q71+dUBGRoYuueQS1dfXn/D5YDCoYDDY22MAAPqZXv85oAMHDqihoUE5OTm9/VIAgAEk4QX0wAMPqLq6Wv/973+1ceNG3XDDDRoyZIhuvfXWRL8UAGAAS/i34D799FPdeuut2rdvn4YPH65rrrlGmzZt0vDhwxP9UgCAASzgnHPWQ3xZJBKJ62aDwJdlZGTElZs7d653Zv78+d6ZeH5O7l//+pd3ZuXKld4ZST2+Z3symZmZ3pnm5mbvzEcffeSdaW9v987g9IXDYaWnp/f4PPeCAwCYoIAAACYoIACACQoIAGCCAgIAmKCAAAAmKCAAgAkKCABgggICAJiggAAAJiggAIAJCggAYKLXfyEdcLpSUlK8M4WFhXG91oIFC7wz48aN886sXbvWO/P88897Z9577z3vjBTfzTuTkvrm37Pd3d198jrofZwBAQBMUEAAABMUEADABAUEADBBAQEATFBAAAATFBAAwAQFBAAwQQEBAExQQAAAExQQAMAEBQQAMEEBAQBMcDds9HsXXnihd+amm26K67Xy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\n"
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 44ms/step\n",
+ "I think it's 6\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 10) Загрузили с диска модель, сохраненную при выполнении лабораторной работы №1. Вывели информацию об архитектуре модели. Повторили для этой модели п. 6."
+ ],
+ "metadata": {
+ "id": "mgrihPd61E8w"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "model_lr1 = keras.models.load_model(\"model_1h100_2h50.keras\")\n",
+ "\n",
+ "model_lr1.summary()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 245
+ },
+ "id": "DblXqn3l1FL2",
+ "outputId": "f7cee769-5093-4f81-95e8-5845cd5255ee"
+ },
+ "execution_count": 22,
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1mModel: \"sequential_10\"\u001b[0m\n"
+ ],
+ "text/html": [
+ "Model: \"sequential_10\"\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ dense_22 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m100\u001b[0m) │ \u001b[38;5;34m78,500\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_23 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m50\u001b[0m) │ \u001b[38;5;34m5,050\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_24 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m) │ \u001b[38;5;34m510\u001b[0m │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n"
+ ],
+ "text/html": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃ Layer (type) ┃ Output Shape ┃ Param # ┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ dense_22 (Dense) │ (None, 100) │ 78,500 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_23 (Dense) │ (None, 50) │ 5,050 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_24 (Dense) │ (None, 10) │ 510 │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m84,062\u001b[0m (328.37 KB)\n"
+ ],
+ "text/html": [
+ " Total params: 84,062 (328.37 KB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m84,060\u001b[0m (328.36 KB)\n"
+ ],
+ "text/html": [
+ " Trainable params: 84,060 (328.36 KB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m0\u001b[0m (0.00 B)\n"
+ ],
+ "text/html": [
+ " Non-trainable params: 0 (0.00 B)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Optimizer params: \u001b[0m\u001b[38;5;34m2\u001b[0m (12.00 B)\n"
+ ],
+ "text/html": [
+ " Optimizer params: 2 (12.00 B)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# развернем каждое изображение 28*28 в вектор 784\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y,\n",
+ " test_size = 10000,\n",
+ " train_size = 60000,\n",
+ " random_state = 23)\n",
+ "num_pixels = X_train.shape[1] * X_train.shape[2]\n",
+ "X_train = X_train.reshape(X_train.shape[0], num_pixels) / 255\n",
+ "X_test = X_test.reshape(X_test.shape[0], num_pixels) / 255\n",
+ "print('Shape of transformed X train:', X_train.shape)\n",
+ "print('Shape of transformed X train:', X_test.shape)\n",
+ "\n",
+ "# переведем метки в one-hot\n",
+ "y_train = keras.utils.to_categorical(y_train, num_classes)\n",
+ "y_test = keras.utils.to_categorical(y_test, num_classes)\n",
+ "print('Shape of transformed y train:', y_train.shape)\n",
+ "print('Shape of transformed y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "0ki8fhJrEyEt",
+ "outputId": "3d6e1e24-242c-4683-9491-980302ee1557"
+ },
+ "execution_count": 24,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Shape of transformed X train: (60000, 784)\n",
+ "Shape of transformed X train: (10000, 784)\n",
+ "Shape of transformed y train: (60000, 10)\n",
+ "Shape of transformed y test: (10000, 10)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Оценка качества работы модели на тестовых данных\n",
+ "scores = model_lr1.evaluate(X_test, y_test)\n",
+ "print('Loss on test data:', scores[0])\n",
+ "print('Accuracy on test data:', scores[1])"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "0Yj0fzLNE12k",
+ "outputId": "889a4241-e4c2-4af6-9472-eca25d3a2f96"
+ },
+ "execution_count": 25,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m3s\u001b[0m 8ms/step - accuracy: 0.9453 - loss: 0.1872\n",
+ "Loss on test data: 0.19880765676498413\n",
+ "Accuracy on test data: 0.9416000247001648\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 11) Сравнили обученную модель сверточной сети и наилучшую модель полносвязной сети из лабораторной работы №1 по следующим показателям:\n",
+ "### - количество настраиваемых параметров в сети\n",
+ "### - количество эпох обучения\n",
+ "### - качество классификации тестовой выборки.\n",
+ "### Сделали выводы по результатам применения сверточной нейронной сети для распознавания изображений. "
+ ],
+ "metadata": {
+ "id": "MsM3ew3d1FYq"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "Таблица1:"
+ ],
+ "metadata": {
+ "id": "xxFO4CXbIG88"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "| Модель | Количество настраиваемых параметров | Количество эпох обучения | Качество классификации тестовой выборки |\n",
+ "|----------|-------------------------------------|---------------------------|-----------------------------------------|\n",
+ "| Сверточная | 34 826 | 15 | accuracy:0.990 ; loss:0.029 |\n",
+ "| Полносвязная | 84 062 | 50 | accuracy:0.942 ; loss:0.198 |\n"
+ ],
+ "metadata": {
+ "id": "xvoivjuNFlEf"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "По результатам применения сверточной НС, а также по результатам таблицы 1 делаем выводы, что сверточная НС намного лучше справляется с задачами распознования изображений, чем полносвязная - имеет меньше настраиваемых параметров, быстрее обучается, имеет лучшие показатели качества."
+ ],
+ "metadata": {
+ "id": "YctF8h_sIB-P"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "## Задание 2"
+ ],
+ "metadata": {
+ "id": "wCLHZPGB1F1y"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### В новом блокноте выполнили п. 2–8 задания 1, изменив набор данных MNIST на CIFAR-10, содержащий размеченные цветные изображения объектов, разделенные на 10 классов. \n",
+ "### При этом:\n",
+ "### - в п. 3 разбиение данных на обучающие и тестовые произвели в соотношении 50 000:10 000\n",
+ "### - после разбиения данных (между п. 3 и 4) вывели 25 изображений из обучающей выборки с подписями классов\n",
+ "### - в п. 7 одно из тестовых изображений должно распознаваться корректно, а другое – ошибочно. "
+ ],
+ "metadata": {
+ "id": "DUOYls124TT8"
+ }
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 1) Загрузили набор данных CIFAR-10, содержащий цветные изображения размеченные на 10 классов: самолет, автомобиль, птица, кошка, олень, собака, лягушка, лошадь, корабль, грузовик."
+ ],
+ "metadata": {
+ "id": "XDStuSpEJa8o"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# загрузка датасета\n",
+ "from keras.datasets import cifar10\n",
+ "\n",
+ "(X_train, y_train), (X_test, y_test) = cifar10.load_data()"
+ ],
+ "metadata": {
+ "id": "y0qK7eKL4Tjy"
+ },
+ "execution_count": 61,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 2) Разбили набор данных на обучающие и тестовые данные в соотношении 50 000:10 000 элементов. Параметр random_state выбрали равным (4k – 1)=23, где k=6 –номер бригады. Вывели размерности полученных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "wTHiBy-ZJ5oh"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создание своего разбиения датасета\n",
+ "\n",
+ "# объединяем в один набор\n",
+ "X = np.concatenate((X_train, X_test))\n",
+ "y = np.concatenate((y_train, y_test))\n",
+ "\n",
+ "# разбиваем по вариантам\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X, y,\n",
+ " test_size = 10000,\n",
+ " train_size = 50000,\n",
+ " random_state = 23)\n",
+ "# вывод размерностей\n",
+ "print('Shape of X train:', X_train.shape)\n",
+ "print('Shape of y train:', y_train.shape)\n",
+ "print('Shape of X test:', X_test.shape)\n",
+ "print('Shape of y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "DlnFbQogKD2v",
+ "outputId": "8a448d6d-21c3-4742-88a6-c3ca7b7f6acf"
+ },
+ "execution_count": 62,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Shape of X train: (50000, 32, 32, 3)\n",
+ "Shape of y train: (50000, 1)\n",
+ "Shape of X test: (10000, 32, 32, 3)\n",
+ "Shape of y test: (10000, 1)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### Вывели 25 изображений из обучающей выборки с подписью классов."
+ ],
+ "metadata": {
+ "id": "pj3bMaz1KZ3a"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer',\n",
+ " 'dog', 'frog', 'horse', 'ship', 'truck']\n",
+ "\n",
+ "plt.figure(figsize=(10,10))\n",
+ "for i in range(25):\n",
+ " plt.subplot(5,5,i+1)\n",
+ " plt.xticks([])\n",
+ " plt.yticks([])\n",
+ " plt.grid(False)\n",
+ " plt.imshow(X_train[i])\n",
+ " plt.xlabel(class_names[y_train[i][0]])\n",
+ "plt.show()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 826
+ },
+ "id": "TW8D67KEKhVE",
+ "outputId": "c61586aa-a116-4331-874a-8e93b811aa6e"
+ },
+ "execution_count": 63,
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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GDjYgLGNr3MOmMMBycbGxgFxQOgAAsnKOa425zC7E3umezpW+P6Y2Zm577c0QeqdMej56dJ17TNdVe9bVW+o6r7v99m3b5+IiNx9991iWZbk8/mp7Z966imxLEsOHjwod999t/zO7/yOjI6OimVZYlnW1Hg3V3s69UvID37wA9m8ebOk02l505veJKVSSW699Vbp7e2V1tZWef/73y++P50ReT7tVETke9/7nmzcuFGSyaS89rWvlSNHjkx9xtIpJggC+fznPy9r166VVCol55xzjs7zv+Do+Hd6eVm/aPT19clb3/pW+d3f/V3ZsWOH3H333fLrv/7rUynVf/7zn8u+ffvk5z//udx6663yrW99S771rW/NesxbbrlFfuM3fkOefvppedvb3ia/+Zu/KTt27FiEs1F+Ebj11lslk8nIww8/LF/4whfkz/7sz+QnP/mJBEEgN9xwgwwPD8s999wjP/nJT2T//v3ylre8Bfbfu3ev/Nu//Zv8+7//uzz11FNztuFvf/vb8olPfEI+97nPyY4dO+S//bf/JrfccovceuutS3H6yn9RPvKRj8g999wjt99+u/z4xz+Wu+++W5544ompz9/5znfKY489Jt///vflwQcflDAM5frrr5/64uX++++X97znPfKBD3xAnnrqKbn22mvlc5/73FKdjtIgxsfH5UMf+pA89thjctddd4lt23LjjTdKEARz7nvZZZfJX//1X0tzc7P09fVJX1+ffPjDHxaRuduTiEipVJKvfOUr8p3vfEfuvPNOufvuu+XGG2+UO+64Q+644w75+7//e/na174GD/nzPe7nPvc5ue222+T++++XfD4vv/mbvznva/L5z39ebrvtNvnqV78q27dvl5tvvll++7d/W+655555H0P5r4WOf6eZ8GXM448/HopIePDgQeOzd7zjHeGaNWtCz/Om/vbmN785fMtb3jIVr1mzJvyrv/qrqVhEwve85z1wnIsvvjj8gz/4g8ZXXvmF46qrrgqvuOIK+NuFF14YfvSjHw1//OMfh47jhIcPH576bPv27aGIhI888kgYhmH4yU9+MozFYmF/f//UNrO14TAMw/Xr14f/+I//CH/7zGc+E1566aWNOi3lF5xCoRDG4/HwX/7lX6b+NjQ0FKZSqfADH/hAuHv37lBEwvvvv3/q88HBwTCVSk3t85a3vCV8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liW9vb3yqle9St773vfKBz/4Qeno6JDXvva1IiJyzz33yEUXXSSJREJ6enrkYx/7mHjedPb3QqEgb3vb2ySTyUhPT4/81V/9lf56PMnL9kXjIx/5iNxzzz1y++23y49//GO5++675Yknnpj6/L3vfa88+OCD8p3vfEeeeeYZefOb3yzXXXfd1OC2b98+ue666+Q3fuM35JlnnpF//ud/lvvuu0/e+973Qjlf+tKX5JxzzpEnn3xSbrnllkU9R+WlMT4+Lh/60Ifksccek7vuukts25Ybb7xRgiCYc9/LLrtM/vqv/1qam5ulr69P+vr65MMf/rCITAxujz32mHz/+9+XBx98UMIwlOuvv17q9frU/qVSSb7yla/Id77zHbnzzjvl7rvvlhtvvFHuuOMOueOOO+Tv//7v5Wtf+xo85M/3uJ/73Ofktttuk/vvv1/y+bz85m/+5ryvyec//3m57bbb5Ktf/aps375dbr75Zvnt3/5tueeee+Z9DGXp+Ju/+Ru59NJL5V3vetdUuzyV8fdjH/uY/Pmf/7ns2LFDzj777Hkd70/+5E/kz//8z+WWW26R559/Xv7xH/9Ruru7je2q1aq8+c1vlqeeekruvfdeWb16dUPPS/nFZq75eK6x7f7775f3vOc98oEPfECeeuopufbaa1/whVdRTvE3f/M38md/9meycuVK6evrk0cffVRERG699VaJx+Ny//33y1e/+lU5duyYXH/99XLhhRfK008/Lf/zf/5P+cY3viGf/exnp471oQ99SO6//375/ve/Lz/5yU/k3nvvhTb8siZ8GVIoFMJ4PB7+y7/8y9TfhoaGwlQqFX7gAx8IDx06FDqOEx47dgz2u/rqq8M/+ZM/CcMwDG+66abw93//9+Hze++9N7RtOyyXy2EYhuGaNWvCN77xjaf5bJTFYmBgIBSR8Nlnnw1//vOfhyISjoyMTH3+5JNPhiISHjhwIAzDMPzmN78ZtrS0wDF2794dikh4//33T/1tcHAwTKVSU+3xm9/8Zigi4d69e6e2efe73x2m0+mwUChM/e21r31t+O53v3vBx33ooYemttmxY0coIuHDDz8chmEYfvKTnwzPOeecqc/f8Y53hDfccEMYhmFYqVTCdDodPvDAA3BON910U/jWt751PpdQ+S/AVVddFX7gAx+Yik+15e9973uw3cx7f4oPfOAD4VVXXRWGYRiOjY2FiUQi/PrXvx5ZzoEDB0IRCe+9997w6quvDq+44oown8838lSUXwLmmo/nM7a95S1vCV/3utfBcd/2trcZ46+iMH/1V38VrlmzZiq+6qqrwvPOOw+2+f/+v/8v3Lx5cxgEwdTf/vt//+9hNpsNfd8Px8bGwlgsFn73u9+d+jyfz4fpdBrG2pcrL0sR7r59+6RWq8nFF1889be2tjbZvHmziIg8++yz4vu+bNq0CfarVqvS3t4uIiJPP/20PPPMM/Ltb3976vMwDCUIAjlw4IBs2bJFREQuuOCC0306ymliz5498olPfEIefvhhGRwcnPol4/Dhw5JOp1/UMXfs2CGu60Lba29vl82bN8uOHTum/pZOp2X9+vVTcXd3t/T29oJ/oru7W/r7+xd0XNd15cILL5yKzzjjDMnlcrJjxw656KKLZq373r17pVQqybXXXgt/r9Vqct555833Eij/RVnoWLVjxw6pVqty9dVXz7rdW9/6Vlm5cqX87Gc/k1Qq9VKqqPwSMtd8PJ+xbdeuXXLjjTfCcS+66CL5wQ9+sAhnoPyycf7550O8Y8cOufTSS8WyrKm/XX755VIsFuXo0aMyMjIi9Xod5tCWlpapNvxy52X5ojEXxWJRHMeRxx9/XBzHgc9OPegVi0V597vfLe9///uN/WfKAjKZzOmtrHLaeMMb3iBr1qyRr3/967J8+XIJgkC2bdsmtVptqh2EYTi1/UyJ0kslFotBbFlW5N/mI+NqFMViUUREfvjDH8qKFSvgs0QisWj1UE4PPFbZtg3tWwTb+HxfGq6//nr5h3/4B3nwwQflNa95zUuvqKIoymlEn9say8vSo7F+/XqJxWLy8MMPT/1tZGREdu/eLSIi5513nvi+L/39/bJhwwb4f9myZSIi8opXvEKef/554/MNGzboCgW/BAwNDcmuXbvk4x//uFx99dWyZcsWGRkZmfq8s7NTRET6+vqm/sbrb8fjcTBri4hs2bJFPM+DtneqrK1bt77o+s73uJ7nyWOPPTYV79q1S/L5/NQvcLOxdetWSSQScvjwYaPNn9L5K//1iWqXUXR2dkL7FsE2vnHjRkmlUnMuh/wHf/AH8ud//ufya7/2a+rlUQzmmo/nM7Zt3rx5Sl9/Co4V5cWyZcuWKW/QKe6//35pamqSlStXyrp16yQWi0GbGx0dnWrDL3deli8a2WxWbrrpJvnIRz4iP/vZz+S5556Td77znWLbE5dj06ZN8ra3vU3e/va3y7//+7/LgQMH5JFHHpHPf/7z8sMf/lBERD760Y/KAw88IO9973vlqaeekj179sjtt99umMGVX0xaW1ulvb1d/u7v/k727t0rP/vZz+RDH/rQ1OenHq4/9alPyZ49e+SHP/yhsVJKb2+vFItFueuuu2RwcFBKpZJs3LhRbrjhBnnXu94l9913nzz99NPy27/927JixQq54YYbXnR953vcWCwm73vf++Thhx+Wxx9/XN75znfKJZdcMqdsSkSkqalJPvzhD8vNN98st956q+zbt0+eeOIJ+du//Vu59dZbX3TdlcWlt7dXHn74YTl48CBIApnXvOY18thjj8ltt90me/bskU9+8pPy3HPPTX2eTCblox/9qPzxH/+x3HbbbbJv3z556KGH5Bvf+IZxrPe9733y2c9+Vl7/+tfLfffdd9rOTfnFY675eD5j2/ve9z6544475Mtf/rLs2bNHvva1r8mPfvQjkLooyovlD//wD+XIkSPyvve9T3bu3Cm33367fPKTn5QPfehDYtu2NDU1yTve8Q75yEc+Ij//+c9l+/btctNNN4lt29oG5WX6oiEi8sUvflGuvPJKecMb3iDXXHONXHHFFaDL++Y3vylvf/vb5Y/+6I9k8+bN8sY3vlEeffTRKVnU2WefLffcc4/s3r1brrzySjnvvPPkE5/4hCxfvnypTklpILZty3e+8x15/PHHZdu2bXLzzTfLF7/4xanPY7GY/NM//ZPs3LlTzj77bPmLv/gLWIFCZGLlqfe85z3ylre8RTo7O+ULX/iCiEy0rfPPP19e//rXy6WXXiphGModd9xhSKMWynyOm06n5aMf/aj81m/9llx++eWSzWbln//5n+ddxmc+8xm55ZZb5POf/7xs2bJFrrvuOvnhD38oa9eufUl1VxaPD3/4w+I4jmzdulU6OztfcKnZ1772tXLLLbfIH//xH8uFF14ohUJB3v72t8M2t9xyi/zRH/2RfOITn5AtW7bIW97ylinfEPPBD35QPv3pT8v1118vDzzwQMPPS/nFZT7z8Wxj2+WXXy5f/epX5ctf/rKcc845cuedd8rNN98syWRyqU5J+SVixYoVcscdd8gjjzwi55xzjrznPe+Rm266ST7+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TNavXy/RaFQeffTRxq+y/+N//A9ZvHixJBIJ+dCHPiTj4+O/135n7vtf//Vf5R3veIckEgk555xz5PHHH4ftzNaXldc/1157rTz88MPyzW9+E66TQX0xSKJ30003ydvf/vZG+XjXa8Z1XfnoRz8qZ5xxhgwMDJzCo3ztoQ8aIvJP//RPEgqF5He/+51885vflL/927+Ve+6555jvv+OOO+T973+/vPDCC/LRj35UfvCDH8gdd9whf/3Xfy1PPfWU9Pb2yt///d/P4REobxQ+//nPy1e+8hW5/fbbZevWrfLd735XFixYICIi6XRa7r33Xtm6dat885vflLvvvlu+/vWvi4jI1VdfLTfffLOcddZZMjQ0JENDQ3L11VfP56Eor3E+97nPycMPPyw/+clP5IEHHpCHHnpInnnmmcbr119/vTz++ONy//33y/PPPy8f/OAH5fLLL5dXX31VRER27twpl19+uXzgAx+Q559/Xr7//e/Lo48+Ktdffz3s56tf/aqcc8458uyzz8rtt98+p8eozB2FQkE+85nPyFNPPSUPPvig2LYt73//+8XzvGN+5i//8i/lK1/5imzbtk3Wrl0rIiI7duyQH/zgB/Lv//7v8vOf/1yeffZZ+dSnPvUH7/e2226Tz372s7JlyxZZtWqVfPjDH258c32ifVl5ffPNb35TNmzYIH/2Z3/WuE4eTTwP6ouzcbzr9UwqlYp88IMflC1btsgjjzwiS5Ysaepxvebx3+Rs3LjRX716te95XuNvt956q7969Wrf931/6dKl/te//vXGayLi33TTTbCNDRs2+J/61KfgbxdccIF/zjnnnLJ6K288JiYm/Gg06t99990n9P677rrLX79+faP8pS99SfucckLkcjk/Eon4P/jBDxp/Gx0d9ePxuH/jjTf6e/fu9R3H8Q8cOACfu/TSS/3Pf/7zvu/7/nXXXed//OMfh9cfeeQR37Ztv1Qq+b4/OX9eddVVp/holNciIyMjvoj4L7zwgr97925fRPxnn33W933f//Wvf+2LiP/jH/8YPvOlL33JdxzH379/f+NvP/vZz3zbtv2hoSHf933/Ix/5iP++973vhPbr+35j3/fcc0/jPS+99JIvIv62bdt83z+xvqy8Mdi4caN/4403NsrH6otB/ezGG2/0N27c6Pv+7Nfro/3ukUce8S+99FL/4osv9rPZbDMP5XWD/qIhIhdeeKFYltUob9iwQV599VVxXTfw/eeddx6Ut23bJhdccAH8bcOGDc2vqPKGZtu2bVKpVOTSSy8NfP373/++XHTRRdLT0yOpVEq+8IUvvOl+glWaw86dO6VarcK81d7eLqeffrqIiLzwwgviuq6sWrVKUqlU47+HH364IUt57rnn5N5774XXL7vsMvE8T3bv3t3YLs+XyhuTV199VT784Q/L8uXLJZPJSH9/v4jIceeooL6xZMkSWbhwYaO8YcMG8TxPXnnllT9ovzO/pe7t7RURkeHhYRE58b6svHE52Xlqtuv1UT784Q9LoVCQBx54QFpaWv6QKr5uCXZmKcclmUzOdxWUNyDxePyYrz3++ONyzTXXyJ133imXXXaZtLS0yP3332/o6hWlGeTzeXEcR55++mlxHAdeS6VSjfd84hOfkBtuuMH4/ExpgM6Xbw7e+973ytKlS+Xuu++Wvr4+8TxP1qxZc9wFAJrRN050v+FwuPHvo18sHpVXnWhfVt64cF+0bbvh1T3KzMV/jne9nskVV1wh9913nzz++OPyzne+8w+v6OsQfdAQkc2bN0P5iSeekJUrVxoX2GOxevVq2bx5s2zatAm2oSgnw8qVKyUej8uDDz4oH/vYx+C1xx57TJYuXSq33XZb42979+6F90QikWP+CqcoMznttNMkHA7L5s2bGzdSY2Njsn37dtm4caOsW7dOXNeV4eFhueSSSwK38Za3vEW2bt0qK1asmMuqK69BRkdH5ZVXXpG777670V8effTR32tbAwMDMjg4KH19fSIyeS21bbvxa9up2K/25TcPJ3qd7OrqkhdffBH+tmXLlsYD6/Gu1zP55Cc/KWvWrJErr7xSfvrTn8rGjRv/sAN4HaIPGjI5sX3mM5+RT3ziE/LMM8/It771rZP6pvjGG2+Ua6+9Vs477zy56KKL5Dvf+Y689NJLsnz58lNYa+WNRiwWk1tvvVVuueUWiUQictFFF8nIyIi89NJLsnLlShkYGJD7779fzj//fPnpT38qP/rRj+Dz/f39snv3btmyZYssWrRI0um0RKPReToa5bVMKpWS6667Tj73uc9JR0eHdHd3y2233Sa2PammXbVqlVxzzTWyadMm+drXvibr1q2TkZERefDBB2Xt2rXy7ne/W2699Va58MIL5frrr5ePfexjkkwm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68pHP/pROeOMM2RgYOAUHqXyeqFQKMimTZsklUpJb2+vfO1rX4PXK5WKfPazn5WFCxdKMpmUCy64QB566CF4z6OPPiqXXHKJxONxWbx4sdxwww1SKBQar/f398uXv/xl2bRpk2QyGf1m5k2O53lyyy23SHt7u/T09Mgdd9zReG1gYEDe9773SSqVkkwmIx/60Ifk0KFDjdePfmN8zz33yLJlyyQWi4mIyL/8y7/I2WefLfF4XDo6OuRd73oX9MF77rlHVq9eLbFYTM444wz5+7//+zk7XuX1xfGuqbfeequsWrVKEomELF++XG6//fbGTd69994rd955pzz33HNwbVeUE6Fer8v1118vLS0t0tnZKbfffrscjZhj6ZRlWfIP//APcuWVV0oymWz0z6985SuyYMECSafTct1110m5XJ6PQ3lt4r+JyGaz/oYNG/w/+7M/84eGhvyhoSH/V7/6lS8i/tq1a/0HHnjA37Fjhz86Oup/5CMf8d/3vvfB52+88UZ/48aNjfItt9zit7W1+ffee6+/Y8cO/5FHHvHvvvtu3/d9f/fu3b6I+M8++6xfLpf997///f66dev84eHhOTxi5bXMJz/5SX/JkiX+r371K//555/33/Oe9/jpdNq/8cYbfd/3/Y997GP+2972Nv83v/mNv2PHDv+uu+7yo9Gov337dt/3fX/Hjh1+Mpn0v/71r/vbt2/3f/vb3/rr1q3zr7322sY+li5d6mcyGf+rX/2qv2PHDn/Hjh3zcajKa4CNGzf6mUzGv+OOO/zt27f7//RP/+RbluU/8MADvuu6/rnnnutffPHF/lNPPeU/8cQT/vr162G++9KXvuQnk0n/8ssv95955hn/ueee8wcHB/1QKOT/7d/+rb97927/+eef9//7f//vfi6X833f9++77z6/t7fX/+EPf+jv2rXL/+EPf+i3t7f799577zy1gvJa5njX1C9/+cv+b3/7W3/37t3+v/3bv/kLFizw/9t/+2++7/t+sVj0b775Zv+ss85qXNuLxeJ8HoryOmHjxo1+KpXyb7zxRv/ll1/277vvPj+RSPj/+I//6Pv+5DX061//euP9IuJ3d3f7//N//k9/586d/t69e/3vf//7fjQa9e+55x7/5Zdf9m+77TY/nU7755xzzvwc1GuMN9WDhu9PdqqjN3K+7/u//vWvfRHxf/zjH8P7ZnvQmJiY8KPRaGMSZI4+aDzyyCP+pZde6l988cV+Nptt5qEor2NyuZwfiUT8H/zgB42/jY6O+vF43L/xxhv9vXv3+o7j+AcOHIDPXXrppf7nP/953/d9/7rrrvM//vGPw+uPPPKIb9u2XyqVfN+fnCSvuuqqU3w0yuuBjRs3+hdffDH87fzzz/dvvfVW/4EHHvAdx/EHBgYar7300ku+iPi/+93vfN+ffNAIh8PwZcnTTz/ti4i/Z8+ewH2edtpp/ne/+13425e//GV/w4YNzTos5Q3CbNdU5q677vLXr1/fKH/pS1/SGzvlpNm4caO/evVq3/O8xt9uvfVWf/Xq1b7vBz9o3HTTTbCNDRs2+J/61KfgbxdccIH2xyneVNKp43Heeeed1Pu3bdsmlUpFLr300uO+78Mf/rAUCgV54IEHpKWl5Q+povIGYufOnVKtVuWCCy5o/K29vV1OP/10ERF54YUXxHVdWbVqlaRSqcZ/Dz/8sOzcuVNERJ577jm599574fXLLrtMPM+T3bt3N7Z7sn1beeOydu1aKPf29srw8LBs27ZNFi9eLIsXL268duaZZ0pra6ts27at8belS5dKV1dXo3zOOefIpZdeKmeffbZ88IMflLvvvlvGxsZEZFIauHPnTrnuuuugj/7X//pfG31YUY4y2zX1+9//vlx00UXS09MjqVRKvvCFL6gMWWkKF154oViW1Shv2LBBXn31VXFdN/D9fE3dtm0bXMuPbkOZJDTfFXitkEwmoWzbdkOjd5SZpp94PH5C273iiivkvvvuk8cff1ze+c53/uEVVd4U5PN5cRxHnn76aXEcB15LpVKN93ziE5+QG264wfj8kiVLGv/mvq28eQmHw1C2LEs8zzvhz3NfchxHfvnLX8pjjz0mDzzwgHzrW9+S2267TTZv3twwUN59993GRZj7tKIc75r6+OOPyzXXXCN33nmnXHbZZdLS0iL333+/4WtTlLlAr6knx5vuF41IJHLMp9SZdHV1ydDQEPxtZibGypUrJR6Py4MPPnjc7Xzyk5+Ur3zlK3LllVfKww8//HvVWXnjcdppp0k4HJbNmzc3/jY2Nibbt28XEZF169aJ67oyPDwsK1asgP96enpEROQtb3mLbN261Xh9xYoVEolE5uW4lNcnq1evln379sm+ffsaf9u6datks1k588wzj/tZy7LkoosukjvvvFOeffZZiUQi8qMf/UgWLFggfX19smvXLqN/Llu27FQfkvI643jX1Mcee0yWLl0qt912m5x33nmycuVK2bt3L7znRK/tisLMvA6LiDzxxBOycuXKE/5CZPXq1YHbUCZ50/2i0d/fL5s3b5Y9e/ZIKpU65rd573znO+Wuu+6Sf/7nf5YNGzbIfffdJy+++KKsW7dORERisZjceuutcsstt0gkEpGLLrpIRkZG5KWXXpLrrrsOtvUXf/EX4rquvOc975Gf/exncvHFF5/y41Re26RSKbnuuuvkc5/7nHR0dEh3d7fcdtttYtuTz/6rVq2Sa665RjZt2iRf+9rXZN26dTIyMiIPPvigrF27Vt797nfLrbfeKhdeeKFcf/318rGPfUySyaRs3bpVfvnLX8rf/d3fzfMRKq8n3vWud8nZZ58t11xzjXzjG9+Qer0un/rUp2Tjxo3Hld5t3rxZHnzwQfnjP/5j6e7uls2bN8vIyIisXr1aRETuvPNOueGGG6SlpUUuv/xyqVQq8tRTT8nY2Jh85jOfmavDU14HHO+aunLlShkYGJD7779fzj//fPnpT38qP/rRj+Dz/f39snv3btmyZYssWrRI0um0RKPReToa5fXEwMCAfOYzn5FPfOIT8swzz8i3vvWtk/q17MYbb5Rrr71WzjvvPLnooovkO9/5jrz00kuyfPnyU1jr1w9vul80PvvZz4rjOHLmmWdKV1fXMTWel112mdx+++1yyy23yPnnny+5XE42bdoE77n99tvl5ptvli9+8YuyevVqufrqq2V4eDhwezfddJPceeedcsUVV8hjjz3W9ONSXn/cddddcskll8h73/teede73iUXX3yxrF+/vvH6t7/9bdm0aZPcfPPNcvrpp8tVV10lTz75ZEMWtXbtWnn44Ydl+/btcskll8i6devki1/8ovT19c3XISmvUyzLkp/85CfS1tYmf/RHfyTvete7ZPny5fL973//uJ/LZDLym9/8Rq644gpZtWqVfOELX5Cvfe1r8id/8iciIvKxj31M7rnnHvn2t78tZ599tmzcuFHuvfde/UVDCeRY19Qrr7xSPv3pT8v1118v5557rjz22GNy++23w2c/8IEPyOWXXy7veMc7pKurS773ve/N01Eorzc2bdokpVJJ3vrWt8qf//mfy4033nhSS8FfffXVjfvF9evXy969e+WTn/zkKazx6wvLZyOCoiiKoiiKoijKH8ib7hcNRVEURVEURVFOPfqgoSiKoiiKoihK09EHDUVRFEVRFEVRmo4+aCiKoiiKoiiK0nT0QUNRFEVRFEVRlKajDxqKoiiKoiiKojQdfdBQFEVRFEVRFKXp6IOGoiiKoiiKoihNRx80FEVRFEVRFEVpOvqgoSiKoiiKoihK09EHDUVRFEVRFEVRms7/B3X8dIxDWWloAAAAAElFTkSuQmCC\n"
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 3) Провели предобработку данных: привели обучающие и тестовые данные к формату, пригодному для обучения сверточной нейронной сети. Входные данные принимают значения от 0 до 1, метки цифр закодированы по принципу «one-hot encoding». Вывели размерности предобработанных обучающих и тестовых массивов данных."
+ ],
+ "metadata": {
+ "id": "d3TPr2w1KQTK"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Зададим параметры данных и модели\n",
+ "num_classes = 10\n",
+ "input_shape = (32, 32, 3)\n",
+ "\n",
+ "# Приведение входных данных к диапазону [0, 1]\n",
+ "X_train = X_train / 255\n",
+ "X_test = X_test / 255\n",
+ "\n",
+ "print('Shape of transformed X train:', X_train.shape)\n",
+ "print('Shape of transformed X test:', X_test.shape)\n",
+ "\n",
+ "# переведем метки в one-hot\n",
+ "y_train = keras.utils.to_categorical(y_train, num_classes)\n",
+ "y_test = keras.utils.to_categorical(y_test, num_classes)\n",
+ "print('Shape of transformed y train:', y_train.shape)\n",
+ "print('Shape of transformed y test:', y_test.shape)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "iFDpxEauLZ8j",
+ "outputId": "4768e1f5-2802-4584-8744-96004f6ba588"
+ },
+ "execution_count": 64,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Shape of transformed X train: (50000, 32, 32, 3)\n",
+ "Shape of transformed X test: (10000, 32, 32, 3)\n",
+ "Shape of transformed y train: (50000, 10)\n",
+ "Shape of transformed y test: (10000, 10)\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 4) Реализовали модель сверточной нейронной сети и обучили ее на обучающих данных с выделением части обучающих данных в качестве валидационных. Вывели информацию об архитектуре нейронной сети."
+ ],
+ "metadata": {
+ "id": "ydNITXptLeGT"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# создаем модель\n",
+ "model = Sequential()\n",
+ "\n",
+ "# Блок 1\n",
+ "model.add(layers.Conv2D(32, (3, 3), padding=\"same\",\n",
+ " activation=\"relu\", input_shape=input_shape))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.Conv2D(32, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.MaxPooling2D((2, 2)))\n",
+ "model.add(layers.Dropout(0.25))\n",
+ "\n",
+ "# Блок 2\n",
+ "model.add(layers.Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.Conv2D(64, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.MaxPooling2D((2, 2)))\n",
+ "model.add(layers.Dropout(0.25))\n",
+ "\n",
+ "# Блок 3\n",
+ "model.add(layers.Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.Conv2D(128, (3, 3), padding=\"same\", activation=\"relu\"))\n",
+ "model.add(layers.BatchNormalization())\n",
+ "model.add(layers.MaxPooling2D((2, 2)))\n",
+ "model.add(layers.Dropout(0.4))\n",
+ "\n",
+ "model.add(layers.Flatten())\n",
+ "model.add(layers.Dense(128, activation='relu'))\n",
+ "model.add(layers.Dropout(0.5))\n",
+ "model.add(layers.Dense(num_classes, activation=\"softmax\"))\n",
+ "\n",
+ "\n",
+ "model.summary()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 946
+ },
+ "id": "YhAD5CllLlv7",
+ "outputId": "5b156a43-7ba0-477a-9040-c966d9eca4c2"
+ },
+ "execution_count": 77,
+ "outputs": [
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1mModel: \"sequential_9\"\u001b[0m\n"
+ ],
+ "text/html": [
+ "Model: \"sequential_9\"\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃\u001b[1m \u001b[0m\u001b[1mLayer (type) \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1mOutput Shape \u001b[0m\u001b[1m \u001b[0m┃\u001b[1m \u001b[0m\u001b[1m Param #\u001b[0m\u001b[1m \u001b[0m┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ conv2d_41 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m896\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_6 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m128\u001b[0m │\n",
+ "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_42 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m9,248\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_7 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m128\u001b[0m │\n",
+ "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_26 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_24 (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m32\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_43 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m18,496\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_8 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m256\u001b[0m │\n",
+ "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_44 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m36,928\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_9 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m16\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m256\u001b[0m │\n",
+ "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_27 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_25 (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m64\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_45 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m73,856\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_10 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m512\u001b[0m │\n",
+ "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_46 (\u001b[38;5;33mConv2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m147,584\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_11 │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m8\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m512\u001b[0m │\n",
+ "│ (\u001b[38;5;33mBatchNormalization\u001b[0m) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_28 (\u001b[38;5;33mMaxPooling2D\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m4\u001b[0m, \u001b[38;5;34m4\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_26 (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m4\u001b[0m, \u001b[38;5;34m4\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ flatten_9 (\u001b[38;5;33mFlatten\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m2048\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_17 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m262,272\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_27 (\u001b[38;5;33mDropout\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m128\u001b[0m) │ \u001b[38;5;34m0\u001b[0m │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_18 (\u001b[38;5;33mDense\u001b[0m) │ (\u001b[38;5;45mNone\u001b[0m, \u001b[38;5;34m10\u001b[0m) │ \u001b[38;5;34m1,290\u001b[0m │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n"
+ ],
+ "text/html": [
+ "┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓\n",
+ "┃ Layer (type) ┃ Output Shape ┃ Param # ┃\n",
+ "┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩\n",
+ "│ conv2d_41 (Conv2D) │ (None, 32, 32, 32) │ 896 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_6 │ (None, 32, 32, 32) │ 128 │\n",
+ "│ (BatchNormalization) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_42 (Conv2D) │ (None, 32, 32, 32) │ 9,248 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_7 │ (None, 32, 32, 32) │ 128 │\n",
+ "│ (BatchNormalization) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_26 (MaxPooling2D) │ (None, 16, 16, 32) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_24 (Dropout) │ (None, 16, 16, 32) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_43 (Conv2D) │ (None, 16, 16, 64) │ 18,496 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_8 │ (None, 16, 16, 64) │ 256 │\n",
+ "│ (BatchNormalization) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_44 (Conv2D) │ (None, 16, 16, 64) │ 36,928 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_9 │ (None, 16, 16, 64) │ 256 │\n",
+ "│ (BatchNormalization) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_27 (MaxPooling2D) │ (None, 8, 8, 64) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_25 (Dropout) │ (None, 8, 8, 64) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_45 (Conv2D) │ (None, 8, 8, 128) │ 73,856 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_10 │ (None, 8, 8, 128) │ 512 │\n",
+ "│ (BatchNormalization) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ conv2d_46 (Conv2D) │ (None, 8, 8, 128) │ 147,584 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ batch_normalization_11 │ (None, 8, 8, 128) │ 512 │\n",
+ "│ (BatchNormalization) │ │ │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ max_pooling2d_28 (MaxPooling2D) │ (None, 4, 4, 128) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_26 (Dropout) │ (None, 4, 4, 128) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ flatten_9 (Flatten) │ (None, 2048) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_17 (Dense) │ (None, 128) │ 262,272 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dropout_27 (Dropout) │ (None, 128) │ 0 │\n",
+ "├─────────────────────────────────┼────────────────────────┼───────────────┤\n",
+ "│ dense_18 (Dense) │ (None, 10) │ 1,290 │\n",
+ "└─────────────────────────────────┴────────────────────────┴───────────────┘\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Total params: \u001b[0m\u001b[38;5;34m552,362\u001b[0m (2.11 MB)\n"
+ ],
+ "text/html": [
+ " Total params: 552,362 (2.11 MB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Trainable params: \u001b[0m\u001b[38;5;34m551,466\u001b[0m (2.10 MB)\n"
+ ],
+ "text/html": [
+ " Trainable params: 551,466 (2.10 MB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ "\u001b[1m Non-trainable params: \u001b[0m\u001b[38;5;34m896\u001b[0m (3.50 KB)\n"
+ ],
+ "text/html": [
+ " Non-trainable params: 896 (3.50 KB)\n",
+ "
\n"
+ ]
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# компилируем и обучаем модель\n",
+ "batch_size = 64\n",
+ "epochs = 50\n",
+ "model.compile(loss=\"categorical_crossentropy\", optimizer=\"adam\", metrics=[\"accuracy\"])\n",
+ "model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, validation_split=0.1)"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "3otvqMjjOdq5",
+ "outputId": "d4f520c7-ad85-4030-fda8-0c3b40e38474"
+ },
+ "execution_count": 78,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Epoch 1/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m27s\u001b[0m 22ms/step - accuracy: 0.2561 - loss: 2.1138 - val_accuracy: 0.3748 - val_loss: 1.7757\n",
+ "Epoch 2/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.4652 - loss: 1.4737 - val_accuracy: 0.5676 - val_loss: 1.2540\n",
+ "Epoch 3/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.5844 - loss: 1.1821 - val_accuracy: 0.6148 - val_loss: 1.1905\n",
+ "Epoch 4/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.6486 - loss: 1.0157 - val_accuracy: 0.6302 - val_loss: 1.0861\n",
+ "Epoch 5/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.6782 - loss: 0.9326 - val_accuracy: 0.7200 - val_loss: 0.8344\n",
+ "Epoch 6/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.7147 - loss: 0.8370 - val_accuracy: 0.7302 - val_loss: 0.7885\n",
+ "Epoch 7/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.7334 - loss: 0.8017 - val_accuracy: 0.7486 - val_loss: 0.7221\n",
+ "Epoch 8/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.7546 - loss: 0.7279 - val_accuracy: 0.6798 - val_loss: 1.0590\n",
+ "Epoch 9/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.7678 - loss: 0.6993 - val_accuracy: 0.7798 - val_loss: 0.6510\n",
+ "Epoch 10/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.7798 - loss: 0.6633 - val_accuracy: 0.7786 - val_loss: 0.6803\n",
+ "Epoch 11/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.7920 - loss: 0.6171 - val_accuracy: 0.8112 - val_loss: 0.5666\n",
+ "Epoch 12/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.8066 - loss: 0.5883 - val_accuracy: 0.7916 - val_loss: 0.6229\n",
+ "Epoch 13/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8152 - loss: 0.5569 - val_accuracy: 0.8032 - val_loss: 0.6079\n",
+ "Epoch 14/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8176 - loss: 0.5424 - val_accuracy: 0.8144 - val_loss: 0.5756\n",
+ "Epoch 15/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8259 - loss: 0.5199 - val_accuracy: 0.8148 - val_loss: 0.5837\n",
+ "Epoch 16/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8344 - loss: 0.4949 - val_accuracy: 0.8312 - val_loss: 0.5084\n",
+ "Epoch 17/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8395 - loss: 0.4730 - val_accuracy: 0.8164 - val_loss: 0.5550\n",
+ "Epoch 18/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8409 - loss: 0.4684 - val_accuracy: 0.8322 - val_loss: 0.5004\n",
+ "Epoch 19/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8487 - loss: 0.4503 - val_accuracy: 0.8304 - val_loss: 0.5245\n",
+ "Epoch 20/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8503 - loss: 0.4443 - val_accuracy: 0.8232 - val_loss: 0.5722\n",
+ "Epoch 21/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8528 - loss: 0.4330 - val_accuracy: 0.8050 - val_loss: 0.6315\n",
+ "Epoch 22/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8594 - loss: 0.4132 - val_accuracy: 0.8416 - val_loss: 0.5008\n",
+ "Epoch 23/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8703 - loss: 0.3894 - val_accuracy: 0.8388 - val_loss: 0.5021\n",
+ "Epoch 24/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8679 - loss: 0.3885 - val_accuracy: 0.8314 - val_loss: 0.5092\n",
+ "Epoch 25/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8706 - loss: 0.3783 - val_accuracy: 0.8468 - val_loss: 0.4800\n",
+ "Epoch 26/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8762 - loss: 0.3613 - val_accuracy: 0.8486 - val_loss: 0.4745\n",
+ "Epoch 27/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8817 - loss: 0.3467 - val_accuracy: 0.8500 - val_loss: 0.4696\n",
+ "Epoch 28/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8782 - loss: 0.3548 - val_accuracy: 0.8456 - val_loss: 0.4820\n",
+ "Epoch 29/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m8s\u001b[0m 11ms/step - accuracy: 0.8816 - loss: 0.3472 - val_accuracy: 0.8528 - val_loss: 0.4728\n",
+ "Epoch 30/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8882 - loss: 0.3312 - val_accuracy: 0.8464 - val_loss: 0.4996\n",
+ "Epoch 31/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8887 - loss: 0.3213 - val_accuracy: 0.8516 - val_loss: 0.4806\n",
+ "Epoch 32/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8909 - loss: 0.3191 - val_accuracy: 0.8484 - val_loss: 0.4971\n",
+ "Epoch 33/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.8934 - loss: 0.3152 - val_accuracy: 0.8400 - val_loss: 0.5208\n",
+ "Epoch 34/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.8958 - loss: 0.3092 - val_accuracy: 0.8480 - val_loss: 0.5120\n",
+ "Epoch 35/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.8972 - loss: 0.3051 - val_accuracy: 0.8590 - val_loss: 0.4839\n",
+ "Epoch 36/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m10s\u001b[0m 9ms/step - accuracy: 0.8967 - loss: 0.3109 - val_accuracy: 0.8480 - val_loss: 0.5045\n",
+ "Epoch 37/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.9008 - loss: 0.2958 - val_accuracy: 0.8440 - val_loss: 0.5190\n",
+ "Epoch 38/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.9013 - loss: 0.2885 - val_accuracy: 0.8588 - val_loss: 0.4711\n",
+ "Epoch 39/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.9043 - loss: 0.2812 - val_accuracy: 0.8484 - val_loss: 0.5248\n",
+ "Epoch 40/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.9088 - loss: 0.2686 - val_accuracy: 0.8580 - val_loss: 0.4680\n",
+ "Epoch 41/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.9083 - loss: 0.2720 - val_accuracy: 0.8448 - val_loss: 0.5072\n",
+ "Epoch 42/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.9085 - loss: 0.2663 - val_accuracy: 0.8558 - val_loss: 0.4776\n",
+ "Epoch 43/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m6s\u001b[0m 9ms/step - accuracy: 0.9103 - loss: 0.2620 - val_accuracy: 0.8618 - val_loss: 0.4663\n",
+ "Epoch 44/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.9111 - loss: 0.2565 - val_accuracy: 0.8626 - val_loss: 0.4854\n",
+ "Epoch 45/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.9125 - loss: 0.2573 - val_accuracy: 0.8650 - val_loss: 0.4487\n",
+ "Epoch 46/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m10s\u001b[0m 10ms/step - accuracy: 0.9145 - loss: 0.2525 - val_accuracy: 0.8532 - val_loss: 0.5370\n",
+ "Epoch 47/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 10ms/step - accuracy: 0.9128 - loss: 0.2532 - val_accuracy: 0.8520 - val_loss: 0.5219\n",
+ "Epoch 48/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.9130 - loss: 0.2532 - val_accuracy: 0.8656 - val_loss: 0.4698\n",
+ "Epoch 49/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m7s\u001b[0m 9ms/step - accuracy: 0.9120 - loss: 0.2552 - val_accuracy: 0.8544 - val_loss: 0.4921\n",
+ "Epoch 50/50\n",
+ "\u001b[1m704/704\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m10s\u001b[0m 9ms/step - accuracy: 0.9181 - loss: 0.2383 - val_accuracy: 0.8582 - val_loss: 0.4826\n"
+ ]
+ },
+ {
+ "output_type": "execute_result",
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "execution_count": 78
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 5) Оценили качество обучения на тестовых данных. Вывели значение функции ошибки и значение метрики качества классификации на тестовых данных."
+ ],
+ "metadata": {
+ "id": "Vv1kUHWTLl9B"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# Оценка качества работы модели на тестовых данных\n",
+ "scores = model.evaluate(X_test, y_test)\n",
+ "print('Loss on test data:', scores[0])\n",
+ "print('Accuracy on test data:', scores[1])"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/"
+ },
+ "id": "SaDxydiyLmRX",
+ "outputId": "0b0a8fa6-afa1-4c56-c529-2057e1a1807b"
+ },
+ "execution_count": 79,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m3s\u001b[0m 5ms/step - accuracy: 0.8507 - loss: 0.5097\n",
+ "Loss on test data: 0.4886781871318817\n",
+ "Accuracy on test data: 0.8521999716758728\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 6) Подали на вход обученной модели два тестовых изображения. Вывели изображения, истинные метки и результаты распознавания."
+ ],
+ "metadata": {
+ "id": "OdgEiyUGLmhP"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# вывод двух тестовых изображений и результатов распознавания\n",
+ "\n",
+ "for n in [3,15]:\n",
+ " result = model.predict(X_test[n:n+1])\n",
+ " print('NN output:', result)\n",
+ "\n",
+ " plt.imshow(X_test[n].reshape(32,32,3), cmap=plt.get_cmap('gray'))\n",
+ " plt.show()\n",
+ " print('Real mark: ', np.argmax(y_test[n]))\n",
+ " print('NN answer: ', np.argmax(result))"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 1000
+ },
+ "id": "t3yGj1MlLm9H",
+ "outputId": "148fbb58-9f43-4540-a76a-4bfa98dbc9db"
+ },
+ "execution_count": 89,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 96ms/step\n",
+ "NN output: [[9.99798894e-01 2.48007268e-08 8.06010303e-06 1.16862842e-09\n",
+ " 4.74675188e-10 1.10334505e-10 8.96490215e-10 5.45068835e-09\n",
+ " 1.92513107e-04 4.99970611e-07]]\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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X62GhgZFUaTHH3982M+dc7rrrrtUX1+vSZMmadmyZXr55ZfDLPYsvNd23nDDDe84titXrgyz2DPU0tKiyy67TBUVFaqpqdE111yjtra2YTUDAwNqbm7WtGnTVF5erjVr1qizszPQis+Mz3ZeeeWV7ziet9xyS6AVn5mNGzdqwYIFQ282bWpq0o9+9KOhn5+rYzkuBtD3v/99rVu3Tnfffbd++ctfauHChVqxYoWOHz8eemkj6uKLL9axY8eGLj/96U9DL+ms9Pb2auHChdqwYcMpf37//ffrW9/6lh566CHt2bNHU6ZM0YoVKzQwMHCOV3p23ms7JWnlypXDju0jjzxyDld49lpbW9Xc3Kzdu3frmWeeUT6f1/Lly9Xb2ztUc+edd+rJJ5/UY489ptbWVh09elTXXnttwFXb+WynJN10003Djuf9998faMVnZubMmbrvvvu0b98+7d27V1dddZVWr16tX//615LO4bF048Dll1/umpubh74uFouuoaHBtbS0BFzVyLr77rvdwoULQy9j1EhyW7duHfq6VCq5uro69/Wvf33oe11dXS6dTrtHHnkkwApHxtu30znn1q5d61avXh1kPaPl+PHjTpJrbW11zr157JLJpHvssceGan7zm984SW7Xrl2hlnnW3r6dzjn38Y9/3P3d3/1duEWNkqlTp7p//dd/PafHcszfAxocHNS+ffu0bNmyoe/FYjEtW7ZMu3btCriykffyyy+roaFBc+fO1Wc/+1kdPnw49JJGTXt7uzo6OoYd10wmo8WLF0+44ypJO3bsUE1NjebNm6dbb71VJ06cCL2ks9Ld3S1Jqq6uliTt27dP+Xx+2PGcP3++Zs2aNa6P59u38y3f+973NH36dF1yySVav369+vr6QixvRBSLRT366KPq7e1VU1PTOT2WYy6M9O1ef/11FYtF1dbWDvt+bW2tfvvb3wZa1chbvHixNm/erHnz5unYsWO655579LGPfUwvvviiKioqQi9vxHV0dEjSKY/rWz+bKFauXKlrr71Wc+bM0aFDh/SP//iPWrVqlXbt2qV4PB56eWalUkl33HGHrrjiCl1yySWS3jyeqVRKVVVVw2rH8/E81XZK0mc+8xnNnj1bDQ0NOnDggL74xS+qra1NP/zhDwOu1u6FF15QU1OTBgYGVF5erq1bt+qiiy7S/v37z9mxHPMD6P1i1apVQ/9esGCBFi9erNmzZ+s//uM/dOONNwZcGc7W9ddfP/TvSy+9VAsWLND555+vHTt2aOnSpQFXdmaam5v14osvjvvnKN/L6bbz5ptvHvr3pZdeqvr6ei1dulSHDh3S+eeff66XecbmzZun/fv3q7u7Wz/4wQ+0du1atba2ntM1jPmH4KZPn654PP6OV2B0dnaqrq4u0KpGX1VVlT74wQ/q4MGDoZcyKt46du+34ypJc+fO1fTp08flsb3tttv01FNP6Sc/+cmwj02pq6vT4OCgurq6htWP1+N5uu08lcWLF0vSuDueqVRKF1xwgRYtWqSWlhYtXLhQ3/zmN8/psRzzAyiVSmnRokXavn370PdKpZK2b9+upqamgCsbXSdPntShQ4dUX18feimjYs6cOaqrqxt2XLPZrPbs2TOhj6skvfrqqzpx4sS4OrbOOd12223aunWrnnvuOc2ZM2fYzxctWqRkMjnseLa1tenw4cPj6ni+13aeyv79+yVpXB3PUymVSsrlcuf2WI7oSxpGyaOPPurS6bTbvHmze+mll9zNN9/sqqqqXEdHR+iljZi///u/dzt27HDt7e3uZz/7mVu2bJmbPn26O378eOilnbGenh73/PPPu+eff95Jcg888IB7/vnn3SuvvOKcc+6+++5zVVVV7oknnnAHDhxwq1evdnPmzHH9/f2BV27zbtvZ09PjPv/5z7tdu3a59vZ29+yzz7oPf/jD7sILL3QDAwOhl+7t1ltvdZlMxu3YscMdO3Zs6NLX1zdUc8stt7hZs2a55557zu3du9c1NTW5pqamgKu2e6/tPHjwoLv33nvd3r17XXt7u3viiSfc3Llz3ZIlSwKv3OZLX/qSa21tde3t7e7AgQPuS1/6kouiyP34xz92zp27YzkuBpBzzn372992s2bNcqlUyl1++eVu9+7doZc0oq677jpXX1/vUqmU+8AHPuCuu+46d/DgwdDLOis/+clPnKR3XNauXeuce/Ol2F/5yldcbW2tS6fTbunSpa6trS3sos/Au21nX1+fW758uZsxY4ZLJpNu9uzZ7qabbhp3fzydavskuU2bNg3V9Pf3u7/92791U6dOdZMnT3af+tSn3LFjx8It+gy813YePnzYLVmyxFVXV7t0Ou0uuOAC9w//8A+uu7s77MKN/uZv/sbNnj3bpVIpN2PGDLd06dKh4ePcuTuWfBwDACCIMf8cEABgYmIAAQCCYAABAIJgAAEAgmAAAQCCYAABAIJgAAEAgmAAAQCCYAABAIJgAAEAgmAAAQCCYAABAIL4/+344lb+94CNAAAAAElFTkSuQmCC\n"
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Real mark: 0\n",
+ "NN answer: 0\n",
+ "\u001b[1m1/1\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m0s\u001b[0m 103ms/step\n",
+ "NN output: [[0.15776254 0.00173936 0.4906533 0.03821344 0.08128565 0.02635591\n",
+ " 0.00488075 0.19360931 0.00255206 0.00294772]]\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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\n"
+ },
+ "metadata": {}
+ },
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "Real mark: 6\n",
+ "NN answer: 2\n"
+ ]
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "### 7) Вывели отчет о качестве классификации тестовой выборки и матрицу ошибок для тестовой выборки."
+ ],
+ "metadata": {
+ "id": "3h6VGDRrLnNC"
+ }
+ },
+ {
+ "cell_type": "code",
+ "source": [
+ "# истинные метки классов\n",
+ "true_labels = np.argmax(y_test, axis=1)\n",
+ "# предсказанные метки классов\n",
+ "predicted_labels = np.argmax(model.predict(X_test), axis=1)\n",
+ "\n",
+ "# отчет о качестве классификации\n",
+ "print(classification_report(true_labels, predicted_labels, target_names=class_names))\n",
+ "# вычисление матрицы ошибок\n",
+ "conf_matrix = confusion_matrix(true_labels, predicted_labels)\n",
+ "# отрисовка матрицы ошибок в виде \"тепловой карты\"\n",
+ "fig, ax = plt.subplots(figsize=(6, 6))\n",
+ "disp = ConfusionMatrixDisplay(confusion_matrix=conf_matrix,display_labels=class_names)\n",
+ "disp.plot(ax=ax, xticks_rotation=45) # поворот подписей по X и приятная палитра\n",
+ "plt.tight_layout() # чтобы всё влезло\n",
+ "plt.show()"
+ ],
+ "metadata": {
+ "colab": {
+ "base_uri": "https://localhost:8080/",
+ "height": 905
+ },
+ "id": "od56oyyzM0nw",
+ "outputId": "e64128dd-7ee0-45d5-8ae9-5bb858e8c807"
+ },
+ "execution_count": 95,
+ "outputs": [
+ {
+ "output_type": "stream",
+ "name": "stdout",
+ "text": [
+ "\u001b[1m313/313\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m1s\u001b[0m 4ms/step\n",
+ " precision recall f1-score support\n",
+ "\n",
+ " airplane 0.86 0.86 0.86 986\n",
+ " automobile 0.97 0.90 0.93 971\n",
+ " bird 0.85 0.76 0.80 1043\n",
+ " cat 0.72 0.74 0.73 1037\n",
+ " deer 0.84 0.84 0.84 969\n",
+ " dog 0.74 0.79 0.77 979\n",
+ " frog 0.88 0.88 0.88 1025\n",
+ " horse 0.86 0.89 0.88 948\n",
+ " ship 0.92 0.93 0.93 1003\n",
+ " truck 0.89 0.93 0.91 1039\n",
+ "\n",
+ " accuracy 0.85 10000\n",
+ " macro avg 0.85 0.85 0.85 10000\n",
+ "weighted avg 0.85 0.85 0.85 10000\n",
+ "\n"
+ ]
+ },
+ {
+ "output_type": "display_data",
+ "data": {
+ "text/plain": [
+ ""
+ ],
+ "image/png": "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\n"
+ },
+ "metadata": {}
+ }
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "source": [
+ "По результатам классификации датасета CIFAR-10 созданной сверточной моделью можно сделать вывод, что она довольно неплохо справилась с задачей. Полученные метрики оценки качества имеют показатели в районе 0.85."
+ ],
+ "metadata": {
+ "id": "RF4xK1cxamBc"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/labworks/LW3/report.md b/labworks/LW3/report.md
new file mode 100644
index 0000000..fdc38d0
--- /dev/null
+++ b/labworks/LW3/report.md
@@ -0,0 +1,554 @@
+# Отчёт по лабораторной работе №2
+
+**Кнзев Станислав, Жихарев Данила — А-02-22**
+
+---
+## Задание 1
+
+### 1) В среде Google Colab создали новый блокнот (notebook). Импортировали необходимые для работы библиотеки и модули.
+
+```python
+# импорт модулей
+import os
+os.chdir('/content/drive/MyDrive/Colab Notebooks/is_lab3')
+
+from tensorflow import keras
+from tensorflow.keras import layers
+from tensorflow.keras.models import Sequential
+import matplotlib.pyplot as plt
+import numpy as np
+from sklearn.metrics import classification_report, confusion_matrix
+from sklearn.metrics import ConfusionMatrixDisplay
+```
+
+### 2) Загрузили набор данных MNIST, содержащий размеченные изображения рукописных цифр.
+
+```python
+# загрузка датасета
+from keras.datasets import mnist
+(X_train, y_train), (X_test, y_test) = mnist.load_data()
+```
+
+### 3) Разбили набор данных на обучающие и тестовые данные в соотношении 60 000:10 000 элементов. Параметр random_state выбрали равным (4k – 1)=23, где k=6 –номер бригады. Вывели размерности полученных обучающих и тестовых массивов данных.
+
+```python
+# создание своего разбиения датасета
+from sklearn.model_selection import train_test_split
+
+# объединяем в один набор
+X = np.concatenate((X_train, X_test))
+y = np.concatenate((y_train, y_test))
+
+# разбиваем по вариантам
+X_train, X_test, y_train, y_test = train_test_split(X, y,
+ test_size = 10000,
+ train_size = 60000,
+ random_state = 23)
+# вывод размерностей
+print('Shape of X train:', X_train.shape)
+print('Shape of y train:', y_train.shape)
+print('Shape of X test:', X_test.shape)
+print('Shape of y test:', y_test.shape)
+```
+```
+Shape of X train: (60000, 28, 28)
+Shape of y train: (60000,)
+Shape of X test: (10000, 28, 28)
+Shape of y test: (10000,)
+```
+
+### 4) Провели предобработку данных: привели обучающие и тестовые данные к формату, пригодному для обучения сверточной нейронной сети. Входные данные принимают значения от 0 до 1, метки цифр закодированы по принципу «one-hot encoding». Вывели размерности предобработанных обучающих и тестовых массивов данных.
+
+```python
+# Зададим параметры данных и модели
+num_classes = 10
+input_shape = (28, 28, 1)
+
+# Приведение входных данных к диапазону [0, 1]
+X_train = X_train / 255
+X_test = X_test / 255
+
+# Расширяем размерность входных данных, чтобы каждое изображение имело
+# размерность (высота, ширина, количество каналов)
+
+X_train = np.expand_dims(X_train, -1)
+X_test = np.expand_dims(X_test, -1)
+print('Shape of transformed X train:', X_train.shape)
+print('Shape of transformed X test:', X_test.shape)
+
+# переведем метки в one-hot
+y_train = keras.utils.to_categorical(y_train, num_classes)
+y_test = keras.utils.to_categorical(y_test, num_classes)
+print('Shape of transformed y train:', y_train.shape)
+print('Shape of transformed y test:', y_test.shape)
+```
+```
+Shape of transformed X train: (60000, 28, 28, 1)
+Shape of transformed X test: (10000, 28, 28, 1)
+Shape of transformed y train: (60000, 10)
+Shape of transformed y test: (10000, 10)
+```
+
+### 5) Реализовали модель сверточной нейронной сети и обучили ее на обучающих данных с выделением части обучающих данных в качестве валидационных. Вывели информацию об архитектуре нейронной сети.
+
+```python
+# создаем модель
+model = Sequential()
+model.add(layers.Conv2D(32, kernel_size=(3, 3), activation="relu", input_shape=input_shape))
+model.add(layers.MaxPooling2D(pool_size=(2, 2)))
+model.add(layers.Conv2D(64, kernel_size=(3, 3), activation="relu"))
+model.add(layers.MaxPooling2D(pool_size=(2, 2)))
+model.add(layers.Dropout(0.5))
+model.add(layers.Flatten())
+model.add(layers.Dense(num_classes, activation="softmax"))
+
+model.summary()
+```
+**Model: "sequential"**
+| Layer (type) | Output Shape | Param # |
+|--------------------------------|---------------------|--------:|
+| conv2d (Conv2D) | (None, 26, 26, 32) | 320 |
+| max_pooling2d (MaxPooling2D) | (None, 13, 13, 32) | 0 |
+| conv2d_1 (Conv2D) | (None, 11, 11, 64) | 18,496 |
+| max_pooling2d_1 (MaxPooling2D) | (None, 5, 5, 64) | 0 |
+| dropout (Dropout) | (None, 5, 5, 64) | 0 |
+| flatten (Flatten) | (None, 1600) | 0 |
+| dense (Dense) | (None, 10) | 16,010 |
+**Total params:** 34,826 (136.04 KB)
+**Trainable params:** 34,826 (136.04 KB)
+**Non-trainable params:** 0 (0.00 B)
+
+```python
+# компилируем и обучаем модель
+batch_size = 512
+epochs = 15
+model.compile(loss="categorical_crossentropy", optimizer="adam", metrics=["accuracy"])
+model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, validation_split=0.1)
+```
+
+### 6) Оценили качество обучения на тестовых данных. Вывели значение функции ошибки и значение метрики качества классификации на тестовых данных.
+
+```python
+# Оценка качества работы модели на тестовых данных
+scores = model.evaluate(X_test, y_test)
+print('Loss on test data:', scores[0])
+print('Accuracy on test data:', scores[1])
+```
+```
+313/313 ━━━━━━━━━━━━━━━━━━━━ 2s 4ms/step - accuracy: 0.9909 - loss: 0.0257
+Loss on test data: 0.02905484288930893
+Accuracy on test data: 0.9904999732971191
+```
+
+### 7) Подали на вход обученной модели два тестовых изображения. Вывели изображения, истинные метки и результаты распознавания.
+
+```python
+# вывод двух тестовых изображений и результатов распознавания
+
+for n in [3,26]:
+ result = model.predict(X_test[n:n+1])
+ print('NN output:', result)
+
+ plt.imshow(X_test[n].reshape(28,28), cmap=plt.get_cmap('gray'))
+ plt.show()
+ print('Real mark: ', np.argmax(y_test[n]))
+ print('NN answer: ', np.argmax(result))
+```
+
+```
+Real mark: 2
+NN answer: 2
+```
+
+```
+Real mark: 9
+NN answer: 9
+```
+
+### 8) Вывели отчет о качестве классификации тестовой выборки и матрицу ошибок для тестовой выборки.
+
+```python
+# истинные метки классов
+true_labels = np.argmax(y_test, axis=1)
+# предсказанные метки классов
+predicted_labels = np.argmax(model.predict(X_test), axis=1)
+
+# отчет о качестве классификации
+print(classification_report(true_labels, predicted_labels))
+# вычисление матрицы ошибок
+conf_matrix = confusion_matrix(true_labels, predicted_labels)
+# отрисовка матрицы ошибок в виде "тепловой карты"
+display = ConfusionMatrixDisplay(confusion_matrix=conf_matrix)
+display.plot()
+plt.show()
+```
+```
+313/313 ━━━━━━━━━━━━━━━━━━━━ 2s 5ms/step
+ precision recall f1-score support
+
+ 0 0.99 0.99 0.99 997
+ 1 1.00 1.00 1.00 1164
+ 2 0.99 0.98 0.99 1030
+ 3 1.00 0.99 0.99 1031
+ 4 0.99 1.00 0.99 967
+ 5 0.98 1.00 0.99 860
+ 6 0.99 1.00 1.00 977
+ 7 0.99 0.99 0.99 1072
+ 8 0.99 0.98 0.99 939
+ 9 0.99 0.98 0.99 963
+
+ accuracy 0.99 10000
+ macro avg 0.99 0.99 0.99 10000
+weighted avg 0.99 0.99 0.99 10000
+```
+
+
+### 9) Загрузили, предобработали и подали на вход обученной нейронной сети собственное изображение, созданное при выполнении лабораторной работы №1. Вывели изображение и результат распознавания.
+
+```python
+# загрузка собственного изображения
+from PIL import Image
+
+for name_image in ['цифра 3.png', 'цифра 6.png']:
+ file_data = Image.open(name_image)
+ file_data = file_data.convert('L') # перевод в градации серого
+ test_img = np.array(file_data)
+
+ # вывод собственного изображения
+ plt.imshow(test_img, cmap=plt.get_cmap('gray'))
+ plt.show()
+
+ # предобработка
+ test_img = test_img / 255
+ test_img = np.reshape(test_img, (1,28,28,1))
+
+ # распознавание
+ result = model.predict(test_img)
+ print('I think it\'s', np.argmax(result))
+```
+
+```
+I think it's 3
+```
+
+```
+I think it's 6
+```
+
+### 10) Загрузили с диска модель, сохраненную при выполнении лабораторной работы №1. Вывели информацию об архитектуре модели. Повторили для этой модели п. 6.
+
+```python
+model_lr1 = keras.models.load_model("model_1h100_2h50.keras")
+
+model_lr1.summary()
+```
+**Model: "sequential_10"**
+| Layer (type) | Output Shape | Param # |
+|------------------|-------------:|--------:|
+| dense_22 (Dense) | (None, 100) | 78,500 |
+| dense_23 (Dense) | (None, 50) | 5,050 |
+| dense_24 (Dense) | (None, 10) | 510 |
+**Total params:** 84,062 (328.37 KB)
+**Trainable params:** 84,060 (328.36 KB)
+**Non-trainable params:** 0 (0.00 B)
+**Optimizer params:** 2 (12.00 B)
+
+
+```python
+# развернем каждое изображение 28*28 в вектор 784
+X_train, X_test, y_train, y_test = train_test_split(X, y,
+ test_size = 10000,
+ train_size = 60000,
+ random_state = 23)
+num_pixels = X_train.shape[1] * X_train.shape[2]
+X_train = X_train.reshape(X_train.shape[0], num_pixels) / 255
+X_test = X_test.reshape(X_test.shape[0], num_pixels) / 255
+print('Shape of transformed X train:', X_train.shape)
+print('Shape of transformed X train:', X_test.shape)
+
+# переведем метки в one-hot
+y_train = keras.utils.to_categorical(y_train, num_classes)
+y_test = keras.utils.to_categorical(y_test, num_classes)
+print('Shape of transformed y train:', y_train.shape)
+print('Shape of transformed y test:', y_test.shape)
+```
+```
+Shape of transformed X train: (60000, 784)
+Shape of transformed X train: (10000, 784)
+Shape of transformed y train: (60000, 10)
+Shape of transformed y test: (10000, 10)
+```
+
+```python
+# Оценка качества работы модели на тестовых данных
+scores = model_lr1.evaluate(X_test, y_test)
+print('Loss on test data:', scores[0])
+print('Accuracy on test data:', scores[1])
+```
+```
+313/313 ━━━━━━━━━━━━━━━━━━━━ 3s 8ms/step - accuracy: 0.9453 - loss: 0.1872
+Loss on test data: 0.19880765676498413
+Accuracy on test data: 0.9416000247001648
+```
+
+### 11) Сравнили обученную модель сверточной сети и наилучшую модель полносвязной сети из лабораторной работы №1 по следующим показателям:
+### - количество настраиваемых параметров в сети
+### - количество эпох обучения
+### - качество классификации тестовой выборки.
+### Сделали выводы по результатам применения сверточной нейронной сети для распознавания изображений.
+
+Таблица1:
+
+| Модель | Количество настраиваемых параметров | Количество эпох обучения | Качество классификации тестовой выборки |
+|----------|-------------------------------------|---------------------------|-----------------------------------------|
+| Сверточная | 34 826 | 15 | accuracy:0.990 ; loss:0.029 |
+| Полносвязная | 84 062 | 50 | accuracy:0.942 ; loss:0.198 |
+
+
+##### По результатам применения сверточной НС, а также по результатам таблицы 1 делаем выводы, что сверточная НС намного лучше справляется с задачами распознования изображений, чем полносвязная - имеет меньше настраиваемых параметров, быстрее обучается, имеет лучшие показатели качества.
+
+## Задание 2
+
+### В новом блокноте выполнили п. 2–8 задания 1, изменив набор данных MNIST на CIFAR-10, содержащий размеченные цветные изображения объектов, разделенные на 10 классов.
+### При этом:
+### - в п. 3 разбиение данных на обучающие и тестовые произвели в соотношении 50 000:10 000
+### - после разбиения данных (между п. 3 и 4) вывели 25 изображений из обучающей выборки с подписями классов
+### - в п. 7 одно из тестовых изображений должно распознаваться корректно, а другое – ошибочно.
+
+### 1) Загрузили набор данных CIFAR-10, содержащий цветные изображения размеченные на 10 классов: самолет, автомобиль, птица, кошка, олень, собака, лягушка, лошадь, корабль, грузовик.
+
+```python
+# загрузка датасета
+from keras.datasets import cifar10
+
+(X_train, y_train), (X_test, y_test) = cifar10.load_data()
+```
+
+### 2) Разбили набор данных на обучающие и тестовые данные в соотношении 50 000:10 000 элементов. Параметр random_state выбрали равным (4k – 1)=23, где k=6 –номер бригады. Вывели размерности полученных обучающих и тестовых массивов данных.
+
+```python
+# создание своего разбиения датасета
+
+# объединяем в один набор
+X = np.concatenate((X_train, X_test))
+y = np.concatenate((y_train, y_test))
+
+# разбиваем по вариантам
+X_train, X_test, y_train, y_test = train_test_split(X, y,
+ test_size = 10000,
+ train_size = 50000,
+ random_state = 23)
+# вывод размерностей
+print('Shape of X train:', X_train.shape)
+print('Shape of y train:', y_train.shape)
+print('Shape of X test:', X_test.shape)
+print('Shape of y test:', y_test.shape)
+```
+```
+Shape of X train: (50000, 32, 32, 3)
+Shape of y train: (50000, 1)
+Shape of X test: (10000, 32, 32, 3)
+Shape of y test: (10000, 1)
+```
+
+### Вывели 25 изображений из обучающей выборки с подписью классов.
+
+```python
+class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer',
+ 'dog', 'frog', 'horse', 'ship', 'truck']
+
+plt.figure(figsize=(10,10))
+for i in range(25):
+ plt.subplot(5,5,i+1)
+ plt.xticks([])
+ plt.yticks([])
+ plt.grid(False)
+ plt.imshow(X_train[i])
+ plt.xlabel(class_names[y_train[i][0]])
+plt.show()
+```
+
+
+### 3) Провели предобработку данных: привели обучающие и тестовые данные к формату, пригодному для обучения сверточной нейронной сети. Входные данные принимают значения от 0 до 1, метки цифр закодированы по принципу «one-hot encoding». Вывели размерности предобработанных обучающих и тестовых массивов данных.
+
+```python
+# Зададим параметры данных и модели
+num_classes = 10
+input_shape = (32, 32, 3)
+
+# Приведение входных данных к диапазону [0, 1]
+X_train = X_train / 255
+X_test = X_test / 255
+
+print('Shape of transformed X train:', X_train.shape)
+print('Shape of transformed X test:', X_test.shape)
+
+# переведем метки в one-hot
+y_train = keras.utils.to_categorical(y_train, num_classes)
+y_test = keras.utils.to_categorical(y_test, num_classes)
+print('Shape of transformed y train:', y_train.shape)
+print('Shape of transformed y test:', y_test.shape)
+```
+```
+Shape of transformed X train: (50000, 32, 32, 3)
+Shape of transformed X test: (10000, 32, 32, 3)
+Shape of transformed y train: (50000, 10)
+Shape of transformed y test: (10000, 10)
+```
+
+### 4) Реализовали модель сверточной нейронной сети и обучили ее на обучающих данных с выделением части обучающих данных в качестве валидационных. Вывели информацию об архитектуре нейронной сети.
+
+```python
+# создаем модель
+model = Sequential()
+
+# Блок 1
+model.add(layers.Conv2D(32, (3, 3), padding="same",
+ activation="relu", input_shape=input_shape))
+model.add(layers.BatchNormalization())
+model.add(layers.Conv2D(32, (3, 3), padding="same", activation="relu"))
+model.add(layers.BatchNormalization())
+model.add(layers.MaxPooling2D((2, 2)))
+model.add(layers.Dropout(0.25))
+
+# Блок 2
+model.add(layers.Conv2D(64, (3, 3), padding="same", activation="relu"))
+model.add(layers.BatchNormalization())
+model.add(layers.Conv2D(64, (3, 3), padding="same", activation="relu"))
+model.add(layers.BatchNormalization())
+model.add(layers.MaxPooling2D((2, 2)))
+model.add(layers.Dropout(0.25))
+
+# Блок 3
+model.add(layers.Conv2D(128, (3, 3), padding="same", activation="relu"))
+model.add(layers.BatchNormalization())
+model.add(layers.Conv2D(128, (3, 3), padding="same", activation="relu"))
+model.add(layers.BatchNormalization())
+model.add(layers.MaxPooling2D((2, 2)))
+model.add(layers.Dropout(0.4))
+
+model.add(layers.Flatten())
+model.add(layers.Dense(128, activation='relu'))
+model.add(layers.Dropout(0.5))
+model.add(layers.Dense(num_classes, activation="softmax"))
+
+
+model.summary()
+```
+**Model: "sequential_9"**
+| Layer (type) | Output Shape | Param # |
+|--------------------------------------------|-------------------|---------:|
+| conv2d_41 (Conv2D) | (None, 32, 32, 32) | 896 |
+| batch_normalization_6 (BatchNormalization) | (None, 32, 32, 32) | 128 |
+| conv2d_42 (Conv2D) | (None, 32, 32, 32) | 9,248 |
+| batch_normalization_7 (BatchNormalization) | (None, 32, 32, 32) | 128 |
+| max_pooling2d_26 (MaxPooling2D) | (None, 16, 16, 32) | 0 |
+| dropout_24 (Dropout) | (None, 16, 16, 32) | 0 |
+| conv2d_43 (Conv2D) | (None, 16, 16, 64) | 18,496 |
+| batch_normalization_8 (BatchNormalization) | (None, 16, 16, 64) | 256 |
+| conv2d_44 (Conv2D) | (None, 16, 16, 64) | 36,928 |
+| batch_normalization_9 (BatchNormalization) | (None, 16, 16, 64) | 256 |
+| max_pooling2d_27 (MaxPooling2D) | (None, 8, 8, 64) | 0 |
+| dropout_25 (Dropout) | (None, 8, 8, 64) | 0 |
+| conv2d_45 (Conv2D) | (None, 8, 8, 128) | 73,856 |
+| batch_normalization_10 (BatchNormalization)| (None, 8, 8, 128) | 512 |
+| conv2d_46 (Conv2D) | (None, 8, 8, 128) | 147,584 |
+| batch_normalization_11 (BatchNormalization)| (None, 8, 8, 128) | 512 |
+| max_pooling2d_28 (MaxPooling2D) | (None, 4, 4, 128) | 0 |
+| dropout_26 (Dropout) | (None, 4, 4, 128) | 0 |
+| flatten_9 (Flatten) | (None, 2048) | 0 |
+| dense_17 (Dense) | (None, 128) | 262,272 |
+| dropout_27 (Dropout) | (None, 128) | 0 |
+| dense_18 (Dense) | (None, 10) | 1,290 |
+**Total params:** 552,362 (2.11 MB)
+**Trainable params:** 551,466 (2.10 MB)
+**Non-trainable params:** 896 (3.50 KB)
+
+```python
+# компилируем и обучаем модель
+batch_size = 64
+epochs = 50
+model.compile(loss="categorical_crossentropy", optimizer="adam", metrics=["accuracy"])
+model.fit(X_train, y_train, batch_size=batch_size, epochs=epochs, validation_split=0.1)
+```
+
+### 5) Оценили качество обучения на тестовых данных. Вывели значение функции ошибки и значение метрики качества классификации на тестовых данных.
+
+```python
+# Оценка качества работы модели на тестовых данных
+scores = model.evaluate(X_test, y_test)
+print('Loss on test data:', scores[0])
+print('Accuracy on test data:', scores[1])
+```
+```
+313/313 ━━━━━━━━━━━━━━━━━━━━ 3s 5ms/step - accuracy: 0.8507 - loss: 0.5097
+Loss on test data: 0.4886781871318817
+Accuracy on test data: 0.8521999716758728
+```
+
+### 6) Подали на вход обученной модели два тестовых изображения. Вывели изображения, истинные метки и результаты распознавания.
+
+```python
+# вывод двух тестовых изображений и результатов распознавания
+
+for n in [3,15]:
+ result = model.predict(X_test[n:n+1])
+ print('NN output:', result)
+
+ plt.imshow(X_test[n].reshape(32,32,3), cmap=plt.get_cmap('gray'))
+ plt.show()
+ print('Real mark: ', np.argmax(y_test[n]))
+ print('NN answer: ', np.argmax(result))
+```
+
+```
+Real mark: 0
+NN answer: 0
+```
+
+```
+Real mark: 2
+NN answer: 6
+```
+
+### 7) Вывели отчет о качестве классификации тестовой выборки и матрицу ошибок для тестовой выборки.
+
+```python
+# истинные метки классов
+true_labels = np.argmax(y_test, axis=1)
+# предсказанные метки классов
+predicted_labels = np.argmax(model.predict(X_test), axis=1)
+
+# отчет о качестве классификации
+print(classification_report(true_labels, predicted_labels, target_names=class_names))
+# вычисление матрицы ошибок
+conf_matrix = confusion_matrix(true_labels, predicted_labels)
+# отрисовка матрицы ошибок в виде "тепловой карты"
+fig, ax = plt.subplots(figsize=(6, 6))
+disp = ConfusionMatrixDisplay(confusion_matrix=conf_matrix,display_labels=class_names)
+disp.plot(ax=ax, xticks_rotation=45) # поворот подписей по X и приятная палитра
+plt.tight_layout() # чтобы всё влезло
+plt.show()
+```
+```
+313/313 ━━━━━━━━━━━━━━━━━━━━ 1s 4ms/step
+ precision recall f1-score support
+
+ airplane 0.86 0.86 0.86 986
+ automobile 0.97 0.90 0.93 971
+ bird 0.85 0.76 0.80 1043
+ cat 0.72 0.74 0.73 1037
+ deer 0.84 0.84 0.84 969
+ dog 0.74 0.79 0.77 979
+ frog 0.88 0.88 0.88 1025
+ horse 0.86 0.89 0.88 948
+ ship 0.92 0.93 0.93 1003
+ truck 0.89 0.93 0.91 1039
+
+ accuracy 0.85 10000
+ macro avg 0.85 0.85 0.85 10000
+weighted avg 0.85 0.85 0.85 10000
+```
+
+
+#### По результатам классификации датасета CIFAR-10 созданной сверточной моделью можно сделать вывод, что она довольно неплохо справилась с задачей. Полученные метрики оценки качества имеют показатели в районе 0.85.
\ No newline at end of file