Другие журналы

научное издание МГТУ им. Н.Э. Баумана

НАУКА и ОБРАЗОВАНИЕ

Издатель ФГБОУ ВПО "МГТУ им. Н.Э. Баумана". Эл № ФС 77 - 48211.  ISSN 1994-0408

Ассоциативная нейронная сеть СМАС Часть II Процессы обучения, ускоренное обучение, влияние помех, устранение влияния помех в двухслойной сети

#8 август 2004

Э

Э.Д. Аведьян, д-р техн. наук

Институт проблем управления РАН

 

Ассоциативная нейронная сеть СМАС

 

Часть II

 

Процессы обучения, ускоренное обучение, влияние помех, устранение влияния помех в двухслойной сети

 

В части I настоящей работы [1] была описана ассоциативная нейронная сеть СМАС, название которой происходит от первых букв ее полного английского названия: Cerebellar Model Articulation, (мозжечковая модель суставного регулятора). Были представлены алгоритм обучения этой сети и ее система базисных функций.

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

 

1.     ПРОЦЕССЫ ОБУЧЕНИЯ НЕЙРОННОЙ СЕТИ СМАС

В настоящем разделе описываются результаты процессов обучения нейронной сети, которые позволяют ответить на вопрос, какие функции сеть воспроизводит хорошо и какие плохо и как влияет параметр p* на качество и скорость обучения, они дополняют результаты исследования точности воспроизведения функций нейронной сетью, которые приведены в работе [2].

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

                  (1)

где y(x1, x2) — запоминаемая функция; ŷ(i)(x1, x2; n) — воспроизведенная нейронной сетью функция после n-го шага обучения; i — номер реализации обучающей последовательности, либо значением осредненного по реализациям относительного среднего стандартного отклонения, задаваемого выражением

                                                         (2)

где K — число реализаций. Компоненты входного вектора x статистически независимы, равномерно распределены на отрезках  и представляют собой последовательности типа дискретного белого шума. Результаты исследований сведены в таблицы и иллюстрируются рисунками, построенными средствами системы MatLAB. Таблицы представляют информацию о зависимости точности аппроксимации функции от числа шагов обучения и числа активных ячеек памяти p*. Исследуемые функции непрерывных аргументов определены на квадрате , и после квантования входного пространства они оказываются заданными на сетке 33х33, которая содержит 1089 узлов, т.е. функции заданы в 1089 точках.

 

1.1. ЛИНЕЙНАЯ ФУНКЦИЯ

Запоминаемая линейная функция

y(x1, x2)=ax1+bx2+c, где a=5, b=10, c=9                     (3)

определяет плоскость в трехмерном пространстве. Результаты процесса обучения представлены в табл. 1, где приведены значения мгновенного критерия аппроксимации Ei[n](1) в зависимости от числа шагов обучения n, числа активных ячеек памяти p* и соответствующего объема памяти M (размерности вектора w). Поскольку до начала процесса обучения память нейронной сети СМАС принята нулевой, то и аппроксимирующая функция до начала обучения равна нулю: ŷ(i)(x1, x2; 0)=0 и, следовательно, значение критериев аппроксимации (1), (2) до начала процесса обучения равно единице:

E[0]=E1[0]=1.

Таблица 1.

p*

M

n=0

n=125

n=250

n=500

n=1000

n=2000

n=4000

p*=2

578

1,0000

0,5603

0,3619

0,1708

0,0455

0,0112

0,0011

p*=4

324

1,0000

0,1439

0,0508

0,0197

0,0069

0,0011

0,0002

p*=8

200

1,0000

0,0207

0,0393

0,0023

0,0014

0,0005

0,0001

p*=16

144

1,0000

0,0100

0,0044

0,0013

0,0008

0,0001

0,0000

p*=32

128

1,0000

0,0010

0,0010

0,0002

0,0001

0,0000

0,0000

 

Из анализа табл. 1 можно сделать следующие выводы:

• линейная функция с большой точностью может быть аппроксимирована нейронной сетью СМАС при любом значении параметра p*;

• увеличение числа активных ячеек p* и, следовательно, уменьшение объема необходимой памяти M приводит к увеличению скорости сходимости процесса обучения;

• при наибольшем значении параметра p* = 32 процесс обучения может быть завершен при предъявлении измерений, число которых в несколько раз меньше числа возможных значений линейной функции.

 

1.2. СТУПЕНЧАТАЯ ФУНКЦИЯ I

Запоминаемая нелинейная ступенчатая функция

                                  (4)

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

Таблица 2.

p*

M

n=0

n=125

n=250

n=500

n=2000

n=8000

n=32000

p*=2

578

1,0000

0,5524

0,3439

0,1512

0,0142

0,0014

0,0006

p*=4

324

1,0000

0,2118

0,0694

0,0283

0,0064

0,0024

0,0003

p*=8

200

1,0000

0,0746

0,0264

0,0213

0,0054

0,0011

0,0000

p*=16

144

1,0000

0,0365

0,0169

0,0119

0,0033

0,0003

0,0000

p*=32

128

1,0000

0,0260

0,0150

0,0123

0,0039

0,0002

0,0000

 

Из анализа табл. 2 следует, что функция (4) может быть точно восстановлена нейронной сетью, однако для этого требуется большее число шагов обучения, чем для линейной функции (З).

 

1.3. СТУПЕНЧАТАЯ ФУНКЦИЯ II

У запоминаемой нелинейной ступенчатой функции

                           (5)

