Сетевое издание
Современные проблемы науки и образования
ISSN 2070-7428
"Перечень" ВАК
ИФ РИНЦ = 1,006

НЕЙРОСЕТЕВЫЕ ТЕХНОЛОГИИ В РЕШЕНИИ ЗАДАЧ ПРОГНОЗИРОВАНИЯ

Шагалова П.А. 1 Ляхманов Д.А. 1
1 ФГБОУ ВПО «Нижегородский государственный технический университет им. Р.Е.Алексеева»
Проведено исследование применения нейросетевых технологий для решения актуальной задачи прогнозирования временных рядов. В ходе исследования рассмотрены следующие аспекты построения нейросетевых систем: обработка входных данных, разработка архитектуры, обучение. Основное внимание уделено проблемам проектирования систем, выполняющих построение прогноза на несколько шагов вперед и базирующихся на основе многослойной нейронной сети. Представлен способ адаптации архитектуры сети «многослойный персептрон» к решению задачи многошагового прогнозирования с последующей апробацией разработанной модели и её сравнения с неадаптированной моделью. При проведении экспериментов в качестве входных данных сети использовались временные ряды различной природы и обладающие разными характеристиками. Результаты исследований показали, что использование предложенной модели сети позволяет уменьшить накопление ошибки прогнозирования.
прогнозирование.
многослойный персептрон
искусственная нейронная сеть
1. Бухнин А.В., Бажанов Ю.С. Оптимизация баз знаний экспертных систем с применением нейронных нечетких сетей // Нейрокомпьютеры: разработка, применение. – М.: Радиотехника, 2007. – № 11.
2. Соколова Э.С. Метод прогнозирования на основе динамики спектральных составляющих / Э.С. Соколова, Д.А. Ляхманов // Информационно-измерительные и управляющие системы. – 2011. – Т. 9. – № 3. – С.65-71.
3. Соколова Э.С. Разработка и апробация эмулятора нейросетевого моделирования для целей прогнозирования временных рядов / Д.В. Дмитриев, Д.А. Ляхманов, Э.С. Соколова // Современные проблемы науки и образования. – 2012. – № 6.
4. Хайкин С. Нейронные сети: полный курс / Саймон Хайкин. – М.: Издательский дом «Вильямс», 2006. – 104с.
5. Ясницкий Л.Н. Введение в искусственный интеллект : учебное пособие для студ. высш. учеб. заведений / Л.Н. Ясницкий. – 2-е изд. – М.: Издательский дом «Академия», 2008. – 176с.
Разработка и внедрение интеллектуальных систем управления технологическими, экономическими, социальными процессами должны включать реализацию прогностических моделей, позволяющих значительно повысить качество управленческих решений. Своевременное получение прогноза, увеличение его точности повышают эффективность принятия решений, предотвращают катастрофические ситуации, снижают риски неблагоприятных последствий.

Цели исследования

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

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

Проектирование нейросетевой системы прогнозирования

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

neuron_4.tif

Рис. 1. Структура искусственного нейрона

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

Многослойный персептрон относится к классу сетей, обучение которых осуществляется методом обратного распространения ошибки [4]. Для обучения системы используется обучающая выборка, состоящая из обучающих примеров, формирование которых основывается на исходных данных и специфике решаемой задачи. Так, для экстраполяции временного ряда исходные данные преобразуются в обучающую выборку с использованием метода скользящих окон [2], [3], [5]. Согласно этому методу, каждый обучающий пример выборки формируется из n значений временного ряда, называемого «окном», при этом очередной обучающий пример получается путем сдвига окна на одну единицу времени.

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

Недостатком реализации  этого алгоритма является достаточно быстрое накопление ошибки.

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

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

— ввести связи между нейронами выходного слоя.

Увеличение точности прогноза происходит за счет связывания выходных нейронов между собой так, чтобы полученное значение на первом выходном нейроне подавалось на вход второго выходного нейрона, а полученное на первом и втором – учитывалось на третьем и т.д. Другими словами, на каждый последующий нейрон выходного слоя, помимо сигналов с нейронов предпоследнего слоя, должны подаваться сигналы, уже полученные на предыдущих выходах сети. Примеры нейронных персептронов без связей и со связями выходных нейронов приведены на рис. 2 а), б).

3-х слойный персептрон_3.tif3-х слойный персептрон со связями между выходами_2.tif
                                   а)                                                                      б)

Рис. 2. Структура многослойного персептрона а) без связей; б) со связями

между нейронами выходного слоя

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

 ,                                                   (1)

где ,  – выходные значения нейронов q и p соответственно,  – функция активации,

 – весовой коэффициент связи между нейронами p и q.

