Многослойные однонаправленные сети

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

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

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

Пусть сеть состоит из К слоев: одного входного, одного выходного и (K >-2) скрытых слоев, — каждый слой состоит из n ( k ) нейронов. Набор выходных сигналов нейронов k - ro слоя ( k = 1: K ) обозначим . Далее обозначим wk набор весов синаптических связей, соединяющих нейроны k - 1-го слоя с нейронами k -го слоя; многослойные однонаправленные сети - student2.ru — вес связи, соединяющий i - й нейрон k -1-го слоя c j -м нейроном k -го слоя многослойные однонаправленные сети - student2.ru Т огда прямое функционирование сети описывается следующими соотношениями:

y 1 = x

многослойные однонаправленные сети - student2.ru — выход нейронной сети.

многослойные однонаправленные сети - student2.ru

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

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

многослойные однонаправленные сети - student2.ru ,где

h — параметр (шаг обучения);

d — эталонное (требуемое) значение выхода элемента.

Таким образом, изменение силы связей происходит в соответствии с ошибкой выходного сигнала 5 = ( d — у) и уровнем активности входного элемента х.. Обобщение дельта-правила , называемое обратным распространением ошибки ( Back — propagation ), применимо к сетям с любым числом слоев.

Обучение сети в этом случае состоит из следующих шагов:

1. Выбрать очередную обучающую пару ( х , d ). Подать входной вектор на вход сети.

2. Вычислить выход сети у.

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

4. Подкорректировать веса сети так, чтобы минимизировать ошибку.

5. Повторять шаги с 1-го по 4-й для каждой обучающей пары, пока ошибка не достигнет приемлемого уровня.

Ошибка функционирования сети обычно определяется как

многослойные однонаправленные сети - student2.ru ,где

у j = многослойные однонаправленные сети - student2.ru — выход сети.

Для уменьшения этой ошибки следует изменить веса сети по правилу

многослойные однонаправленные сети - student2.ru

Эта формула описывает процесс градиентного спуска в пространстве весов. Очевидно, для выходного слоя

многослойные однонаправленные сети - student2.ru

Так как

многослойные однонаправленные сети - student2.ru

то для промежуточных (скрытых)слоев (то есть для

многослойные однонаправленные сети - student2.ru

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

многослойные однонаправленные сети - student2.ru - для выходного слоя;

многослойные однонаправленные сети - student2.ru - для скрытых cлоев,

тогда многослойные однонаправленные сети - student2.ru

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

Область применения многослойных нейросетей обусловлена тем, что они аппроксимируют отображение многослойные однонаправленные сети - student2.ru используя для этого предварительное обучение на наборах тренировочных данных (х 1 , d 1 ), ( x 2 , d 2 ), ..., ( xL , dL ), где de = F ( xe ). Таким образом, сеть можно рассматривать как модель у = φ ( х ) реального объекта у = F ( x ) . Доказаны теоремы о том, что с помощью сети с обратным распространением ошибок можно аппроксимировать любую функцию с любой точностью.

ПОЛНОСВЯЗНЫЕ СЕТИ ХОПФИЛДА

Сеть Хопфилда (представлена на рис. 6.4) — однослойная сеть. Все нейроны связаны друг с другом связями wij , причем сигнал с выхода нейрона может подаваться на его же вход и необязательно wij = wji .

многослойные однонаправленные сети - student2.ru

Рис. 6.4. Полносвязная сеть Хопфилда

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

Выберем функцию элементов в виде:

многослойные однонаправленные сети - student2.ru

Состояние сети — множество текущих значений сигналов х от всех нейронов. Функционирование сети геометрически может быть представлено как движение вектора х , характеризующего состояние сети, на кубе [0,1]п. Когда подается но вый входной вектор, сеть переходит из вершины в вершину, пока не стабилизируется. Устойчивая вершина определяется сетевыми весами, текущими входами и величиной порога. Если входной вектор частично неправилен или неполон, то сеть стабилизируется в вершине, ближайшей к желаемой.

В общем случае все возможные состояния сети образуют некое подобие холмистой поверхности, а текущие состояния сети аналогичны положениям тяжелого шарика, пущенного на эту поверхность, — он движется вниз по склону в ближайший локальный минимум. Каждая точка поверхности соответствует некоторому сочетанию активностей нейронов в сети, а высота подъема поверхности в данной точке характеризует «энергию» этого состояния. Энергия данного сочетания активностей определяется как сумма весов связей между парами активных нейронов, взятая со знаком минус (при 0 = 0).

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

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

многослойные однонаправленные сети - student2.ru

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

Изменение состояния какого-либо элемента сети всегда вызывает уменьшение энергии сети. Действительно, пусть изменил свое состояние элемент k ( k = 1 : n ) , то есть его состояние изменилось с +1 на 0 (или -1) или наоборот, тогда

многослойные однонаправленные сети - student2.ru

Видно, что в результате изменения k - ro элемента ∆ Ek ≤ 0, ∆ Ek = 0,, когда в сети не происходит никаких изменений. Благодаря такому непрерывному стремлению к уменьшению энергия, в конце концов, должна достигнуть минимума и прекратить изменение. По определению такая сеть является устойчивой. Сети Хопфил да называются также сетями, минимизирующими свою энергию. Сети Хопфилда имеют многочисленные применения. Некоторые из них связаны со способностью этих сетей запоминать , а затем восстанавливать даже по неполной входной информации различные образы. Другие применения связаны с возможностью использования сетей Хопфилда для решения оптимизационных задач.

Наши рекомендации