Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Нейронные сети для обработки информации

..pdf
Скачиваний:
8
Добавлен:
12.11.2023
Размер:
14.05 Mб
Скачать

Обучающие выборки х представлены в следующем виде:

Начальные значения весовых коэффициентов щ заданы единичной мат­ рицей тк, в которой каждый 1-й столбец соответствует весам /-го нейрона:

' 1 0 0 0'

0 1 0 0

\т =

О О I О

0 0 0 1

После нескольких циклов абу'1ения при п = 0,1 и у = у матрица весов приняла вцд:

0,971 0 0 0

0 1*029 0 0,899

0

0

0,999

0

0 0 0 1,029

Рис. 2.14. Модель линейного нейрона Хебба

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

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

У =2, п,х; = н>тх = х гп>

(2.35)

/

 

Если согласно правилу Хебба

 

Ди>= цху

(2.36)

подставить выражение (2.35) в формулу (2.36) и выбрать для упрощения !)= 1, то получим приращение вектора весов Дн> в виде

Д » н - 0 ,

(2.37)

где С шххт - это матрица корреляции, которая по

определению является

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

Нестабильность правила Хебба в процессе обучения можно устрашгть ограничением вектора весов эв счет операции рснормапизащш, т.е. таким подбором пропорционального коэффициента а на каждом шаге обучения, чтобы н>'=ан> при |||м'||=1. Этот метод достаточно сложен и требует дополни­ тельных трудозатрат на этапе обучения.

Е. Ойя [112] модифицировал правило Хебба таким образом, что и без рснормалпзации процесса обучения вектор весов самостоятельно стремится к || к* || = I. О соответствии с правилом Ойи уточнение весов производится согласно выражению

(2.38)

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

Доказательство ограниченности весов, уточняемых по правилу РЛя, можно получить, заменяя скалярное выражение (2.38) векторной формой, которая с

учетом упрощения /) = I к в соответствии с (2.38) приобретает вид:

 

Дж= О - (и»т Сж) и».

(2.$9)

Стабильность процсссп обучения достигается, когда при достаточно

длительном обучении обеспечивается || Дж|| = 0, т.с.

 

Сж = (жг Сж)и».

(2.40)

Если собственное значение корреляционной матрицы С обозначить А, а век­ тор ж подбирать как связанный с ней собственный вектор, то по определению собственного значения имеем См'=А и*. Подставляя это выражение в формулу (2.39), получаем:

А =ж г Сж = жгА н-= Д М 2 .

(2.41)

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

2.7. Стохастическая модель нейрона

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

Встохастической модели нейрона выходкой сигналу/ принимает значения ±1

