Лабораторная работа 8 (Lab8)
Описание файла
Файл "Лабораторная работа 8" внутри архива находится в папке "Лаба_нейросеть на сайт". Документ из архива "Lab8", который расположен в категории "". Всё это находится в предмете "информационные устройства и системы" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лабораторные работы", в предмете "информационные устройства и системы" в общих файлах.
Онлайн просмотр документа "Лабораторная работа 8"
Текст из документа "Лабораторная работа 8"
ЛАБОРАТОРНАЯ РАБОТА N 8
«Исследование алгоритма распознавания тактильного образа на основе нейронной сети»
Цель работы: ознакомление с работой искусственной нейронной сети для системы силомоментного очувствления промышленного робота.
1. Теоретическая часть
1.1. Постановка задачи распознавания тактильных образов
В задачах распознавания контактных ситуаций, используют те же подходы, что и в СТЗ. При этом контактная ситуация описывается в терминах тактильного образа, который определяется совокупностью отдельных признаков. Существо распознавания заключается в отнесении некоторой контактной ситуации к соответствующему классу. В адаптивных роботах распознавание тактильного образа реализуют с помощью «интеллектуального» силомоментного датчика, связанного с системой управления роботом. При этом информация о контактных силах используется не непрерывно, а лишь в ситуациях, описанных заранее. Такие ситуации определяются датчиком путем постоянного анализа распределения силовых факторов, действующих на захватное устройство манипулятора, в том числе при замыкании кинематической цепи. В случае возникновения одной из подобных ситуаций происходит прерывание текущей программы управления со стороны датчика. Программа управления при этом либо модифицируется, либо заменяется другой, соответствующей изменившейся стратегии движения. Такое управление роботом получило название ситуационного. В качестве признаков той или иной ситуации используют как численные значения каких-либо параметров: сил, моментов, давлений и др., так и соотношения между ними.
Это соображение иллюстрирует рис. 8.1, на котором показаны графики изменения силовых факторов Fx, Fz и My в запястном силомоментном датчике при осевой сборке типа «вал—втулка» в вертикальной плоскости по мере углубления вала в отверстие вдоль оси Z.
Подобная картина характерна и для других компонент векторов сил и моментов, измеряемых датчиком. Численные значения переменных могут быть неизвестны, однако между ними существуют достаточно определенные соотношения, анализ которых позволяет выделить ряд опорных точек. Эти точки, условно разделяют процесс сопряжения на этапы, или классы, для каждого из которых характерна определенная контактная ситуация из числа возможных: свободный ход (0), движение по фаске (I), одноточечный контакт (II), двухточечный контакт (III), заклинивание, или завершение цикла (IV). Для управления роботом создается система решающих правил, образующая базу знаний и содержащая описание конкретных ситуаций.
В последнее время для решения задач распознавания контактных ситуаций активно используют методы нечеткой логики и нейронных сетей.
1.2. Основные сведения о нейронных сетях
Основу каждой нейронной сети составляют простые, в большинстве случаев – однотипные, элементы (ячейки), имитирующие работу нейронов мозга. Далее под нейроном будем иметь в виду искусственный нейрон, то есть ячейка нейронной сети. Каждый нейрон характеризуется своим текущим состоянием, которое может быть возбужденным или заторможенным. Он обладает группой синапсов – однонаправленных входных связей, соединенных с выходами других нейронов, а также имеет аксон – выходную связь данного нейрона, с которой сигнал (возбуждения или торможения) поступает на синапсы следующих нейронов. Каждый синапс характеризуется величиной синаптического веса , который по физическому смыслу эквивалентен электрической проводимости. Общая схема нейрона приведена на рис. 8.2.
Искусственный нейрон имеет следующую структуру.
-
Входные сигналы xi. Это данные, поступающие из окружающей среды или от других активных нейронов. Диапазон входных значений для различных моделей может отличаться. Обычно входные значения являются дискретными (бинарными) и определяются множествами {0,1} или {-1,1} либо принимают любые вещественные значения.
-
Набор вещественных весовых коэффициентов wi. Весовые коэффициенты определяют силу связи между нейронами.
-
Уровень активации нейрона , который определяется взвешенной суммой его входных сигналов.
-
Пороговая функция f, предназначенная для вычисления выходного значения нейрона путем сравнения уровня активации с некоторым порогом. Пороговая функция определяет активное или неактивное состояние нейрона.
Помимо этих свойств отдельных нейронов, нейронная сеть также характеризуется следующими глобальными свойствами.
-
Топология сети – это шаблон, определяющий наличие связей между отдельными нейронами. Топология является главными источником индуктивного порога.
-
Используемый алгоритм обучения.
-
Схема кодирования, определяющая интерпретацию данных в сети и результатов их обработки.
Выход нейрона есть функция его состояния: y = f (s). Нелинейная функция f называется активационной и может иметь различный вид, как показано на рис. 8.3.
Одной из наиболее распространенных является нелинейная функция с насыщением, так называемая логистическая функция (сигмоидальная, т.е. функция S-образного вида):
При уменьшении сигмоидальная функция становится более пологой, вырождаясь при = 0 в горизонтальную линию на уровне y = 0,5. При увеличении функция приближается по внешнему виду к функции Хевисайда. Из выражения для сигмоидальной функции, очевидно, что выходное значение нейрона лежит в интервале [0, 1].
Сигмоидальная активационная функция непрерывна, что позволяет точнее оценить ошибку на выходе сети. Подобно обычной пороговой функции, сигмоидальная активационная функция отображает точки области определения в значения из интервала [0,1]. Однако в отличие от обычной пороговой функции сигмоида может принимать значения из всего интервала, т.е. она обеспечивает непрерывную аппроксимацию классической пороговой функции.
Появление сетей с непрерывными активационными функциями исторически обусловило новые подходы к обучению на основе коррекции ошибки. Самым важным правилом обучения для сетей с непрерывной активационной функцией является дельта-правило.
Интуитивно, дельта-правило базируется на использовании понятия поверхности ошибки (рис 8.4), которая представляет собой кумулятивную ошибку на всем наборе данных как функцию от весов сети. Каждая возможная конфигурация весов определяет точку поверхности ошибки. Имея определенную конфигурацию весов, с помощью алгоритма обучения можно найти наиболее быстрое уменьшение функции ошибки. Этот подход называется обучением по методу градиентного спуска, поскольку градиент определяет «наклон» поверхности в каждой ее точке.
Дельта-правило предполагает использование непрерывной и дифференцируемой активационной функции. Этими свойствами обладает рассмотренная выше логистическая функция. Дельта-правило для настройки j-го весового коэффициента i-го узла сети имеет вид
где с – постоянный коэффициент скорости обучения, и – ожидаемый и реальный выходы i-го нейрона, – производная активационной функции i-го узла, а – j-е входное значение i-го узла.
Этот метод состоит в поиске наклона поверхности ошибки в окрестности некоторой точки. Такое свойство приводит к неустойчивости дельта-правила, поскольку с его помощью нельзя отличить локальный минимум от глобального.
Существенное влияние на эффективность дельта-правила оказывает коэффициент скорости обучения с. Значение этого коэффициента определяет величину изменения весов на каждом шаге обучения. Чем больше с, тем быстрее вес приходит к оптимальному значению. Однако если коэффициент с слишком велик, алгоритм может «проскочить» точку экстремума или осциллировать в окрестности этой точки. Небольшие значения коэффициента скорости обучения позволяют устранить эту проблему, но замедляют процесс обучения. Оптимальное значение этого коэффициента иногда определяется с учетом фактора момента – параметра, настраиваемого экспериментально для каждого конкретного приложения.
Хотя дельта-правило обеспечивает возможность обучения только однослойных сетей, его обобщение приводит к методу обратного распространения ошибки – алгоритму обучения многослойных сетей.
Общим принципом всех нейронных сетей является принцип параллельной обработки сигналов, которая достигается путем объединения большого числа нейронов в слои и соединения определенным образом нейронов различных слоев или нейронов одного слоя между собой.
В качестве примера простейшей нейронной сети рассмотрим трехнейронный однослойный персептрон, в котором нейроны обладают активационной функцией Хевисайда (рис.8.3). На n входов персептрона поступают некоторые сигналы, которые через синапсы передаются трем нейронам, образующим единственный слой нейронной сети. На выходе нейронной сети имеем три сигнала:
Очевидно, что все весовые коэффициенты синапсов одного слоя нейронов можно свести в матрицу W, в которой каждый элемент wij задает величину i-ой синаптической связи j-ого нейрона. Таким образом, процессы, происходящие в нейронной сети, можно записать в матричной форме: