Анализ эффективности генетических алгоритмов обучения нейронных сетей
Доказательство возможности аппроксимации непрерывных функций нейронными сетями в работах Колмогорова и Хехта Нильсена. Эффективность применения генетических алгоритмов к решению проблемы исследования таких сетей. Выбор операторов мутации и кроссовера.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 22.08.2020 |
Размер файла | 42,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Анализ эффективности генетических алгоритмов обучения нейронных сетей
аспирант Бурнаев К.Е.
Белгородский государственный технологический университет
Annotation
The possibility of continuous function approximation by neural networks is proved is Kolmogorov's and Hecht_Nilsen's work. Unfortunately, they provide us no fast and stable means of learning such networks. In this work, the possibility and the effectiveness of applying genetic algorithms to this problem are investigated. The theoretic possibility of resolving this problem with the GA is proved. Mutation and crossover operators are chosen and experimental results are provided.
Постановка проблемы
алгоритм нейронный сеть функция генетический
Доказано, что c помощью нейронных сетей определенной структуры можно сколь угодно точно приблизить произвольную непрерывную функцию, заданную на единичном многомерном кубе. Однако, при попытке использовать такие нейронные сети на практике мы сталкиваемся с проблемой их обучения. Обучение нейронной сети сводится к минимизации некоторой функции ошибки, аргументами которой являются все изменяемые параметры сети. Как правило, используют конструкцию следующего вида:
,(1)
где - вектор параметров сети, - вектор входных данных, - обучающее множество, - эталонная функция, - функция, реализуемая нейронной сетью. Такая функция имеет большое количество локальных оптимумов, что не дает возможности гарантированно получить оптимальное решение [1-3].
Предлагается использовать для обучения нейронных сетей генетические алгоритмы, как алгоритмы, хорошо показавшие себя в решении задач многокритериальной оптимизации с большим количеством локальных оптимумов. Так как генетические алгоритмы являются очень широким классом алгоритмов, необходимо определить типы используемых операторов мутации и кроссовера, а также их параметры, которые бы подходили для рассматриваемой задачи в зависимости от вида используемой нейронной сети [4,5].
Анализ литературы. Доступные публикации на данную тему рассматривают только теоретическую возможность применения генетических алгоритмов для обучения нейронных сетей [5-7]. Рассмотрены возможности реализации эволюционных алгоритмов обучения и намечены пути увеличения их эффективности, такие как использование адаптивных генетических алгоритмов или специфических операторов кроссовера или мутации. Доказана устойчивость таких алгоритмов. В этих работах не представлены экспериментальные данные, которые могли бы дать представление о том, насколько эффективными оказываются генетические методы обучения по сравнению с общепринятыми, содержащими с своей основе градиентные методы оптимизации.
Цель статьи. Данная работа направлена на практическую оценку эффективности обучения генетическими алгоритмами.
Рассматриваются нейронные сети различной топологии, решающие задачу аппроксимации непрерывной функции, заданной на единичном кубе. Обучение сетей производится как классическими алгоритмами, так и несколькими вариантами генетических алгоритмов, предложенных в [5-7]. Аппроксимируемая функция задается случайным набором из 100 точек, лежащих внутри единичного трехмерного куба (значения пар уникальны для каждой точки). Для того, чтобы ослабить влияние случайно выбранного начального состояния сети на результат обучения, каждый алгоритм запускался 20 раз для различных случайных начальных состояний. Сравнение результатов производилось через промежутки времени, соответствовавшие 100 поколениям генетическго алгоритма. Для оценки качества сети используется функция вида:
.(2)
Нейронные сети с сигмоидальными активационными функциями. Пусть - любая непрерывная функция, определенная на ограниченном множестве, а - любое сколь угодно малое число. Тогда существует такое число , набор чисел , и что:
(3)
приближает данную функцию с погрешностью не более на всей области определения.
Приведенная выше теорема [8-10] является развитием работ Колмогорова [11] и Хехт-Нильсена [12]. Из нее очевидным образом следует, что трехслойный перцептрон (первый слой входных и третий слой выходных нейронов имеют линейные активационные функции, в второй ? сигмоидальные) достаточен для аппроксимации функции рассматриваемого типа. Однако эта теорема не является конструктивной; они не дают информации ни о весах связей, ни о количестве нейронов в скрытом слое. Поэтому начальное состояние сети перед обучением задается в большинстве задач случайным образом.
С точки зрения алгоритма обучения могут изменяться следующие параметры нейронной сети: вес отдельной связи; крутизна наклона активационной функции; величина смещения активационной функции по оси абсцисс.
Заметим, что с помощью небольшого усложнения структуры сети (ввода константного единичного входного сигнала) все эти параметры могут быть сведены к изменению весов связей сети, что упрощает практическую реализацию алгоритма обучения. Таким образом, обучение многослойного перцептрона сводится к последовательному изменению весов При использовании генетических алгоритмов отдельными генами можно считать значения весов связей.
Используем в алгоритме оператор равномерного кроссовера:
(4)
где - ген потомка, - соответствующий ген го родителя, - равномерно распределенная на единичном отрезке случайная величина.
Простейший оператор мутации имеет вид:
,(5)
где - значение гена на -м шаге, - некоторая случайная величина. Заметим, что множество возможных значений гена является множеством всех вещественных чисел. В результате действия оператора мутации может появиться любое значение из этого множества. В таком случае в качестве случайной величины можно взять случайную величину с нормальным распределением. Недостатком такого подхода является то, что добавление и исключение решений из множества перебираемых решений, которое может быть получено с использованием только кроссовера, производится случайным образом; эффективность такого оператора быстро падает при получении «достаточно хороших» решений, находящихся, например, в окрестности локального минимума.
Рассмотрим часто встречающийся случай, когда случайно получено решение , находящееся в небольшой -окрестности оптимального решения , и внутри множества перебираемых с помощью кроссовера решений не существует решения в этой же окрестности, для которого . Тогда улучшить найденное решение можно, только получив в результате мутации решение , вероятность чего при небольших быстро стремится к нулю. Поиск решения в небольшой окрестности уже найденных решений может быть реализован с помощью дополнительного оператора мутации вида
,(6)
где - случайная величина с матожиданием и среднеквадратичным отклонением . При применении такого оператора во множество рассматриваемых решений включается решение, находящееся в -окрестности уже существующего. Многократное применение этого оператора и отбор лучших из полученных решений дает результат, аналогичный применению градиентного алгоритма при условии малости . На рис.1 приведено сравнительные результаты использования для обучения нейронных сетей такого вида с использованием алгоритма обратного распространения и двух рассмотренных вариантов генетических алгоритмов:
Рисунок 1 - Обучение перцептрона
Нейронные сети с радиальными базисными функциями. Трехслойная РБФ-сеть по своей структуре аналогичны трехслойному перцептрону; нейроны скрытого слоя имеют колоколообразные активационные функции. Для таких сетей характерна повышенная скорость обучения. Однако, РБФ-сети слабо пригодны для экстраполяции за область обучающих данных. Кроме этого, для правильного моделирования типичной функции РБФ-сеть требует большего числа элементов, чем перцептрон, а значит, увеличивается потребность ресурсах на стадии использования обученной сети
Обучение РБФ-сети проходит в несколько этапов: определяются центры и отклонения для радиальных элементов, после этого оптимизируются параметры линейного выходного слоя. Мы можем использовать генетические алгоритмы на любом из этих двух этапов, однако, так как для решения второй задачи существуют эффективные и точные методы, будем использовать эволюционные алгоритмы только для определения центров и отклонений радиальных элементов.
При применении ГА на первом этапе обучения РБФ-сети, мы задаемся некоторым константным количеством нейронов скрытого слоя. Введем два типа генов: и . Множество возможных значений первого типа будет совпадать с множеством возможных входных данных (для большинства задач ), каждый такой ген определяет центр одного из радиальных элементов. Множество возможных значений второго типа задает величину отклонения для каждого радиального элемента, .Используем оператор мутации вида:
(7)
где , - элемент случайного разбиения единичного отрезка, - элемент обучающей последовательности. В качестве оператора кроссовера используем уже рассмотренный равномерный кроссовер (4). На рис.2 приведено сравнительные результаты использования для обучения РБФ-сетей и метода со случайным выбором центров и рассмотренного варианта генетического алгоритма:
Выводы
алгоритм нейронный сеть функция генетический
Полученные нами результаты свидетельствуют о том, что применение генетических алгоритмов для обучения нейронных сетей во многих случаях оправдано, в частности при использовании нейронных сетей с сигмоидальными активационными функциями.
Дальнейшая работа будет направлена на поиск способов подбора оптимальных параметров генетического алгоритма для конкретной задачи, а также на исследование эффективности адаптивных генетических алгоритмов, подход к реализации которых описан в [5,6].
Литература
1. Горбань А.Н. Обучение нейронных сетей. - М: СП Параграф, 1990. - 160 с.
2. Головко В.А. Нейроинтеллект: теория и применение. Книга 1: Организация и обучение нейронных сетей с прямыми и обратными связями. Брест: Издательство БПИ, 1999. - 260 с.
3. Анил К Джейн. Введение в искусственные нейронные сети // Открытые системы. - 1997. - № 4.
4. Круглов В., Борисов В. Искусственные нейронные сети. Теория и практика. - М: Горячая Линия - Телеком, 2002. - 382 с.
5. Smith J.E. Self adaptation in evolutionary algorithms; Tech. rep.; University of the West of England, 1998.
6. Auer P. Adaptive and self-confident on-line learning algorithms; Tech. rep. - Klosterwiesgasse 32/2, A-8010 Graz, Austria; Graz University of Technology, 2000.
7. Auer P., Burgsteiner H., Maass W. Universal learning with parallel perceptrons. Tech. rep. - Klosterwiesgasse 32/2, A-8010 Graz, Austria; Graz University of Technology, 2002.
8. Gybenko G. Approximation by superposition of sigmoidal functions // Mathematics of Control, Signals and Systems. - 1989 - №2.
9. Funahashi K.-I. On the approximate realization of continuous mappings by neural networks // Neural Networks. - 1989 - № 2.
10. Hornik K., Stinchcombe M., White H. Multilayer neural networks are universal approximators // Neural Networks. - 1989. - №2
11. Колмогоров А.Н. О представлении непрерывных функций нескольких переменных в виде суперпозиций непрерывных функций одного переменного и сложения. - М: АН СССР, 1957 - т. 114 .- С. 953-956.
12. Hecht_Nilsen R Kolmogorov's mapping neural network existence theorem. // 1st IEEE Conference on Neural Networks. - San Diego: 1987. Vol. 3.
Размещено на Allbest.ru
...Подобные документы
Комплексное исследование истории развития, основных понятий, области применения и особенностей генетических алгоритмов. Анализ преимуществ генетических алгоритмов. Построение генетического алгоритма, позволяющего находить максимум целочисленной функции.
курсовая работа [27,9 K], добавлен 23.07.2011История появления эволюционных алгоритмов. Нейрокомпьютерные исследования в России. Реализация генетических алгоритмов. Расчет эффективности процедур поиска конкурирующей процедуры. Schema и теорема шим. Примеры использования нейросетевых технологий.
курсовая работа [43,0 K], добавлен 20.10.2008Диагностический анализ изучения алгоритмов обучения нейронных сетей "с учителем". Сбор входных и выходных переменных для наблюдений и понятие пре/пост процессирования. Подготовка и обобщение многослойного персептрона, модель обратного распространения.
курсовая работа [249,3 K], добавлен 22.06.2011Основные особенности эволюционных алгоритмов. Описание алгоритмов селекции, мутации, скрещивания, применяемых для реализации генетических алгоритмов. Вычисление функции приспособленности. Программная реализация. Тестирование и руководство пользователя.
курсовая работа [1,3 M], добавлен 11.03.2014Сущность и экономическое обоснование, методы и подходы к прогнозированию валютного курса. Описание технологии интеллектуальных вычислений. Применение генетических алгоритмов для настройки архитектуры нейронных сетей. Основные способы улучшения модели.
курсовая работа [1,3 M], добавлен 26.03.2016Понятие искусственного нейрона и искусственных нейронных сетей. Сущность процесса обучения нейронной сети и аппроксимации функции. Смысл алгоритма обучения с учителем. Построение и обучение нейронной сети для аппроксимации функции в среде Matlab.
лабораторная работа [1,1 M], добавлен 05.10.2010Описание генетических алгоритмов. Применение генетического алгоритма для решения задачи коммивояжера. Постановка задачи безусловной оптимизации. Изучение распространения генетических алгоритмов на модель с несколькими взаимодействующими популяциями.
дипломная работа [979,1 K], добавлен 30.05.2015Трудности использования эволюционных алгоритмов. Построение вычислительных систем, основанных на принципах естественного отбора. Недостатки генетических алгоритмов. Примеры эволюционных алгоритмов. Направления и разделы эволюционного моделирования.
реферат [187,4 K], добавлен 21.01.2014Анализ применения нейронных сетей для прогнозирования ситуации и принятия решений на фондовом рынке с помощью программного пакета моделирования нейронных сетей Trajan 3.0. Преобразование первичных данных, таблиц. Эргономическая оценка программы.
дипломная работа [3,8 M], добавлен 27.06.2011Изучение методов разработки систем управления на основе аппарата нечеткой логики и нейронных сетей. Емкость с двумя клапанами с целью установки заданного уровня жидкости и построение нескольких типов регуляторов. Проведение сравнительного анализа.
курсовая работа [322,5 K], добавлен 14.03.2009Рост активности в области теории и технической реализации искусственных нейронных сетей. Основные архитектуры нейронных сетей, их общие и функциональные свойства и наиболее распространенные алгоритмы обучения. Решение проблемы мертвых нейронов.
реферат [347,6 K], добавлен 17.12.2011Изучение пространственных характеристик АГК и структур НС при обработке ими стохастических сред, подбор алгоритмов. Рекомендаций по использованию разработанных адаптивных алгоритмов с корреляционными методами получения оценок для регрессионных моделей.
дипломная работа [5,1 M], добавлен 06.05.2011Описание технологического процесса напуска бумаги. Конструкция бумагоделательной машины. Обоснование применения нейронных сетей в управлении формованием бумажного полотна. Математическая модель нейрона. Моделирование двух структур нейронных сетей.
курсовая работа [1,5 M], добавлен 15.10.2012Способы применения технологий нейронных сетей в системах обнаружения вторжений. Экспертные системы обнаружения сетевых атак. Искусственные сети, генетические алгоритмы. Преимущества и недостатки систем обнаружения вторжений на основе нейронных сетей.
контрольная работа [135,5 K], добавлен 30.11.2015Исследование эффективности применения нейронных сетей в рамках отношений между людьми. Принцип работы с нейросимулятором. Составление обучающей выборки и проектирование персептронов. Анализ выбора супружеской пары с использованием нейросетевых технологий.
презентация [150,8 K], добавлен 19.08.2013Возможности программ моделирования нейронных сетей. Виды нейросетей: персептроны, сети Кохонена, сети радиальных базисных функций. Генетический алгоритм, его применение для оптимизации нейросетей. Система моделирования нейронных сетей Trajan 2.0.
дипломная работа [2,3 M], добавлен 13.10.2015Понятие и суть нечеткой логики и генетических алгоритмов. Характеристика программных пакетов для работы с системами искусственного интеллекта в среде Matlab R2009b. Реализация аппроксимации функции с применением аппарата нечеткого логического вывода.
курсовая работа [2,3 M], добавлен 23.06.2012Общие сведения о принципах построения нейронных сетей. Искусственные нейронные системы. Математическая модель нейрона. Классификация нейронных сетей. Правила обучения Хэбба, Розенблатта и Видроу-Хоффа. Алгоритм обратного распространения ошибки.
дипломная работа [814,6 K], добавлен 29.09.2014Способы применения нейронных сетей для решения различных математических и логических задач. Принципы архитектуры их построения и цели работы программных комплексов. Основные достоинства и недостатки каждой из них. Пример рекуррентной сети Элмана.
курсовая работа [377,4 K], добавлен 26.02.2015Детерминированный и вероятностный подходы к оценке живучести сетей. Анализ моделей гибели и вероятности связности сетей. Табличное представление результатов вычислений и построение графических зависимостей в программе, написанной на языке Object Pascal.
дипломная работа [2,9 M], добавлен 03.09.2013