свероятностью РгоЬ(у/^± 1) = 1/(1 + схр ( + 2Д|//)), гдо щ обозначена взве­ шенная сумма входных сигналов /-го нейрона, а Д - это положительная константа, чаще всего равная 1, Процесс обучения нейрона в стохастической

модели состоит из следующих этапов:

N

• Расчет взвешенной суммы

и, в Е щ х{ для каждого нейрона сети.

|

/-о

Расчет вероятности того, что у/ принимает значение ±1 в соотоетсш1Н с формулой

РюЬ(уг- ±1) , +схр(Т2/Ц )

(2-42)

Генерация значения случайной переменной Л € (0,1) и формирование выходного сигналау/81 ±1, если К < РгоЪ (ю =±1) или у, =Т1 , в противном случае.

Определенный таким образом процесс осуществляется па случайно выб­ ранной группе нейронов, вследствие чего их состояние модифицируется в соответствии с предложенным правилом.

После фиксации состояния отобранных нейронов их весовые коэффициенты модифицируются по применяемому правилу уточнения весов. Например, при обучении с учителем по правилу Внлроу-Хоффа адаптация весов проводится по формуле

Д1Р4 -ц д

р М -у * ).

(2.43)

Доказано [51], что такой способ

подбора весов

приводит в результате

к минимизации целевой функции, определенной как среднеквадратичная погрешность

рассчитываемая по всем л нейронам н р обучающим выборкам.

Раздел 3

ОДНОНАПРАВЛЕННЫЕ МНОГОСЛОЙНЫЕ СЕТИ СИГМОИДАЛЬНОГО ТИПА

Объединенные между собой нейроны образуют систему, которая а дальнейшем будет называться искусственной нейронной сетью (сокращенно - ИКС). О зависимости от способа объединеши нейронов они могут быть сетями

однонаправленными либо рекуррентными (с обратной связью).

Среди различных известных видов ИНС наибольший интерес вызывает однонаправленная многослойная сеть МЬР, состоящая из нейронов сигмои­ дального типа, наиболее корректно называемая многослойным персептроном (МЬР - МиИ|ЬауегРегсср1гоп)1 [46,135]. Передача сигналов в таких сетях происходит только в одном направлении от входа к выходу. Их математи­ ческое описание относительно просто и прозрачно, а результат может быть выражен в виде точной функциональной зависимости влгебранчесхого типа. Методы обучения подобных сетей также достаточно просты н имеют несложную практическую реализацию. Обучение многослойною персептрона проводится, как правило, с учителем, а основная идея обучения состоит в подборе кортежей <*,</>, в которых л - входной вектор, а йГ—соответствую­ щий ему ожидаемый выходной вектор сети. Если векторы д: и Л не равны между собой, сеть называется гетсроассоциативной. В случае, когда .V = 4, сеть называется автоассоциативной. В сетях подобного типа используются персептронные модели нейронов либо их обобщенная форма в виде сигмоидальной модели.

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

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

1 Также встречается название "слоистая сеть”. - Прииеч. перев.

3.1. Однослойная сеть

Однослойную есть образуют нейроны, расположенные в одной плоскости (рис. 3.1). Каждый /-й нейрон имеет поляризацию (связь с весом и>л, по которой поступает единичный сигнал), а также множество связей с весами щ , по кото­ рым поступают входные сигналы х/. Значения весов подбираются в процессе обучения сети, состоящем в приближении выходных сигналов у, к ожидаемым значениям <//. Мерой близости считается значение целевой функции, также называемой стоимостной функцией. При использовании р обучающих векторов < V,</> для обучения сети, включающей А/ выходных нейронов, целевую функ­ цию можно определить эвклидовой метрикой вида

2 А»|

Г

- Н Ы * ’

<3-0

 

2 *=1/=1

 

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

Гис. 3.1. Структура однослойной си юнлальной нейронной сети

Расположенные на одном уровне нейроны функционируют независимо друг от друга, поэтому возможности такой сети ограничиваются свойствами отдельных нейронов. Веса нейронов образуют определенное пространство решений. Следует учитывать, что каждый нейрон реализует функциональ­ ное отображение у, - /( Х и ’д*,). Принимая во внимание, что сигмоидальная

функция .Д*) представляет собой непрерывный аналог одноступенчатой пороговой функции, можно заметить, что выходной сигнал нейрона (значение 1 или 0) будет зависеть от знака выражения Ён'ргу. Это уравнение линейно относительно весов щ . Выходной сигнал у/ при фиксированных значениях весов зависит от расположения входного пскторя .V, который определяет гипер­ плоскость, разделяющую многомерное пространство на два подпространства. Поэтому задача классификации (приписывания значения 0 или I выходному сигналу нейрона) может быть решена с помощью единственного нейрона, если

она относится к классу задач линейной сепарации (например, с применением

ЛОП1ЧССН1Х функций

или ОК).

Продемонстрируем

ограиичсшгосп. аоэмажностей однослойных сетей на

примере реализации двухвходовой логической функции ХОК [101]. 'Для упрощения будем использовать функцию активации в воде одноступенчатого порога. Множество данных для обучения логической функции ХОК представлено в табл. 3.1.

Таблица 3.1

Множество данных для обучения функции ХОН

*|

0

О

1

1

 

0

1

0

1

<1

0

1

1

0

Легко показать, что в этом случае невозможно провести единственную линию, разделяющую пространство данных на два подпространства, из которых одно

 

 

 

соответствовало бы

входному сигналу 1, а

 

 

 

другое -

0 (на рис.

3.2 заштрихованная об­

 

 

 

ласть относится х одному классу, а нсза-

 

 

 

шгриковаиная -

ко второму). Внутри заштри­

 

 

 

хованной области выходной сигнал нейрона

 

 

 

должен быть равен

1, а за сс пределами - 0.

 

 

 

Такое условие нс может быть выполнено при

 

 

 

использовании

для

разделения пространства

 

 

 

единственной

прямой (одного

нейрона)

 

 

 

независимо от значений параметров этой

 

 

 

прямой ( весов шм, №11, №12). Таким образом,

 

 

 

однослойный перссптрон нс в состоянии

 

 

 

реализовать даже такую несложную функцию,

Рис. 3.2. Иллюстрация невозмож­

хак ХОК. Эту проблему легко

разрешить

ности линейного разделения обу­

путем расширения искусственной нейронной

чающих данных, соответствую­

сети. С этой целью добавим в слой еще один

щих логической функции ХОК

нейрон

и подберем

веса обоих

нейронов

 

 

 

тахнм образом, чтобы они разделяли прост­

 

 

 

ранство на две части в зависимости от

 

 

 

входного

вектора х

=

[х|, хг]г: Ы|=№ц х\ +

+ №|2*2 + №|0 > 0

И

Н| = №11 Х| + №12*2 + №|0 < 0 (первый НвЙрОН) ИИ2 = №21 *1 +

+ №22*2 + №20> 0

И

И2 = ИЫДГ2 + №22*2 + №20 < О (вГОрОЙ НСЙрОН). Подбор ВССОВ

должен обеспечить разделение пространства, доказанное на рис. 3.3. Общая, часть подмножеств, соответствующая условиям Ы|>0, М2> 0, определила область, отде­ ленную от остального пространства, соответствующего условиям и\ <0, м2 < 0.

Рис. 3.4. Структура МНС, выполняющей функцию ХОЯ

Рис. З.Э. Решение проблемы мслиисПного ратлслсння путем применения двух лкнеПных

ратлсшпспсй

Добавлением на выходе сети еще одного слоя, состоящего из единственного нейрона, можно реализовать функцию логического суммирования, выделяющую общую часть подмножеств щ >О, «2>0. Окончательная структура ННС, выполняющей функцию ХОК, пред­ ставлена на рис. 3.4. Следует отме­ тить, что добавление в сеть допол­ нительного слоя позволило разре­ шить проблему невозможности ли­ нейного разделения данных. Каждый нейрон скрытого слоя осуществляет дополнительное линейное разде­ ление плоскости, причем граница такого раздела на области Л/>0 и и<<0 зависит от значений весов нейрона. Выходной слой выполняет соответствующую линейную ком­ бинацию (например, логическую сумму) подоблпстей, на которые множество входных данных было разделено нейронами скрытого слоя.

Несмотря на то, что однослойная сеть имеет небольшое практическое значение, ее продолжают использовать там,

щс для решения поставленной задачи достаточно и одного слоя нейронов.

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

3.2.Многослойный персептрон

3.2.1.Структура персептронной сети

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

многоспойиым персептроном [46, 135, 136].

г,

Рис. 3.5. Обобщенная структура двухслойной сигмоидальной нейронной сети (с одним

скрытым слоем )

На рис. 3.5 представлена сеть с одним скрытым слоем. Все последующие рассуждения относятся к сетям именно такого типа. Обозначения сигналов и весов также будут соответствовать этому рисунку. Веса нейронов скрытого слоя пометим верхним индексом (1), а выходного слоя - верхним индексом (2). Выходные сигналы нейронов скрытого слоя обозначим V] Ц = 1, 2, .... К), а выходного слоя - у] (/ = 1,2 ......М). Примем, что функция активации нейронов задана в сигмоидальной униполярной или биполярной форме. Для упрощения описания будем использовать расширенное обозначение входного вектора сети в виде х = [*о. хи т,у]Т, где дго = I соответствует единичному сигналу поляризации. С вектором д; связаны два входных вектора сети: вектор

