Научная статья на тему 'СРАВНИТЕЛЬНЫЙ АНАЛИЗ РАЗЛИЧНЫХ АЛГОРИТМОВ ОБУЧЕНИЯ ИСКУССТВЕННОЙ НЕЙРОННОЙ СЕТИ'

СРАВНИТЕЛЬНЫЙ АНАЛИЗ РАЗЛИЧНЫХ АЛГОРИТМОВ ОБУЧЕНИЯ ИСКУССТВЕННОЙ НЕЙРОННОЙ СЕТИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
10
1
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
искусственные нейронные сети / алгоритм обучения / artificial neural networks / training algorithm

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Д А. Ковжун, А А. Федоров

Искусственная нейронная сеть – это методология разработки интеллектуальной системы, способной имитировать работу человеческого мозга. Все чаще исследуются новые алгоритмы для повышения эффективности и точности. Таким образом, в данной статье рассматривается эффективность и целесообразность использования различных алгоритмов обучения искусственной нейронной сети архитектуры обратного распространения ошибки. Алгоритмы обучения разработаны и реализованы в среде MATLAB. Различные алгоритмы обучения анализируются для определения уровня точности между желаемыми и фактическими результатами. Анализ выполняется на основе набора данных для прогнозирования цен на жилье от Kaggle.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Д А. Ковжун, А А. Федоров

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

COMPARATIVE ANALYSIS OF VARIOUS ARTIFICIAL NEURAL NETWORK LEARNING ALGORITHMS

An artificial neural network is a methodology for developing an intelligent system that can imitate the functioning of the human brain. New algorithms are increasingly being explored to improve efficiency and accuracy. Thus, this article examines the effectiveness and feasibility of using various algorithms for training an artificial neural network in the backpropagation architecture. The learning algorithms are developed and implemented in the MATLAB environment. Various learning algorithms are analyzed to determine the accuracy of results. The analysis is performed using a house price forecasting dataset from Kaggle.

Текст научной работы на тему «СРАВНИТЕЛЬНЫЙ АНАЛИЗ РАЗЛИЧНЫХ АЛГОРИТМОВ ОБУЧЕНИЯ ИСКУССТВЕННОЙ НЕЙРОННОЙ СЕТИ»

СРАВНИТЕЛЬНЫЙ АНАЛИЗ РАЗЛИЧНЫХ АЛГОРИТМОВ ОБУЧЕНИЯ ИСКУССТВЕННОЙ НЕЙРОННОЙ СЕТИ

Д.А. Ковжун, студент А.А. Федоров, студент

Московский государственный технический университет им. Н.Э. Баумана (Россия, г. Москва)

DOI:10.24412/2500-1000-2024-4-3-11-14

Аннотация. Искусственная нейронная сеть - это методология разработки интеллектуальной системы, способной имитировать работу человеческого мозга. Все чаще исследуются новые алгоритмы для повышения эффективности и точности. Таким образом, в данной статье рассматривается эффективность и целесообразность использования различных алгоритмов обучения искусственной нейронной сети архитектуры обратного распространения ошибки. Алгоритмы обучения разработаны и реализованы в среде ЫА^АВ. Различные алгоритмы обучения анализируются для определения уровня точности между желаемыми и фактическими результатами. Анализ выполняется на основе набора данных для прогнозирования цен на жилье от Kaggle.

Ключевые слова: искусственные нейронные сети; алгоритм обучения.

Искусственная нейронная сеть - это вычислительная модель, основанная на функциях и структуре биологической нейронной сети. Нейронная сеть, которую можно создать искусственно, была впервые предложена Уолтером Питтсом и Уорреном Маккаллохом в статье «Логическое исчисление идей, присущих нервной деятельности» в 1943 году. Предложенную модель часто называют моделью Маккаллоха-Пит-тса.

Искусственную нейронную сеть необходимо обучить, прежде чем она сможет решать задачу. Структура искусственной нейронной сети определяется различными архитектурными моделями, такими как: одноуровневая архитектура прямой связи, многоуровневая архитектура прямой связи, рекуррентная архитектура или архитектура с обратной связью, сетчатая архитектура. Эти архитектуры состоят из трех уровней: входной слой, скрытый слой, выходной слой.

Искусственная нейронная сеть может быть обучена таким образом, чтобы получить результат, близкий к ожидаемому (или желаемому) результату. Существуют различные стратегии обучения, которые применяются для обучения искусственной нейронной сети, такие как: контролируемое обучение, неконтролируемое обучение,

обучение с подкреплением, автономное обучение.

Существуют различные алгоритмы обучения, которые используются для обучения искусственной нейронной сети и получения целевого результата, такие как квазиньютоновский, сопряженный градиент, градиентный спуск. Эти алгоритмы обучения были разработаны с учетом времени и требований.

