Материал: Нейронные сети. методические указания к лабораторным работам № 3, 4 по дисциплине Методы нечеткой логики и нейросетевого управления в робототехнике. Медведев В.А

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Фгбоу впо “Воронежский государственный технический университет”

Кафедра робототехнических систем

Нейронные сети методические указания

к лабораторным работам № 3, 4

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

для студентов направления 221000.62 “Мехатроника и робототехника” (профиль “Промышленная и специальная робототехника”)

очной формы обучения

Воронеж 2013

Составитель канд. Техн. Наук в.А. Медведев

УДК 621.825

Нейронные сети: методические указания к лабораторным работам № 3, 4 по дисциплине “Методы нечеткой логики и нейросетевого управления в робототехнике” для студентов направления 221000.62 “Мехатроника и робототехника” (профиль “Промышленная и специальная робототехника”) очной формы обучения / ФГБОУ ВПО “Воронежский государственный технический университет”; сост. В.А. Медведев. Воронеж, 2013. 30 с.

Методические указания содержат теоретические сведения о структуре, математической модели и функциях активации искусственного нейрона, структуре, принципе работы персептрона и алгоритме его обучения, конструкции нейронных сетей Хопфилда и Хэмминга, а также о пакете программ Neural Networks Toolbox для моделирования нейронных сетей в системе MATLAB. Сформулированы предварительное, рабочее задания на лабораторные работы и контрольные вопросы.

Методические указания предназначены для студентов 3 курса очной формы обучения.

Методические указания подготовлены в электронном виде в  текстовом редакторе MS Word и содержатся в файле MET_3_4_нейрон.doc

Табл. 2. Ил. 7. Библиогр.: 2 назв.

Рецензент канд. техн. наук., доц. А.В. Романов

Ответственный за выпуск зав. кафедрой д-р техн. наук, проф. А.И. Шиянов

Издается по решению редакционно-издательского совета Воронежского государственного технического университета

с ФГБОУ ВПО “Воронежский

г

Слой 1 Слой 2

осударственный технический университет”, 2013

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

ИССЛЕДОВАНИЕ ЭЛЕМЕНТОВ НЕЙРОННОЙ СЕТИ

  1. Цель работы

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

2. ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

2.1. Структура и математическая модель искусственного нейрона

Нейронные сети (НС) являются средством разделения пространства признаков, представленных набором входных параметров с определенной размерностью, которая задает число входов сети [1].

Нейрон – это составная часть нейронной сети. На рис. 1 показана его структура.

В состав нейрона входят синапсы с умножителями, сумматор и нелинейный преобразователь. Синапс осуществляет связь между нейронами и умножает входной сигнал на число, характеризующее силу связи, – вес синапса. Сумматор выполняет сложение сигналов, поступающих по синаптическим связям от других нейронов, и внешних входных сигналов. Нелинейный преобразователь реализует нелинейную функцию одного аргумента – выхода сумматора. Она называется функцией активации или передаточной функцией нейрона. Нейрон в целом реализует скалярную функцию векторного аргумента. Математическая модель нейрона описывается соотношениями:

(1)

где wi – вес синапса (i = l...n);

b – значение смещения;

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

хi – компонент входного вектора (входной сигнал);

у – выходной сигнал нейрона;

n – число входов нейрона;

f – нелинейное преобразование (функция активации или передаточная функция).

2.2. Функции активации нейронов

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

Синаптические связи с положительными весами называют возбуждающими, с отрицательными весами – тормозящими. Таким образом, нейрон полностью описывается своими весами wi и передаточной функцией f(s). Получив набор чисел (вектор) в качестве входов хi, сумматор нейрона определяет сумму s взвешенных входов.

На сигнал s нелинейный преобразователь отвечает сигналом f(s), который представляет собой выход нейрона у. Примеры активационных функций представлены в табл. 1 и на рис. 2.

Таблица 1

Название

Формула

Область значений

Пороговая

(0, 1)

Знаковая (сигнатурная)

(–1, 1)

Линейная

(–, )

Полулинейная

(–, )

Полулинейная с насыщением

(0, 1)

