Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДЗ по нейронным сетям.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
3.61 Mб
Скачать

Задание по курсу «Нейронные сети» Цель задания – овладение практическими навыками построения нейронной сети.

Задачи работы - построить нейронную сеть для распознавания изображения рукописного текта.

Используя MatLab, в ходе работы необходимо построить нейронную сеть для распознавания 2-х схожих по написанию букв русского алфавита и протестировать её работу на искаженных изображениях.

Ход работы:

  1. Готовятся файлы, содержащие шаблоны написания выбранных букв.

  2. Определяется структура нейронной сети

  3. Проводится инициализация нейронной сети

  4. Проводится обучение нейронной сети на шаблонах

  5. Проводится моделирование нейронной сети на 5 изображениях, отличных от шаблонов.

  6. Анализируются результаты моделирования и делаются выводы о точности распознавания.

Содержание отчета:

Отчет должен содержать

описание архитектуры сети;

листинг инициализации сети;

изображения шаблонов букв, на которых проводилось обучение сети;

результаты обучения сети;

изображения, на которых проводилось моделирование сети;

результаты моделирования сети;

выводы.

Методические указания по выполнению работы Распознавание рукописного текста Определение архитектуры нейронной сети

Для решения задачи с применением искусственной нейронной сети следует спроектировать структуру сети, адекватную поставленной задаче распознавания. Это предполагает выбор количества слоев сети и нейронов в каждом слое, а также необходимых связей между слоями.

Подбор количества нейронов во входном слое обусловлен размерностью входного вектора x. В выходном слое количество нейронов равно размерности ожидаемого вектора d.

Рассмотрим задачу классификации символов от «а» до «я». В данном случае имеется 32 класса, поэтому в качестве выходного вектора будем использовать вектор, состоящий из 32 элементов. Если на вход сети подается изображение буквы «а», то максимальное значение выходного сигнала достигается на первом выходном нейроне, в то время как остальные нейроны выходного слоя выключены. Входные символы приведены к размеру 16x16 пикселей, поэтому для сети потребовалось 256 входных элементов.

Если сеть порождает правильный вывод для большинства вводимых образцов из набора текстовых данных, значит, сеть обладает хорошими свойствами обобщения. Качество обобщения зависит от количества нейронов в скрытом слое. Если скрытых элементов больше, чем требуется для обучения нужному отношению ввода-вывода, будет больше весовых коэффициентов, чем это необходимо, и если процесс обучения продолжается слишком долго, в результате может наблюдаться слишком близкое отслеживание данных. То есть сеть будет правильно классифицировать данные, на которых она обучалась, но у нее не будет способности к обобщению (при подаче на вход сети новых векторов, она будет классифицировать их неправильно). В данном случае сеть правильно распознает символы и обладает способностью к обобщению при одном скрытом слое с 10 скрытыми нейронами в нем. Число нейронов в скрытом слое и количество скрытых слоев обычно оценивается экспериментально и выбирается тот вариант, где нейронная сеть работает лучше.

Нейронная сеть создается в три этапа: инициализация, обучение, моделирование.