Целью данной статьи является анализ различных алгоритмов обучения (а именно, Левенберга-Марквардта, байесовской регуляризации, квазиньютоновской модели BFGS, одноступенчатого секущего, градиентного спуска и масштабируемого сопряженного градиента) в зависимости от производительности.

Обзор алгоритмов обучения

Алгоритм Левенберга-Марквардта

Алгоритм Левенберга-Марквардта также называют демпфированным методом наименьших квадратов. Он представляет собой итерационный алгоритм, используемый для решения нелинейных задач наименьших квадратов. Он совмещает в себе алгоритм градиентного спуска и метод Гаусса-Ньютона. Когда текущее решение далеко от локального минимума, алгоритм Левенберга-Марквардта ведет себя как метод градиентного спуска, когда решение

близко к локальному минимуму - как метод Гаусса-Ньютона.

Алгоритм Левенберга-Марквардта работает быстро, имеет стабильную сходимость [1] и решает проблемы, существующие в методах градиентного спуска и Гаусса-Ньютона. Несмотря на эти преимущества, у рассматриваемого алгоритма есть свои недостатки. Одна из проблем заключается в том, что нахождение обратной матрицы Гессе необходимо вычислять каждый раз для обновления веса, и каждая итерация может потребовать обновления многих весов.

Метод градиентного спуска

Это простейший алгоритм поиска минимума функции. Обновление веса выполняется путем простого добавления отрицательного значения масштабированного градиента на каждом этапе. Теория сходимости метода широко используется и является основой для понимания многих наиболее известных алгоритмов обучения нейронных сетей. Проблема с градиентным спуском заключается в том, что он имеет медленную скорость сходимости [2].

Алгоритм масштабированных сопряженных градиентов

Алгоритм масштабированных сопряженных градиентов - это контролируемый алгоритм обучения. Он не содержит пользовательских параметров, сильно влияющих на результаты работы метода. Алгоритм использует механизм масштабирования размера шага и позволяет избежать линейного поиска. Он требует меньше памяти из-за простого расчета градиента. Эти два фактора делают алгоритм масштабированных сопряженных градиентов быстрым, но менее точным, чем алгоритм Левенберга-Марквардта.

Одноступенчатый метод секущих

Одноступенчатый метод секущих представляет собой нечто среднее между алгоритмами масштабированных сопряженных градиентов и квазиньютоновских методов. Одноступенчатый метод секущих не сохраняет полную матрицу Гессе, но предполагает, что предыдущая матрица Гессе была единичной матрицей [3]. Таким образом, нет необходимости вычислять обратную матрицу. Эта функция снижает

вычислительную сложность алгоритма. Одноступенчатый метод секущих менее точен, чем алгоритм масштабированных сопряженных градиентов, но более точен, чем квазиньютоновские методы.

Байесовская регуляризация

Байесовские регуляризованные искусственные нейронные сети более надежны, чем стандартные сети обратного распространения ошибки. Алгоритм обновляет значение веса и смещения в соответствии с оптимизацией Левенберга-Марквардта. Комбинация квадратов ошибок и весов минимизируется, а затем определяется правильная комбинация, чтобы создать сеть с лучшими свойствами обобщения. Этот процесс называется байесовской регуляризацией. Ограничением этого алгоритма является то, что для вычислений он использует якобиан, следовательно, эффективность представляет собой среднее значение или сумму квадратов ошибок [4].

Алгоритм Бройдена-Флетчера-Голь-дфарба-Шанно (BFGS)

Это квазиньютоновский метод поиска по второй производной линии. Это итерационный метод, который оказался очень мощным методом решения задачи неограниченной оптимизации. Матрицу Гессиана вторых производных не нужно создавать напрямую. Вместо этого аппроксимируется матрица Гессе, которая итеративно обновляется на каждом этапе. Затем функция линии используется для поиска следующей точки. Он даже показывает хорошую производительность при неплавной оптимизации.

Набор данных

Набор данных, используемый для сравнения различных алгоритмов обучения, взят из Kaggle. Это популярный набор данных для прогнозирования цен на жилье, а именно «Продажи домов США». Набор данных содержит 19 различных характеристик домов вместе с их ценой, собранных в 2014 и 2015 годах. Несущественные для исследования информативные признаки были отфильтрованы из набора данных, что дало нам 20000 выборок из 15 информативных признаков. Данные уже были очищены, а информативные признаки были нормализованы с помощью функции десятичного

логарифма, чтобы привести их к одинаковому масштабу. Данные были случайным образом разделены в соотношении 6:2:2 для обучения, валидации и тестирования нейронной сети, а для байесовской регуляризации данные были разделены в соотношении 7:3 для обучения и тестирования нейронной сети.

Нейронная сеть

Архитектура нейронной сети, используемая в этой статье, представляет собой архитектуру обратного распространения. Сеть состоит из входного слоя, который содержит 15 экземпляров или нейронов, выходного слоя с 1 нейроном и двух скрытых слоев по 45 нейронов в каждом. Скрытые и выходной слой имеют сигмоидную функция активации.