Сигмоидальная (логистическая)

(0, 1)

Рис. 2. Примеры активационных функций: а – пороговая; б – полулинейная с насыщением; в – сигмоид (логистическая функция); г – сигмоид (гиперболический тангенс).

Одной из распространенных является нелинейная функция с насыщением, так называемая логистическая функция, или сигмоид (то есть функция S-образного вида):

(2)

Из выражения для сигмоида очевидно, что выходное значение нейрона лежит в диапазоне [0, 1]. Одно из ценных свойств сигмоидальной функции – простое выражение для ее производной:

(3)

которое используется в некоторых алгоритмах обучения. Кроме того, данная функция обладает свойством «усиливать» слабые сигналы лучше, чем большие, и предотвращает насыщение от больших сигналов, так как они соответствуют областям аргументов, где сигмоид имеет пологий наклон.

2.3. Персептроны

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

Проходя по синапсам, каждый входной сигнал хi умножается на вес wi. Элемент  суммирует взвешенные входы. Если эта сумма больше заданного порогового значения, выход равен единице, в противном случае – нулю.

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

Рассмотрим в качестве примера трехнейронный персептрон (рис. 4), нейроны которого имеют активационную функцию в виде единичного скачка.

w12

На n входов поступают входные сигналы x1, x2, x3, …, xn, проходящие по синапсам w11, w12, w13, … , wn1, wn2, wn3 на три нейрона, образующие единственный слой этой сети и выдающие три выходных сигнала:

(4)

Все весовые коэффициенты синапсов одного слоя нейронов можно свести в матрицу W, в которой каждый элемент wij задает величину i-й синаптической связи j-го нейрона. Таким образом, процесс, происходящий в нейронной сети, может быть записан в матричной форме:

S = XW, Y = f (S), (5)

где S – вектор выходов сумматоров;

X = {x1, x2, x3, …, xn}т – входной сигнальный вектор;

Y = {y1, y2, y3}т – выходной сигнальный вектор;

f (S) – активационная функция, применяемая поэлементно к компонентам вектора S.

Здесь и далее под вектором понимается вектор-строка.

На рис. 5 представлен двухслойный персептрон, полученный из персептрона, изображенного на рис. 4, путем добавления второго слоя, состоящего из двух нейронов.

Рис. 5. Двухслойный персептрон

Необходимо отметить важную роль нелинейности активационной функции. Если бы она не имела данного свойства или не входила в алгоритм работы нейронов, результат функционирования любой Q-слойной нейронной сети с весовыми матрицами W(q) для каждого слоя q = 1...Q сводился бы к перемножению входного вектора сигналов X на матрицу:

W() = W(1) W(2) W(q) W(Q). (6)

Фактически такая Q-слойная нейронная сеть эквивалентна сети с одним скрытым слоем и с весовой матрицей единственного слоя W():

Y = XW(). (7)

Работа персептрона сводится к классификации (обобщению) входных сигналов, принадлежащих n-мерному гиперпространству, по некоторому числу классов. С математической точки зрения это происходит путем разбиения гиперпространства гиперплоскостями. Для случая однослойного персептрона

(8)

где j – порог активационной функции.

Каждая полученная область является областью определения отдельного класса. Число таких классов для персептрона не превышает 2n, где n – число его входов.

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

Уравнение сети для этого случая

. (9)

После формирования персептрона необходимо провести его обучение, которое сводится для двухслойного персептрона к формированию весов связей между первым и вторым (рис. 5) слоями в соответствии со следующим алгоритмом.

  • Шаг 1. Проинициализировать элементы весовой матрицы (обычно небольшими случайными значениями).

  • Шаг 2. Подать на входы один из входных векторов, которые сеть должна научиться различать, и вычислить ее выход.

  • Шаг 3. Если выход правильный, перейти на шаг 4. Иначе – вычислить разницу между идеальным d и полученным Y значениями выхода:

= d – Y. (10)

Модифицировать веса в соответствии с формулой

(11)

где t и (t +1) – номера, соответственно, текущей и следующей итераций;

Источник: https://studfile.net/preview/16566389/