ПРИМЕНЕНИЕ МЕТОДОВ НЕЙРОИНФОРМАТИКИ ДЛЯ ИССЛЕДОВАНИЯ МЕХАТРОННЫХ СИСТЕМ - Студенческий научный форум

X Международная студенческая научная конференция Студенческий научный форум - 2018

ПРИМЕНЕНИЕ МЕТОДОВ НЕЙРОИНФОРМАТИКИ ДЛЯ ИССЛЕДОВАНИЯ МЕХАТРОННЫХ СИСТЕМ

Шевцов А.А. 1, Тарасян В.С. 1
1Уральский государственный университет путей сообщения
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
Цель: Изучить работу нейронной сети для распознавания образов на примере шумерского алфавита

Постановка задачи

Требуется создать нейронную сеть для распознавания символов шумерского алфавита. В качестве датчика предполагается использовать систему распознавания, которая выполняет оцифровку каждого символа, находящегося в поле зрения. В результате каждый символ будет представлен шаблоном размера 40x40.

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

Построим нейронную сеть, которая включает в себя 56 входов (вектор 56 символов) и 1 выход (распознанный символ). Данная НС является двухслойной сетью. Функцией активации поставим логарифмическую сигмоидную функцию, которую удобно использовать, потому что выходные векторы содержат элементы со значениями в диапазоне от 0 до 1, что потом удобно перевести в булеву алгебру. На скрытый уровень выделим 40 нейронов.

Схематически рассматриваемую сеть можно представить следующей схемой, как показано на рис. 1:

Рисунок 1. Схема нейронной сети

Интерфейс

Согласно поставленной задаче, интерфейс состоит из 5-ти кнопок управления нейронной сетью, а именно, кнопок: «Создать нейронную сеть», «Изменить параметры сети», «Тренировать сеть», «Оценить эффективность», «Проверить работу». Так же интерфейс состоит 4-ех строк, данные в которых можно корректировать по желанию оператора, строки содержат информацию о количестве использующихся, на данный момент времени нейронах, включая количество нейронов на скрытом слое (S1) , строка «pеrformFcn» содержит информацию об операторе, который отвечает за использования «сложных», как в данной работе, так и «простых» функций.

Строчка «goal» демонстрирует к какой точности должна стремится нейронная сеть во время тренировки. Строка «epochs» содержит данные, показывающие количество эпох, которые используются для тренировки нейронной сети.

В интерфейс присутствует вспомогательная панель основная задача , которой заключается в том, чтобы показывать статус, выполняемого действия.

Данный интерфейс, показан на рисунке 2:

Рисунок 2. Графическое изображение интерфейса программы

Тренировка нейронной сети

После ввода необходимого числа нейронов оператором, и нажатия кнопки «Создать сеть», происходит построение данной сети по количеству заданных нейронов, активируются кнопки «Изменить параметры сети», «Тренировать сеть», «Оценить эффективность», «Проверить работу».

Для дальнейшего исследования работы нейронной сети необходимо активировать кнопку «Тренировать сеть», блок управления данным процессом (nntraintool) выглядит следующим образом, как показано на рисунке 3. В появившемся окне можем наблюдать процесс обучения нейронной сети.

Рисунок 3. Графическое изображение nntraintool

Данный блок показывает за какое количество времени и какое количество эпох можно «натренировать» нейронную сеть, чтобы она с точность до 0,001 смогла распознавать шаблонные образы из каталога alphabet. Согласно нашим информации предоставленной nntraintool из 5000 эпох за 414, за 1 минуту 7 секунд, сеть смогла «натренировать» нейроны для распознавания шаблонов до точности 0,00126. Также блок nntraintool показывает градиент, который скорость изменения величины.

С помощью кнопки Performance можно просмотреть процесс обучения с помощью графика, представленного на рисунке 4.

Рисунок 4. График процесса обучения

Создание и оценка эффективности сети

Далее следует активировать кнопку «Проверить работу», в результате появляется интерфейс управления второго уровня, который содержит изображения шумерского алфавита (всего 56 символов), как показано на рисунке 5.