плоскость скачка составляет 45° с осями координат. данные Ei[n](1), характеризующие процесс обучения, приведены в табл. З.

Таблица 3.

p*

M

n=0

n=125

n=250

n=500

n=1000

n=4000

n=16000

p*=2

578

1,0000

0,5938

0,3588

0,1638

0,0618

0,0124

0,0115

p*=4

324

1,0000

0,1856

0,0459

0,0426

0,0324

0,0236

0,0264

p*=8

200

1,0000

0,0665

0,0498

0,0486

0,0407

0,0409

0,0557

p*=16

144

1,0000

0,1067

0,0942

0,1452

0,0683

0,0829

0,0833

p*=32

128

1,0000

0,1626

0,1098

0,1401

0,1687

0,1012

0,1634

 

Из анализа табл. З следует, что наличие произвольного скачка в функции приводит к невозможности точного восстановления этой функции даже при наименьшем значении параметра p* = 2 (как уже отмечалось, при p* = 1 любая функция, заданная на конечной сетке, может быть восстановлена абсолютно точно, поскольку этот случай соответствует табличному способу запоминания функции). Процесс обучения при больших значениях параметра p* = 16 или p* = 32 заканчивается быстро, приблизительно на 250-м шаге при довольно высоком значении ошибки аппроксимации δapp=Ei1/2 составляющей около 35% абсолютного значения функции. Процесс обучения при значении параметра p* = 2 заканчивается приблизительно на 2000-м шаге, при этом значение ошибки аппроксимации δapp=Ei1/2  составляет около 10% абсолютного значения функции. Увеличение числа шагов обучения не улучшает значение критерия аппроксимации (1).

На рис. 1a показана функция (5), а на рис. 1b— ее аппроксимация на 16000-м шаге (параметр p* = 2) при значении Ei[n]=0,0130 (1). Практически это предельная точность, которая может быть достигнута нейронной сетью СМАС в этой задаче. Как следует из рис. 1b, наибольшая ошибка аппроксимации сосредоточена вдоль линии скачка; эта ошибка подобна эффекту Гибса при разложении разрывных функций в ряд Фурье.

Рис. 1a. Запоминаемая функция (5)                               Рис. 1b. Воспроизведенная функция (5)
(
p*=2, n=16000, Ei[n]=0,0130)

Увеличение параметра p* ухудшает предельную точность аппроксимации, разрыв оказывается более сглаженным, а ошибка более пространственно коррелированной, чем при небольших значениях параметра p*. Это утверждение хорошо иллюстрируется рис. 1с и 1d, где показана восстановленная сетью функция (5) на 4000-м шаге обучения при значениях параметра p = 4 и p* = 8, значения критерия Ei[n] равны 0,0227 и 0,0425 соответственно.

Рис. 1c. Воспроизведенная функция (5)                                    Рис. 1d. Воспроизведенная функция(5)
(
p*=4, n=4000, Ei[n]=0,0227)                                              (p*=8, p*=2, Ei[n]=0,0425)

 

1.4. СТУПЕНЧАТАЯ ФУНКЦИЯ III

Нелинейная ступенчатая функция

        (6)

типа “брусок на плоскости” принадлежит к функциям, которые также не могут быть точно восстановлены нейронной семью СМАС несмотря на то, что плоскости скачков ориентированы вдоль осей координат. Результаты обучения нейронной сети по запоминанию этой функции приведены в табл. 4, где, как и ранее, приведены значения мгновенного критерия точности аппроксимации в зависимости от числа шагов обучения и значения параметра p*.

Таблица 4.

p*

M

n=0

n=125

n=250

n=500

n=1000

n=2000

n=4000

p*=2

578

1,0000

0,5911

0,3726

0,1415

0,0575

0,0332

0,0153

p*=4

324

1,0000

0,1803

0,1003

0,0726

0,0537

0,0312

0,0355

p*=8

200

1,0000

0,1797

0,1382

0,0594

0,0543

0,0516

0,0484

p*=16

144

1,0000

0,2683

0,2140

0,1874

0,1377

0,2059

0,2211

p*=32

128

1,0000

0,2312

0,2139

0,2694

0,3250

0,2275

0,2842

 

Запоминаемая и воспроизведенная функции показаны соответственно на рис. 2а и 2b при p* = 2, n = 4000, Ei[n]=0,0157. Качественно влияние параметра p* на точность восстановления и на время сходимости в рассматриваемом случае аналогично процессам, описанным выше при восстановлении ступенчатой функции II(5). Время сходимости при p* = 2 приблизительно равно 4000 шагам, при p* = 4— 2000 шагам, при p* =8—1000 шагам, при p* = 16—250шагам,прир = = 32— 250 шагам.

 

Рис. 2a. Запоминаемая функция (6)                               Рис. 2b. Воспроизведенная функция (6)
(
p*=2, n=4000, Ei[n]=0,0157)

 

1.5. ГЛАДКАЯ НЕЛИНЕЙНАЯ ФУНКЦИЯ

Запоминаемая нелинейная функция

     (7)

заданная, как и все предыдущие тестовые функции, на сетке 33x33, также не может быть точно восстановлена

с помощью нейронной сети СМАС, однако точность ее восстановления растет по мере уменьшения параметра

p*, достигая практически абсолютной точности на 16000-м шаге обучения при p* = 2.

На рис. Зa и 3b показаны запоминаемая и воспроизведенная функции при p* = 4, n = 500, Ei[n]=0,0181.

Рис 3a. Запоминаемая функция (7)                                Рис. 3b. Воспроизведенная функция (7)
(
p*=4, n=500, Ei[n]=0,0181)

 