фактических выходных сигналов у = [уо, у\, .... ул]г и вектор ожидаемых

выходных сигналов й = [</о>

4»/1г.

 

 

Цель обучения состоит о подборе таких значений весов

к

д и к всех

слоев сети, чтобы при заданном входном векторе х получить на выходе значения сигналов у/, которые с требуемой точностью будут совпадать с ожидаемыми значениями <// для I = I, 2, ...» Л/. Если рассматривать единичный поляри­ зационный сигнал как одни из компонентов входного вектора х, то веса поляризации можно добавить в векторы весов соответствующих нейронов обоих слоев. При таком подходе выходной сигнал г-го нейрона скрытого слоя удается описать функцией

в которой

индекс 0 соответствует сигналу к весам поляризации, причем

иц е I, хо з

1- В выходном слое *-й нейрон вырабатывает выходной сигнал,

определяемый кок

аз>

Из формулы (3.3) следует, что на значение выходного сигнала влияют веса обоих слоев, тогда как сигналы, вырабатываемые в скрытом слое, не зависят от весов выходного слоя.

3.2.2. Алгоритм обратного распространения ошибки

Алгоритм обратного распространения ошибки определяет стратегию подборе весов многослойной сети с применением градиентных методов оптимизащш. "Изобретенный заново" несколькораз [46], он в настоящее время считается одним из наиболее эффективных алгоритмов обучения многослойной сети. Его основу составляет целевая функция, формулируемая» как правило, в виде квадрогочной суммы разностей между фактическими и ожидаемыми значениями выходных сигналов. В случае единичной обучающей выборки (х, 4) целевая функция определяется в виде

« " '> = 4 x 0 ’. - ^

) ’

(1.4)

2 т.1

 

 

 

При большем количестве обучающих выборок /

(/ = 1. 2, .... р) целевая

функция превращается в сумму по всем выборкам

 

а д - Ш о

Р - ч

* 1»*

о .5)

2 /.ц .|

 

 

 

Уточнение весов может проводиться после предъявления каждой обучающей выборки (так называемый режим “онлайн") либо однократно после предьяв-