close

Вход

Забыли?

вход по аккаунту

?

Модифицированные алгоритмы построения нейронной сети SOFM.

код для вставкиСкачать
2. Системный анализ, обработка информации и
информационные технологии
УДК 004.032.26(06)
С.В. Архипов
МОДИФИЦИРОВАННЫЕ АЛГОРИТМЫ ПОСТРОЕНИЯ НЕЙРОННОЙ СЕТИ SOFM
Представлен краткий обзор известных нейросетевых алгоритмов построения адаптивных сеток. Приводятся
часто используемые варианты функций соседства нейронов. На примере использования Гауссовой функции расстояния между нейронами в модифицированном алгоритме сети SOFM исследована зависимость качества адаптации сетки от параметров функции. На основе вычислительных экспериментов предложены рекомендации по выбору параметров функции соседства при адаптации плоской сетки на сложной области модифицированным алгоритмом SOFM.
Ключевые слова: нейроные сети, самоорганизующиеся карты признаков, адаптивные сетки.
S.V. Arkhipov
THE MODIFIED ALGORITHMS OF CONSTRUCTION OF NEURAL NETWORK SOFM
The brief review of known neural network algorithms of construction of adaptive grids are presented here. Often used
variants of functions of neurons adjacency are resulted. Dependence of quality of grid adaptation from function parameters
has been researched on the basis of using Gaussian function about the distance between neurons in modified algorithm of
network SOFM. According to computing experiments recommendations at the choice of function parameters of the adjacency at adaptation of flat grid on complex area by modified algorithm SOFM have been resulted here.
Keywords: neuron network, self-organizing feature maps, adaptive grid.
Введение
Неослабевающий интерес к проблеме построения адаптивных сеток обусловлен необходимостью получения достоверного численного решения прикладных задач при сохранении умеренных требований к
вычислительной технике. Основная идея методов построения адаптивных сеток состоит в уменьшении
размеров ячеек в зонах расчетной области, соответствующих значительным ошибкам решения.
Для построения адаптивных сеток с заданной плотностью применяются следующие традиционные
методы эквираспределения [1], Томпсона [2], эллиптический метод [3], алгебраические методы [4], конформных отображений [5] и т.д. В основе применяемых методов лежат теории дифференциальных уравнений, вариационного исчисления и многомерной дифференциальной геометрии. Для получения качественных адаптивных сеток все эти методы требуют решения сложных систем нелинейных дифференциальных уравнений с частными производными, что накладывает ряд известных ограничений.
В настоящее время способность построения адаптивных сеток с заданной плотностью на сложной
физической области демонстрируют нейросетевые алгоритмы [6], [7], [8], [9], [10] и т.д. Развитие современных нейросетевых моделей обязано классической теории самоорганизующихся карт Кохонена (сеть
SOFM - Self-Organizing Feature Maps, T.Kohonen) (например [11], [12]). Соревновательная нейронная
сеть SOFM с обучением без учителя выполняет задачу проецирования многомерного пространства в
пространство с более низкой размерностью (чаще всего двумерное). Дискретно-стохастический подход,
присущий обучению нейросетей, обеспечивает привлекательность в отношении простоты алгоритмов,
возможностей их эффективного распараллеливания, отражения плотности распределения данных в области и отсутствия привязки к размерности отображаемого пространства.
Как известно [9], применение базовой модели SOFM приводит к появлению граничного эффекта, наличию мертвых нейронов и нарушению гладкости сетки. Для решения указанных проблем предложены
модифицированные методы, в основе которых лежит идея чередования базового алгоритма для внутренних и внешних узлов [7], использования так называемых раскрашенных моделей и специальных алгоритмов сглаживания [9]. Кроме того, в алгоритмах усовершенствованы функции соседства нейронов.
Эта функция представляет собой невозрастающую функцию от дискретного времени и расстояния между нейроном-победителем и соседними нейронами в сетке. Функция соседства нейронов разбивается на
две части: собственно функцию расстояния и функцию скорости обучения. Изменение параметров
61
ВЕСТНИК БУРЯТСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
2011/9
функций расстояния и скорости обучения относительно дискретного времени обеспечивает качество
адаптации сетки на области. Как правило, приемлемая адаптация сетки наступает в результате многочисленных вычислительных экспериментов по выбору параметров функции соседства нейронов. В то же
время рекомендации по характеру функций расстояния и скорости обучения носят достаточно общий
характер и незначительно облегчают поиск оптимальных параметров.
В данной работе, помимо представления краткого обзора существующих нейросетевых алгоритмов
адаптации регулярных сеток на плоскую область, предпринята попытка формулировки рекомендаций по
выбору параметров функции соседства, включающей Гауссову функцию расстояния для модифицированного алгоритма SOFM.
Основные идеи
Самоорганизующаяся карта признаков имеет набор входных элементов, число которых соответствует
размерности учебных векторов (пространства физической области), и набор выходных элементов, которые служат в качестве прототипов и называются кластерными элементами (узлы сетки). Входной слой
элементов передает сигналы кластерным элементам при помощи взвешенных связей. Весовые значения
связей интерпретируются как значения координат, описывающих позицию кластера в пространстве образцов. В начальный момент дискретного времени кластерные элементы могут определяться как случайными координатами пространства образцов, так и в заданных вершинах регулярной решетки, например, с треугольными, квадратными или шестиугольными краями. В процессе обучения веса нейронов
настраиваются, в результате чего сетка, самоорганизуясь, постепенно растягивается по заданной физической области.
Работа сети SOFM характеризуется этапом инициализации карты и циклом:
1) выбор случайного образца x(n) с заданной плотностью распределения;
2) нахождение узла победителя (best matching unit, BMU) – кластера на карте признаков, вес которого
имеет меньшее отличие в заданной метрике от случайного образца;
3) корректировка узлов из числа близлежащих к победителю – изменение веса победителя и его соседей с целью приближения к случайному образцу;
4) определение ошибки карты.
При определении узла победителя в шаге 2, как правило, в качестве метрики выбирается Евклидово
расстояние d . В редких случаях используют угол между радиус-векторами узла претендента и случайного образца.
Корректировка положений узлов шага 3 происходит в зависимости от степени близости к победителю c помощью функции соседства Θ(n, iBMU , jBMU , i, j ) по формуле:
wij ( n + 1) = wij ( n ) + q ( n, iBMU , jBMU , i, j )·( x ( n ) − wij ( n ) ) ,
(1)
где n – номер итерации, wij – вес ij -го узла, x(n) – случайно выбранный образец, iBMU jBMU - индекс
узла победителя для образца x(n) .
Функция соседства представляет собой невозрастающую функцию от дискретного времени n и расстояния между нейроном-победителем и соседними нейронами в сетке. Как описано выше, эта функция
разбивается на две части: функцию расстояния h(d , n) и функцию скорости обучения δ (n) , т.е.
q (n, iBMU , jBMU , i, j ) = δ (n) ⋅ h(d , n) .
Обычно применяется одна из двух функций расстояния:
const , d ≤ σ (n)
h( d , n) = 
– ступенчатая функция
 0, d > σ (n)