Результаты обучения приведены в табл. 5.

Таблица 5.

p*

M

n=0

n=125

n=250

n=500

n=1000

n=4000

n=16000

p*=2

578

1,0000

0,5518

0,3544

0,1605

0,0440

0,0007

0,0000

p*=4

324

1,0000

0,1605

0,0589

0,0184

0,0078

0,0035

0,0035

p*=8

200

1,0000

0,0561

0,0291

0,0248

0,0248

0,0234

0,0220

p*=16

144

1,0000

0,4161

0,2897

0,2088

0,1960

0,2009

0,1860

p*=32

128

1,0000

0,3849

0,2052

0,2173

0,2002

0,1946

0,1917

 

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

Отметим высокую точность оценивания при p* = 4 на 500-м шаге обучения, а также тот факт, что восстановление функции (7) при p* = 2 достигается практически абсолютно точно на 16000-м шаге обучения.

 

2. УСКОРЕННОЕ ОБУЧЕНИЕ НЕЙРОННОЙ СЕТИ СМАС

В первой части статьи [1] отмечалось, что итеративный алгоритм обучения нейронной сети СМАС предложил Альбус [3], исходя из здравого смысла и основываясь на успешных результатах моделирования. Милитцер и Паркс [4] показали, что алгоритм обучения СМАС представляет собой итеративную процедуру решения системы линейных алгебраических уравнений, и привели доказательство сходимости алгоритма. Аведьян и Хормель [5] отметили, что алгоритм обучения СМАС, предложенный Альбусом, является частным случаем известного алгоритма Качмажа [6, 7], и, базируясь на полученных ранее результатах относительно модифицированных алгоритмов Качмажа [8] предложили и исследовали алгоритмы обучения сети с большей скоростью сходимости [5] которые особенно важны в применении к нестационарным системам.

 

2.1. МОДИФИЦИРОВАННЫЙ АЛГОРИТМ АЛЬБУСА—КАЧМАЖА ОБУЧЕНИЯ

НЕЙРОННОЙ СЕТИ СМАС

Повышение скорости сходимости модифицированного алгоритма [8-10] достигается за счет изменения принципа построения алгоритма Качмажа, в котором каждая очередная точка последовательности w[n] является результатом ортогонального проектирования предыдущей точки w[n-1] на очередную n-ю гиперплоскость. В модифицированном алгоритме очередная точка w[n] вычисляется в результате ортогонального проектирования точки w[n-1] на пересечение последних l гиперплоскостей aT(x[m]) w=y[m], m=n, n-1,…,n-1+1, которые должны быть линейно независимы, а параметр l, называемый глубиной памяти алгоритма, должен удовлетворять условию lM, где M — размерность искомого вектора w*. Напомним [1], что a(x) является M-мерным ассоциативным вектором, который однозначно связан с вектором аргументов x посредством вектора m номеров активных ячеек памяти по следующему правилу: элементы вектора , номера которых совпадают с номерами активных ячеек памяти, равны единице, все остальные элементы вектора a равны нулю. Очевидно, что алгоритм Качмажа является частным случаем модифицированных алгоритмов, когда глубина памяти l=1.

Наиболее простую форму модифицированные алгоритмы получили в работе [8]. Эти алгоритмы применительно к задаче обучения нейронной сети СМАС имеют вид

              (8)

где матрица Rl-1[n-1], являющаяся функцией последних l-1 входных векторов x[m], m=n-1,…,l+1, может быть вычислена по формуле

              (9)

где I— единичная матрица, а матрица Al-1[n-1], размера Mx(l-1) имеет вид

                  (10)

Матрица Rl-1[n-1] может быть вычислена рекуррентно в соответствии со следующей процедурой:

              (11)

где ,а матрица R0[n-l]=I

Согласно процедуре (11), на каждом шаге измерений n необходимо запоминать матрицу Al-1[n-1] (10), вектор - столбцы которой необходимы для выполнения (l-1)-й итерации для вычисления матрицы Rl-1[n-1].

Непосредственное применение соотношений (8)—(11) для повышения скорости сходимости обучения нейронной сети СМАС сталкивается с проблемой размерности, поскольку размерность вектора a(x) может достигать нескольких сотен тысяч, а операции с матрицами таких размеров оказываются практически невозможными.

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

в правой части формулы (8), выполнив (l-1)итераций над матрицей R[·](11). Другой путь вычисления вектора коррекции основан на применении приведенной в работах [8, 11] эквивалентной соотношению (8) рекуррентной процедуры:

              (12)

где e = (1, 0, 0,…, 0) — единичный l-мерный вектор, а матрица Al[n] размера Mхl согласно (10) имеет вид

           (13)

Из рекуррентной процедуры (12) следует, что на каждом шаге n необходимо вычислить матрицу размера lхl

                 (14)

Элементы первого столбца матрицы (14) согласно (12) образуют весовые коэффициенты βn,n, βn,n-1,…, βn,n-l+1 вектора коррекции памяти сети w[n-1].

Матрица B[n] позволяет представить алгоритм (12) в следующей форме:

                 (15)

где вектор

                     (16)

Поскольку вектор a(x[n]) — бинарный вектор, элементами которого являются ровно p* единиц и (M-p*)нулей, то величины αn-i,n-i, необходимые для вычисления матрицы B[n] (14), равны числу общих активных элементов памяти нейронной сети на (n-i)-м и (n-j)-м шагах обучения, которое, очевидно, меньше или равно p*. Очевидно также, что αn-i,n-I=p*i.

