Добавил:
при поддержке музыки группы Anacondaz Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лаба 1 мии

.docx
Скачиваний:
5
Добавлен:
27.03.2024
Размер:
17.85 Mб
Скачать

Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации

Ордена трудового красного знамени федеральное государственное

бюджетное образовательное учреждение высшего образования

«Московский технический университет связи и информатики»

Кафедра МКиИТ

Лабораторная работа № 1

по дисциплине «Методы искусственного интеллекта»

Выполнила: студентка

Вариант 5

Москва, 2024

Задание на лабораторную работу

Цель: Провести обучение сверточной нейронной сети архитектуры YOLOv8 (Nano) для детектирования объектов на изображении (шапка, куртка, штаны).

Задачи:

  • Собрать набор данных

  • Выполнить процедуру обучения

  • Комплексно проанализировать работоспособность модели

  • Повторно обучить модель на основании анализа

  • Оценить работоспособность полученного результата

Ход работы

Данные

Датасет модели в universe.roboflow.com: https://universe.roboflow.com/project-esnb4/mydatasetlab1/dataset/6/images?split=train

Большая часть данных для датасета была взята с портала universe.roboflow.com. Для разметки и постобработки собранных данных также были использованы инструменты с ресурса roboflow.com.

Рисунок 1 - Датасет

Таблица 1 - Баланс классов

Train

Valid

Test

Cap

499

36

49

Jacket

500

39

48

Pants

498

35

52

При аугментации были добавлены модификаторы, представленных на рисунке 2.

Рисунок 2 - Создание модели (v6)

Также было произведено изменение размера изображений датасета 640x640.

Рисунок 3 - Создание модели (v6)

Рисунок 4 - Датасет модели (v6)

Подготовка

Файл: https://colab.research.google.com/drive/1uDMT2_r74R_to8rDj278f6nyYyran7eV#scrollTo=T_nwQY4FNs0L

Рисунок 5 - Монтирование облачного хранилища для сохранения копии

Рисунок 6 - Переключение вычислительной среды на GPU

Рисунок 7 -Загрузка набора данных через API ключ

Первая итерация обучения

Рисунок 8 - Код для первой итерации обучения

Пояснение гиперпараметров:

  • task - задача, которую будет выполнять модель (detect - определение)

  • mode - режим (train - обучение)

  • data - датасет

  • epochs - количество эпох в обучении

  • imgsz - ширина изображений в пикселях

Рисунок 9 - Матрица ошибок

110 верных предсказаний, 15 ложно-положительных предсказаний и 13 ложно-отрицательных предсказаний.

Рисунок 10 - Графики потерь

Судя по графикам, есть проблема с недостаточным количеством валидационных данных (т.к. тестовые потери продолжают стремительно уменьшаться, а валидационные уже на 4 эпохе начинают выходить на плато)

Рисунок 11 - Прогноз на валидации

Рисунок 12 - Метрики валидации

Вторая итерация обучения

Запускаем повторное обучение с учетом лучших весов.

Рисунки 13 - 14 - Код для второй итерации обучения

Рисунок 15 - Код развертывания модели

Рисунок 15 - Матрица ошибок

115 верных предсказаний, 15 ложно-положительных предсказаний и 9 ложно-отрицательных предсказаний. Доля ложных предсказаний снизилась.

Рисунок 16 - Графики потерь

Судя по графикам очевидно переобучения модели (валидационные потери сильно колеблются)

Рисунок 17 - Прогноз на валидации

Рисунок 18 - Метрики валидации

Инференс

Рисунки 19-21 - Результат работы

Повторно обученная модель (v7):

https://universe.roboflow.com/project-esnb4/mydatasetlab1/model/7?youtube=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DJn_o66Sz1w0%26t%3D4s

Соседние файлы в предмете Методы искусственного интеллекта