или функция Гаусса
−
d2
2σ 2 ( n )
h (d , n) = e
.
(2)
Лучший результат при адаптации сетки на сложной области показывает функция Гаусса. Функция
σ (n) называется радиусом обучения, который выбирается достаточно большим на начальном этапе
обучения и постепенно уменьшается так, что в конечном итоге обучается один нейрон-победитель. В
качестве радиуса обучения используют линейно или экспоненциально убывающую функцию от времени, например, в работе [8]
σ ( n) = a ⋅ n −0.2 ,
(3)
62
С.В. Архипов. Модифицированные алгоритмы построения нейронной сети SOFM
где величина a выбирается таким образом, чтобы на первой итерации получили ощутимое смещение все
узлы карты. При этом в качестве расстояния d в формуле (2) предлагается использование сеточного
расстояния d 2 = (iBMU − i )2 + ( jBMU − j )2 .
Функция скорости обучения δ (n) также представляет собой функцию, убывающую от времени. Наиболее часто используют линейную, обратно пропорциональную n
const1
, или экспоненциальную
δ ( n) =
n + const2
δ (n) = n −0.2 .
(4)
В работе [9] функции скорости обучения δ (n) и расстояния (латеральная связь [9]) h(d , n) модифицированы к виду
5( n − nmax )


δ ( n ) = n −0.2 ⋅ 1 − e nmax  ,