Для выполнения вычислений алгоритм (15) и (16) полезно представить в покомпонентной форме, аналогичной алгоритму Альбуса—Качмажа [1].

                             (17)

                        (18)

Отметим также, что в силу бинарных свойств вектора a(x[n]) корректирующее слагаемое  в правой части алгоритма (17) может принимать только 2l-1 различных значений. Этот вывод иллюстрируется имеющим большую скорость сходимости, чем алгоритм Альбуса—Качмажа, модифицированным алгоритмом, когда l=2. Поскольку в этом случае вектор  (16) определяется выражением

то алгоритм (17) и (18) можно записать в следующей форме:

       (19)

                   (20)

                   (21)

                                                              (22)

где  — относительное общее число единичных элементов векторов a[n] и a[n-1].

Отметим некоторые особенности алгоритма (19)-(22) при l = 2, которые характерны для модифицированного

алгоритма при произвольных lM.

Если входной вектор a[n] ортогонален предыдущему вектору a[n-1],то коэффициент  уравнения (19)—(22) переходят в обычный алгоритм Альбуса—Качмажа [1]. Если входной вектор a[n] параллелен вектору a[n-1], то , выражение в знаменателе соотношений (20) и (21) равно нулю и вычисления по этим соотношениям оказываются невозможными.

 

2.2. ХАРАКТЕРНЫЕ ОСОБЕННОСТИ МОДИФИЦИРОВАННОГО АЛГОРИТМА

АЛЬБУСА—КАЧМАЖА

Перечисленные ниже особенности модифицированного алгоритма Альбуса—Качмажа порождены принципом его построения, когда очередная оценка w[n] вычисляется в результате ортогонального проецирования предыдущей оценки w[n-1] на пересечение последних l гиперплоскостей. Это проецирование может быть выполнено только тогда, когда все ‚последних l векторов  линейно независимы. В этом случае неотрицательно определенная матрица Грама (14) положительно определена и имеет обратную, так что вектор  (16), определяющий направление коррекции вектора памяти w[n-1], может быть вычислен.

·        Если вектор a[n] линейно зависит от предыдущих l-1 векторов a[n-m], , то определитель матрицы Грама оказывается равным нулю и решение в виде соотношений (15) и (16) невозможно. Линейная зависимость вектора a[n] фактически означает, что измерения (y[n], a[n]), а несут дополнительной информации о решении w*[n] по сравнению с предыдущими l-1 измерениями. Заметим, что этот вывод справедлив в случае, когда решение w*[n] существует и когда отсутствуют помехи измерений. Поэтому в том случае, когда матрица Грама оказывается вырожденной, соответствующее n-е измерение следует отбросить и положить w[n]=w[n-1.]

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

·        Если система уравнений, которую пытается решить алгоритм обучения, несовместна, например, в силу аддитивных помех измерений на выходную переменную y[n] то оценки, порождаемые как алгоритмом Альбуса—Качмажа, так и модифицированным алгоритмом, сходятся в “зону захвата” [4]. Размер этой зоны увеличивается с ростом глубины памяти ‚алгоритма, и, следовательно, чем выше быстродействие алгоритма, тем более он чувствителен к помехам измерений.

·        Наибольшая чувствительность алгоритма к помехам измерений проявляется тогда, когда при очередном измерении (y[n], a[n]) матрица Грама оказывается плохо определенной. Степень определенности матрицы Грама может быть охарактеризована значением ее определителя, которое задает тот уровень порога, ниже которого не следует использовать измерения для вычисления оценки w[n].

·        Модифицированный алгоритм Альбуса—Качмажа в виде (17) соответствует режиму, когда число наблюдений nl при условии, что все входные векторы a[n-m],  линейно независимы. Для вынесения оценок с первого шага измерений глубину памяти следует делать переменной, т.е. положить , где lvar переменная глубина памяти переходного режима.

·        Обычно эффективность модифицированного алгоритма проявляется в случае, когда входной вектор a[n] медленно изменяется во времени. Это имеет место при циклическом процессе обучения, когда входная последовательность порождается сканированием всего пространства входов либо когда входная последовательность представляет собой стационарную случайную последовательность с медленно убывающей корреляционной функцией. В этом случае, как правило, коэффициенты αn-i,n-j≠0. Если же в процессе обучения входные точки значительно удалены друг от друга, то модифицированный алгоритм не дает выгоды по сравнению с обычным алгоритмом Альбуса—Качмажа. Это имеет место, например, при чисто случайном процессе обучения, когда очередная точка предъявляется статистически независимо от того, какая была предъявлена точка на предыдущем шаге.

 

2.3. РЕЗУЛЬТАТЫ ЧИСЛЕННЫХ ЭКСПЕРИМЕНТОВ

Ниже приведены сравнительные результаты моделирования модифицированного и обычного алгоритмов Альбуса—Качмажа, описанные в работе [5]. Они представляют собой типичные результаты циклического обучения СМАС по запоминанию и воспроизведению функции  заданной на квадрате  в дискретных точках  с помощью обычного (“Альбус”) и модифицированного (“Альбус-2”) алгоритма с глубиной памяти l=2.

Фактически при обучении СМАС используется функция дискретных аргументов

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

Таблица 6.

Номер

Время, мин.

Отклонение

E[n],%

 

шага

“Альбус”

“Альбус - 2”

“Альбус”

“Альбус - 2”

0

0,1

0,1

100

100

289

0,4

0,5

5,69

2,96

