Исследование эффективности алгоритмов обучения нейронной сети
Рассматриваются алгоритмы обучения нейронной сети: градиентный спуск с постоянным шагом и метод сопряженных градиентов (алгоритм Флетчера-Ривса). Расчет значения минимизируемой целевой функции ошибки полученной на тестовой выборке после обучения.
| Рубрика | Программирование, компьютеры и кибернетика |
| Вид | статья |
| Язык | русский |
| Дата добавления | 29.04.2018 |
| Размер файла | 63,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Исследование эффективности алгоритмов обучения нейронной сети
Сорокина К.М.,
научный руководитель канд. техн. наук Липинский Л.В.
Сибирский федеральный университет
В последние десятилетия в мире бурно развивается новая прикладная область математики, специализирующаяся на искусственных нейронных сетях (НС). Актуальность исследований в этом направлении подтверждается массой различных применений НС. Это автоматизация процессов распознавания образов, адаптивное управление, аппроксимация функционалов, прогнозирование, создание экспертных систем, организация ассоциативной памяти и многие другие приложения. С помощью НС можно, например, предсказывать показатели биржевого рынка, выполнять распознавание оптических или звуковых сигналов, создавать самообучающиеся системы, способные управлять автомашиной при парковке или синтезировать речь по тексту.
Широкий круг задач, решаемый НС, не позволяет в настоящее время создавать универсальные, мощные сети, вынуждая разрабатывать специализированные НС, функционирующие по различным алгоритмам.
Общий вид нейрона:
Нелинейная функция F называется активационной и может иметь различный вид. Одной, из наиболее распространенных, является нелинейная функция с насыщением, так называемая логистическая функция или сигмоид
Следует отметить, что сигмоидная функция дифференцируема на всей оси абсцисс, что используется в некоторых алгоритмах обучения. Кроме того она обладает свойством усиливать слабые сигналы лучше, чем большие, и предотвращает насыщение от больших сигналов, так как они соответствуют областям аргументов, где сигмоид имеет пологий наклон.
Среди различных структур НС одной из наиболее известных является многослойная структура, в которой каждый нейрон произвольного слоя связан со всеми аксонами нейронов предыдущего слоя или, в случае первого слоя, со всеми входами НС. Такие НС называются полносвязными. Когда в сети только один слой, алгоритм ее обучения с учителем довольно очевиден, так как правильные выходные состояния нейронов единственного слоя заведомо известны, и подстройка синаптических связей идет в направлении, минимизирующем ошибку на выходе сети. По этому принципу строится, например, алгоритм обучения однослойного перцептрона. В многослойных же сетях оптимальные выходные значения нейронов всех слоев, кроме последнего, как правило, не известны, и двух или более слойный перцептрон уже невозможно обучить, руководствуясь только величинами ошибок на выходах НС. Один из вариантов решения этой проблемы - динамическая подстройка весовых коэффициентов синапсов, в ходе которой выбираются, как правило, наиболее слабые связи и изменяются на малую величину в ту или иную сторону, а сохраняются только те изменения, которые повлекли уменьшение ошибки на выходе всей сети. Ещё один вариант - распространение сигналов ошибки от выходов НС к ее входам, в направлении, обратном прямому распространению сигналов в обычном режиме работы. Этот алгоритм обучения НС получил название процедуры обратного распространения.
Согласно методу наименьших квадратов, минимизируемой целевой функцией ошибки НС является величина:
где - реальное выходное состояние нейрона j выходного слоя N нейронной сети при подаче на ее входы p-го образа; djp - идеальное (желаемое) выходное состояние этого нейрона.
Суммирование ведется по всем нейронам выходного слоя и по всем обрабатываемым сетью образам. Минимизация ведется методом градиентного спуска.
В данном докладе мы будем рассматривать алгоритмы обучения НС:
1. Градиентный спуск с постоянным шагом
2. Метод сопряженных градиентов (алгоритм Флетчера-Ривса)
Эти методы характеризуются проблемами выбора начальной точки поиска, локальным характером поиска, возможностью попадания в локальные экстремумы функционала обучения, необходимостью расчета производных целевой функции по весам сети, что является существенной проблемой для написания программного кода. В связи с этим в программе был реализован численный метод взятия производной.
Так как перед нами стоит задача сравнения эффективности уже двух реалиизованных в программе методов, то мы должны выставить критерий. На основании которого, мы будем сравнивать эффективность полученного результата тем или иным способом. Есть два более распространенных способа:
1. Ограничить количество вычислений целевой функции, и сравнивать полученную ошибку.
2. Обозначить «желаемую» ошибку, и сравнивать количество вычислений целевой функции, необходимых методу для получения данной ошибки.
Мы воспользуемся первым методом, так как для нас он более эффективен. Потому что из-за недостатков которыми обладают данные методы мы не можем гарантировать, что функция ошибки сойдется с необходимой нам точностью.
Задачи, на которых мы будем тестировать реализованные в программе методы:
1. Парабола
2. Парабола с «шумом» (отклонение порядка 0-0.1%)
3. X3+Y2
В таблице представлено среднее значение минимизируемой целевой функциии ошибки полученной на тестовой выборке десятикратным прогоном после обучения:
нейронный сеть алгоритм обучение
|
Градиентный спуск с постоянным шагом |
Метод сопряженных градиентов |
||
|
Парабола |
0,0025261131 |
0,0021574816 |
|
|
Парабола с «шумом»(отклонение порядка 0-0.1%) |
0,1854083162 |
0,1694469861 |
|
|
X3+Y2 |
1,509863241 |
1,237563010 |
В данных примерах мы ограничились 68 000 итерациями и начальным шагом 0,001. Активационная функция -. Структура НС - многослойный персептрон с размером 3х4.
В процессе тестирования функций было выявлено, что из-за обозначенных выше недостатков данных методов, существует проблема выбора «подходящей» функции и параметров для работы с ними. Поэтому первоначально стоит задача в усовершенствовании данных методов и реализации дополнительных методов, с помощью которых можно будет получать представление об эффективности того или иного способа.
На основании полученных результатов можно сделать вывод, что метод сопряженных градиентов при сопоставимом количестве вычислений целевой функции работает более эффективно, чем метод градиентного спуска с постоянным шагом.
Размещено на Allbest.ru
Подобные документы
Обучение простейшей и многослойной искусственной нейронной сети. Метод обучения перцептрона по принципу градиентного спуска по поверхности ошибки. Реализация в программном продукте NeuroPro 0.25. Использование алгоритма обратного распространения ошибки.
курсовая работа [1019,5 K], добавлен 05.05.2015Разработка алгоритма и программы для распознавания пола по фотографии с использованием искусственной нейронной сети. Создание алгоритмов: математического, работы с приложением, установки весов, реализации функции активации и обучения нейронной сети.
курсовая работа [1,0 M], добавлен 05.01.2013Исследование нечеткой модели управления. Создание нейронной сети, выполняющей различные функции. Исследование генетического алгоритма поиска экстремума целевой функции. Сравнительный анализ нечеткой логики и нейронной сети на примере печи кипящего слоя.
лабораторная работа [2,3 M], добавлен 25.03.2014Понятие искусственного нейрона и искусственных нейронных сетей. Сущность процесса обучения нейронной сети и аппроксимации функции. Смысл алгоритма обучения с учителем. Построение и обучение нейронной сети для аппроксимации функции в среде Matlab.
лабораторная работа [1,1 M], добавлен 05.10.2010Изучение и реализация системы, использующей возможности Microsoft Azure для распределенного обучения нейронной сети. Рассмотрение функционирования распределенных вычислений. Выбор задачи для исследования; тестирование данного программного ресурса.
дипломная работа [2,0 M], добавлен 20.07.2015Математическая модель нейронной сети. Однослойный и многослойный персептрон, рекуррентные сети. Обучение нейронных сетей с учителем и без него. Алгоритм обратного распространения ошибки. Подготовка данных, схема системы сети с динамическим объектом.
дипломная работа [2,6 M], добавлен 23.09.2013Модель и задачи искусственного нейрона. Проектирование двуслойной нейронной сети прямого распространения с обратным распространением ошибки, способной подбирать коэффициенты ПИД-регулятора, для управления движения робота. Комплект “LEGO Mindstorms NXT.
отчет по практике [797,8 K], добавлен 13.04.2015Математическая модель искусственной нейронной сети. Структура многослойного персептрона. Обучение без учителя, методом соревнования. Правило коррекции по ошибке. Метод Хэбба. Генетический алгоритм. Применение нейронных сетей для синтеза регуляторов.
дипломная работа [1,5 M], добавлен 17.09.2013Общие сведения о принципах построения нейронных сетей. Искусственные нейронные системы. Математическая модель нейрона. Классификация нейронных сетей. Правила обучения Хэбба, Розенблатта и Видроу-Хоффа. Алгоритм обратного распространения ошибки.
дипломная работа [814,6 K], добавлен 29.09.2014Нейронные сети и оценка возможности их применения к распознаванию подвижных объектов. Обучение нейронной сети распознаванию вращающегося трехмерного объекта. Задача управления огнем самолета по самолету. Оценка экономической эффективности программы.
дипломная работа [2,4 M], добавлен 07.02.2013