h(d,n) = s
−
d2
r2 ( n)
,
где nmax – максимальное число итераций, s – константа близкая к нулю, d – евклидово расстояние между нейронами, r (n) – радиус обучения
5( n − nmax )
n



nmax
nmax
r ( n ) = rmin +  1 − e
− rmin  ⋅ n −0.25 ,
 rmax ⋅ s






здесь rmin , rmax – начальный и конечный радиусы обучения.
Как видно из приведенных функций, все они в большем или меньшем числе содержат параметры, результат подбора которых существенно влияет на качество построения адаптивной сетки, что означает
высокую эвристику алгоритма.
Применение вышеописанного алгоритма, который назовем базовым, в сочетании с различными вариантами функции соседства приводит к трем основным проблемам:
1. Адаптация сетки на невыпуклой области G не гарантирует, что все узлы сетки будут принадлежать области G .
2. Граничные узлы построенной сетки расположены на определенном расстоянии до границы области, отличном от нуля. Это расстояние сопоставимо со средним расстоянием между узлами сетки.
3. Нарушение гладкости адаптивной сетки вследствие уменьшения радиуса обучения на стадии
уточнения.
Для решения двух первых проблем в работе [7], которая посвящена использованию SOFM для построения конечно-элементных сеток, была предложена идея модификации алгоритма обучения SOFM,
состоящая в том, что чередуется применение этого алгоритма отдельно для граничных и внутренних
узлов. Один цикл такого чередования называется макроитерацией [8]. В соответствии с этой идеей был
разработан модифицированный алгоритм построения конечно-разностных адаптивных сеток [9].
Модифицированный алгоритм.
0. Инициализация положений узлов сетки.
1. На первой макроитерации ( s = 1) применяется базовый алгоритм в течение n0 итераций ко всем узлам сетки.
2. На каждой макроитерации с номером s > 1 выполняются следующие действия:
а) применение базового алгоритма в течение n1 ( s) итераций к граничным узлам сетки с генерацией
точки только на границе области;
б) применение базового алгоритма в течение n2 ( s ) итераций ко всем узлам с генерацией точки во
всей области. При этом все граничные узлы зафиксированы и не меняют своего положения. Кроме того,
если узлом-победителем является граничный узел сетки, то он заменяет случайную точку x(n) .
3. Повторяются макроитерации до тех пор, пока изменения положений узлов не станут достаточно
малыми.
Идея решения третьей проблемы заключается в том, чтобы использовать граничные нейроны в качестве представителей несуществующих нейронов за пределами карты, которых не хватает для балансировки асимметричности латеральных связей. Алгоритм, осуществляющий сглаживание сетки, применяется после применения модифицированного алгоритма и выходит за рамки данного обзора.
63
ВЕСТНИК БУРЯТСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
2011/9
Из приведенного обзора видно, что известный к настоящему времени модифицированный алгоритм
адаптации сеток унаследовал эвристику базового алгоритма. Практика применения модифицированного
метода указывает на необходимость наличия рекомендаций по выбору параметров обучения.
Вычисления и наблюдения
Вычислительные эксперименты проводились на симметричной невыпуклой области G (рис. 1). Выбор данной области G объясняется очевидностью правильного расположения сетки в первом шаге модифицированного алгоритма. В качестве функции соседства нейронов Θ(n, iBMU , jBMU , i, j ) применялось
произведение функции скорости обучения (4) и расстояния (2). Модифицированный алгоритм обучения
программно реализован в виде следующих шагов.
0. Устанавливаются начальные веса wij всех нейронов в вершинах квадратной решетки (рис. 1).
1. На первой макроитерации ( s = 1) , соответствующей дискретному времени n ∈ [1, n0 ] :
1.1. Генерируется случайная точка x(n) во всей области G ;
1.2. Определяется нейрон-победитель в евклидовой метрике. Фиксируются сеточные координаты
нейрона-победителя iBMU , jBMU ;
1.3. Настраиваются новые весовые значения нейронов сети по формуле (1)
−0.2
−
( iBMU − i )2 + ( jBMU − j )2
−0.2 2
2( a ( n )⋅ n )
(n, iBMU , jBMU , i, j ) = n ⋅ e
.
(5)
2. На каждой макроитерации s > 1
2.1. В течение n1 ( s ) итераций
2.1.1. Генерируется случайная точка x(n) на границе области G .
2.1.2. Определяется нейрон-победитель BMU из граничных узлов сетки.
2.1.3. Настраиваются новые весовые (5) значения граничных узлов сетки.
2.2. В течение n2 ( s ) итераций
2.1.1. Генерируется случайная точка x(n) во всей области G .
2.1.2. Определяется нейрон-победитель BMU среди всех узлов сетки.
2.1.3.
Если в шаге 2.1.2 победил граничный нейрон сетки, то случайно сгенерированная точка
x(n) заменяется на граничный нейрон.
2.1.4. Настраиваются новые весовые (5) значения внутренних узлов сетки.
3. Повторяются макроитерации до тех пор, пока изменения положений узлов не станут достаточно
малыми.
Первая макроитерация в классической терминологии соответствует этапу упорядочивания. Здесь
важным показателем является правильность предварительного расположения сетки в области. Последующие макроитерации уточняют расположение сетки относительно границы и внутренней области G .
При анализе качества построения сетки в модифицированном алгоритме целесообразно разделить
этапы упорядочивания и уточнения. В нижеследующих вычислительных экспериментах исследовались
параметры a и n0 . За основу на первом этапе обучения принята линейная зависимость параметра a от
дискретного времени n .
64
С.В. Архипов. Модифицированные алгоритмы построения нейронной сети SOFM
На рисунке 2 приведены итоги стадии упорядочивания в зависимости от числа итераций. Как видно,
с увеличением числа итераций сеть, приспосабливаясь к особенностям области, на 20000 итерации приняла оптимальное положение. В части вогнутости области G некоторые нейроны вышли за края области.
Рис.1. Область G с первоначальным расположением сетки в области адаптации
a)
б)
в)
Рис. 2. Предварительное расположение сетки в области при a (1) = 100 , a (n0 ) = 27 по истечении n0
итераций: а) n0 = 10000 б) n0 = 15000 и в) n0 = 20000
a)
б)
в)
Рис. 3. Предварительное расположение сетки в области по истечении 20000 итераций для разных вариантов нижнего предела параметра a : а) a (n0 ) = 30 б) a (n0 ) = 35 и в) a (n0 ) = 40
65
ВЕСТНИК БУРЯТСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
2011/9
Увеличение нижнего предела параметра a при неизменных n0 и a (1) приводит к ухудшению качества предварительного построения сетки (рис. 3). Это объясняется тем, что с увеличением нижнего предела радиуса обучения σ (n) (3) узлы сетки подвергаются большим смещениям на завершающей стадии и
адаптационные свойства сети ухудшаются. Зависимость качества построения от верхнего предела параметра a при неизменных параметрах n0 и a (n0 ) продемонстрирована на рисунке 4. Как видно, при
уменьшении верхнего предела качество адаптации сетки также снижается (рис. 4 в).
a)
б)
в)
г)
Рис. 4. Предварительное расположение сетки в области по истечении 20000 итераций для разных вариантов верхнего предела a : а) a (1) = 90 б) a (1) = 70 , в) a (1) = 50 , и г) a (1) = 40
Это обусловлено тем, что при большом радиусе начального обучения в первых итерациях сеть стягивается к случайно сгенерированным точкам, уменьшаясь в размерах. После чего медленно разворачивается, адаптируясь к особенностям области. При уменьшении начального радиуса сеть минует стадию
«сжатия», и начальные размеры сети уменьшают возможности правильной адаптации.
Исследовался характер убывания параметра a от начального значения a (1) до a (n0 ) (рис. 5). Вычислительные эксперименты с использованием экспоненциально убывающих функций показали (рис. 6),
что характер убывания функции а (n) не вносит существенных отклонений в качестве построения предварительной сетки.
Рис. 5. Графики убывающих функций a (n) от точки A до B
66
С.В. Архипов. Модифицированные алгоритмы построения нейронной сети SOFM
а)
б)
Рис. 6. Предварительное построение сетки для а) экспоненциально убывающей функции a (n) б) линейно убывающей функции a (n)
Таким образом, на стадии упорядочивания качество предварительного построения сетки обеспечивается правильным заданием точек A(1, a (1)) и B (n0 , a (n0 )) в плоскости построения функции a (n) . Функция a (n) может убывать линейно или экспоненциально.
На стадии уточнения эксперименты выявили целесообразность использования экспоненциально убывающей функции a (n) от B до некоторой точки C (nmax , a (nmax )) , расположенной достаточно близко к
оси дискретного времени n . Использование линейно убывающей функции от B до C сохраняет качество адаптации, но значительно увеличивает время расчетов.
Пример построения адаптивной сетки для функции a (n)
 (a ( n0 ) − a (1)
⋅ ( n0 − n ) + a (1) , при 1 ≤ n ≤ n0

n0

a ( n) = 
5( n − nmax − n0 )


n −n
a n ⋅  1 − e nmax + n0  ⋅ 0.005 nmax −0n0 + a , при n < n ≤ n
(
)
(
)
0
min
0
max






представлен на рис. 7. График функции a (n) изображен на рис. 8.
(6)
Рис. 7. Результат построения адаптивной сетки с применением (6)
67
ВЕСТНИК БУРЯТСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
2011/9
Рис. 8. График функции a (n) описанной соотношением (6)
Заключение
Существующие нейросетевые алгоритмы доказывают возможность построения адаптивных сеток на
сложных физических областях. Результат адаптации сетки зависит от эвристики выбора параметров
обучения нейросети. Для получения лучшего результата в модифицированном алгоритме SOFM целесообразно в качестве параметра a Гауссовой функции расстояния использовать линейно убывающую
функцию на первой макроитерации и экспоненциально убывающую в последующих. Существенное
влияние оказывает предварительное построение сетки, которое обеспечивается правильным заданием
точек A(1, a (1)) и B (n0 , a (n0 )) в плоскости построения функции a (n) .
Литература
1. Хакимзянов Г.С., Шокин Ю.И., Барахнин В.Б., Шокина Н.Ю. Численное моделирование течений жидкости с поверхностными волнами. Новосибирск: Изд-во СО РАН, 2001. 394 с.
2. Thompson J.F., Warsi Z.U.A., Mastin C.W. Numerical grid generation, foundations and applications. Amsterdam:
North-Holland, 1985.
3. Лисейкин В.Д., Лебедев A.C., Китаева И.А. Универсальный эллиптический метод построения разностных
сеток. Новосибирск: НГУ, 2004. 266 с.
4. Gordon W.J., Thiel L.C. Transfinite mappings and their applications to grid generation. // Numerical Grid Generation, Appl. Mathematics and Computation. Vol. 2/3, 1982. P. 171-192.
5. Годунов С.К., Проконов Г.П. О расчетах конформных отображений и построении разносных сеток //
Журн. вычисл. математики и мат. физики. Т.7. 1967. С. 1031-1059.
6. Ritter H., Martinetz T., Schulten K. Neural Computation and Self-Organizing Maps: An Introduction. New York:
Addison-Wesley, 1992.
7. Manevitz L., Yousef M. Finite-Element Mesh Generation Using Self-Organizing Neural Networks // Microcomputers in Civil Engineering 12, 1997. P. 233-250.
8. Нечаева О.И. Нейросетевой подход для построения адаптивных сеток // Нейроинформатика-2006. Ч. 2.
172-179 с.
9. Нечаева О.И. Композиционный алгоритм для построения адаптивных сеток произвольной структуры //
Нейроинформатика-2007: Сб. науч. тр. Всерос. науч.-техн. конф. М.: МИФИ, 2007. 72-79 с.
10. Koutnik J., Mazl R., Kulich M. Building of 3d environment models for mobile robotics using self-organization //
In Proc, of The 9th International Conference on Parallel Problem Solving From Nature - PPSN-IX, Springer, 2006. P. 721730.
11. Kohonen Т. Self-organizing Maps // Springer Series in Information Sciences, V.30, Springer, Berlin, Heidelberg.
New York. 2001. 501 p.
12. Kohonen T. K. Self-organization and associative memory. New York: Springer Verlag, 1989. 312 p.
Архипов Сергей Валерьевич, кандидат технических наук, доцент, директор Центра информационных систем Бурятского государственного университета, тел. 297160 доб.260, e-mail: svarkh@bsu.ru
Arkhipov Sergey Valeryevich, candidate of technical science, docent, director of the Center of information systems of the
Buryat State University.
68
Документ
Категория
Без категории
Просмотров
7
Размер файла
900 Кб
Теги
построение, алгоритм, модифицированные, сети, sofm, нейронной
1/--страниц
Пожаловаться на содержимое документа