578

0,8

0,8

2,08

0,55

867

1,1

1,1

0,74

0,13

1156

1,4

1,5

0,29

0,05

1445

1,7

1,8

0,10

0,02

1734

2,1

2,2

0,05

0,01

2023

2,4

2,5

0,02

0,00

2312

2,7

2,8

0,01

0,00

2601

3,0

3,2

0,01

0,00

2890

3,4

3,5

0,01

0,00

 

 

Примечание. Длина шага обучения и шага контроля равна 6.

 

 

Таблица 7.

Номер

Время, мин.

Отклонение

E[n],%

 

шага

“Альбус”

“Альбус - 2”

“Альбус”

“Альбус - 2”

0

0,5

0,5

100

100

289

1,2

1,3

7,23

5,21

578

2,0

2,0

4,04

4,04

867

2,7

2,8

4,16

4,08

1156

3,5

3,5

4,08

4,08

1445

4,2

4,3

4,06

4,07

1734

4,9

5,1

4,07

4,07

2023

5,7

5,8

4,07

4,07

2312

6,4

6,6

4,07

4,07

2601

7,2

7,3

4,07

4,07

2890

7,9

8,1

4,07

4,07

 

 

Примечание. Длина шага обучения равна 6, длина шага контроля - 3

 

 

Каждая строка в этих таблицах соответствует повторной обработке всех возможных входных данных, общее число которых равно 289.

Значения мгновенного относительного среднего стандартного отклонения (1) в процентах задаются выражением

            (23)

где y(x1, x2) — значение функции в точке (x1, x2);  — прогноз-оценка значения функции y(x1, x2) вычисляемая СМАС на n-м шаге обучения.

Числовые данные, приведенные в табл. 6 и 7, соответствуют стандартному способу кодирования координат x1 и x2 функции y(x1, x2) который был описан в [1]. Значения критерия (23), приведенные в табл. 6, вычислялись в тех же 289 точках, по которым проводилось обучение (длина шага контроля и шага обучения равна б). Значения критерия (23), приведенные в табл. 7, вычислялись по тем же значениям весовых коэффициентов w[n], которые были получены для случая, описанного в табл. 6, однако по большему числу точек контроля, чем число точек обучения (соответственно 1156 и 289), поскольку длина шага контроля равна 3, а длина шага обучения — б. Данные табл. 6 и 7 характеризуют скорость обучения СМАС с помощью обычного и модифицированного алгоритмов Альбуса—Качмажа, а данные табл. 7 отражают также и высокие интерполяционные свойства обученной нейронной сети, позволяющие ей оценивать функцию с большой точностью в точках, которые в процессе обучения ей не предъявлялись. В данном случае ошибка составляет около 4 %, хотя число необученных точек в три раза превышает число точек обучения.

Данные, приведенные в табл. 8, характеризуют влияние hash-кодирования [12] на процессы обучения СМАС с помощью обычного и модифицированных алгоритмов Альбуса—Качмажа. Задача hash-кодирования заключается в уменьшении объема требуемой памяти и решается следующим образом: с помощью генератора случайных чисел каждому элементу памяти сети (большая часть) ставится в соответствие элемент памяти меньшего объема (малая память). Очевидно, что при этом нескольким элементам большой памяти может соответствовать один элемент малой памяти, что неизбежно приводит к ошибкам при запоминании функции с помощью нейронной сети. Фактически hash-кодирование эквивалентно внесению помех измерений, что подтверждается табл. 8. Объем малой памяти, непосредственно использованный СМАС в процессе обучения и тестирования применительно к табл. 8, приблизительно в три раза меньше большого объема памяти. Данные этой таблицы подтверждают сделанный ранее вывод о том, что характеризующая зону захвата установившаяся ошибка в случае модифицированного алгоритма больше, чем ошибка обычного алгоритма Альбуса—Качмажа (соответственно 12 и 6%).

Таблица 8.

Номер

Время, мин.

Отклонение

E[n],%

 

шага

“Альбус”

“Альбус - 2”

“Альбус”

“Альбус - 2”

0

0,1

0,1

100

100

289

0,4

0,4

34,73

24,98

578

0,8

0,8

24,20

15,87

867

1,1

1,1

14,87

13,13

1156

1,4

1,4

10,88

21,71

1445

1,7

1,8

8,73

12,53

1734

2,0

2,1

7,78

12,43

2023

2,4

2,4

6,97

12,39

2312

2,7

2,7

6,47

12,36

2601

3,0

3,1

6,38

12,34

2890

3,3

3,4

6,27

12,32

 

 

Примечание. Длина шага обучения и шага контроля равна 6. Hash-кодирование

 

 

Из табл. 6—8 следует, что скорость сходимости модифицированного алгоритма выше скорости обычно го алгоритма Альбуса—Качмажа, а вычислительные затраты весьма незначительно превышают вычислитель ные затраты обычного алгоритма Альбуса—Качмажа. Более того, поскольку скорость сходимости модифицированного алгоритма выше скорости обычного алгоритма Альбуса—Качмажа, а обычный алгоритм Альбуса—Качмажа менее чувствителен к помехам измерений, целесообразно объединить положительные свойства этих алгоритмов, обучая СМАС на начальном этапе с помощью модифицированного алгоритма, а при подходе к зоне притяжения переключаясь на обычный алгоритм обучения.

 

3. ВЛИЯНИЕ ПОМЕХ НА ПРОЦЕСС ОБУЧЕНИЯ

НЕЙРОННОЙ СЕТИ СМАС

