Смекни!
smekni.com

Нейрокомпьютерные системы (стр. 31 из 32)

где wij(t) - сила синапса от нейрона i к нейрону j ,в момент времени t, NETi - уровень возбуждения пресинаптического нейрона; NETj - уровень возбуждения постсинаптического нейрона.

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

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

Метод сигнального обучения Хэбба

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

где NETj - выход NET нейрона j; OUTi - выход нейрона i; w,. - вес связи нейрона i с нейроном j. Можно показать, что в этом случае линейная много­слойная сеть не является более мощной, чем однословная сеть; рассматриваемые возможности сети могут быть улуч­шены только введением нелинейности в передаточную функ­цию нейрона. Говорят, что сеть, использующая сигмои-дальную функцию активации и метод обучения Хэбба, обу­чается по сигнальному методу Хэбба. В этом случае урав­нение Хэбба модифицируется следующим образом:

где wij(t) - сила синапса от нейрона i к нейрону j в момент времени t, OUTi - выходной уровень пресинаптического нейрона равный F(NETi); OUTj - выходной уро­вень постсинаптического нейрона равный F(NETj).

Метод дифференциального обучения Хэбба

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

где wij(t) - сила синапса от нейрона i к нейрону j в момент времени t, OUTi(t) - выходной уровень пресинап-тического нейрона в момент времени t, OUTj(t) - выход­ной уровень постсинаптического нейрона в момент вре­мени t.

ВХОДНЫЕ И ВЫХОДНЫЕ ЗВЕЗДЫ

Много общих идей, используемых в искусственных нейронных сетях, прослеживаются в работах Гроссберга; в качестве примера можно указать конфигурации входных и выходных звезд [1], используемые во многих сетевых парадигмах. Входная звезда, как показано на рис. Б.1, состоит из нейрона, на который подается группа входов через синапсические веса. Выходная звезда, показанная на рис. Б.2, является нейроном, управляющим группой весов. Входные и выходные звезды могут быть взаимно соединены в сети любой сложности; Гроссберг рассматри­вает их как модель определенных биологических функций. Вид звезды определяет ее название, однако звезды обычно изображаются в сети иначе.

Обучение входной звезды

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

где wi - вес входа хi; хi - i-й вход; a - нормирующий коэффициент обучения, который имеет начальное значение 0,1 и постепенно уменьшается в процессе обучения. После завершения обучения предъявление входного вектора Х будет активизировать обученный входной ней­рон. Это можно рассматривать как единый обучающий цикл, если « установлен в 1, однако в этом случае исключается способность входной звезды к обобщению. Хорошо обучен­ная входная звезда будет реагировать не только на опре­деленный единичный вектор, но также и на незначительные изменения этого вектора. Это достигается постепенной настройкой нейронных весов при предъявлении в процессе обучения векторов, представляющих нормальные вариации входного вектора. Веса настраиваются таким образом, чтобы усреднить величины обучающих векторов, и нейроны получают способность реагировать на любой вектор этого класса.

Обучение выходной звезды

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

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

ОБУЧЕНИЕ ПЕРСЕПТРОНА

В 1957 г. Розенблатт [4] разработал модель, кото­рая вызвала большой интерес у исследователей. Несмотря на некоторые ограничения ее исходной формы, она стала основой для многих современных, наиболее сложных алго­ритмов обучения с учителем. Персептрон является на­столько важным, что вся гл. 2 посвящена его описанию; однако это описание является кратким и приводится в формате, несколько отличном от используемого в [4]. Персептрон является двухуровневой, нерекуррентной сетью, вид которой показан на рис. Б.З. Она использует алгоритм обучения с учителем; другими словами, обуча­ющая выборка состоит из множества входных векторов, для каждого из которых указан свой требуемый вектор цели. Компоненты входного вектора представлены непрерывным диапазоном значений; компоненты вектора цели являются двоичными величинами (0 или 1). После обучения сеть получает на входе набор непрерывных входов и вырабаты­вает требуемый выход в виде вектора с бинарными компо­нентами. Обучение осуществляется следующим образом: 1. Рандомизируются все веса сети в малые величины. 2. На вход сети подается входной обучающий вектор Х и вычисляется сигнал NET от каждого нейрона, исполь­зуя стандартное выражение

Вычисляется значение пороговой функции актива ции для сигнала NET от каждого нейрона следующим обра зом:

OUTj = 1, если NET больше чем порог qj,

OUTj = 0, в противном случае.

Здесь qj представляет собой порог, соответствующий нейрону j (в простейшем случае, все нейроны имеют один и тот же порог).

4. Вычисляется ошибка для каждого нейрона посредс­твом вычитания полученного выхода из требуемого выхода:

5. Каждый вес модифицируется следующим образом:

6. Повторяются шаги со второго по пятый до тех пор, пока ошибка не станет достаточно малой.

МЕТОД ОБУЧЕНИЯ УИДРОУ—ХОФФА

Как мы видели, персептрон ограничивается бинарными выходами. Уидроу вместе со студентом университета Хоф-фом расширили алгоритм обучения персептрона на случай непрерывных выходов, используя сигмоидальную функцию [5,6]. Кроме того, они разработали математическое дока­зательство того, что сеть при определенных условиях будет сходиться к любой функции, которую она может представить. Их первая модель - Адалин - имеет один выходной нейрон, более поздняя модель - Мадалин - рас­ширяет ее на случай с многими выходными нейронами. Выражения, описывающие процесс обучения Адалина, очень схожи с персептронными. Существенные отличия имеются в четвертом шаге, где используются непрерывные сигналы NET вместо бинарных OUT. Модифицированный шаг 4 в этом случае реализуется следующим образом: 4. Вычислить ошибку для каждого нейрона, вычитая сигнал NET из требуемого выхода:

МЕТОДЫ СТАТИСТИЧЕСКОГО ОБУЧЕНИЯ

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