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

IIS

.pdf
Скачиваний:
17
Добавлен:
27.03.2015
Размер:
1.77 Mб
Скачать

Сигмоидальная активационная функция, описываемая выражением

f (s)

f (s)

1

,

1 e

as

 

 

 

 

 

 

 

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

a

функ-

единич-

Рис. 12д представляет радиально-симметричную активационную функцию

 

 

s

2

 

 

 

 

 

2

f (s) e

 

 

 

 

,

с настроечным параметром

.

На рис. 12е приведена пороговая активационная функция

 

 

 

K, s a

 

 

 

 

K

 

 

,

 

 

f (s)

s,0 s a

 

 

a

0, s 0

 

 

 

 

 

 

 

 

 

 

 

имеющая два настроечных параметра:

K и a .

 

 

В нейронной сети между нейронами i

и

j могут быть установлены

направленные связи

(i, j) и

( j, i) , каждой из которых присваиваются, соответ-

ственно, веса wij и

w ji (синаптические веса) (рис. 13).

 

 

(j, i)

 

 

 

 

 

wji

 

 

 

 

i

(i, j)

 

 

j

 

 

 

 

...

wij

...

Рис. 13. Межнейронные связи

81

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

7.3. Классификация искусственных нейронных сетей

Конкретные типы архитектур ИНС различаются [12, 19]:

характером входных сигналов;

структурой сети;

типом обучения.

По характеру входных сигналов сети могут быть бинарными или аналого-

выми.

Бинарные сети принимают на свои входы сигналы, имеющие значения 0 или 1. Иногда рассматривают (как вариант бинарной сети) биполярные сети, оперирующие с сигналами, принимающими значения 1 или -1.

Аналоговые сети работают с сигналами из непрерывного спектра значений. Например, с нормированными сигналами, принимающими значения на от-

резке [-1, 1].

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

нейронные сети прямого распространения;

рекуррентные нейронные сети.

Нейронные сети прямого распространения обычно представляются в ви-

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

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

82

По типу обучения различают нейронные сети:

обучаемые с супервизором (с учителем);

обучаемые через самоорганизацию.

Обучение с учителем предполагает наличие множества обучающих шабло-

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

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

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

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

Многослойный персептрон представляет собой сеть прямого распростра-

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

83

В стандартной (регулярной) топологии персептрона каждый нейрон

j

( j 1,H

k 1

)

слоя

k

 

 

 

 

наптическими весами

1 w

(k

k ji

1, 2, ....., K 1)

на все нейроны

непосредственно воздействует с си-

i

(i 1,H

k

)

следующего слоя k

и ни

 

 

 

 

 

на какие другие

( H

k 1

, H

k

– соответственно, число нейронов в слое

k 1 и в

 

 

 

 

 

слое k ; k 0 и

k K 1 обозначают, соответственно, входной и выходной

слои). Схема многослойного персептрона стандартной топологии представлена на рис. 14.

х1

х2

....................... ................ хN

. . .

y1

. . . . . . . . .

y2

.. . . . . . . . . . . . . . . . . .................. .......................

 

. . .

yM

Входной

 

Выходной

слой

Скрытые слои

слой

Рис. 14. Многослойный персептрон стандартной топологии

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

Входной слой персептрона выполняет функции приема и ретрансляции входных сигналов x1, x2 , ..., xN на нейроны первого скрытого слоя. Основное

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