Рассмотрим влияние помех измерений на процесс обучения в этой сети. Как уже отмечалось, алгоритм обучения нейронной сети СМАС представляет собой частный случай алгоритма Качмажа, и, следовательно, влияние помех на процесс обучения нейронной сети аналогичен влиянию помех на процесс обучения с помощью алгоритма Качмажа. К сожалению, определить аналитическую зависимость между статистическими свойствами помех измерений и точностью оценивания с помощью алгоритма Качмажа можно только в самых исключительных случаях, например, когда помеха измерений и входной процесс представляют собой статистически независимые дискретные белые шумы. Поскольку входным процессом для нейронной сети является бинарный M-мерный вектор a(x[n],) элементы которого равны нулю и единице, то даже в случае, когда вектор аргументов x[n] — дискретный белый шум, процесс a(x[n]) таковым не является: математическое ожидание процесса a(x[n]) очевидно, не равно нулю и между компонентами вектора a(x[n]) существует корреляция в силу алгоритма нелинейного преобразования аргументов [1].

Рассмотрим случай, когда нейронная сеть СМАС запоминает y1(x[n]) по наблюдениям

                                                  (24)

где x[n] и ξ[n] — статистически взаимно независимые дискретные белые шумы; ξ[n] — помеха измерений с дисперсией .

Для простоты последующего изложения положим, не теряя общности, что функция y1(x[n]). В этом случае выход сети  [1]представляет собой ошибку аппроксимации. Для исследования этой ошибки представим теперь алгоритм обучения сети [1] в следующем виде:

                   (25)

Умножим обе части уравнения (25) на соответствующие транспонированные части и усредним по случайному входному процессу x[n] и помехе ξ[n]. Тогда в силу статистической независимости w(n-1) от ξ[n] и x[n] получим

             (26)

В соотношении (26) E{·} обозначает операцию математического ожидания соответствующей случайной величины, В установившемся состоянии после переходного процесса E{wT[n]w[n]}=E{wT[n-1]w[n-1]} и, следовательно, в установившемся состоянии

                                                   (27)

Выражение иwT[n-1]a[n] в соотношении (27) определяет выход сети при значении памяти после (n-1)-го шага обучения для любого входного вектора a[n] и поэтому после переходного процесса дисперсия ошибки аппроксимации оказывается равной независимо от значения коэффициента p*. Отсюда следует важный вывод, что нейронная сеть СМАС в исходной форме не подавляет влияние помех.

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

Можно объяснить это свойство также, опираясь на алгоритм нелинейного преобразования аргументов [1]: после завершения переходного процесса обучения вектор памяти w[n], который определяет аппроксимирующую функцию, становится стационарным случайным процессом. Значение этой функции в некоторой точке x1 равно сумме p* элементов вектора памяти w[n], номера которых определяются ассоциативным вектором a(x1). Значение же аппроксимирующей функции в точке x2, соседней к точке x1, также равно сумме p* элементов вектора памяти и номера которых определяются ассоциативным вектором a(x2). Поскольку векторы x1 и x2 близки, то, в соответствии с алгоритмом нелинейного преобразования аргументов, у них имеется некоторое число общих номеров активных ячеек, при чем это число увеличивается с увеличением числа активных элементов памяти p*. Следовательно, увеличение параметра p* приводит к увеличению корреляции между соседними значениями аппроксимирующей функции.

На рис. 4а и 4bпоказана восстановленная нейронной сетью СМАС линейная функции (3), когда “белая” помеха измерений равномерно распределена на интервале [-2, 2] с дисперсией  = 1,3333 при значениях параметра p* = 2 и p* = 8 соответственно. Оценки дисперсии ошибки в обоих случаях близки и равны соответственно , где

                     (28)

Рис. 4a. Воспроизведенная линейная функция (3) при равномерно распределенной “белой” помехе на интервале [-2, 2] (p*=2, n=8000, =1,4428)

Рис 4b. Воспроизведенная линейная функция (3) при равномерно распределенной “белой” помехе на интервале [-2, 2] (p*=2, n=8000, =1,4746)

Эти рисунки полностью подтверждают предыдущие выводы о характере влияния помех измерений на восстановление функций с помощью нейронной сети: функция  на рис. 4b (p* = 8) существенно более сглажена, чем функция на рис. 4а (p* = 2) при практически равном значении ошибки аппроксимации. Число шагов обучения (n = 8000) выбрано заведомо больше времени обучения для гарантии стационарности ошибки аппроксимации.

 

4. УСТРАНЕНИЕ ВЛИЯНИЯ ПОМЕХ

В ДВУХСЛОЙНОЙ НЕЙРОННОЙ СЕТИ СМАС

Предыдущие результаты показывают, что нейронная сеть СМАС не подавляет помехи измерений. Она только изменяет их спектральные свойства. В этой связи возникает задача придания фильтрующих свойств этой сети, позволяющих устранить влияние помех измерений.

 

4.1. СТРУКТУРА ДВУХСЛОЙНОЙ НЕЙРОННОЙ СЕТИ

Есть несколько способов устранения влияния помех на точность восстановления функций нейронной сетью СМАС. Все они основываются на модели наблюдений (24) запоминаемой функции и требуют внесения коррекции в алгоритм Альбуса—Качмажа.

♦ Первый способ, реализуемый практически только для сети небольшой размерности, заключается в замене алгоритма Альбуса—Качмажа на абсолютно оптимальные либо на абсолютно оптимальные на классе алгоритмы адаптации [13, 14], к которым, как частный случай, принадлежит рекуррентный метод наименьших квадратов.