Рисунок 5. Изображение интерфейса с шумерским алфавитом

Активируем один из символов, изображенных на интерфейсе. После активации определенного символа нейронная сеть должна найти данный образ из каталога C:alphabet, в качестве имени сам символ, с разрешением png. Результат работы нейронной сети показан на рис. 6. Данный вывод демонстрирует ту фигуру, которую выбрал оператор (располагается под надписью «Искомая фигура». Под надписью находятся фигуры , которые сеть смогла распознать и вывести на экран и демонстрации оператору. Справа располагается зашумленная фигура, слева «чистая» не зашумленная фигура.

Рисунок 6. Вывод программы

Оценка эффективности работы созданной нейронной сети можно представить в виде графика, как показано на рисунке 7

Рисунок 7. График оценка эффективности

Вывод: нейронная сеть, при заданных параметрах: 40 нейронах на скрытом слое, и при 5000 циклов, работает достаточно точно, о чем свидетельствует график эффективности представленный на рисунке 7.Также результаты проверки работы нейронной сети для распознавания символов букв шумерского алфавита подтверждают высокую степень точности её работы.

Исследования эффективности работы и результаты экспериментов

Так как число нейронов на скрытом слое 40, достаточно для высокой степени работы нейронной сети, изменим данный параметр, а результаты экспериментов представим в виде графиков и результатов вывода информации интерфейсом.

Последовательно уменьшим количество нейронов до тех пор, пока нейронная сеть не начнет совершать ошибки.

Установим значение количества нейронов на скрытом слое 1.Реузльтат представлен на рисунках 8 и 9.

Рисунок 8. Вывод программы (выборка из 2-х экспериментов)

Рисунок 9. График оценка эффективности

Вывод: особых изменений в работе сети не обнаружено. Уменьшение количества нейронов вплоть до 1 при 5000 циклов не привело сеть к возникновению ошибок.

Уменьшим количество эпох обучения нейронной сети. Путем эксперимента было установлено количество эпох равное 500, при 40 нейронах в скрытом слое для возникновения ошибок в выводе программы, данный результат показан на рисунках: 10 (Performance ), 11 (оценка эффективности).

Рисунок 10.Вывод программы (выборка из 3-х экспериментов)

Рисунок 11.График оценка эффективности

Вывод: уменьшение количества эпох, в данном эксперименте до 500, при неизменном количестве нейронов скрытого слоя, а именно 40, приводит к неправильной работе нейронной сети, уменьшение точности распознавания зашумленных символов шумерского алфавита, и как результат – неправильный вывод искомого символа на интерфейс.

Уменьшим количество эпох обучения нейронной сети до 100

Рисунок 12.Вывод программы (выборка из 3-х экспериментов)

Рисунок 13.График оценка эффективности

Вывод: правильная и точная работа нейронной сети прежде всего связана с количеством эпох, которое задает оператор. Так как чем больше эпох, тем лучше будет «натренирована» созданная нейронная сеть, и как результат – повышение точности распознавания образов из каталога alphabet.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Медведев В.С., Потемкин В.Г. Нейронные сети. MatLab 6. М.: ДИАЛОГ-МИФИ, 2002. (Дата обращения 28.01.2018)

2. Миронов И.С., Скурлаев С.В. Распознавание образов при помощи нейронной сети [Электронный ресурс].

URL: http://confonline.susu.ru/index.php?option=com_content&view=article&id

=57:2011-05-06-04-36-21&catid=16:-2----&Itemid=18

(Дата обращения 28.01.2018)

3. Тарасян В.С. Использование нейронной сети для распознавания образов [Электронный ресурс] URL: https://bb.usurt.ru (Дата обращения 28.01.2018)

4. Хайкин С. Нейронные сети: полный курс. М.: Издательский дом

"Вильямс", 2006. (Дата обращения 28.01.2018)

5. Шеремет А.И., Перепелица В.В., Денисова А.М. Проектирование нейронной сети для распознавания символов в программной среде MATLAB [Электронный ресурс]. URL: http://nauka.zinet.info/13/sheremet.php

(Дата обращения 28.01.2018)

11

Просмотров работы: 259