Научная статья на тему 'Предварительная настройка ядерной нейронной сети'

Предварительная настройка ядерной нейронной сети Текст научной статьи по специальности «Математика»

CC BY
218
33
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Дорогов Александр Юрьевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The article multilayer neural networks with kernel organization are considered. The problems of initial setting of neural network synaptic card before learning procedure are investigated. The principles of optimum setting are offered. The formulas for calculation of synapses weights are obtained. The technique of static tutoring is represented.

Текст научной работы на тему «Предварительная настройка ядерной нейронной сети»

5L ((х )<Е)

(16)

Так как разрядность представления чисел в ЭВМ ограничена, то можно потребовать достижения максимальной точности, то есть положить

Е = 0,

(17)

-16

что обеспечивает точность расчета ~ 10

Рассмотренный алгоритм расчета функции Ланжевена с помощью подходящих дробей по формуле (6) с максимально допустимой машинной точностью практически реализован в системе МаНаЬ 5.3, рис. 2.

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

При дальнейшем увеличении аргумента количество ветвей цепной дроби (6) для достижения предельной точности возрастает. Однако, следует учесть, что при достижении аргументом х величины ~ 48 расчет функции Ланжевена с помощью цепной дроби по точности не отличается от расчета по определяющей формуле (1). Более того, анализ показывает, что при х > 48 гиперболический котангенс с двойной точностью равен машинной единице, и поэтому функцию Ланжевена удобнее рассчитывать по формуле

L (х) = 1 -

1

(18)

Рисунок 2 - Моделирование функции Ланжевена цепной

дробью

ВЫВОДЫ И ОБСУЖДЕНИЕ РЕЗУЛЬТАТОВ

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

которая дает такой же результат, как и формулы (1) и (6).

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

ПЕРЕЧЕНЬ ССЫЛОК

1. Е. Янке, Ф. Эмде, Ф. Леш. Специальные функции. - М.: Наука, 1968. - 344 с.

2. Краткий справочник физико-химических величин. / Под ред. К. Мищенко и А. Равделя. - Ленинград: Химия, 1974. -200 с.

3. Свойства элементов.Часть 1. Физические свойства. / Под ред. Г. В. Самсонова. - М.: Металлургия, 1978. - 600 с.

4. В. Я. Скоробогатько. Теория ветвящихся цепных дробей и ее применение в вычислительной математике. - М.: Наука, 1983. - 312 с.

5. А. Н. Хованский. Приложение цепных дробей и их обобщений к вопросам приближенного анализа. - М.: Госизд. ТТЛ, 1956. - 203 с.

6. Stern. Ueber der Kennzeichen der Convergenz eines Kettenbruches // J. Reine und angew. Math. 37 (1848), 255-272.

7. А. Я. Хинчин. Цепные дроби. - М.: Гос. изд. физ.-мат. лит., 1961. - 112 с.

YAK 681.32:007.52

ПРЕДВАРИТЕЛЬНАЯ НАСТРОЙКА ЯДЕРНОЙ НЕЙРОННОЙ СЕТИ

А.Ю.Дорогов

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

The article multilayer neural networks with kernel organization are considered. The problems of initial setting of neural network synaptic card before learning procedure are investigated. The principles of optimum setting are offered. The formulas for

calculation of synapses weights are obtained. The technique of static tutoring is represented.

ВВЕДЕНИЕ

Для обучения многослойных нейронных сетей в подавляющем большинстве случаев используется алгоритм Error Backpropagation [1] или его модификации. Алгоритм обучения данного класса предполагает, что начальные значения синаптических весов предварительно установ-

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

Можно выделить следующие цели статистической настройки:

- выполнить приведение истинных уровней входных и выходных данных к рабочему диапазону внутренних переменных сети;

- установить сеть в общее положение, позволяющее достигнуть глобального минимума;

- минимизировать вероятность паралича сети при обеспечении достаточной чувствительности к вариации параметров.

Для достижения указанных целей предлагается методика, основанная на двух эвристических принципах:

1) Принцип максимальной чувствительности. После статической настройки нейронная сеть должна обладать максимальной чувствительностью к вариации любого синаптического веса.

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

Кроме того, при статической настройки необходимо обеспечить минимальную вероятность паралича сети. Состояние паралича наблюдается, когда аргументы функций активации настолько велики, что выход нейрона практически не чувствителен к изменению отдельного синаптического веса. В статье рассматривается алгоритм статической настройки для ядерных нейронных сетей [2], но в равной мере он может быть использован для обычных полносвязанных нейронных сетей, поскольку они также принадлежат к классу ядерных сетей. На рис.1 показан пример трехслойной ядерной нейронной сети с ограниченными связями, где каждой вершине графа соответствует одиночный нейрон. В ядерных сетях нейроны объединяются в группы - нейронные ядра. Постулируется, что рецепторные поля нейронных ядер не пересекаются. Для ядерных нейронных сетей можно построить укрупненное графическое представление, в котором каждой вершине соответствует нейронное ядро. Такое представление называется структурной моделью ядерной нейронной сети.