♦ Второй способ основывается на применении процедуры типа Роббинса—Монро. Он заключается в том, что в алгоритм Альбуса—Качмажа вводится параметр γ[n] (шаг алгоритма), являющийся функцией числа измерений и удовлетворяющий условиям сходимости: Σγ[n] расходится, а Σγ2[n] сходится. Алгоритм обучения Альбуса—Качмажа в этом случае имеет вид

                     (29)

                                                   (30)

Выбор закона убывания γ[n] представляет трудную задачу, так что алгоритм (29), (30) вряд ли может быть использован для обучения нейронной сети.

♦ Третий способ основывается на том, что не расходящиеся алгоритмы обучения с постоянным шагом γ[n]=γ=const порождают асимптотически несмещенные оценки (если таковые существуют), т.е. в асимптотике такие оценки представляют собой случайные процессы, математическое ожидание которых равно истинным весовым коэффициентам w*. К таким алгоритмам относится алгоритм Качмажа. Из этого следует вывод, что оптимальные оценки весовых коэффициентов w* могут быть получены осреднением по времени оценок w[n]. Желательно, чтобы осреднение начиналось после окончания переходного процесса. Момент окончания переходного процесса нетрудно оценить в каждом конкретном случае (см., например, табл. 1—5). Этот способ применительно к нейронной сети СМАС кажется наиболее перспективным и может быть реализован следующим образом [16].

К существующей нейронной сети СМАС добавляется второй слой, предназначенный для вычисления и хранения осредненных весовых коэффициентов w(2)[] где  = n-n0 — номер шага осреднения, а n0 — момент начала осреднения. На каждом шаге  = n-n0 процедуре осреднения подвергаются только p* активных весовых коэффициентов w[n] поскольку неактивные коэффициенты остаются неизменными. При реализации процедуры осреднения необходимо знать числа

γ [], , образующие M-мерный вектор γ [] которые показывают, сколько раз с момента осреднения весовые коэффициенты были активными. Таким образом, во втором слое нейронной сети СМАС хранятся два M-мерных вектора и w [] и γ []. Процедура осреднения в покомпонентной форме имеет следующий вид:

     (31)

           (32)

где

 

4.2. ПРИМЕРЫ ПРОЦЕССОВ ОБУЧЕНИЯДВУХСЛОЙНОЙ НЕЙРОННОЙ СЕТИ СМАС

В УСЛОВИЯХ ПОМЕХ

Приведем результаты процессов обучения двухслойной нейронной сети СМАС по запоминанию искаженных помехами измерений функций двух аргументов, которые были исследованы в п. 1: линейной функции (3), ступенчатой функции II (5) и гладкой нелинейной функции (7). При отсутствии помех первая функция (3) может быть точно восстановлена однослойной сетью СМАС (см. табл. 1), вторая (5) не может быть точно восстановлена сетью (см. табл. 3), а третья (7) может быть восстановлена точно только при небольших значениях параметра p* (см. табл. 5). Данные исследований, проведенных при условиях, описанных в пп. 1 и 3, отражены в таблицах и рисунках при одном фиксированном значении параметра p* . Во всех случаях точность аппроксимации определяется оценкой дисперсии ошибки выходов первого и второго слоев

Для сравнения в табл. 9—11 приведены значения оценки дисперсии ошибки (28) на выходе первого  и второго слоев как при наличии, так и при отсутствии помехи измерений ξ[n] (25). Во всех случаях момент начала осреднения принят n0 = 1000.

Линейная функция (3). данные по запоминанию линейной функции (3) при наличии равномерно распределенной “белой” помехи на интервале [-2, 2]  = 1,3333 приведены в табл. 9, параметр p* = 4, число ячеек памяти M = 324.

Таблица 9.

Число

шагов n

1000

2000

4000

8000

16000

32000

64000

2,7425

1,8775

1,5379

1,2703

1,3699

1,3085

1,2303

 

2,7425

0,8554

0,3041

0,1476

0,0640

0,0274

0,0140

1,7439

0,3890

0,0621

0,0201

0,0091

0,0018

0,0002

 

1,7439

0,5170

0,1113

0,0449

0,0167

0,0075

0,0025

 

Из табл. 9 следует, что второй слой нейронной сети СМАС практически полностью подавляет воздействие помех измерений. Этот эффект также хорошо иллюстрируется рис. 5: на рис. 5a показана линейная функция (3), восстановленная в условиях аддитивной помехи ξ[n],  = 1,3333, первым слоем нейронной сети, а на рис. 5b — вторым слоем нейронной сети при соответствующих характеристиках для первого слоя (p* = 4, n = 32000,  = 1,3333,  = 1,3085) и второго слоя (p* = 4, n = 32000,  = 1,3333,  = 0,0274).

Рис 5a. Воспроизведенная первым слоем линейная функция (3) в условиях помех (p*=4, n=32000, =1,3333, =1,3085)

Рис. 5b. Воспроизведенная вторым слоем линейная функция (3) в условиях помех (p*=4, n=32000, =1,3333, =0,0274).

 

 

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

Ступенчатая функция II (5). Эта функция интересна тем, что она не может быть точно воспроизведена нейронной сетью при любых значениях p*, кроме вырожденного (табличного) p* = 1. данные, характеризующие процесс запоминания этой функции при p* = 2 в условиях предыдущего примера, приведены в табл. 10.

Таблица 10.

Число

шагов n

1000

2000

4000

8000

16000

32000

64000

