
lab2_machine
.docxГУАП
КАФЕДРА № 41
ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ
ПРЕПОДАВАТЕЛЬ
Ассистент |
|
|
|
В.В. Боженко |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №2 |
РАСПОЗНАВАНИЕ ОБРАЗОВ |
по курсу: МАШИННОЕ ОБУЧЕНИЕ |
|
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ ГР. № |
4016 |
|
|
|
М.О. Жовтяк |
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург 2023
Цель работы
Цель: обучить нейронную сеть Хопфилда распознавать образ.
Вариант задания
Задание: обучить нейронную сеть Хопфилда распознавать образ по 14 варианту, отображенному на рисунке 1.
Рисунок 1 – Вариант задания
Ссылка на Jupyter Notebook: https://colab.research.google.com/drive/1T_FvAaIjKxDObs5DOHTVJTBnBx8iKj1a?usp=sharing
Ход выполнения работы
Импортируются библиотеки. Это представлено на рисунке 2.
Рисунок 2 – Импорт библиотек
Создаются 3 тренировочных изображения списками, изображения выводятся в matplotlib. Это изображено на рисунках 3-4.
Рисунок 3 – Списки пикселей
Рисунок 4 – Вывод тренировочных изображений
Далее создаются 9 тестовых изображений, которые будут являться искаженными на основе тренировочных, это показано на рисунке 5.
Рисунок 5 – Три тестовых изображения
Создается функция, вычисляющая весовую матрицу, хранящую весовые значения сети Хопфилда. Это представлено на рисунке 6.
Рисунок 6 – Создание весовой матрицы
Создается функция, которая на основе созданной весовой матрицы восстанавливает изображение. Для каждой итерации вычисляется ошибка восстановления. Один из примеров удачного восстановления представлен на рисунке 7, а неудачного – на 8-ом.
Рисунок 7 – Удачное восстановление рисунка
Рисунок 8 – Неудачное восстановление рисунка
Итого, почти все изображения были идеально восстановлены.
Вывод
В ходе работы я познакомился с сетью Хопфилда, принципом её работы. С помощью Python я её создал, на основе работы этой модели я обучил её исходными изображениями, в резульате которых получил предсказания. Протестировав её работу, в результате почти все предсказания сошлись.
В ходе работы проблем не возникло.