Isbn 978-5-7262-1226 нейроинформатика 2010
Вид материала | Документы |
Содержание1. Структура радиально-базисной нейронной сети 2. Постановка задачи 3. Алгоритм сопряженных градиентов обучения весов сети 4. Экспериментальное исследование алгоритмов обучения |
- Isbn 978-5-7262-1226 нейроинформатика 2010, 142.85kb.
- Isbn 978-5-7262-1226 нейроинформатика 2010, 136.25kb.
- Isbn 978-5-7262-1226 нейроинформатика 2010, 9.21kb.
- Isbn 978-5-7262-1226 нейроинформатика 2010, 113.94kb.
- Isbn 978-5-7262-1226 нейроинформатика 2010, 89.17kb.
- Isbn 978-5-7262-1226 нейроинформатика 2010, 86.68kb.
- Isbn 978-5-7262-1226 нейроинформатика 2010, 101.88kb.
- Isbn 978-5-7262-1377 нейроинформатика 2011, 107.92kb.
- Isbn 978-5-7262-1375 нейроинформатика 2011, 127.94kb.
- Isbn 978-5-7262-1375 нейроинформатика 2011, 25.66kb.
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
В.И. ГОРБАЧЕНКО, Е.В. АРТЮХИНА, В.В. АРТЮХИН
Пензенский государственный педагогический университет им. В.Г. Белинского
gorvi@mail.ru
РАДИАЛЬНО-БАЗИСНЫЕ НЕЙРОННЫЕ СЕТИ
ДЛЯ РЕШЕНИЯ КРАЕВЫХ ЗАДАЧ БЕССЕТОЧНЫМИ
МЕТОДАМИ1
Проанализированы бессеточные методы для решения краевых задач математической физики на радиально-базисной нейронной сети. Разработаны градиентные алгоритмы обучения весов радиально-базисной нейронной сети. Проведено экспериментальное исследование разработанных алгоритмов. Показано, что предложенный алгоритм на основе метода сопряженных градиентов обладает большей вычислительной эффективностью для данного класса задач.
Введение
Для численного решения краевых задач математической физики, описываемых дифференциальными уравнениями в частных производных, наибольшее распространение получили методы конечных разностей и конечных элементов. Эти методы требуют построения расчетных сеток. Построение сеток для двух и трехмерных областей сложной конфигурации является сложной задачей. Сеточные методы позволяют получить решение только в узлах сетки.
Альтернативным подходом является использование различных вариантов метода взвешенных невязок, когда в качестве базисных функций применяются радиально-базисные функции (RBF – radial basis function) [1 – 4]. Использование RBF-функций рассматривается как бессеточный метод (meshless, meshfree). Применение радиально-базисных функций позволяет исключить трудоемкий процесс построения сетки и позволяет получить приближенное дифференцируемое решение в произвольных точках области. Недостатком метода является сложность определения параметров радиально-базисных функций.
Бессеточные методы эффективно реализуются на радиально-базисных нейронных сетях (RBFNN) [5-7]. RBFNN отличаются простотой, так как содержат только один скрытый слой, поэтому исключается неформализуемый подбор структуры сети. RBFNN могут быть реализованы на универсальных вычислительных системах, а не только на специализированных нейрокомпьютерах. Главное достоинство RBFNN состоит в использовании принципов обучения для формирования оптимальных параметров радиально-базисных функций. Однако в настоящее время отсутствуют эффективные алгоритмы обучения RBFNN.
Целью данной работы является исследование различных алгоритмов обучения весов RBFNN.
1. Структура радиально-базисной нейронной сети
Радиально-базисная нейронная сеть представляет собой сеть с двумя слоями [5, 6]. Первый слой осуществляет преобразование входного вектора
![](images/212965-nomer-2a57d3aa.gif)
![](images/212965-nomer-m30e85520.gif)
![](images/212965-nomer-mc223b7f.gif)
![](images/212965-nomer-2a57d3aa.gif)
![](images/212965-nomer-m60b7920a.gif)
![](images/212965-nomer-m30e85520.gif)
![](images/212965-nomer-22ee4891.gif)
![](images/212965-nomer-m30e85520.gif)
![](images/212965-nomer-74207e65.gif)
![](images/212965-nomer-eee9ca8.gif)
![](images/212965-nomer-37acbd77.gif)
![](images/212965-nomer-m30e85520.gif)
![](images/212965-nomer-51bf3613.gif)
2. Постановка задачи
Рассмотрим градиентный алгоритм обучения радиально-базисной нейронной сети на примере решения двумерного уравнения Пуассона
![](images/212965-nomer-2d2e46b5.gif)
![](images/212965-nomer-7f723fda.gif)
где
![](images/212965-nomer-m228fb226.gif)
![](images/212965-nomer-20a3eed2.gif)
![](images/212965-nomer-4a830ea.gif)
![](images/212965-nomer-28cd6112.gif)
Выбирая в качестве радиально-базисной функции гауссиан, рассмотрим RBFNN как аппроксиматор функции решения:
![](images/212965-nomer-6595722a.gif)
где
![](images/212965-nomer-51bf3613.gif)
![](images/212965-nomer-2691dd31.gif)
![](images/212965-nomer-m59ea62fe.gif)
![](images/212965-nomer-m30e85520.gif)
![](images/212965-nomer-m60b7920a.gif)
![](images/212965-nomer-m30e85520.gif)
Обучение сети сводится к настройке весов, расположения центров и ширины нейронов, минимизирующих функционал качества (функционал ошибки), представляющий собой сумму квадратов невязок в контрольных точках
![](images/212965-nomer-m560dbac7.gif)
где
![](images/212965-nomer-62621f50.gif)
![](images/212965-nomer-21d12a2f.gif)
![](images/212965-nomer-m1e192019.gif)
![](images/212965-nomer-289a07d5.gif)
![](images/212965-nomer-74594635.gif)
Функционал необходим для обучения сети. При обучении используется пакетный режим обучения. Для оценки невязки как меры близости к решению целесообразно использовать одну из норм вектора невязки (вектор невязки вычисляется во внутренних и граничных контрольных точках). Очень важно соблюдать при обучении соотношение между оптимальным количеством нейронов
![](images/212965-nomer-51bf3613.gif)
![](images/212965-nomer-m30dead3d.gif)
где
![](images/212965-nomer-m27423049.gif)
Представление решения в форме и вид базисных функций позволяют вычислить частные производные от решения. Функционал ошибки может быть записан в виде
![](images/212965-nomer-m645c2a50.gif)
где
![](images/212965-nomer-m53dadda9.gif)
![](images/212965-nomer-1fb3d3d0.gif)
![](images/212965-nomer-m7ff378b0.gif)
![](images/212965-nomer-7f46d57d.gif)
![](images/212965-nomer-m7c2aec6a.gif)
![](images/212965-nomer-mf5fc370.gif)
![](images/212965-nomer-m53dadda9.gif)
![](images/212965-nomer-1fb3d3d0.gif)
![](images/212965-nomer-30fa3862.gif)
![](images/212965-nomer-68c36838.gif)
где
![](images/212965-nomer-26d023cb.gif)
![](images/212965-nomer-m4a1ad819.gif)
![](images/212965-nomer-45a4450f.gif)
![](images/212965-nomer-m44ead36b.gif)
![](images/212965-nomer-m17c3ef9.gif)
![](images/212965-nomer-33a2eb0.gif)
![](images/212965-nomer-3907e738.gif)
![](images/212965-nomer-6de0dc25.gif)
![](images/212965-nomer-7dd6457e.gif)
![](images/212965-nomer-m18a583.gif)
![](images/212965-nomer-145bc256.gif)
![](images/212965-nomer-5aaf326b.gif)
![](images/212965-nomer-m30e85520.gif)
Для обучения выходного слоя сети можно использовать предложенный в [8] алгоритм скорейшего спуска с вычисляемым коэффициентом обучения, получаемый из условия минимума функционала . Но существенно большую скорость сходимости, чем метод скорейшего спуска, может обеспечить метод сопряженных градиентов.
3. Алгоритм сопряженных градиентов обучения весов сети
Существенно большую скорость сходимости, чем метод скорейшего спуска, обеспечивают метод сопряженных градиентов и метод Ньютона [5]. Метод сопряженных градиентов требует порядка
![](images/212965-nomer-ceba5f1.gif)
![](images/212965-nomer-6aea64c9.gif)
Метод сопряженных градиентов используется для минимизации квадратичного функционала вида [9]
![](images/212965-nomer-m5b073f83.gif)
где
![](images/212965-nomer-7eeff447.gif)
![](images/212965-nomer-2a57d3aa.gif)
![](images/212965-nomer-m2c385e23.gif)
3.1. Обучения весов RBFNN на основе формального использования метода
сопряженных градиентов для многослойного персептрона
Рассмотрим классический метод сопряженных градиентов обучения нейронных сетей, т. е. для обучения линейного слоя RBFNN используем метод сопряженных градиентов, применяемый для обучения многослойного персептрона. В алгоритм введем некоторые модификации, учитывающие особенности обучения весов выходного слоя радиально-базисной нейронной сети.
Использование метода сопряженных градиентов при обучении нейронных сетей основано на известном в оптимизации [10] разложении функционала качества в ряд Тейлора в окрестности точки минимума (ограничиваются тремя членами в разложении)
![](images/212965-nomer-1385b43f.gif)
где
![](images/212965-nomer-7ba668d8.gif)
![](images/212965-nomer-m6e5e58f3.gif)
Шаг
![](images/212965-nomer-m42ec78ae.gif)
1. Вычисляется вектор весов
![](images/212965-nomer-594aee8b.gif)
![](images/212965-nomer-m31db1b01.gif)
![](images/212965-nomer-da4303.gif)
![](images/212965-nomer-m57835202.gif)
![](images/212965-nomer-1c88d9.gif)
В общем виде коэффициент
![](images/212965-nomer-1c88d9.gif)
![](images/212965-nomer-m31db1b01.gif)
![](images/212965-nomer-1c88d9.gif)
![](images/212965-nomer-38528473.gif)
где
![](images/212965-nomer-2840d1a3.gif)
![](images/212965-nomer-2b05a0b1.gif)
![](images/212965-nomer-m2017dd1c.gif)
![](images/212965-nomer-758890d5.gif)
2. Вычисляется градиент
![](images/212965-nomer-m22bf61e8.gif)
3. Определяется новое направление поиска
![](images/212965-nomer-m7ae7a13d.gif)
Классическая оптимизация по методу сопряженных градиентов требует знания матрицы (в нашем случае – гессиана) для определения
![](images/212965-nomer-m6fe5eda.gif)
формула Полака Райбера (Polak-Ribiere)
![](images/212965-nomer-dc6e150.gif)
формула Флетчера-Ривса (Fletcher Reeves)
![](images/212965-nomer-48acce92.gif)
В случае обучения выходного слоя радиально-базисных нейронных сетей решается задача квадратичной оптимизации и формулы Полака Райбера и Флетчера-Ривса эквивалентны.
Условием окончания процесса обучения являются малые нормы невязок во внутренних и граничных контрольных точках
![](images/212965-nomer-m41d8d9b5.gif)
3.2. Алгоритм обучения весов RBFNN методом сопряженных градиентов
минимизации квадратичного функционала ошибки
Для обучения линейного слоя RBFNN можно применить классический метод сопряженных градиентов минимизации функционала ошибки , если привести функционал к виду . Для этого преобразуем скалярные произведения, входящие в функционал :
![](images/212965-nomer-323a4f6d.gif)
где
![](images/212965-nomer-m11837384.gif)
Аналогично получаем
![](images/212965-nomer-4412ec29.gif)
Из – получаем
![](images/212965-nomer-m1c665171.gif)
Введем обозначения
![](images/212965-nomer-m7e166f58.gif)
![](images/212965-nomer-m1dbf663c.gif)
![](images/212965-nomer-7eeff447.gif)
![](images/212965-nomer-m107d641a.gif)
Сравнивая с , видим, что наша задача является задачей минимизации квадратического функционала с симметричной положительно определенной матрицей. Применяя метод сопряженных градиентов для минимизации , используем алгоритм минимизации квадратичного функционала [14].
1. Полагается
![](images/212965-nomer-297b3a56.gif)
![](images/212965-nomer-m390048ee.gif)
![](images/212965-nomer-3ea5409b.gif)
![](images/212965-nomer-m8d980d8.gif)
На первой и дальнейших итерациях выполняются следующие действия:
2. Вычисляется номер текущей итерации
![](images/212965-nomer-mf6e7d42.gif)
3. Находится новое приближение решения
![](images/212965-nomer-407675d4.gif)
![](images/212965-nomer-m99456e.gif)
4. Вычисляется новая невязка
![](images/212965-nomer-m7615843.gif)
5. Проверяется условие окончания итерационного процесса, например,
![](images/212965-nomer-1a55d8bc.gif)
Если условие выполняется, то – конец итерационного процесса, иначе – переход на следующий шаг алгоритма.
6. Определяется новое направление движения
![](images/212965-nomer-m677d25e7.gif)
![](images/212965-nomer-3ede4db.gif)
7. Переход на шаг 1.
8. Конец алгоритма.
Из видно, что рассмотренный алгоритм эквивалентен решению системы линейных алгебраических уравнений
![](images/212965-nomer-m10caeeee.gif)
![](images/212965-nomer-7eeff447.gif)
![](images/212965-nomer-1940f5b2.gif)
![](images/212965-nomer-m42ec78ae.gif)
4. Экспериментальное исследование алгоритмов обучения
Экспериментальное исследование проводилось на примере модельной задачи – , для
![](images/212965-nomer-2eb5276e.gif)
![](images/212965-nomer-m3d76b1c8.gif)
![](images/212965-nomer-3d045a5b.gif)
![](images/212965-nomer-6f5cc171.gif)
![](images/212965-nomer-mc07cb23.gif)
Для обучения линейного слоя RBFNN исследовались следующие методы: градиентный метод с подбираемым коэффициентом обучения, метод скорейшего спуска, формальное использование метода сопряженных градиентов для многослойного персептрона, метод сопряженных градиентов минимизации квадратичного функционала ошибки.
Приведенные алгоритмы подразумевают обучение весов при зафиксированных центрах и ширине. Для обучения центров и ширины можно использовать различные алгоритмы обучения [15], в данной работе применялся простейший алгоритм градиентного спуска с подбираемым коэффициентом скорости обучения. Алгоритм совместного обучения весов, центров и ширины строится путем чередования нескольких циклов обучения весов с несколькими циклами обучения центров и ширины. Число циклов обучения для весов должно быть большим, чем для нелинейных параметров сети – центров и ширины. Это необходимо для обеспечения достаточно малой погрешности, обусловленной неоптимальностью линейных параметров
![](images/212965-nomer-3907e738.gif)
![](images/212965-nomer-482618c8.gif)
![](images/212965-nomer-m113cad47.gif)
Для обеспечения обобщающей способности RBFNN необходимо соблюдать при обучении соотношение между оптимальным количеством нейронов и количеством контрольных точек . Большое количество контрольных точек ведет к увеличению времени решения задачи. Эксперименты показали, что многократная случайная генерация относительно небольшого числа контрольных точек внутри и на границе области решения компенсирует нарушение пропорции.
Эксперименты проводились при следующих условиях. Число нейронов равно 64. Число внутренних контрольных точек равно 100, число граничных контрольных точек равно 124. Нейроны первоначально располагались на квадратной сетке, включающей область решения и один слой законтурных точек. Контрольные точки располагались случайным образом равномерно внутри области решения, на каждой стороне границы и в углах области. Для каждого набора случайных контрольных точек проводился один цикл обучения центров и ширины нейронов и несколько циклов обучения весов. Число циклов обучения для весов подбиралось экспериментально, лучшие результаты получены при следующих значениях: 70 циклов для метода скорейшего спуска и градиентного метода с подбираемым коэффициентом обучения для весов, 5 циклов для метода с формальным применением МСГ для многослойного персептрона, 50 циклов для МСГ минимизации квадратичного функционала.
В процессе исследования приведенных алгоритмов получены следующие результаты: достигнуто значение относительной среднеквадратической погрешности решения 0,0005, что лучше, чем 0,005 в [7], абсолютная погрешность по сравнению с аналитическим решением не превышает 0,00003 (рис. 1).
![](images/212965-nomer-325f0f58.png)
Рис. 1. Погрешность по сравнению с аналитическим решением
Относительное время решения задачи различными методами представлено на рис. 2. За единицу принято время решения алгоритмом сопряженных градиентов.
Алгоритм сопряженных градиентов минимизации квадратичного функционала позволяет сократить время решения задачи в 6 раз по сравнению с формальным применением МСГ для персептрона. По сравнению с методом скорейшего спуска и методом градиентного спуска с подбираемым коэффициентом обучения для весов время решения сокращается почти на порядок. Такой значительный эффект объясняется тем, что предлагаемый алгоритм обучения весов радиально-базисной сети учитывает линейный характер выходного слоя сети и реализует эффективный метод сопряженных градиентов минимизации функционала ошибки.
![](images/212965-nomer-m6ace3b71.png)
Рис. 2. Сравнение эффективности алгоритмов обучения
Список литературы
1. Buhmann M.D. Radial Basis Functions: Theory and Implementations / M.D. Buhmann. – Cambridge University Press, 2004. – 259 p.
2. Liu G.R. An Introduction to Meshfree Methods and Their Programming / G.R. Liu, Y.T. Gu. – Springer, 2005. – 479 p.
3. Meshfree Methods for Partial Differential Equations / Editors M. Griebel, Marc. A. Schweitzer. – Springer, 2008. – 412 p.
4. Толстых А.И. Бессеточный метод на основе радиальных базисных функций / А.И. Толстых, Д.А. Широбоков // Журнал вычислительной математики и математической физики. – 2005, том 45. – № 8. – С. 1498 – 1505.
5. Хайкин С. Нейронные сети: полный курс /С. Хайкин. – М.: Вильямс, 2006. – 1104 с.
6. Осовский С. Нейронные сети для обработки информации /С. Осовский. – М.: Финансы и статистика, 2002. – 344 с.
7. Numerical solution of elliptic partial differential equation using radial basis function neural networks / L. Jianyu, L. Siwei, Q. Yingjiana, H. Yapinga // Neural Networks. – 2003. – 16(5/6). – P. 729 – 734.
8. Горбаченко В. И. Обучение радиально-базисных нейронных сетей при решении дифференциальных уравнений в частных производных / В.И. Горбаченко, Е.В. Артюхина // Нейрокомпьютеры: разработка, применение. – 2007. – № 9. – С. 150 – 159.
9. Васильев Ф. П. Численные методы решения экстремальных задач / Ф.П. Васильев. – М.: Наука, 1988. – 552 с.
10. Гилл Ф. Практическая оптимизация / А. Гилл, М. Райт. – М.: Мир, 1985. – 509 с.
11. Реклейтис Г. Оптимизация в технике. В 2-х к. Кн. 1 / Г. Реклейтис, А. Рейвиндран, К. Рэгсдел. – М.: Мир, 1986. – 349 с.
12. Fletcher R. Practical Methods of Optimization. Volume 1. Unconstrained Optimization / R. Fletcher. – John Weley & Sons, 1980. – 126 p.
13. Nocedal J. Numerical Optimization / J. Nocedal, Stephen J. W. – Springer, 2006. – 685 p.
14. Амосов А. А. Вычислительные методы / А. А. Амосов, Ю. А. Дубинский, Н. В. Копченова. – М.: Издательский дом МЭИ, 2008. – 672 с.
15. Тархов Д. А. Нейронные сети. Модели и алгоритмы / Д. А. Тархов. – М.: Радиотехника, 2005. – 256 с.
1 Работа выполнена по тематическому плану научно-исследовательских работ Пензенского государственного педагогического университета, проводимых по заданию Федерального агентства по образованию.
УДК 004.032.26(06) Нейронные сети