На втором этапе итерации обучения происходит пересчет весовых коэффициентов нейронных связей по формуле (2). Пересчет производится, начиная с последнего слоя и заканчивая первым:

,                                         (2)

где  – новое значение весового коэффициента связи между нейронами p и q;   – старое значение весового коэффициента pq-связи; n – скорость обучения;  – дельта-коэффициент нейрона q;  – выходное значение нейрона p.

Дельта-коэффициент, участвующий в расчете весовых значений, для выходного слоя вычисляется по формуле (3), а для скрытых слоев по формуле (4):

,                                               (3)

,                                      (4)

где  – выходные значения нейронов q и p соответственно; – весовой коэффициент связи между нейронами p и q.

В рамках исследования было разработано приложение на языке С++, позволяющее моделировать многослойный персептрон со связями между нейронами выходного слоя. Приложение предоставляет пользователю возможность варьировать количество слоев сети и количество нейронов в каждом слое в зависимости от решаемой задачи. Была выбрана сигмоидальная функция активации, начальные значения весовых коэффициентов – случайные числа в диапазоне от 0,2 до 0,4. Расчет выходных значений нейронов и пересчет весовых коэффициентов был реализован с учетом наличия дополнительных связей внутри выходного слоя.

Для тестирования описанного выше решения было проведено экспериментальное моделирование, целью которого являлось определение эффективности введения дополнительных связей между нейронами выходного слоя для решения задачи многошагового прогнозирования. В каждом из экспериментов было проведено сравнение результатов прогнозирования с использованием обычного трехслойного персептрона и трехслойного персептрона со связями между выходными нейронами. Выбор именно трехслойного персептрона в качестве основы обусловлен тем, что персептрон является базовой архитектурой, реализацию которого достаточно легко впоследствии преобразовать к другим типам сетей, обучающимся на основе обратного распространения ошибки. Кроме того, из теорем Колмогорова – Арнольда – Хехт – Нильсона [5] следует, что трех слоев достаточно, чтобы решить практически любую задачу. В качестве исследуемых данных были взяты ряды разной природы и обладающие разными характеристиками: финансовые временные ряды и температурные временные ряды. Данные получены с сайтов компании Финам и Гидрометцентра России соответственно. Использование процессов, поведение которых значительно отличается, позволяет оценить эффективность исследований наиболее точно и разносторонне. Соблюдение одних и тех же условий проведения эксперимента для различных архитектур было выполнено для возможности равноценного сравнения качества получаемого прогноза. Ниже представлены описание условий одного из проведенных экспериментов и его результаты (табл. 1, рис. 3).

Приведем пример, когда в качестве временного ряда использовались метеорологические данные (температура воздуха). Объем обучающей выборки составил  8500 значений,  длина временного ряда одного обучающего примера  75 значений. Прогнозирование осуществлялось на  7 шагов вперед, экспериментальное множество составило 100 примеров.

Таблица 1

Архитектура сети

Среднее значение ошибки, °

1 шаг

2 шаг

3 шаг

4 шаг

5 шаг

6 шаг

7 шаг

трехслойный персептрон

1,72

2,29

2,97

3,24

3,42

3,57

3,69

трехслойный персептрон со связями между нейронами выходного слоя

1,73

2,06

2,48

2,58

2,62

2,69

2,72

 

Рис. 3. График зависимости ошибки прогнозирования от шага прогнозирования

В таблице 1 приведено полученное среднее значение ошибки. Результаты эксперимента показали, что на первом шаге обе рассматриваемые модели  дали примерно одинаковый результат прогноза. Это связано с тем, что алгоритм построения одношагового прогноза для разработанной конфигурации сети ничем не отличается от алгоритма работы обычного многослойного персептрона. Начиная со второго шага, наблюдается больший рост ошибки сети с одним выходным нейроном, по сравнению с ростом ошибки прогнозирования модели со связями внутри выходного слоя.

Выводы

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

Рецензенты:

Хранилов В.П., д.т.н., профессор, профессор кафедры «Компьютерные технологии в проектировании и производстве», ФГБОУ ВПО «Нижегородский государственный технический университет им. Р.Е. Алексеева», г. Нижний Новгород.

Крылов В.В., д.т.н., профессор, начальник лаборатории «Технологии больших данных», ФГБОУ ВПО «Нижегородский государственный технический университет им. Р.Е. Алексеева», г. Нижний Новгород.



Библиографическая ссылка

Шагалова П.А., Ляхманов Д.А. НЕЙРОСЕТЕВЫЕ ТЕХНОЛОГИИ В РЕШЕНИИ ЗАДАЧ ПРОГНОЗИРОВАНИЯ // Современные проблемы науки и образования. – 2014. – № 6. ;
URL: https://science-education.ru/ru/article/view?id=16494 (дата обращения: 29.03.2024).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1,674