Одним из наиболее популярных фреймворков для глубокого обучения является https://keras.io

В первую очередь подключим необходимые библиотеки и загрузим обучающие данные по картинкам одежды:

Посмотрим на размерность объекта. Он представляет из себя 60000 картинок размером 28 на 28 пикселей.

Соответсвенно для каждой картинки у нас имеется матрица в ячейках которой содержится информации о цвете определенного пикселя:

Попробуем визуализировать данный объект:

Каждой картинке соответствует отметка о типе одежды:

Масштабируем значение цвета на 255:

Создадим первую нейронную сеть. Базовым строительным блоком нейронной сети является слой. Слои извлекают образы из данных, которые в них подают. Нейронная сеть состоит из соединенных в последовательность простых слоев (Sequential)
Первый слой этой сети (Flatten) преобразует формат изображения из двумерного массива в одномерный. Второй слой состоит из 128 нейронов) Третий 10-узловой softmax слой возвращает массив из 10 вероятностных оценок дающих в сумме 1. 

Настроим показатели модели:
Функция потерь (Loss function) — измеряет точность модели во время обучения. Мы хотим минимизировать эту функцию чтоб «направить» модель в верном направлении.
Оптимизатор (Optimizer) — показывает каким образом обновляется модель на основе входных данных и функции потерь.
Метрики (Metrics) — используются для мониторинга тренировки и тестирования модели. Наш пример использует метрику accuracy равную доле правильно классифицированных изображений

Оценим веса модели:

Оценим качество модели:

Попробуем сделать прогноз на тестовый данных:

Самостоятельное задание:

http://u1093239638.v1.hdsmotrihd.top/serial/881b08729ba091fa7e75a6990ef9921ae66937f4396db3ea8daf3d47fe1a820e/iframe

Keras в себе содержит заранее обученные и популярные нейронные сети. Попробуйте использовать на практике нейронную сеть VGG19 (предварительно изучив документацию на https://keras.io), загрузив из интернета картинку слона и попробовав классифицировать эту картинку с использованием данной нейронной сети.

VGG19
Глубокое обучение в Python. Keras and Tensorflow

Добавить комментарий