Обучение персептрона – это итеративный целенаправленный процесс изменения значений весов синаптических связей (и, возможно, порогов активационных функций нейронов), реализуемый «внешней» процедурой (алгоритмом

84

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

Тренировочный шаблон представляет собой пару векторов X ,Y , один

из которых X ( X1, X 2 , ..., X N ) – вектор известных входных сигналов, другой

Y (Y

, Y , ..., Y

) – вектор желаемых выходных сигналов. В процессе обуче-

1

2

M

 

 

 

 

X q

из тренировочного набора P { X q ,Y q , q

 

} последо-

ния векторы

1,Q

вательно подаются на вход ИНС и для каждого из них оценивается ошибка

между фактическим

y

q

и желаемым

Y

q

откликом (выходом) сети

 

 

eq 12 yq Y q 2, q 1,Q . Затем определяется общая ошибка

e

Q

 

 

 

e

q

 

q 1

 

 

 

 

, на ос-

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

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

В результате обучения сеть достигает способности правильно реагировать не только на шаблоны множества P , но и на другие допустимые возмущения, с которыми она никогда ранее не имела дела. В этом состоит уже упоминавшееся свойство ИНС обобщать. Ошибка в обобщении, которая может иметь место, определяется двумя причинами:

ограниченностью размеров сети, ведущей к недостаточному качеству аппроксимации;

ограниченностью объема обучающей выборки.

Схема, иллюстрирующая процесс обучения персептрона, представлена на рис. 15.

Рассмотрение проблемы обучения начнем с простейшего однослойного персептрона Розенблатта (рис. 16).

85

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

X11

X21

.............

XN1

 

Y11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X12

X2

2

.............

XN2

 

Y12

 

 

 

 

 

 

 

 

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

X1Q X2Q ............... XNQ

 

 

Y1Q

 

 

 

 

 

 

 

 

 

X1q

 

 

 

 

 

 

 

 

 

 

 

 

X2q

 

 

 

 

ИНС

 

XNq

 

...

 

wji , w0i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y21 .............

 

YM1

 

 

 

 

Y2

2 .............

 

YM2

 

 

 

 

 

 

 

 

 

. . . . . . . . .

 

 

 

 

. . . . . . . . .

 

 

 

 

. . . . . . . . .

 

 

 

 

 

 

 

 

 

Y2Q .............

 

 

YMQ

 

 

 

 

 

y1q

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y2q

 

 

 

 

 

 

 

 

 

 

...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

yMq

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ошибка

 

 

 

 

 

1

 

Q

 

 

 

2

 

 

 

 

e

 

 

 

q

Y q

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

q 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Алгоритм

обучения

Рис. 15. Схематическое представление процесса обучения многослойного персептрона

х1 y1

y2

х2

y3

хN yM

Рис. 16. Однослойный персептрон Розенблатта

86

Это нейронная сеть, имеющая

N

входов и один слой из

M

связующих

нейронов, передающих сигналы каждый на свой выход. Входной слой выпол-

няет

 

функции

приема

и

ретрансляции

входных сигналов

x

 

, x

2

, ....., x

N

на

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

нейроны скрытого слоя,

 

i -й связующий нейрон которого

(i 1, 2, ....., M )

осу-

ществляет нелинейное преобразование

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

yi g(si ) ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

 

 

w

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где

s

w

ji

x

j

 

сдвинутая на величину порога w

сумма взвешен-

 

 

 

i

 

j 1

 

0i

 

 

 

 

 

 

 

 

 

 

 

 

 

0i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ных входных сигналов;

 

 

 

 

 

 

 

 

w ji

синаптический вес связи

j -го нейрона входного слоя с

i -м нейро-

 

 

 

 

 

ном скрытого слоя;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

j

j -й входной сигнал сети (бинарный или непрерывный);

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g(s)

– ступенчатая активационная функция нейрона;

 

 

 

 

 

 

 

 

y

i

– переменная, характеризующая выход i-го интернейрона и принимаю-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

щая значения 0 или 1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

Розенблатта разделяет

N -мерное пространство входных сигналов на классы

гиперплоскостями:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

 

 

 

w

0 ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

ji

x

j

i 1, M .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j 1

 

 

 

0i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

2

M

.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для однослойного персептрона

Розенблатт использовал следующее пра-

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

ком высокий. Согласно этому правилу, веса связей w ji менялись после каждого

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

y

i

(t)

для поданного на вход очередного

 

 

 

 

вектора из набора шаблонов по следующей формуле:

w

ji

(t 1) w

ji

(t) [Y

(t) y

(t)]X

j

(t), j 1, N; i 1,M

 

 

i

i

 

 

где (0,1] настроечный параметр процедуры обучения.

,

87

Для обучения многослойных персептронов Вербосом в 1974 году был предложен алгоритм обратного распространения ошибки (АОР, или BPE – Back-Propagation Error).

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

e

1

Q M

q

 

2

( yi

 

q 1i 1

 

 

 

 

Y

q

)

2

 

 

i

 

 

, их приращения определяются по формулам:

wk ji

 

e

k

 

 

w

 

ji

, w

k

0i

 

 

e

wk

 

 

0i

,

j

1, H k 1

;

i 1, H k

;

k 1, K

1

,

где wkji синаптический вес связи j-го нейрона (k–1)-го слоя с i-м нейроном

 

 

k-го слоя;

w

k

порог активационной функции i-го нейрона k-го слоя;

0i

 

 

Hk

– число нейронов в k-м слое;

(0,1] настроечный параметр обучения.

Согласно правилу дифференцирования сложной функции, производная от

функции ошибки по

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w ji определяется как

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

e

 

 

 

e

 

dyk

 

sk

 

1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

i

k yk

 

 

 

 

(7.1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

wk

 

yk

 

dsk

 

 

i

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

wk

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ji

 

i

 

i

 

ji

 

 

 

 

 

 

 

 

где

k

сигнал на выходе i-го нейрона k-го слоя;

 

 

 

 

 

 

 

yi

 

 

 

 

 

 

 

 

k

 

H k 1

k

k 1

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w

сдвинутая на величину порога сумма взвешен-

 

si

w ji y j

 

 

 

 

 

 

j 1

 

 

 

0i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k

 

e

dy

k

 

e

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ных входных сигналов i-го нейрона k-го слоя;

 

 

i

 

 

.

i

yk

dsk

sk

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

i

 

i

 

Надо заметить, что выражение (7.1) и все дены для случая оценки локальной ошибки e

этому индекс шаблона везде опущен.

последующие выкладки приве-eq (для одного шаблона), по-

88

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

eyik

через выходы нейронов (k+1)-го слоя

 

 

H

 

 

k 1

k 1

 

H

 

 

e

 

k 1

e

dy j

s j

 

k 1

e

 

 

 

 

k

 

k 1

k 1

k

 

k 1

 

j1

 

j1

yi

 

y j

ds j

yi

 

y j

позволяет получить рекурсивную формулу

 

Hk 1

 

 

 

k

k

 

 

k 1wk 1

 

dyi

k

i

 

j 1

j

ij

 

 

 

 

 

dsi

k 1

 

dy

k 1

j

 

w

k 1

ij

ds

 

j

 

(7.2)

(7.3)

для пересчета величин ik со слоя k+1 на слой k (то, что называют обратным распространением ошибки).

Очевидно, для слоя K+1 (выходного слоя), с которого начинается обратное распространение ошибки,

 

K 1

y

K 1

j

j

 

 

Y

 

K 1

 

 

 

 

dy

 

 

j

 

j

K 1

 

 

 

 

ds

 

 

j

.

(7.4)

Таким образом, итерационная формула для коррекции значений синаптических весов принимает следующий вид:

k 1

k 1

k

(7.5)

w ji

i

 

y j , k K, K 1, .....,1, 0.

Аналогично получается итерационная формула коррекции значений поро-

гов активационных функций нейронов:

 

w

k 1

k 1

, k K , K 1, .....,1, 0.

(7.6)

 

i

0i

 

 

 

 

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

K 1

a y j Y j y j 1 y j .

(7.7)

j

В формуле (7.7)

K

y j y j

слоя персептрона.

В итоге общее описание образом:

1

сигнал на выходе j-го нейрона выходного

 

алгоритма BPE можно представить следующим

89

П1.

Инициализация синаптических весов

k

 

w ji и порогов активационных

 

функций

w

k

во всех слоях персептрона ( j 1, H k 1 ,

i 1, H k ,

 

0i

 

 

 

 

 

 

 

 

 

 

k 1, K 1) как маленьких величин, например отрезка [-1,1].

 

П2.

Выбор очередного шаблона X

q

,Y

q

из множества P случайным

 

 

 

образом или согласно определенному правилу.

 

П3.

Прямой ход: вычисление фактических выходов нейронов персептрона

 

по формуле:

 

 

 

 

 

 

y

k

 

i

 

 

 

Hk 1

k

k 1

f

 

 

 

w ji y j

 

j 1

 

 

 

 

 

 

wk 0i

  

,

i 1, H k

,

k

1, K

1

,

y0 j

X

j

;

вычисление ошибки и проверка критерия выхода из алгоритма.

П4. Обратный ход: коррекция значений синаптических весов и порогов активационных функций с использованием выражений (7.3)–(7.7).

П5. Переход к П2.

7.5. RBF-сеть

RBF-сеть (Radial Basis Function-network) представляет собой однослойную (по числу скрытых слоев) ИНС (рис. 17) прямого распространения, способную аппроксимировать произвольный набор непрерывных функций в базисе ради- ально-симметричных активационных функций нейронов с любой степенью точности, обучаясь с супервизором по простому алгоритму, не требующему рекурсии.

Аппроксимируемые функции задаются набором шаблонов

 

 

 

 

 

 

 

 

 

 

P X

q

,Y

q

, q 1,Q ,

 

 

 

 

 

 

 

 

 

 

 

 

где

X

q

X

q

, X

q

, ......, X

q

вектор переменных (аргументов) аппроксимиру-

 

1

 

2

N

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

емых функций, определяющий N-мерное пространство входных

 

 

 

 

сигналов RBF-сети;

 

 

 

 

 

 

 

Y q

Y q

, Y q , ......., Y q вектор соответствующих значений аппрокси-

 

 

 

 

 

 

1

 

2

 

M

 

 

 

 

мируемых функций, число которых M определяет количество вы-

ходов RBF-сети.

90

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]