Прогнозирование бизнес-процессов на основе нейронных сетей

УДК 004.8

Р. Н. Гайнуллин, Я. Рахал, И. С. Ризаев, Л. М. Шарнин

ПРОГНОЗИРОВАНИЕ БИЗНЕС-ПРОЦЕССОВ НА ОСНОВЕ НЕЙРОННЫХ СЕТЕЙ

Ключевые слова: прогнозирование, нейронные сети, весовые коэффициенты, обучение.

В работе рассматривается задача прогнозирования бизнес-процессов на основе статистических методов и нейронных сетей. Дана математическая постановка задачи прогнозирования. Приведена структура нейронной сети и блок схема обучения сети. Показана методика подбора весовых коэффициентов для увеличения скорости обучения нейронной сети. Приведен пример расчета прогнозирования при использовании статистических методов и нейронной сети.

Keywords: prognostication, neural networks, weights, train.

We consider the problem of forecasting of business processes based on statistical methods and neuron networks. A mathematical formulation of the forecasting problem. The structure of the neural network and a block diagram of a network of training. It is shown that the method of selection of the weighting factors for the increase in speed training neuron-term network. An example of the calculation ofprediction using statistical methods and neural network.

Введение

Прогнозирование одна из наиболее востребованных задач любого предприятия. Это прогнозирование продажи товаров, изменение спроса, изменения ценовой политики. Учитывая развитие событий в будущем можно более гибко планировать деятельность предприятия, принимать более обоснованные управленческие решения. Многие предприятия в результате своей деятельности накапливают большие объемы информации, которые хранятся в базах и хранилищах данных [1-3]. На основе этих данных можно своевременно осуществлять прогноз и принимать обоснованные решения [4-6]. Для решения задач прогнозирования могут быть использованы как статистические методы, так и нейронные сети.

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

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

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

Математическая постановка задачи

Пусть имеется вектор, отображающий значения за последние N интервалов времени,

Xt = (Х)-пХ)-п+ЪХ)-/.....xt-2Х)-\) ,

где t - текущее время. Необходимо дать прогноз изменения на следующий отрезок времени.

Рассмотрим методы прогнозирования, основанные на сглаживании, экспоненциальном сглаживании и скользящем среднем [7].

Простейшая модель прогнозирования это когда Х{) +1) = X)) , которое означает, что текущее значение остается без изменения.

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

Х() +1) = -^(Х()) + Х( -1) +......+ Х(1) ) .

Либо с использованием скользящего среднего:

Х) +1) = Ы(Х)) + X)-1) +......+ Х)-М) ) ,

где N > 0.

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

У)+1 = аХ) +

где у) прогнозируемое значение во время [, ае [0.1]. Параметр а, который определяет зависимость прогноза от более ранних данных, причем влияние данных на прогноз экспоненциально убывает с «возрастом» данных.

В настоящее время, самым перспективным количественным методом прогнозирования является использование нейронных сетей.

Применение нейронных сетей

Нейронные сети находят самое широкое применение в самых различных областях. Достоинством нейронных сетей является их высокая устойчивость к шумовым воздействиям и возможностью применения однажды созданной модели для реше-

ния различных аналогичных задач, путем настроики входных переменных и весовых коэффициентов.

Нейронные сети могут быть полно связными или слоистыми. Слоистые имеют один входной слой, один выходной и один или несколько внутренних. Каждый слой состоит из некоторого множества нейронов. Обработка информации в каждом слое ведется параллельно, а между слоями последовательно [9,10]. Значения входных переменных могут быть как числовыми, так и категориальными, и могут принимать самые различные значения. Все они должны быть нормализованы и принимать свои значения в диапазоне от нуля до единицы. Нормализацию значений можно выполнить с помощью следующего выражения:

Xf =-

0.1 - 0.9

xn

xn

xt +

°-9 * xmin 0>1 * xmax

wo - вес между узлом «i» (внутренний) и выходным узлом.

bj - смещение «bias» внутреннего узла «г».

bo - смещение «bias» выходного узла.

Функции f=

1

1 + e

является передаточной

xm

xm

функцией.

Чтобы найти оптимальные веса [4,9], используют алгоритм обратного распространения ошибок.

Для функции активности f выходом является: Oj =f(netj) .

И поэтому для производной f' получаем: до j

—t = f'( netj); dnet i J

ГДе Xm

минимальное и максимальное значе-

ние входных значений.

На рис.1 представлена трехслойная нейронная сеть, предназначенная для прогнозирования данных методом скользящего среднего.

Рис. 1 - Трехслойная нейронная сеть

Для прогноза используют сети с «п» узлами на входе, «да» внутренними узлами и одним узлом на выходе. На входе каждого внутреннего узла величина возбуждения составит [4,10]:

N

netj(xf) = YJwjxf-i + bj

i=i

На выходе внутреннего узла: N

у] = п Ywwhjxt+ /=1