На рис.2 показана структурная модель соответствующая нейронной сети приведенной на рис.1. На структурном уровне каждое нейронное ядро характеризуется парой чисел (р, g) , где р - размерность рецепторного поля, g -размерность аксонового поля нейронного ядра. Каждая

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

На рис.3 показана структурная модель классической полносвязанной нейронной сети.

Щ-У1

й-У2

Гз|-Уз

Щ-У 4

Щ-У 5

(2,4) Л,

(РУ)

(Р2£2)

Рисунок 1

(2,2)

Вз

Рисунок 2

(Аз

(4,3)

^ОННЗНХЗЬ-----

Р2 г 23 Гп-1.п

Рисунок 3 ФУНКЦИИ АКТИВАЦИИ

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

^ = £х(и)w(и) + w(*), у = /(^),

где и - номер входного рецептора, /( ) - нелинейная

функция активации, w(*) - смещение функции активации. Используются различные функции активации, но наибольшее распространение получили сигмоидная и

X

у

11

11

у

X

12

12

X

У

и

гиперболический тангенс. Сигмоидная функция определяется аналитическим выражением

f( s ) =

1

1 + e

-Я s

y С :и м >д Ht ie ф Ун кц ии

/ m*

f i 4

/ -л = 20 s

f(s) = th(i • s) =

,,2Яs _

,2 Я s

+1

y Гиперболичес

кИЙтан1'е

y = й(5ф

и имеет граничные значения /(—= 0, /(0) = 1/2, /(^) = 1 . Производная этой функции имеет вид

I = = м1 - /('))'/(5), /(0) = 4-.

Целесообразно выбрать значение X = 4 , в этом случае /'(0) = 1 . На рис.4 показаны графики сигмоидной функции с различным значением параметра X .

1,2 1

0,8 0,6 0,4 0,2 0

1,5 1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

0,5 0

-0,5 -1 -1,5

-1 -0,8 -0,6 -0,4 -0,2 0 0,2 0,4 0,6 0,8 1

Рисунок 5

АЛГОРИТМ СТАТИЧЕСКОЙ НАСТРОЙКИ

Обозначим весовые коэффициенты нейронных ядер через wim(и, V) , где г - номер ядра в слое т . Обработка данных для нейронного ядра определяется выражением

sm(v) = Z xi"(u)Wm(U v) + wm(*' v) '

u = 1

yf{ v) = f( sm ( v )),

(1)

-1 -0,8 -0,6 -0,4 -0,2 0 0,2 0,4 0,6 0,8 1

Рисунок 4

В нейронных сетях используемых для управления технологическими объектами в качестве функции активации часто используется гиперболический тангенс. В аналитическом виде эта функция имеет вид

с граничными значениями /(—= -1 , /(0) = 0 , /(^) = 1 . Производная от этой функции будет равна

= - = Х( 1 -/2 (5)), /'(0) = X .

( ¿2 X 5 + 1) 2

Целесообразно выбрать значение X = 1 , в этом случае /'(0) = 1 . На рис.5 показаны графики функции гиперболического тангенса с различным значением параметра X . Там же показана линейная функция с угловым коэффициентом равным 1. Линейная функция, как правило, используется в выходном слое нейронной сети и служит для согласования с истинными уровнями выходных данных.

где xm (u ) - входные переменные, pf1 - число рецепторов в ядре, u - номер рецептора, v - номер нейрона.

СТАТИЧЕСКАЯ НАСТРОЙКА ВХОДНОГО СЛОЯ

Рассмотрим некоторое ядро входного слоя ( m = 1 ). Для упрощения записи временно опустим идентифицирующие индексы слоя и номера ядра, тогда выражение (1) примет вид

Р

s(v) = Z x(u)w(u, v) + w( *, v), y(v) = f(s(v)). (2)

u = 1

Предположим, что значения весовых коэффициентов w(u, v) уже определены и пусть X(u ) среднее значение по обучающей выборке для координаты u входного вектора. Для рассмотренных функций активации максимум производной достигается когда s(u) = 0, поэтому, следуя принципу максимальной чувствительности из (2) получим следующее правило установки уровня смещения:

w( *, v) = - Z x(u)w(u, v).

u = 1

(3)

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

множества.

Найдем теперь правило настройки синаптических весов ядра. Пусть числа Ах (и) определяют ширину диапазона изменения входной переменной. Следуя принципу равного влияния необходимо принять

|Ах(и)w(и, V)| = А ,

(4)

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

Будем рассматривать входные переменные нейронной сети как случайные величины с равномерным законом распределения в диапазонах Ах(и) . Подставляя (3) в (2) придем к выражению

Р Р

я(V) = X (х(и) -х(и))w(и, V) + w( *, V) = ^ £(и, V).

и = 1 и = 1

Выполнение условия (4) приводит диапазоны изменения всех переменных и, V) к значению Ая , поэтому аргумент и можно опустить, полагая и, V) = V) . Случайная величина V) является центрированной с нулевым математическим ожиданием и равномерным законом распределения. Дисперсия случайной величины я(V) будет удовлетворять неравенству

В [ я (V )]< рВ[£( V)] = р (А2^

Р(я * яо )< Шй

( я0 ) 2

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

значении й/( я о)/йя = 0, 5 . Из выражений (5) и (6) при

Р = 0, 083 следует

1 < р (Ая/я0)2 .

Таблица

Тип функции f(я ) я0 /(я0) -/(-я0)

Сигмоидная А = 4 0,45 0,72

Сигмоидная А = 20 0,17 0,94

Гиперболический тангенс А = 1 0,85 1,38

Гиперболический тангенс А = 5 0,37 1,92

Отсюда можно получить значение Ая . Далее используя (4) получим следующую расчетную формулу

^(и, V)| =

_я0__1_

А(и '

(7)

(5)

Если случайные величины V) (для различных значений V ) независимы, тогда неравенство следует заменить равенством. Математическое ожидание случайной величины я(V) очевидно равно нулю. По теореме Чебышева вероятность того, что случайная величина я (V) отклонится от своего математического ожидания на величину больше я0 , равна

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

СТАТИЧЕСКАЯ НАСТРОЙКА СКРЫТЫХ СЛОЕВ

Для определенности будем полагать, что в скрытых слоях используются тангенциальные функции активации с А = 1 . В этом случае Ах(и) = 2 . Подставив в (7) получим следующую расчетную формулу

Чи, V)| =

я_0 _1_ 2 Лг

(6)

Для практических целей значение вероятности можно выбирать в диапазоне 0, 5 ± 0, 1 . Выбор величины я0 зависит от допустимого значения производной функции активации. Это величина определяет область значений

Эта формула справедлива в предположении, что входные величины х®( и) распределены равномерно в диапазоне [-1 + + 1 ] . Фактически о законе распределения можно сказать только, что он симметричен и что с большой вероятностью значения переменных лежат в диапазоне [/(-я0) + /(я0)] . Первое утверждение следует из того, что

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

твующих слоях. Наиболее вероятная ширина диапазона

переменных х™(и) для различных функций активации

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

,(и,v ^ = /стттг

1

/(-я0) - /(я0)

Уточненная формула позволяет увеличить начальную чувствительность сети к изменению параметров, сохранив при этом достаточно низкую вероятность паралича.

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

( *, V) = - X х™(и)(и, V) .

и = 1

Значения х™( и) определяются непосредственно из сети.

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

СТАТИЧЕСКАЯ НАСТРОЙКА КОНЕЧНОГО

СЛОЯ

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

Р

у(V) = X х(и)№(и, V) + №(*, V) (8)

и=1

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

№( *, V) = у (V) - X х(и) №(и, V). и=1

В[у(V)]< X (№(и, V))2В[х(и)]. (10)

и=1

Равенство выполняется в том случае, когда случайные величины х(и) независимы. Если все функции активации в предпоследнем слое одинаковы, то переменные х (и) имеют совпадающие диапазоны изменения. В предположении равномерного закона распределения эти случайные величины имеют и одинаковую дисперсию, которую обозначим Вх . Следуя принципу равного влияния в этом случае необходимо принять №(и, V) = №(V) . Тогда неравенство (10) можно переписать в виде

В [у ( V )]< Р ( № ( и, V )) 2 Вх

(1)

(9)

Значения х(и) - предпоследнего слоя определяются также как и для скрытых слоев. Определим теперь значения синаптических весов. Из выражений (8) следует

Поскольку при равномерном законе распределения В [у( V)] = (Ау (V ))2/12 и Вх = (Ах (V ))2/12 то из (11) следует следующая расчетная формула

№( V )| = ^.

Ах-Ур

Ширина диапазона Ах для тангенциальных функций равна 2, но может быть несколько уменьшена по тем же основаниям, что и для скрытых слоев. Знаки синап-тических весов, как и прежде, выбираются случайным образом. Смещения функций активации определяются, следуя формуле (9).

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

ПЕРЕЧЕНЬ ССЫЛОК

1. Горбань А.Н., Россиев Д.А. Нейронные сети на персональном компьютере. Новосибирск: Наука, 1996. 276с.

2. Дорогов А.Ю., Алексеев А.А. Математические модели быстрых нейронных сетей. // Сб. научн. тр. СПбГЭТУ "Системы управления и обработки информации". Вып.490, 1996, С.79-84.

i Надоели баннеры? Вы всегда можете отключить рекламу.