Рис. 1. Архитектура нейронной сети

Используется функция адаптивного обучения, которая представляет собой градиентный спуск с учетом веса импульса и функции обучения смещению. В качестве функции производительности используется MSE или среднеквадратичная ошибка. В МАТЬАБ представлены различные алгоритмы обучения, но некоторые из них используются для сравнения. Они являются:

- TRAINLM: Левенберга-Марквардта

- TRAINGD: Градиентный спуск

- TRAINSCG: Алгоритм масштабированных сопряженных градиентов

- TRAINOSS: Одноступенчатый метод секущих

- TRAINБR: Байесовская регуляризация

- TRAINБFG: Алгоритм Бройдена-Флет-чера-Гольдфарба-Шанно

Результаты обучения

Обучение нейронной сети проводилось с использованием различных алгоритмов обучения в одной и той же системе и в схожих условиях, и были записаны различные параметры обучения. Данные по результатам каждого алгоритма собраны в таблице 1.

Таблица 1. Сравнение полученных параметров

Номер Алгоритм Лучшая производительность Эпоха Затраченное время

1 TRAINLM 0.0147 14 04:05

2 TRAINGD 0.0243 1000 00:29

3 TRAINSCG 0.0163 165 00:22

4 TRAINOSS 0.0166 179 00:31

5 TRAINBR 0.0121 207 47:56

6 TRAINBFG 0.0155 152 11:42

Заключение

Из результатов тестирования видно, что алгоритм байесовской регуляризации имеет тенденцию значительно уменьшать ошибку, но для этого требуется много времени и вычислительных мощностей, а также эффективность байесовской регуляризации, как правило, ухудшается, поскольку она перегружает сеть обучающими данными.

С другой стороны, алгоритм градиентного спуска быстр, поскольку он выполняет 1000 итераций за гораздо меньшее время, и ошибка также постоянно уменьшается после каждой итерации, но скорость спуска значительно снижается, и требуется больше времени для дальнейшего уменьшения ошибки.

Производительность одноступенчатого метода секущих лучше, чем у градиентного спуска, поскольку данный метод занимает

меньше времени, а также приводит к меньшей ошибке.

Производительность алгоритма масштабируемого сопряженного градиента немного выше, чем у одноступенчатого метода секущих, но он более эффективен по времени. Он занимает примерно половину времени, затрачиваемого одноступенчатого метода секущих.

Алгоритм Бройдена-Флетчера-Голь-дфарба-Шеннона имеет лучшую производительность, чем у упомянутого выше, но время, затрачиваемое этим алгоритмом, намного больше, чем у других, что снижает вероятность его использования.

Алгоритм Левенберга-Марквардта, как правило, дает лучшие результаты, чем

Библиографический список

1. Пензин К.В. Вариант алгоритма Левенберга-Марквардта решения нелинейной задачи наименьших квадратов // Журнал вычислительной математики и математической физики. - 1991. - Т. 31, № 10. - С. 1444-1451.

2. Гасников А.В. Современные численные методы оптимизации. Метод универсального градиентного спуска: учебное пособие. - М.: МФТИ, 2018. - 291 с.

3. Martin Fodslette M0ller A scaled conjugate gradient algorithm for fast supervised learning // Neural Networks. - 1993. - № 6. - С. 525-533.

4. Нужный А. С. Байесовская регуляризация в задаче аппроксимации функции по точкам с помощью ортогонализованного базиса // Математическое моделирование. - 2011. - Т. 23, № 9. - С. 33-42.

COMPARATIVE ANALYSIS OF VARIOUS ARTIFICIAL NEURAL NETWORK

LEARNING ALGORITHMS

D.A. Kovzhun, Student A.A. Fedorov, Student

Bauman Moscow State Technical University (Russia, Moscow)

Abstract. An artificial neural network is a methodology for developing an intelligent system that can imitate the functioning of the human brain. New algorithms are increasingly being explored to improve efficiency and accuracy. Thus, this article examines the effectiveness and feasibility of using various algorithms for training an artificial neural network in the backpropagation architecture. The learning algorithms are developed and implemented in the MATLAB environment. Various learning algorithms are analyzed to determine the accuracy of results. The analysis is performed using a house price forecasting dataset from Kaggle. Keywords: artificial neural networks; training algorithm.

алгоритм Бройдена-Флетчера-Гольдфарба-Шеннона, и занимает примерно треть времени. Более того, этому алгоритму требуется всего 13 периодов для достижения результата, что делает его более эффективным.

Можно сделать однозначный вывод, что если обучение сети должно быть завершено за меньшее время, то лучше всего использовать алгоритм масштабированных сопряженных градиентов, но если небольшая ошибка не может быть устранена, то можно использовать алгоритм Левенберга-Марк-вардта, затратив больше времени и вычислительной мощности.

i Надоели баннеры? Вы всегда можете отключить рекламу.