Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Компьютерные нейросетевые технологии..pdf
Скачиваний:
19
Добавлен:
15.11.2022
Размер:
3.01 Mб
Скачать

2. НАИБОЛЕЕ ПОПУЛЯРНЫЕ ВИДЫ НЕЙРОННЫХ СЕТЕЙ

2.1.Персептрон

Всередине 50-х годов была предложена одна из первых мо­ делей нейронных сетей, способных обучаться распознаванию простых образов. Эта модель - персептрон - состоит из бинар­ ных нейроподобных элементов и состоит из трех основных ком­ понент (рис. 2.1): «сетчатки», на которую подаются входные образы; набора бинарных нейроподобных элементов, связанных со слоем сетчатки («детекторы признаков»); бинарного нейро­ подобного элемента, связанного с детектором признаков («ре­ шающий элемент»).

Рис. 2.1. Персептрон

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

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

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

Обучающая выборка будет иметь вид:

* . 0 )

* - 0 ) rf,(')-<(')

* . ( 2)

хА2)

rf,(2)...rf„(2)

хт(Г)

х„(т)

Ф)-Мт)

Доказано, что двухслойный персептрон может выполнять опе­ рацию логического «И» над полупространствами, образованными гиперплоскостями первого слоя весов. Это позволяет формировать любые, возможно неограниченные, выпуклые области в простран­ стве входных сигналов. С помощью трехслойного персептрона, комбинируя логическими «ИЛИ» нужные выпуклые области мож­ но получить уже области решений произвольной формы и сложности, в том числе невыпуклые и несвязные. Многослойные персептроны с достаточным множеством внутренних нейроподоб­

ных элементов и соответствующей матрицей связей способны осуществлять любое отображение вход - выхода.

Алгоритм обучения многослойного персептрона (Back Propagation) работает следующим образом:

- весовым коэффициентам сети присваиваются малые слу­ чайные значения;

- вектор Д /) из обучающей выборки подается на вход сети;

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

каждого

элемента сети вычисляется

по формуле:

 

 

 

У/, =

.

где I - индекс слоя; i,j -

индексы элементов внутри слоя; at -

вес вязи оту’-го элемента ( / - /)-го слоя к г-му элементу /-го слоя. Синаптические веса модифицируются, начиная с последнего

слоя:

« / / ; ( ' +0 =а//,/(0+ г ^ / > Л - „

Для последнего слоя gj вычисляется как:

8j =y j(l - y j ) ( dj-y j)>

адля всех остальных слоев по формуле:

2 и = У и (1-У п )'Е & -и а щ -

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

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

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

Паралич сети

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

Локальные минимумы

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

мочь избежать этой ловушки, но они медленны.

Размер шага

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

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

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

Весовые коэффициенты связей между кластерными элемента­ ми постоянны и подчиняются зависимости вида, представленного на рис. 2.4:

Рис. 2.4. Коэффициенты связей между кластерными элементами

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

1.Весовым коэффициентам сети даются небольшие случай­ ные значения.

2.На вход сети подается сигнал.

3.Вычисление расстояния от входного сигнала до каждого нейрона по формуле:

где Xj- i-й элемент входного сигнала в момент времени /; а,у(/) - вес связи от /-го элемента входного сигнала к нейрону j в мо­ мент времени t.

4.Выбирается нейрон-победитель (номер / ) с наименьшим расстоянием.

5.Настраиваются веса нейрона /* и его соседей:

ао (t+ i)=a«(о+^'Х*/

(о)

Делается настраивание весов для нейронаj* и всех нейронов из его окрестности NE. Новые значения весов:

wu( ' + 0 = (0+r(0(*>(0-% ('))>

где r(/) - скорость обучения, которая уменьшается с течением

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

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

2.3. Сеть Хопфилда

Эта сеть показана на рис. 2.5.

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

Рис. 2.5. Сеть Хопфилда

Рис. 2.6. Нелинейности сети Хопфилда

Обучение происходит без учителя. Задача, выполняемая се­ тью, заключается в следующем: дан набор двоичных сигналов, ко­ торые считаются образцовыми, сеть должна из произвольного не­ идеального сигнала, поданного на ее вход, выделить соответст­ вующий образ. Для сети Хопфилда число запоминаемых образов т не должно превышать величины, примерно равной 0,15л, где п - число входов. Еще одно существенное ограничение накладывается на входные образы - они не должны быть сильно скоррелированы. Выходы нейронов системы могут принимать значения 1 или 0.

Нейроны сети Хопфилда иногда называют спинами. Взаи­ модействие спинов сети описывается выражением:

Е = М 2 ^ Х1хп

где Т - это матрица, связей организованная по правилу обучения Хебба:

