УДК 004.8
А.М. Кориков, А.Т. Нгуен
Нечеткая нейросетевая классификация интенсивности марковского случайного потока событий
Исследовано применение моделей нечетких нейронных сетей, использующих нечеткие функции активации нейронов, для решения задач классификации интенсивности марковских случайных потоков событий. Исследование проводится с помощью средств компьютерного моделирования MATLAB. Марковские случайные потоки событий представлены в виде двух последовательно идущих друг за другом кусков простейших (пуассонов-ских) потоков, каждый из которых характеризуется своей интенсивностью прихода событий. С помощью нечетких нейронных сетей решается задача дихотомии: классификация интенсивности двух пуассоновских потоков. Компьютерное моделирование подтвердило эффективность нечеткой нейросетевой классификации интенсивности марковского случайного потока событий.
Ключевые слова: нечеткие функции активации, нечеткие нейронные сети, МАР-потоки событий, МС-потоки событий, классификация интенсивности потока. doi: 10.21293/1818-0442-2017-20-2-79-83
Методы и технологии искусственного интеллекта (ИИ) используются для решения многих практических задач: автоматизации и роботизации технологических процессов и производств, проектирования информационно-вычислительных систем, телекоммуникационных и компьютерных сетей и т.д. Искусственные нейронные сети (НС) и технологии, базирующиеся на них, занимают лидирующие позиции среди методов и технологий ИИ [1]. В наших работах [2, 3] предлагаются новые модели нечетких НС (ННС), использующих нечеткие функции активации (ФА) нейронов ННС. В таких ННС нечеткость является атрибутом нейрона как элемента нейронной сети. Эти ННС определены в [2, 3] как нечеткие нейронные сети второго типа. В [2, 3] нечеткими нейронными сетями первого типа названы ННС, рассмотренные в [4], в которых реализуются нечеткие отношения между нейронами как элементами нейронной сети, т.е. ННС первого типа реализуют системы нечеткого логического вывода методами теории нейронных сетей. В [2, 3] показано, что разрабатываемые нами модели нечетких нейронов и нечеткие нейронные сети второго типа успешно решают задачи прогнозирования свойств временного ряда. В настоящей работе исследуется возможность применения ННС второго типа для решения задач классификации параметров марковских случайных процессов.
Постановка задачи
Пусть 1(1) - кусочно-постоянный случайный процесс с двумя состояниями 1(t) = 11 либо 1(1) = 12 (1 < I2). Случайный процесс 1(1) принципиально не наблюдаем. Время пребывания процесса 1(1) в i-м состоянии является случайной величиной, распределенной по экспоненциальному закону с параметрами 1, (i = 1, 2), т.е. согласно [5] рассматриваемый случайный процесс моделирует MAP-поток (Markovian Arrival Process) событий с экспоненциальной функций распределения
F, (t) = 1 - в'1'1, i = 1; 2 . (1)
MAP-потоки событий часто используются в теории массового обслуживания (в англоязычной литературе - Queueing Theory (теория очередей)). Основоположником исследований в данной области считается датский ученый А.К. Эрланг, опубликовавший в 1909-1917 гг. работы, посвященные обслуживанию требований, поступающих на телефонную станцию. Развитие теории массового обслуживания связано с её применением в системах управления запасами, транспортных системах, системах связи, компьютерных сетях [6]. Частные случаи MAP-потоков называют также МС-потоками (Markov Chain) [7, 8]. Эти потоки можно представить в виде последовательно идущих друг за другом кусков простейших (пуассоновских) потоков, каждый из которых характеризуется своей интенсивностью 1, прихода событий. Поставим задачу исследования возможности применения ННС второго типа для классификации и оценивания интенсивности 1, потоков событий. Исследование проведем с помощью средств компьютерного моделирования MAT-LAB [9].
Эксперименты по классификации интенсивности МС-потоков событий
Эксперименты по нейросетевой классификации МС-потоков событий выполнены на основе ННС, структура которой может быть представлена в виде многослойной однонаправленной сети (рис. 1). ННС состоит из входного слоя, одного скрытого слоя и выходного слоя. Скрытый слой состоит из 10 нейронов с нечеткими ФА, виды которых для нечетких нейронных сетей второго типа представлены в [2, 3]. Из четырех видов нечетких ФА, исследованных в [2, 3], выберем два вида ФА (см. на рис. 1 в [2] эти ФА обозначены через b и с), которые, как показано в [2, 3], наиболее эффективно решают задачи прогнозирования свойств временного ряда. В выходном слое используется линейная ФА. На входы ННС поступают марковские случайные процессы с экспоненциальной функцией распределения (1).
2 ЛЛ-гА-Ч/ЪС
-К. Жл УУш /■
-\\ •
*
Рис. 1. Структура сети
Марковские случайные потоки событий, поступающие на входы ННС, представляются в виде двух последовательно идущих друг за другом кусков простейших (пуассоновских) потоков, каждый из которых характеризуется своей интенсивностью (, = 1, 2) прихода событий.
В данной работе представлены результаты исследования по классификации параметров случайных потоков на основе трех экспериментов:
- первый эксперимент: >4 е (0; 0,5], >2 6 (0,5; 1], параметры >1, >2 не фиксированы и не известны;
- второй эксперимент: >1 е (0; 0,5], >2 е (0,5; 1], параметры >1, >2 фиксированы, но не известны;
- третий эксперимент: >1 = 0,25, >2 = 0,75, т.е. параметры >1, >2 фиксированы и известны.
Наборы данных для обучения ННС
В первом эксперименте входными данными являются потоки, состоящие из 1000 случайных процессов с параметрами >(/), принимающими значения > = 0,001;0,002;....;1. То есть входные данные можно представить в виде матрицы размерности 1000x1000 . Выходные данные можно представить в виде матрицы-вектора размерности 1000x1, элементы которой имеют только два значения: 0 или 1. Значение 0 обозначает, что классифицируемый поток имеет распределения с параметрами >1 из интервала (0; 0,5], значение 1 обозначает, что классифицируемый поток имеет распределения с параметрами >2 из интервала (0,5; 1].
Во втором эксперименте, входными данными являются потоки, состоящие из 500 случайных процессов с параметром >1 е(0;0,5] и 500 случайных процессов с параметром >2 е(0,5;1]. Выходные данные представляются матрицей-вектором размерности 1000 х1, состоящей из значений 0 и 1. Значение 0 обозначает, что классифицируемый поток имеет распределение с параметром >1 из интервала (0; 0,5], значение 1 обозначает, что классифицируемый поток имеет распределение с параметром >2 из интервала (0,5; 1].
В третьем эксперименте входными данными являются 200 случайных процессов с параметром >1 = 0,25 и 200 случайных процессов с параметром >2 = 0,75 . Выходные данные также являются матри-
цей-вектором размерности 400 х 1, которая состоит из значений 0 и 1. Значение 0 обозначает, что поток имеет распределение с параметром >1 = 0,25 ; значение 1 обозначает, что поток имеет распределение с параметром >2 = 0,75 .
Алгоритм кластеризации ^-средних
Для классификации параметров (, = 1, 2) случайных процессов предлагается использовать алгоритм кластеризации К-средних, который является простым повторяющимся алгоритмом кластеризации, разделяющим определенный набор данных на заданное пользователем число кластеров к [10]. Алгоритм К-средних в нашем случае рассматривает распределение каждого случайного процесса как точку в функциональном пространстве. Базовый алгоритм К-средних произвольно определяет число кластерных центров в многомерном функциональном пространстве. Каждое распределение в наборе данных присваивается кластеру, произвольный средний вектор которого является самым близким. Процедура продолжается до тех пор, пока не произойдет существенного изменения положения средних векторов классов между последовательными итерациями алгоритмов. Однако алгоритм К-сред-них очень чувствителен в начальных отправных точках. Алгоритм К-средних генерирует начальный кластер случайным образом. Когда случайные начальные точки близки к окончательному решению, алгоритм К-средних имеет высокую вероятность обнаружить центр кластера. В противном случае это приведет к некорректным результатам кластеризации [11].
В нашей работе начальные точки алгоритма К-средних генерируются случайно и количество классов равно десяти. Краткое описание алгоритма К-средних, используемого в данной работе, состоит в следующем:
Шаг 1: случайно выбираются 10 начальных центров кластера из представленных выше наборов данных 21, Г2,...^ю
2а ={xЫ, xb2,..., ХЬЫ } ,
где а = 1; 2...; 10, и Ь - случайное число от 1 до Ь, где Ь - количество параметров > в наборе данных; Ы - количество наблюдаемого времени в распределении.
Шаг 2: определяются Евклидово расстояние от распределения х, , (, =1;2...; Ь) до кластера, С} (. =1;2;...;10), если -г.<||х , р =1;2;...; 10 , . ^ q , тогда х, находится в кластере Су.
Шаг 3: вычисляются новые кластерные центры 2, по формуле
= -Iх.еС Ху , а = 1; 2;...; 10), (2)
где п, является количеством распределений, принадлежащих кластеру С,.
*
Шаг 4: если 2, = 2^ (, = 1; 2;...; 10), тогда останов. В противном случае следует перейти к шагу 2.
Если имеются ограничения по времени и если процесс кластеризации не завершается на шаге 4, тогда он выполняется для максимального фиксированного числа итераций к. Чем больше к, тем точнее определяются центры кластеров. Настройка функций активации Выше отмечалось, что из четырех видов нечетких ФА, исследованных в [2, 3], мы выбрали два вида ФА, которые на рис. 1 в [2] обозначены через Ь и с и которые, как показано в [2, 3], наиболее эффективно решают задачи прогнозирования свойств временного ряда. На рис. 2 показан внешний вид ФА избранных видов с и Ь [2].
f (x
f (4
а б
Рис. 2. Функции активации: а - ФА вида с [2]; б - ФА вида Ь [2]
Набор точек {А,В,С) на рис. 2 являются характеристическими точками ФА.
Известно, что /ь (х), /я (х) являются полиномами второго порядка и /ь'(х) = 0, /я'(х) = 0 в характеристических точках, т. е.
/ь (х) = !Щх1 /я (х) = £Ь,х' . (3) /=0 /=0
Для ФА вида с коэффициенты полиномов /ь (х) и /я (х) задаются следующими выражениями:
«0 =
Ь0 =
A2
г; « =-
-2 A
-; «2 =-
1
о > 1 О > 2 О :
(A - Б)2 (A - Б)2 (A - Б)
C 2
-; bi =-
-2C
(4)
-; b7 =-
(Б - C)2' 1 (Б - C)2' Z (Б - C)2
Зададим AБ = БC = с и Б = д. Тогда fi (x) и fR (x) определяются следующим образом:
fi (x)=-y x2 +
1 x2 , -2(д - с) x , (д- с)
x+-
,д - с < x < д;
1 2 , -2(д + с) (д + с)
(5)
x+-
,д < x <(д + с);
/я (х)=-у х2 +
с с" с"
д и ст называются центром и шириной функций активации.
Пусть а = (д - с), если д - с < х < д и а = (д + с), если д<х<(д + с), тогда получим общее описание (обобщенная) ФА вида с:
ч 1 2 -2a a f (x) =—x +— x+
„2" ' 2 " ' 2 ' с с с
(6)
Аналогично для ФА вида Ь /ь (х) и /я (х) определяются следующим образом:
/ь (х)=4 х2 + ^ х+(д - с)2 - 92д(д - с),
с с
д - с < x < д;
fR (x)=^1 x2 + ^x+(+ с)2 - 2д(д + с)
(7)
с с
д < х <(д + с).
На этой основе получим общее описание (обобщенная ) ФА вида Ь:
2
... . -1 2 2д а -2да /(х) =—х2 +-£х+-(8)
с с с
где а = (д - с) если д - с < х < д, и а = (д + с), если
д < х < (д + с) .
Выражения (6) и (8) являются функциями активации, которые используются в ядре нейрона скрытого слоя ННС на рис. 1.
Вычисление центров и ширины ядра функций активации
Как правило, центр и распределение функций активации нейронов ННС должны иметь характеристики, подобные данным. Для определения центров ФА нейронов ННС обычно используются неконтролируемые учебные процедуры по кластеризации [10]. В данной работе алгоритм кластеризации ^-средних используется для определения центра и ширины ФА нейронов ННС. Каждый кластер соответствует ядру функций активации. Расположение центров ядра функций активации определяется с помощью следующего уравнения:
1 Р
д' = Р§
(9)
где дг- является центром /-го нечеткого скрытого нейрона; р - количество данных в формируемом кластере; Xj -]-й данный в /-м кластере.
Настройка ширины ядра является трудноре-шаемой проблемой при построении ННС. Если ширина ядра слишком велика, то оцененная плотность вероятности сглаживается. Наоборот, когда она слишком мала, может быть чрезмерная адаптация к определенному набору данных. Ширина ядра устанавливается на среднее расстояние между данными соответствующего кластера:
с' 1Р§1( Л'-
(10)
где с,- является шириной /-го нечеткого скрытого нейрона; д,- является центром /-го нечеткого скрытого нейрона; р - количество функциональных данных в данном кластере. Xj - ^й данный в /-м кластере. Ширина ядра (10) гарантирует, что от-
дельные функции активации не слишком острые или/и не слишком плоские.
Обучение ННС с использованием тестовых наборов данных
При построении ННС задача корректировки весов сети между скрытым слоем и выходным слоем может быть отнесена к задачам оптимизации, обычно решаемым методом наименьших квадратов. Веса ННС между скрытым слоем и выходным слоем рассчитываются с использованием метода псевдообращения [12, 13].
На рис. 1 X представляет собой входные наборы данных о пространственных входных признаках, которые представляют собой реализации случайных процессов. Выход у ННС в наблюдаемый момент времени у (у = 1;2;...; N, N - количество наблюдаемого времени) имеет следующий вид: к
Уу =1 Щ/(хг), у = 1;2;...; N, (11)
,=1
где - вес между выходным нейроном и ,-м скрытым нейроном; /(х) - обобщенная ФА; к - число
нейронов скрытого слоя.
Уравнение (11) можно записать в виде
У = Ф^, (12)
где
Ф1(|!ьаь х1)
Ф(| X) =
Ф1(|1, аЪ )
Ф K (l K,G K, X1)
ФK (lK^K> Xv ) ФK (lK> °K> XN )
Ф1(|1, Oi, Xn )
v = 1;2;...; N, (13)
Ф - функция активации. Матрица Ф (размерность N х K) называется выходной матрицей скрытого слоя нейронной сети; i-я строка Ф является i-м скрытым выходным нейроном относительно входов
XbX2...XN.
Пусть T - матрица выходных данных обучения. Если Ф^ = T , то выходные весы w вычисляются по формуле
w = (Ф T Ф)—1 Ф T T, (14)
T — 1 T
где (Ф Ф) Ф является обобщенной псевдообратной выходной матрицей Мура-Пенроуза скрытого слоя.
Итак, основные параметры ННС определяются путем вычисления центров и ширины с использованием алгоритма кластеризации K-средних и определения весов выходного слоя ННС с использованием метода псевдообращения.
Результаты тестирования Эксперименты проводились на базе процессора Core i5-4460 3,2 ГГц с 8 ГБ ОЗУ под MATLAB R2013a. Графики генерировались с использованием MATLAB.
В первом эксперименте наборы данных для тестирования состояли из 400 случайных процессов
* *
X (t), X = 0,001; 0,001;....;1. Результаты классифи-
кации с помощью ННС процессов по интенсивно -стям >1, > 2 представлены на рис. 3 и 4.
Количество процессов
Набор тест. ФА вида c ФА вида b
Щ
К
N §
>1 Интенсивность >2
Рис. 3. Количество процессов с интенсивностями >1, >2 в момент времени ^ = 500 в наборе данных тестирования и количество правильных решений при определении параметров процессов в первом эксперименте
Время
Рис. 4. Эффективность классификации по интенсивности марковских случайных потоков событий в первом эксперименте
Во втором эксперименте набор данных для тестирования состоял из 400 случайных процессов с параметром >1 = 0,25 и 400 случайных процессов с параметром >2 = 0,75. Эффективность классификации этих процессов по интенсивности >1, >2 во втором эксперименте практически равна 100%.
В третьем эксперименте наборы данных для тестирования состояли из 400 случайных процессов с параметром >1 = 0,25 и 400 случайных процессов с параметром >2 = 0,75. Эффективность классификации этих процессов по интенсивности >1 в третьем эксперименте также практически равна 100%.
Анализ результатов экспериментов показывает, что разрабатываемые нами модели нечетких нейронных сетей вполне успешно решают задачи классификации по интенсивности марковских случайных потоков событий. При решении подобных задач ННС с ФА вида b имеют более высокую эффективность. В условиях первого и второго экспериментов продолжительность времени наблюдения за процессами не влияет на качество их классификации. В третьем эксперименте при использовании ННС с ФА вида c продолжительность времени наблюдения за процессами незначительно влияет на результаты классификации.
Заключение
Результаты исследования подтверждают эффективность применения моделей нечетких нейронных сетей, в которых нечеткие функции принадлежности используются в качестве функций активации нейронов ННС, для решения задач классификации интенсивности марковских случайных потоков событий. На основе проведенного исследования возможно создание нечеткого нейросетевого классификатора интенсивности марковских случайных потоков событий для решения многих прикладных задач в транспортных системах, системах связи и компьютерных сетях.
Литература
1. Рассел С. Искусственный интеллект: современный подход / С. Рассел, П. Норвиг. - М.: Вильямс, 2006. - 1408 с.
2. Нгуен А.Т. Модель нейронной сети с нечеткими функциями активации для прогнозирования временного ряда / А.Т. Нгуен, А.М. Кориков // Доклады ТУСУРа. -2016. - Т. 19, № 4. - С. 50-52.
3. Nguyen A.T. Models of neural networks with fuzzy activation functions / A.T. Nguyen, A.M. Korikov // IOP Conference Series: Materials Science and Engineering. - 2017. -Vol. 177 [Электронный реcурс]. - Режим доступа: http://iopscience.iop.org/article/10.1088/1757-899X/177/1/ 012031, свободный (дата обращения: 01.03.2017).
4. Ярушкина Н.Г. Нечеткие нейронные сети с генетической настройкой // Научная сессия МИФИ-2004. VI Всерос. науч.-техн. конф. «Нейроинформатика-2004»: лекции по нейроинформатике. - Ч. 1. - М.: Изд-во МИФИ, 2004. - С. 151-199.
5. Дудин А.Н. Системы массового обслуживания с коррелированными потоками / А.Н. Дудин, В.И. Кли-менок. - Минск: Изд-во БГУ, 2000. - 175 с.
6. Гнеденко Б.В. Введение в теорию массового обслуживания / Б.В. Гнеденко, И.Н. Коваленко. -3-е изд., испр. и доп. - М.: КомКнига, 2005. - 400 с.
7. Горцев А.М. О связи МС-потоков и МАР-потоков событий / А.М. Горцев, Л.А. Нежельская // Вестник Том. гос. ун-та. Управление, вычислительная техника и информатика. - 2011. - № 1 (14). - С. 13-21.
8. Беккерман Е.Н. Аппроксимация МС-потоком реального потока событий / Е.Н. Беккерман, С.Г. Катаев,
C.С. Катаева, Д.Ю. Кузнецов // Вестник Том. гос. ун-та. Приложение. - 2005. - № 14. - С. 248-253.
9. Attaway S. MATLAB: A Practical Introduction to Programming and Problem Solving. - Third Edition. - Burlington, MA: Elsevier Inc., 2013. - 539 p.
10. Пирсон Л. Наука данных для чайников. - М.: Джон Уайли & сыновья, 2015. - 408 c.
11. Wu Z. An Optimal Graph Theoretic Approach to Data Clustering: Theory and Its Application to Image Segmentation / Z. Wu, R.M. Leahy // IEEE Transactions on pattern analysis and machine intelligence. - 1993. - Vol. 15, № 11. -P. 1101-1113.
12. Wettscherech D. Improving the Performance of Radial Basis Function Networks by Learning Center Locations /
D. Wettscherech, T. Dietterich // Electronic Proceedings of the Neural Information Processing Systems Conference. - 1991. -№ 4. - P. 1133-1140.
13. Сараев П.В. Использование псевдообращения в задачах обучения искусственных нейронных сетей // Электронный журнал «Исследовано в России». - 2001. -№ 29. - С. 308-317.
Кориков Анатолий Михайлович
Д-р техн. наук, проф., зав. каф. АСУ ТУСУРа, профессор Национального исследовательского Томского политехнического университета (НИ ТПУ) Тел.: +7 (382-2) 41-42-79 Эл. почта: [email protected]
Нгуен Ань Ту
Аспирант каф. автоматики и компьютерных систем (АиКС) Института кибернетики НИ ТПУ Тел.: +7-952-157-48-78 Эл. почта: [email protected]
Korikov A.M., Nguyen A.T.
Fuzzy neural network for Markovian arrival processes'
intensity classification
The paper studies the applications of fuzzy neural networks that use membership functions as activation functions to solve the problems of classification and estimation of Markov arrival processes' intensity. Computer simulation tools in MATLAB are used for this research. Markov arrival processes are represented by two successive simple (Poisson) processes, each of which is characterized by the intensity of event arrival. Using neural networks, we can obtain the solutions to dichotomy problems, including the classification and estimation of the intensity of the two Poisson processes. Computer modeling has confirmed the effectiveness of the classification problem for the intensity of Markovian arrival processes based on neural networks.
Keywords: Fuzzy activation functions, Fuzzy neural networks, Markovian arrival processes, intensity classification.