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

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

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

Для нейронных сетей аналогом алгоритма Ллойда считается алгоритм ^ТА (англ.: Штег Такех АН - Победитель получает все). В соответствии с ним после предъявления вектора х рассчитывается активность каждого нейрона. Победителем признается нейрон с самым сильным выходным сигналом, т.е. тог, для которого скалярное произведение ( Л ) оказывается наибольшим. В предыдущем разделе было показано, что при использовании нормализованных вехторов это равнозначно наименьшему эвклидовому расстоянию между входным вектором и вектором весов нейронов. Победитель получает право уточнить свои веса в направлении вектора х согласно правилу

н>„ *- н\,+г)С*-и'.)

(9.14)

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

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

Помимо алгоритмов У/ТА, в которых в каждой итерации может обучаться только один нейрон, для обучения сетей с самоорганизацией широко применяются алгоритмы типа ЧГГМ (англ.: Штег Така Мох( - Победитель получает больше), в которых, кроме победителя, уточняют значения своих весов

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

"V «- Щ+1?,С(#.к)[к- ж,)

(9.15)

для всех » нейронов, расположенных в окрестности победителя. В приведенной формуле коэффициент обучения адкаждого нейрона отделен от его расстояния до предъявленного вектора х функцией <7(/,дг). Если <7(/,д) определяется в форме

[1

для

/ =

<?<!>) =

для

(9.16)

/

где и> обозначает номер победителя, то мы получаем классический алгоритм \УТА. Существует множество вариантов алгоритма Ч/ТМ, отли­ чающихся прежде всего формой функции 6{1,х). Для дальнейшего изучения выберем два из них: классический алгоритм Кохонена и алгоритм нейрон­ ного газа.

1 Название С\УТА происходит от антийского названия алгоритма Сомскпсе Шнпег ТакаЖ

9.2.1. Алгоритм Кохонена

Алгоритм Кохонена относится к наиболее старым алгоритмам обучения сетей с самоорганизацией на основе конкуренции, и в настоящее время

существуют различные его

версии.

В классическом

алгоритме

Кохоне­

на сеть инициализируется

путем

приписывания

нейронам

опреде­

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

соседями. В классическом алгоритме

Кохонена функция соседства С (/, х)

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

 

I

для

С(г.х) =

(9.17)

Одля / * и'

Вэтом выражении </(/,№) может обозначать как эвклидово расстояние между векторами весов иейроиа-побсдитсля IV и /-го нейрона, так и расстояние, измеряемое количеством нейронов. Коэффициент 1 выступает в роли уровня соседства, его значение уменьшается в процессе обучения до нуля. Соседство такого рода называется прямоугольный.

Другой тип соседства, часто применяемый в картах Кохонена, - это соседство гауссовского типа, при котором функция <?(/, х) определяется формулой

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

9.2.2. Алгоритм нейронного Газа

Значительно лучшую самоорганизацию сети и ускорение сходимости алгоритма У/ТМ можно получить применением метода, предложенного М.Мартинесом, С. Берковичем и К. Шультеном в работе [94] и названного авторами алгоритмом нейронного гоэп из-за подобия его динамики движению молекул газа.

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

<«/| <т/, <...<</„_!

(9.19)

где </*=||дг - нг„(|)|| обозначает удаленность /-го нейрона, занимающего в результате сортировки /л-ю позицию в послсдовательноспг, возглавляемой нейрономпобсдитслсм, которому сопоставлена удоленноегь а*о- Значение функции соседства для /-го нейрона С(/,дг) определяется по формуле

С (» .д О = е х ^ - ^ р |,

(9.20)

в которой л?(0 обозначает очередность, полученную п результате сортировки (гл(/) - 0, I, 2, .... п - 1), а А - параметр, аналогичный уровню соседства в алгоритме Кохоиснв, уменьшающийся с течением времени. При А = 0 адаптации подвергается только нсйрои-побсдитель, и алгоритм превращается в обычный алгоритм №ТА, но при А * 0 уточнению подлежат веса многих нейронов, причем уровень уточнения зависит от величины С(/,дс), Алгоритм нейронного газа напоминает стратегию нечетких множеств, в соответствии с которой каждому нейрону приписывается значение функции принадлежности к окрестности, определенной соотношением (9.20).

Для достижения хороших результатов самоорганизации процесс обучен! должен начинаться с большого значения А однако с течением времеш! его величи­ на уменьшается до нуля. Изменение А(А) может быть линейным или показатель­ ным. В работе [134] предложено изменять значение А(А) в соответствии с

выражением

« -Ч

& Г

 

( 2

У '*т

(9.21)

где А(А) обозначает значение А на *-й итерации, а Ал;п и Ащ» - принятые минимальное н максимальное значения А соответственно. Коэффициент Лгщи определяет максимальное заданное количество итераций.

Коэффициент обучения /-го нейрона Г)( (*) тоже может изменяться как линейно, так и показательно, причем его степенная изменчивость определяется формулой

>

?

,

(

*

)

=

<9 И>

в которой 7/Х0) обозначает начальное значение коэффициента обучения, а »|га|а - априорно заданное минимальное значение, соответствующее к - *т1ж. На практике наилучшис результаты самооргаш1зацш[ достигаются при линейной изменении н именно эта стратегия реализована в режиме Ш А Б1 программы Кокоп.

1 Название ЫОЛ5 происходит от английского ивзванля нейронного газа № м и /д о .

Для сокращения объема вычислений, необходимых для реализации алгоритма нейронного газа, можно применить определенное упрощение, состоящее о учете при сортировке только нейронов с наиболее значимой величиной функции С(»,лг). При этом используется зависимость (9.20), в соответствии с которой если м(|) » I, то значение С(/',дс) = 0, Например, если принять К = 3 Д, то при сортировке нейронов, а в последующем - и при их адаптации можно ограничиться только первыми К элементами.

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

9.2.3. Сравнение алгоритмов самоорганизации

Приведенные выше алгоритмы сравнивались при решении задачи восстановления двухмерных обучающих данных сложной структуры, представленной на рис. 9.2. Для восстановления данных использовались два множества нейронов, включающих 20 к 400 элементов, которые при идеальном упорядочении позиции нейронов будут отражать распределение обучающих данных. Они должны группироваться в областях максимальной концентрации данных. На рис. 9.3 приведены результаты самоорганизации 40 нейронов при использовании трех алгоритмов, представленных в настоящем разделе: СОТА (рис. 9.3п), нейронного газа (рис. 9.36) и алгоритма Кохонсив (рис. 9.3с). Для сравнения на рис. 9.4 приведены тс же самые отоброжсиия сетью, состоящей из 200 нейронов.

Рис. 9.2. Распределение двухмерных данных, использованных для тестирования

рис. 93. Восстановление данных с рис. 9.2 самооргощцующсЛся сетью Кохонена,

состоящей щ 40 нейронов, при испапьтованпи:

а) алгоритма С Ш А ; б) алгоритма нейронного газа; а) классического алгоритма Кохонена

А п ео р и т м \УГА е и в я а н и зи о и ут ом ления

Сие. 9.4. Восстановление данных с рис. 9.2 самоорганизующейся сетью Кохонена, состоящей И1 200 нейронов, при использовании:

л) алгоритма С\УТА; б) алгоритма нейронного газа; «) классическогоалгоритма Кохоисиа

Независимо от количества нейронов нанлучшис результаты самоорганизации были получены с использованием алгоритмов СОТА и нейронного газа, причем последний из-за необходимости сортировки оказался значительно более медлен* ным, чем СОТА. Оригинальный алгоритм Кохоиена и обоих случаях оставался наихудшим, нс обеспечивая хорошего восстановления данных (определенное количество нейронов размещалось в областях, свободных от данных).

Объективное количественное сравнение результатов самоорганизации можно получить при сопоставлении расчетной погрешности квантования Еч (формула (9.13)) для каждого случая. При 200 нейронах получены значения Ея = 0,007139 - для СОТА, Еч = 0,007050 - для нейронного газа и Бч = 0,010763 - для алго­ ритма Кохоиена. При 40 нейронах результаты следующие: Еч= 0,01741 б (СОТА), Ед = 0,017599 (нейронный газ) и Еч = 0,02539 (алгоритм Кохоиена). Численные показатели подтверждают эрнтелыюс восприятие качества восстановления данных, согласно которому алгоритмы СОТА ]| нейронного газа дают сходные (и нанлучшис) результаты, а алгоритм Кохонена наименее эффективен.

9.3.Сеть восстановления одно-

идвухмерных данных

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

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

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

данныхдвухмерных и -однооосстанолления Сам .3.0

Рис. 9.5. Иллюстрация восстановления сетью К оклю ш рааномерпо распределенных двухмерных данных: о) эллиптическая фигура; б) треугольная фигура; а) прямоугольная фигура; «?) составная фигура

 

 

 

 

 

 

 

 

<9

»

 

 

 

 

 

 

 

 

 

 

 

" X

 

0 .9

 

 

 

 

 

 

»

 

 

 

 

 

 

 

 

 

 

 

 

/ о

°

° о ° \

0 .0

1

а о ° °

 

° о

 

 

/

 

О

О

Оо

 

 

\

 

 

 

 

 

 

 

I

 

 

о

О О

о

н

|

 

 

 

 

 

 

 

4

 

 

 

1

0 .4

 

 

 

 

 

 

и

 

 

. .

. .

 

 

 

 

 

 

V

 

 

 

 

 

 

\

0<ь

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

®

О

 

У

 

0 ,2

N .

0

о

 

Л

0

.

о О

------------------

 

 

°

О0

.

^

.

I

 

 

0 .4

 

 

О,В

I

 

>

*

0

0 .2

 

0 .6

 

0

0.2

 

0 .4

0 ,0

0 .9

• ) 1

 

 

 

 

 

 

 

«>

1

 

 

 

 

 

0.9

 

 

 

 

 

 

°оч

0.8

/

у И -

\

 

0 .6

&

 

 

 

 

 

0.9

 

 

Л

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

(

 

 

 

 

0.4

V

 

 

 

 

1

0.4

 

 

 

 

0,2

 

 

 

 

0.2

 

 

 

 

01---------

 

1---------

1---------

 

1---------

 

 

0л ---------

■---------

1-------------------

 

 

п

 

 

 

 

 

 

 

 

 

 

 

 

 

0.0

О

0 .2

0.4

 

0,9

 

0,9

О

0.2

 

0 ,4

0 .0

Рис. 9.6. Иллюстрация последовательности обучения самоорганизующейся сети Кохонена при использовании алгоритма нейронного гвта

Рнс. 9.7. Восстановление сложных кривых самоорганизующимися нейронами Кохонсн*

Также хорошие результаты получаются при восстановлении самоор­ ганизующейся сетью одномерных данных. На рис. 9.6 для примера проил­ люстрирован процесс самоорганизации 40 нейронов, отображающих эллипсовидную структуру (позиции нейронов обозначены окружностями). Рис. 9.6а представляет начальное состояние весов нейронов, рис. 9.66 - состояние после двух циклов обучения, рис. 9.6в - состояние после пяти циклов обучения, рис. 9.6г - конечное состояние (после десяти циклов) весов на фоне обучающих данных, образующих эллипсовидную структуру. Сеть обучалась программой Кокон по алгоритму нейронного газа. На рис. 9.7 приведены результаты упорядочения нейронов при восстановлении фигур различной структуры, образованных данными на плоскости (дг, у). В каждом случае веса нейронов группировались в областях присутствия данных таким образом, чтобы погрешность квантования была мини­ мальной.

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

9.4. Восстановление Сэммона

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

мерном пространстве.

 

Пусть имеется п /^-мерных векторов

(/ = 1, 2, .... л). В соответствии

с ними определяются п векторов в А/-мерном пространстве (Л/ = 2, 3), обозначаемых у|. Расстояния между векторами в ЛГ-мсрном пространстве будем обозначать =(и, у;), а в ААмерном пространстве <1ц = (и, у/}. Для определения расстояния между векторами можно использовать любую метрику, в частности эвклидову. Задача нелинейного восстановления Сэммона состоит в таком подборе векторов у, чтобы минимизировать функцию