На входе выходного узла: N

neto(xt ) =£^-1 + Ь0 /=1

На выходе выходного узла: N

yt = п Е w0xt-l + ьо ) = /=1

N т

= пе w0 £ wjk + Ь]) + Ьо),

i=1

j=1

где wjj — вес между узлом «г» (входной) и узлом «у» (внутренний).

dOi

dneti

f = dx 1

d

-ae

= af( 1 - f) ;

+ e

1 + e_anet.

e-anet]

dneti

(1 + e-alet> ) 2

= Oi* (1 -Oi).

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

8] = (] — о]т^]) = (] — О]) *а*0] *(1 -О]) . Для вычисления ошибки внутреннегоу-го слоя:

8] = 0]* (1 — о])' Е5кМ]к к

где — вес связи между узлом (у) внутреннего слоя

и узлом (к) следующего слоя.

Новые значения будут вычислены следующим образом:

w ] (новый) = w ] (старый) =

= w ] (старый) +^8]0/.

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

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

Хранилище данных

Сеть обучения

Выборка данных Нейронная сеть Расчет ошибок

f Корректура весов Ошибки есть м-

Рис. 2 - Блок-схема процесса обучения сети

x

1

Коэффициент обучения п, представляет малую величину, обычно много меньше единицы. Если эта величина весьма маленькая, то корректировка весовых коэффициентов может занять недопустимо долгое время сходимости. Наоборот, большое значение может привести алгоритм к пропуску глобального экстремума. Для определения коэффициента обучения можно использовать следующее выражение [9]: тах[х] - тт[х]

V

N

На изменение весовых коэффициентов и времени вычислений влияет также коэффициент «а»:

wjj = awjj где 0 <= а <= 1.

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

ресли{х* - Х)_]) (Х) - Х)_1)> 0 2 - р если нет

где х( - прогнозируемое значение во время t.

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

Пример расчета изменения курса валюты

На рис. 3 приведен пример расчетов изменения курса валюты в течение одного месяца в период 2010 г. На графике кривая 1 представляет реальные значения, кривая 2-рассчитанная методом экспоненциального сглаживания и кривая 3-полученная с помощью нейронной сети. Структура нейронной сети, представленная на рис.1, имела следующие параметры: 4 узла на входе, 30 внутренних узлов и один выход и п=0.085.

1. реальные значения;

2. результаты прогнозирования с помощью нейронной сети;

3. с использованием экспоненциального сглаживания

Рис. 3 - Сравнение результатов прогнозирования с реальными значениями

Рассчитанное значение «а» для метода экспоненциального сглаживания составило: а = 0,6171, отношение (1):

у)+1 = 0,6171х) + 0,3829у)

Из рис. 3 видно, что более точные результаты получаются при использовании нейронных сетей.

Расчет весовых коэффициентов

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

1. Инициализация весов со случайными значениями.

2. Для каждого внутреннего узла вычислить значения сигнала на входе и выходе.

3. Вычислить значения сигнала на входе и выходе выходного узла.

4. Если разница между полученным значением сигнала в выходном узле и реальным значением не больше допустимого, то на этом закончить, иначе идти к шагу 5.

5. Вычислить ошибку и рассчитать новые весовые коэффициенты.

