Хайкин С. - Нейронные сети (778923), страница 109
Текст из файла (страница 109)
Основываясь на представлении (8.87), можно сделать следующие наблюдения [932). Для первого нейрона сети прямого распространения, показанной на рнс. 8.6, з = 1: х'(п) = х(п). Для этого случая обобщенный алгоритм Хебба сводится к виду (8.46), записанному для одиночного нейрона. Из материала, представленного в разделе 8.5, известно, что этот нейрон извлекает первый основной юмпонент входного вектора х(п).
1. Для второго нейрона сети на рис. 8.6 можно записать: з = 2: х'(п) = х(п) — зч,(п)у,(п). Учитывая, что первый нейрон уже извлек первый главный компонент, второй нейрон видит входной вектор х'(п), из юторого уже удален первый собственный вектор матрицы корреляции К. Таким образом, второй нейрон извлекает первый главный компонент х'(п), что эквивалентно второму главному юмпоненту исходного входного вектора х(п). 2. Для третьего нейрона можно записать: т' = 3: х'(п) = х(п) — зчг(п)уг(п) — тчз(п)уз(п). Предположим, что первые два нейрона уже сошлись к первому и второму главным юмпонентам (см.
пп. 1 н 2). Значит, третий нейрон видит входной вектор х'(п), из которого удалены первый и второй собственные векторы. Таким образом, он извлекает первый главный юмпонент вектора х'(п), что эквивалентно третьему главному компоненту исходного входного вектора х(п). 3. Продолжая эту процедуру для оставшихся нейронов сети прямого распространения (см. рис. 8.6), получим, что каждый из выходов сети, обученный с помощью обобщенного алгоритма Хебба (8.81), представляет собой отклик на конкретный собственный вектор матрицы юрреляции входного вектора, причем отдельные выходы упорядочены по убыванию ее собственных значений. Этот метод вычисления собственных векторов аналогичен методу, получившему название процесса исчерпания [599).
Он использует процедуру, аналогичную ортогонализации Грама — Шмидта [1022). Представленное здесь описание "от нейрона к следующему нейрону" было приведено для упрощения изложения. На практике все нейроны в обобщенном алгоритме Хебба совместно работают на обеспечение сходимости. 8.5. Анализ главных компонентов на основе фильтра Хебба 641 Исследование сходимости Пусть %(п) =(зо,з(п)) — матрица весов размерности т х 1 сети прямого распро- странения (рис. 8.6): %'(п) = (чг,(п),чвз(п),...,чв~(п)] (8.89) Пусть параметр скорости обучения обобщенного алгоритма Хебба (8.81) имеет форму, зависящую от времени |1(п), такую, что в пределе 1пп 11(п) = О и ~~~ 11(п) = со. =о (8.90) Тогда этот алгоритм можно переписать в матричном виде: 1х%(п) = з)(п)(у(п)х~(п) — ЬТ[у(п)ут(п)1%(п)), (8.91) Если элементы матрицы синаптических весов %(п) на шаге и = 0 принимают случайные значения, то с вероятностью 1 обобщенный алгоритм Хебба (8.91) будет сходиться к фиксированной точке, а ззг(п) достигнет матрицы, столбцы которой являются первыми 1 собственными векторами матрицы корреляции К размерности т х т входных векторов размерности зп х 1, упорядоченных но убыванию собственных значений.
Практическое значение этой теоремы состоит в том, что она гарантирует нахождение обобщенным алгоритмом Хебба первых 1 собственных векторов матрицы корреляции К, в предположении, что соответствующие собственные значения отличны друг от друга. При этом важен и тот факт, что в данном случае не требуется вычислять саму матрицу корреляции К: ее первые 1 собственных векторов вычисляются непосредственно иа основании входных данных. Полученная экономия вычислительных ресурсов может быть особенно большой, если размерность входного пространства гп достаточно велика, а требуемое количество собственных векторов, связанных с 1 наибольшими собственными значениями матрицы корреляции К, является лишь небольшой частью размерности т.
где оператор ЬТЦ устанавливает все элементы, расположенные выше диагонали матрицы аргументов, в нуль. Таким образом, полученная матрица становится нижней треугольной (!ои'ег п1апйп(аг). При этих условиях и допущениях, изложенных в разделе 8.4, сходимость алгоритма СНА доказывается с помощью процедуры, аналогичной представленной в предыдущем разделе для фильтра по извлечению максимального собственного значения.
В связи с этим можно сформулировать следующую теорему [932]. 642 Глава 8. Анализ главных компонентов Данная теорема о сходимости сформулирована в терминах зависящего от времени параметра скорости обучения 11(п). На практике этот параметр обычно принимает значение некоторой малой константы г1. В этом случае сходимость гарантируется в смысле среднеквадратической ошибки синаптических весов порядка 11. В [181] исследовались свойства сходимости алгоритма ПНА (8.91). Проведенный в работе анализ показал, что увеличение параметра з) ведет к более быстрой сходимости и увеличению асимптотической среднеквадратической ошибки (что интуитивно предполагалось). Среди прочего в этой работе точно показана обратная зависимость между точностью вычислений и скоростью обучения.
Оптимальность обобщенного алгоритма Хебба Предположим, что в пределе можно записать: Ьтг,(п) — О и эт (и) — г) при п — + оо, где у' = 1,2,...,1 (8.92) Иэгв(п)!! = 1 лля всех 1 (8.93) та 1ву )с =у Чвййь ) 0 йФу (8.94) где в,г > Хз » ... вь Для выхода нейрона у получим предельное значение: 1пп у;(и) = х (п)п = Ч, х(п). (8.95) Пусть г;(и) — случайная переменная с реализацией ув(п). Взаимная корреляция (егозя-согте1аг(оп) между случайными переменными 1" (и) и Ъ'ь(п) в равновесном состоянии записывается в виде 1пп Е(У;(п)Уь(п)] = Е[г)тХ(п)Хт(п)й,) = цтйц„= " ' (8.96) Тогда пРедельные значенил Еы цз,..., г)г вектоРов синапигческих весов нейронов сети прямого распространения (см.
рис. 8.5) представляют собой нормированные собственные векторы (поппайяед е18ептесЮг), ассоциированные с 1 доминирующими собственными значениями матрицы корреляции К, упорядоченными по убыванию собственных значений. Таким образом, для точки равновесия можно записать следующее: 8.8. Анализ главных компонентов на основе фильтра Хебба 643 куд Рис. 8.8. Представление в виде графа передачи сигнала процесса восстановления вектора х Чг Следовательно, можно утверждать, что в точке равновесия обобщенный алгоритм Хебба (8.91) выступает в роли средства собственных значений (е!8ел-апа!ухег) входных данных.
Пусть х(п) — частное значение входного вектора х(п), для которого предельные условия (8.92) удовлепюряются при з' = ! — 1. Тогда из матричной формы (8.80) можно получить, что в пределе х(п) = ~ уь(п)й„. ь=1 (8.97) Алгоритм ОНА в сжатом виде Вычисления, выполняемые обобщенным алгоритмом Хебба (ОНА), являются про- стыми, и нх можно описать следующей последовательностью действий. 1.
В момент времени п = 1 инициализируем синаптические веса нг,, сети случайными малыми значениями. Назначаем параметру скорости обучения )1 некоторое малое положительное значение. 2. Для п = 1, з = 1, 2,..., ! и 1 = 1, 2,..., ги вычислим: у. (п) = ~~г нгтг(п)хг(и), Это значит, по для заданных двух множеств величин — предельных значений ц,, цз,..., пг векторов синаптических весов нейронов сети прямого распространения (см. рис. 8.5) и соответствующих выходных сигналов у„уз,...,уг — можно построить линейную оценку ло методу наименъгаих квадратов (1шеаг 1еазг-зцлагез езгппаге) значения х(и) входного вектора х(п).
В результате формулу (8.97) можно рассматривать как одну из форм восстановления данных (да)а гесопз)пюбоп) (рис. 8.8). Обратите внимание, что в свете дискуссии, представленной в разделе 8.3, этот метод восстановления данных имеет вектор ошибки аппроксимации, ортогональный оценке х(п). 844 Глава 8. Анализ главных компонентов Ьшгк(п) = В У (п)хг(п) — У (п) ~> шы(п)Уь(п) и=1 где ж,(п) — г-й компонент входного вектора х(п) размерности т х 1; ( — требуемое число главных компонентов.
3. Увеличиваем значение п на единицу, переходим к шагу 2 и продолжаем до тех пор, пока синаптические веса ш; не достигнут своих установившихся (згеадузгаге) значений. Для больших и синоптические веса ш,; нейрона т' сходятся к г-му компоненту собственного вектора, связанного с з-м собственным значением матрицы корреляции входного вектора х(п). 8.6. Компьютерное моделирование: кодирование изображений В завершение рассмотрения обобщенного алгоритма обучения Хебба проверим его работу при решении задачи кодирования изображений (ппайе собгп8).
На рис. 8.9, а показана семейная фотография, использованная для обучения. Обратите внимание на границы (е68е) фрагментов изображения. Это изображение формата 256 х 256 с 256 градациями серого цвета. Изображение было закодировано с помощью линейной сети прямого распространения, состоящей из одного слоя, содержащего 8 нейронов, каждый нз которых имеет по 64 входа.
Для обучения сети использовались непересекающиеся блоки размером 8 х 8. Эксперимент проводился для 2000 образцов сканирования этого изображения и маленького значения параметра скорости обучения, з) = 10 4. На рис. 8.9, б показаны маски размера 8 х 8, представляющие синаптические веса сети. Каждая из восьми масок отображает множество синаптических весов, связанных с конкретным нейроном сети.
В частности, возбуждающие синапсы (положительные веса) показаны белым цветом, тормозящие (отрицательные значения) — черным, а серым цветом показаны нулевые веса. В наших обозначениях маски представляют собой столбцы матрицы %т, состоящей из 64 х 8 синаптических весов, полученной после сходимостн обобщенного алгоритма обучения Хебба. Для кодирования изображения использовалась следующая процедура. ° Каждый из блоков изображения размером 8 х 8 пикселей был умножен на каждую из 8 масок, показанных на рис.