в которую записывается М «образов» - Л^-мерных бинарных векто­ ров: Sm = (sml,sm2,..,srnA0. Таким образом, в сети Хопфилда мат­ рица связей является симметричной, а диагональные элементы матрицы полагаются равными нулю (Та = 0), что исключает эффект воздействия нейрона на самого себя. Подобные свойства опреде­ ляют тесную связь с реальными физическими веществами, назы­ ваемыми спиновыми стеклами. Все нейроны такой системы сво­ бодны, и их динамика определяется только локальным полем, вдоль которого они устанавливаются.

Различают два вида динамики: асинхронную и синхронную.

При асинхронной динамике

в дискретные моменты

времени

/= 1,2,..., случайным образом

выбирается какой-либо /-й

нейрон

и определяется локальное поле Л, действующее на него со стороны всех остальных нейронов сети:

N

Энергия отдельно взятого нейрона в этом поле Ei = -Л'Д*. Если состояние (знак) нейрона совпадает с направлением локального поля (2?/<0), то его положение энергетически устойчиво, и в по­ следующий момент времени состояние нейрона остается неизмен­ ным. В противном случае (Ei > 0) положение нейрона неустойчиво, и он меняет свой знак, переходя в состояние s,{t + 1) = — с энер­ гией E,(t + 1) < Et{t). Далее эта же процедура повторяется на другом случайно выбранном нейроне, причем локальное поле вычисляется с учетом изменений, произошедших на предыдущем такте. При каждом изменении состояния нейрона, энергия системы понижает­ ся. Это означает, что система за конечное число шагов перейдет в стабильное состояние. Полученное стабильное состояние сети будет соответствовать одному из образов, записанных в матрицу.

28

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

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

Алгоритм функционирования сети имеет следующий вид:

1. Первоначально коэффициенты устанавливаются таким образом:

т

ПРИ i * j

щ,

О, при i = j

где i wj - индексы входного и выходного нейронов; xik, xjk - /-й ij-й элементы вектора к-го образца.

2. На входы сети подается неизвестный сигнал. Его распро­ странение непосредственно устанавливает значения выходов:

yi{0)=x„i=0...n-\.

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

где/ -

нелинейность нейрона.

 

 

4.

Проверяем, изменились ли

выходные

значения выходов

за последнюю итерацию. Если изменились, то переходим к пунк­

ту 2, а

если выходы стабилизировались,

процесс

распознавания

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

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

п

т « ------- . 21пп

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

Примечание

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

2.4. Сеть Хемминга

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

30

стоянием Хемминга. Расстояние Хемминга определяется как число бит, различных у двух входных векторов фиксированной длины. Сеть Хемминга (рис. 2.7) имеет три слоя: входной слой с количест­ вом узлов, сколько имеется отдельных двоичных признаков; слой категорий (слой Хопфилда), с количеством узлов, сколько имеется категорий или классов; выходной слой, который отвечает числу узлов в слое категорий.

Обратная связь

*

Уу

Выходы

Рис. 2.7. Сеть Хемминга

На стадии инициализации весовым коэффициентам первого слоя и порогу активационной функции присваиваются следую­ щие значения:

wik =Х. /2 ;

Тк=п12,

здесь х / - |-й элемент к-го образца (паттерна), п - количество образцов.

Весовые коэффициенты тормозящих синапсов во втором слое берутся равными некоторой величине от 0 до Mm. Синапс нейрона, связанный с его же аксоном имеет вес +1.

Алгоритм функционирования сети Хемминга следующий:

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

У у 'М 4 = 1 * ^ + 2 }

Рис. 2.8. Звезда Гроссберга

После этого полученными значениями инициализируются значения аксонов второго слоя:

2. Вычисляются новые состояния нейронов второго слоя:

sf (р +0=yj {р) - е1]у{к] {р )

и значения их аксонов:

y ? { p + \) =f [ s ?( { p +\)].

Активационная функция / имеет кусочно-линейный вид, причем величина F должна быть достаточно большой.

3. Проверяется, изменились ли выходы нейронов второг слоя за последнюю итерацию. Если да - осуществляется пере­ ход к шагу 2, в противном случае - конец.

2.5. Звезда Гроссберга

Нейрон в форме входной звезды (рис. 2.8) имеет п входов Х\...ХП9 которым соответствуют веса W\..Х,„ и один выход Y, являющийся взвешенной суммой входов.

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

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

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

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

2.6. Сеть Counter Propagation (встречного распространения)

Эта сеть показана на рис. 2.9.

входном слой

Слой

Слой

Кохонсна

Гроссберга

 

Рис. 2.9. Сеть встречного распространения

Она предназначена для решения сложных классификацион­ ных задач при минимизации числа нейронов и времени обуче­ ния. В сети встречного распространения объединены два алго­ ритма обучения: самоорганизованная карта Кохонена и звезда Гроссберга (Grossberg Outstar). В процессе обучения входные векторы ассоциируются с соответствующими выходными век­ торами (двоичными или аналоговыми). Сеть способна формиро­ вать правильный сигнал, даже в случае неполного или искажен­ ного входного вектора. Обучающая выборка может содержать похожие входные сигналы, а сеть обязана активировать один нейрон Кохонена для любого из них. Выходы слоя Кохонена подаются на входы нейронов слоя Гроссберга. Обучение слоя Гроссбергаэто обучение «с учителем». Сеть пригодна для распознавания образов, восстановления образов (ассоциативная память) и сжатия данных (с потерями). К недостаткам следует отнести невозможность построения точных аппроксимаций, к преимуществам - простоту и быстрое построение начальных аппроксимаций. Такая сеть довольно быстро обучается.

Вопросы по материалам раздела 2

1.Какие отображения можно реализовать при помощи трех­ слойного персептрона?

2.В чем заключается идея алгоритма Back Propagation?

3.В чем особенность размещение нейронов в сети Кохонена?

4.Что такое расстояние Хемминга?

5.Какие задачи можно решать при помощи сети Хопфилда?