=1,3333

3,9145

2,2730

2,0045

1,8806

1,9882

1,8774

1,7853

 

3,9145

1,1762

0,6894

0,4311

0,3403

0,2872

0,2614

=0

2,4213

0,9128

0,5765

0,4279

0,4915

0,4464

0,4241

 

2,4213

1,3218

0,4066

0,2957

0,2607

0,2475

0,2448

 

Данные табл. 10 демонстрируют высокую эффективность двухслойной сети СМАС по подавлению случайных аддитивных помех (первая и вторая строки таблицы). Более того, табл. 10 показывает (третья и четвертая строки), что при восстановлении функций, которые принципиально не могут быть точно восстановлены сетью, двухслойная сеть приблизительно в два раза улучшает качество аппроксимации по сравнению с однослойной сетью.

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

Гладкая нелинейная функция. Условия обучения в рассматриваемом случае совпадают с условиями двух предыдущих примеров, за исключением статистических характеристик помехи, которая теперь задана на интервале [-1, 1],  = 0,3333; отметим, что при этом задача соответствует восстановлению функции при сильных помехах, поскольку диапазон изменения функции равен диапазону изменения помехи и составляет [0, 1]. Параметр p* принят равным p*=4, при котором запоминание функции при отсутствии помех происходит с большой точностью (см. табл. 5). Результаты приведены в табл. 11.

Таблица 11.

Число

шагов n

1000

2000

4000

8000

16000

32000

64000

=0,3333

0,3207

0,3678

0,3103

0,3067

0,3226

0,2993

0,3368

 

0,3207

0,0844

0,0432

0,0209

0,0102

0,0057

0,0026

=0

0,0010

0,0005

0,0005

0,0005

0,0005

0,0004

0,0005

 

0,0010

0,0005

0,0003

0,0003

0,0002

0,0002

0,0002

 

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

*     *     *

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

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

Работа выполнена при частичной поддержке РФФИ, грант № 96-01-00768.

Автор благодарит Г. П. Корзухину за разработку Турбо-Паскалевой программы моделирования нейронной сети СМАС.

 

Список литературы

1. Аведьян Э.Д. Ассоциативная нейронная сеть СМАС Часть 1. Структура, объем памяти, обучение и базисные функций // Информационные технологии, 1997. № 5. С. 6—14.

2. Tolle H., Ersü E. Neurocontrol. Learning Control Systems Inspired by Neural Architectures and Human Problem Solving Strategies. Springer – Verlag, 1992, 211p.

3. Albus J. S. Data Storage in the Cerebellar Model Articulation Controller (CMAC) // ASME Trans. J. Dynamic Systems, Measurement and Control. 1975. V. 97. №3. P. 228-233.

4. Милвтцер Ю., Паркс П.С. Свойства сходимости ассоциативной памяти в обучающихся системах управления // Автоматика и телемеханика. 1989. № 2. С. 158—184.

5. Аведьян Э.Д., Хормель М. Повышение скорости сходимости процесса обучения в специальной системе ассоциативной памяти // Автоматика и телемеханика, 1991.№12. С. 100—109.

6. Аведьян Э.Д. Модифицированный алгоритм Качмажа для оценки параметров линейных объектов // Автоматика и телемеханика. 1978. №5. С. 64—71.

7. Лелашвили Ш.Г. Применение одного итерационного метода для анализа многомерных автоматических систем // Схемы автоматического управления. Мецниереба. 1965. С. 19—33.

8. Лелашвили Ш.Г. Некоторые вопросы построения статистической модели многомерных объектов // Автоматическое управление. Мецниереба. 1967. С. 59—96.

9. Aved’jan E. D. Bestimmung der Parameter Linearer Modelle Stationärer und Instationärer Strecken // Messen, Steuern, Regeln. 1971. №9. P. 348-350.

10. Albus J. S. A New Approach to Manipulator Control: the Cerebellar Model Articulation Controller // ASME Trans. J. Dynamic Systems, Measurement and Control. 1975. V. 97. №3. P. 220-227.

11. Цыпкин Я. З. Информационная теория идентификации. М.: Наука, 1995.

12. Wong Y., Sideris A. Learning Convergence in the Cerebellar Model Articulation Controller // IEEE Transaction on Neural Networks. 1992. Vol. 3. №1. P. 115-121.

13. Aved’jan E. D. The Cerebellar Model Articulation Controller (CMAC) for Identification of Stationary Plants under Random Disturbances. Preprints of the DYCOMANS WORKSHOP II, Algarve, Portugal, 15-17 May 1996. P. 97-102.

14. Kaczmarz S. Approximate Siolution of Systems of Linear Equations // Int. Control. 1993. V. 57 №6. P. 1269-1271.

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ, №6. 1997

ТЕОРИЯ НЕЙРОННЫХ СЕТЕЙ

Поделиться:
 
ПОИСК
 
elibrary crossref ulrichsweb neicon rusycon
 
ЮБИЛЕИ
ФОТОРЕПОРТАЖИ
 
СОБЫТИЯ
 
НОВОСТНАЯ ЛЕНТА



Авторы
Пресс-релизы
Библиотека
Конференции
Выставки
О проекте
Rambler's Top100
Телефон: +7 (915) 336-07-65 (строго: среда; пятница c 11-00 до 17-00)
  RSS
© 2003-2024 «Наука и образование»
Перепечатка материалов журнала без согласования с редакцией запрещена
 Тел.: +7 (915) 336-07-65 (строго: среда; пятница c 11-00 до 17-00)