6. Скорректировать величину а в соответствии с результатом проверки: совпадает ли направление изменений прогнозируемых значений с реальными значениями.

7. Повторить шаги 2,3,4,5,6.

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

Эффективность применения сетевых моделей

Как показывает практика, для получения приемлемого решения требуется большое число наблюдений, что не всегда выполняется в полной мере [8]. Бывают ситуации, когда необходимые ранее собранные данные оказываются недоступными. Кроме того, чтобы модель была на должном уровне, требуется значительные временные затраты, связанные с обучением сети, что также может оказаться при решении ряда аналитических задач не приемлемым. Правда в процессе наблюдений, при появлении новых данных, модель может уточняться [4,5].

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

Заключение

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

а

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

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

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

Литература

1. Шарнин Л.М., Ризаев И.С. Применение концепции хранилищ данных для решения задач анализа.- Методы и средства обработки и хранения информации: межвузовский сборник научных трудов - Москва: КУРС, 2015. С.150-157.

2. Шарнин Л.М., Осипова А.Л., Ризаев И.С., Яхина З.Т. Разработка и применение хранилищ данных для решения бизнес-задач - Материалы IX Международной научно-практической конференции «Образование и

наука без границ» - 2013, т.43, «Новые информационные технологии», Прага, с.46-53

3. Ризаев И.С., Яхина З.Т. Базы данных: учебное пособие - Казань: Изд-во Казанского гос. техн. ун-та, 2008, с. 240

4. Хайкин Саймон. Нейронные сети: полный курс// 2-е изд. Пер с англ. - М.: ООО Изд. дом Вильямс, 2006. -1104 с.

5. Ризаев И.С., Рахал Я. Интеллектуальный анализ данных для поддержки принятия решений - Казань: Изд-во МОиН РТ, 2011 - 172 с.

6. Ризаев И.С., Яхина З.Т., Мифтахутдинов Д.И. Компьютерные технологии обучения методам Data Mining обработки данных. - Образовательные технологии и общество. 2015, т.18, № 2, с. 514 - 526

7. Ризаев И.С. Теория принятия решений: учебное пособие. - Казань: Изд-во «Мастер Лайн», 2014. - 132 с.

8. Якимов И.М. Кирпичников А.П., Зайнуллина Г.Р., Яхина З.Т. Оценка достоверности результатов имитационного моделирования по результатам аналитического моделирования. - Вестник Казан. техн. ун-та. - 2015, Т.18, №6, с.173-178.

9. Jonas Sjoberg. Mathematica Neural Networcs, Train and Analyze Neural Networks to fit eour Data // Wolfram Research, Inc Illinois, USA, 2005 - 406 c.

10. Костюхина Г.В., Тахавова Э.Г. Разработка модели нейронной сети. - «Современные инновации в науке и технике». Сборник научных трудов 4-ой Международной научно-практической конференции: В 4-х томах. Ответственный редактор Горохов А.А. 2014. С. 283-285.

© Р. Н. Гайнуллин - д.т.н, зав. каф. автоматизированных систем обработки информации КНИТУ, e-mail: gainullin@kstu.ru; Я. Рахал - доктор, Дамасский университет (Сирия); И. С. Ризаев - канд. тех. наук, профессор кафедры автоматизированных систем обработки информации и управления КНИТУ-КАИ; e-mail: isr4110@mail.ru; Л. М. Шарнин - д.т.н., профессор кафедры автоматизированных систем обработки информации и управления КНИТУ-КАИ; e-mail: LMSharnin@kai.ru.

© R. N. Gainullin - Dr. Sci., Head of the Department cafes automated information processing systems KNRTU, e-mail: gainul-lin@kstu.ru; Ya. Rahal - Doctor, University of Damascus (Syria); I. S. Rizaev - PhD, Professor of the Department of Automated information processing and management, KNRTU-KAI, e-mail: isr4110@mail.ru; L. M. Sharnin - Dr. Sci., Professor of the Department of Automated information processing and management, KNRTU-KAI, e-mail: LMSharnin@kai.ru.