УДК 004.891.2 DOI: 10.24412/2071-6168-2021-2-62-69
МОДИФИКАЦИЯ АЛГОРИТМА DBSCAN. АЛГОРИТМ WRAPDBSCAN.
ПРИМЕНЕНИЕ АЛГОРИТМА WRAPDBSCAN В ЗАДАЧЕ ДЕТЕКТИРОВАНИЯ
АНОМАЛИЙ ГЕОЛОКАЦИИ
П.С. Трегубов, П.А. Савенков, И.Н. Набродова
В работе к данным геолокации применяется алгоритм DBSCAN с целью выявления аномалий, обозначаются особенности данных геолокации относительно задачи детектирования аномалий, проводится анализ эффективности алгоритма DBSCAN относительно данных геолокации, предлагается алгоритм WRAPDBSCAN.
Ключевые слова: машинное обучение, DBSCAN, WRAPDBSCAN, кластеризация.
Все больше машинное обучение входит в различные сферы жизни, экономика, бизнес, медицина, администрирование и т.п. Существует большое количество видов задач, решаемых при помощи машинного обучения. Одной из таких задач является задача детектирования аномалий, заключающаяся в опознавании во время интеллектуального анализа данных редких данных, не похожих на других [3]. Особенно мало исследована проблема детектирования аномалий геолокации.
Описание алгоритма WRAPDBSCAN. Алгоритм является усовершенствованной версией алгоритма DBSCAN. Модификация заключается в определении радиуса г, необходимого для анализа алгоритмом DBSCAN. Алгоритм имеет следующие параметры: minPts - количество попадающих под радиус точек; iter - количество итераций.
По сравнению с базовым алгоритмом у данного алгоритма отсутствует параметр радиуса, но добавляется параметр количества итераций. Шаги алгоритма: поиск границы данных;
разбиение границы на заданное количество итераций; определение точек, входящих в подграницы;
вычисление среднего расстояния между входящими точками каждой подграницы;
усреднение найденных средних расстояний и принятие найденного значения за
радиус;
применение базового алгоритма DBSCAN с найденным радиусом. Преимуществом данного алгоритма является автоматический поиск оптимального радиуса. Недостатком данного алгоритма является чувствительность к параметру количества итераций.
Математическое описание алгоритма: Пусть под границей понимается прямоугольник:
р={А,В},
где А {ах, ау), В=(bx, by};
среднее расстояние между всеми точками в пространстве:
Met Г/Л
где Т - список точек;
плотностной алгоритм:
DBSCAN( T,R,minPts), где Т - список точек, R - найденных радиус, minPts - количество попадающих под радиус точек;
список кортежей:
К={С1 ....CNJ, где Ci={xi,yi}, / 1... А', /V - количество кортежей; V - список входных кортежей; SP={pl,p2,p3....рп} - список прямоугольников; currlter - текущее количество итераций; Strength(T) - длина списка Т; TSP - временный список прямоугольников; AddfP, Т) - функция добавления прямоугольника Р в список Т; Avg- среднее значение;
AvgCount - количество вычисленных средних значений. R - радиус для подстановки в DBSCAN Шаги алгоритма:
1) Принять SP={pl}, гдеpl={{min Vx, min Vy}, {max Vx, max Vy}}, перейти к 2
2) Принять currlter=l, перейти к 3
3) У Pi ESP, где Pi={A,В}
Adc(PhTSP),
где Pi = {A, В} - квадрат; А = {ах, ау) Addl^TSl)- левая нижняя точка квадрата;
Г ах + Ьх ау + ]
В = <----— > - правая верхняя точка квадрата;
[2 2 J
AddP2JSI
где Р2={С, D) - квадрат; С = lex СУ+ ^У V- левая нижняя точка квадрата;
I 2 J
^ fex + dx 7 ]
D = <- ау>- правая верхняя точка квадрата;
1 2 'J
Adc(P3,TSPj,
в № г.) „ \ey + fy ey + fy\ где г3 = {К, г) - квадрат; Е = < —-— —-— >- левая нижняя точка квадрата;
12 2 J
D = {fic,jy}~ правая верхняя точка квадрата;
Add(P4, TSP J,
где P3 = {G, Н) - квадрат; (} = | + . gy | - левая нижняя точка квадрата;
D.{]vcSy+hy]
lj — \ пл., ^ г- правая верхняя точка квадрата;
перейти к 4;
4) SP=TSP, перейти к 5
5) Если currlter=iter, перейти к 7, иначе перейти к 6
6) currlter=currlter+1, перейти к 3
7) V Pi ESP, где Pi = {А, В} УМ] G V, где М] = {х,у} если х>ах&х<Ьх&у>ау8су<Ьу ToMjEPj
перейти к 9
8) Avg=0, AvgCount=0 перейти к 10
9) V Mi EPi ESP
ТБР = УМ] £Р\
А"()шп=А\)ип1+1 перейти к 11
10) к = Аг«
Ау^СоиЫ
11) ВВЗСАЫ (К К, ттПь)
12) Конец алгоритма
Визуальная составляющая модификации представлена на рис. 1-4.
Рис. 1. Количество итераций 1
«15
4444
О»
«К
• \
* * ■ .
. ам. и • • • -* I •
VI ЯГ* 37» и о
38 X »Л М Й
Рис. 2. Количество итераций 2
Рис. 3. Количество итераций 3
* V *
* * • • ф
• . * '
г I
17Л 577 ЭТв Ив 38.1
38 4 )8 *
Рис. 4. Количество итераций 4
64
Детектирование аномалий геолокации алгоритмами ББ8САМ и WRAPDBSCAN. На рис. 5 представлен набор данных геолокации произвольного субъекта. Если смотреть на расположение координат, то видно, что есть точки, отличающиеся от других своим далеким расположением от основной массы. Их будем считать аномалиями. В свою очередь наборы данных геолокации разных субъектов/объектов обладают некоторой хаотичностью и еще рядом особенностей, накладывающих свои трудности в детектировании аномалий местоположения, которые описаны в источнике [1].
53.985 -53.980 -53.975 -53.970 -53.965 -53.960 -
38.52 38.54 38.56 38.58 38.60 38.62
Рис. 5. Исходный (первый) набор данных геолокации
Для того, чтобы сравнить разработанную модификацию WRAPDBSCAN проведем детектирование аномалий геолокации исходного набора данных алгоритмом БВБСАМ с различными параметрами радиуса сканирования (рис. 6).
53.98
53.97
53.96
53.98
53.97
53.96
53.98
53.97
53.96
53.98
53.97
53.96
53.98
53.97 53.96
Красным цветом выделены аномалии, черным - хорошие данные. Из рисунка видно, что с увеличением радиуса сканирования (ерБ) происходит уменьшение процента аномалий и увеличение процента хороших данных, что логично.
Однако ключевой особенностью данных геолокации является непредсказуемость формы и расположения кластеров - основных мест пребывания субъекта/объекта [1]. Исходя из этого сделан логический вывод: для каждого набора местоположения необходимо подбирать свой оптимальный параметр радиуса сканирования, что является нерациональной и долгой задачей, не имеющей смысла.
• • • •
гЧ* • •• •
•• •
1) ер5=0.001, = 3
38.52 38.54 38.56 38.58 38.60 38.62
Рис. 6. Детектирование аномалий алгоритмом DBSCAN
Проведем анализ набора данных геолокации алгоритмом WRAPDBSCAN (рис.
7).
53.98
53.97
53.96
53.98
53.97
53.96
53.98
53.97
53.96
53.98
53.97 53.96
Анализ проводился с изменением параметра количества итераций iter. Из результатов видно, что радиус сканирования подбирается оптимально. С увеличением iter происходит большее разбиение исходных данных и более тщательный подбор оптимального радиуса.
Для более наглядной картины целесообразно изменить параметр pts (рис. 8).
53.98
53.97
53.96
53.98
53.97
53.96
53.98
53.97
53.96
53.98
53.97 53.96
Изменяя параметр pts и iter можно манипулировать глубиной подбора оптимального радиуса.
Основной особенностью данных, подлежащих анализу алгоритмом WRAPDBSCAN, является непредсказуемость количества кластеров, их плотности и расположения, как в данной статье.
Другими словами, чем гуще и плотнее кластер, тем больше он влияет на искомый оптимальный радиус.
1) lter= 1, pts = 3
38.55 4) iter=4, pts = 3
>• **
Рис. 7. Детектирование аномалий алгоритмом WRAPDBSCAN
1) iter=l, pts = 2
38.52 38.54 38.56 38.58 38.60 38.62
Рис. 8. Детектирование аномалий алгоритмом DBSCAN
Подбирая радиус вручную, используя алгоритм БББСЛК, мы рискуем потерять или наоборот получить, неправильные данные [2]. Подбор оптимального радиуса уменьшает вероятность такой ошибки.
Проведем еще один анализ другого набора данных геолокации (рис. 9).
53.975
• •
••• V
Рис. 9. Второй набор данных геолокации
Из рис. 9 видно, что набор данных размыт больше чем первый. Проанализируем его с помощью алгоритма БББСЛК, вручную подбирая радиус сканирования (рис. 10).
1) ер5=О.ОООХ. рСв = 3
• * • •• Г? . .* « « V
»» 2) ер5=0.0015. рК = 3 3.51 ИИ »55
• • •• • •
38.49 38.50 38.51 3) ер "о 002 р:- - 3 38.51 38.54 58.55
• • • •• г-. » » V
Рис. 10. Анализ алгоритмом ББ8САМ
• • .{• ТЯШЛ1 . .* - » V
38.49 38.50 38.51 38,52 38.53 38.54 38.55 2) Лег=2. ртб = 3
• • .... »? 1>м<1» . • • •• • » V •
38.49 38.50 38 51 38,52 зТ*ег=3, р15 = 3 38.53 38.54 38.55
• • • ГГ<Ч1*1, • • • » •• • « V
38.49 38 50 38.51 38.52 38.53 38.54 38 55
Рис. 11. Анализ алгоритмом ^ГЕАРББ8САМ сptsравным 3
67
Проведем анализ второго набора данных геолокации алгоритмом WRAPDBSCAN, увеличивая параметр итераций - iter и оставив неизменным параметр pts (рис. 11).
Проведем анализ второго набора данных геолокации алгоритмом WRAPDBSCAN, увеличивая параметр итераций - iter и изменив параметр pts на 2 (рис. 12).
53.985 53.980 53.975 53.970 53.965 53.960
53.985 53.980 53.975 53.970 53.965 53.960
53.985 53.980 53.975 53.970 53.965 53.960
1) ¡ter=l, pts = 2
Рис. 12. Анализ алгоритмом WRAPDBSCAN с pts равным 2
Таким образом, опираясь на особенности расположения, плотности данных, алгоритм WRAPDBSCAN стремится более четко отделять аномалии от хороших данных.
Список литературы
1. Набродова И.Н., Савенков П. А., Трегубов П.С. Проблема избыточности и плотностная нормализация координат геолокации как этап подготовки данныхк детектированию аномалий местоположения плотностным методом машинного обучения wrapdbscan // Известия Тульского государственного университета. Технические науки. 2020. Выпуск 9. С. 119-126.
2. Savenkov P.A., Ivutin A.N. Methods and Algorithms of Data and Machine Learning usage in Management Decision Making Support Systems // 2019 8th Mediterranean Conference on Embedded Computing (MECO). IEEE, 2019. С. 1-4.
3. Савенков П. А., Трегубов П.С. Поиск поведенческих аномалий в деятельности сотрудников при помощи методов пространственной кластеризации, основанных на плотности // Известия Тульского государственного университета. Технические науки. 2020. Выпуск 9. С. 250-259.
Трегубов Павел Сергеевич, магистрант, paveltreg71@gmail. com, Россия, Тула, Тульский государственный университет,
Савенков Павел Анатольевич, аспирант, pavelasavenkov.net, Россия, Тула, Тульский государственный университет,
Набродова Ирина Николаевна, канд. техн. наук, доцент, ira19 78@tsu. tula. ru, Россия, Тула, Тульский государственный университет
MODIFICATION OF THE DBSCANALGORITHM. ALGORITHM WRAPDBSCAN.
APPLICATION OF THE WRAPDBSCAN ALGORITHM IN THE PROBLEM OF DETECTING GEOLOCATION ANOMALIES
P.S. Tregubov, P.A. Savenkov, I.N. Nabrodova
In this work, the DBSCAN algorithm is applied to geolocation data in order to identify anomalies, the effectiveness of the DBSCAN algorithm is analyzed with respect to geolocation data, the WRAPDBSCAN algorithm is proposed, and the features of geolocation data with respect to the problem of detecting anomalies are indicated.
Key words: Machine Learning, DBSCAN, WRAPDBSCAN, clustering.
Tregubov Pavel Sergeevich, undergraduate, paveltreg71@gmail. com, Russia, Tula, Tula State University,
Savenkov Pavel Anatolevich, postgraduate, pavelasavenkov.net, Russia, Tula, Tula State University,
Nabrodova Irina Nikolaevna, candidate of technical sciences, docent, ira19 78@tsu. tula. ru, Russia, Tula, Tula State University
УДК 519.217.8 DOI: 10.24412/2071-6168-2021-2-69-73
МЕТОД ПОСЛЕДОВАТЕЛЬНЫХ УПРОЩЕНИЙ ПОЛУМАРКОВСКОГО
ПРОЦЕССА
К. А. Гришин
Рассматривается метод последовательных упрощений полумарковского процесса. Рассматривается полумарковская модель циклограммы управления технологическим процессом. Представлена полумарковская матрица и структура циклограммы. Описывается способы упрощения.
Ключевые слова: полумарковский процесс, время блуждания, математическое ожидание, граф.
Основные операции этого метода показаны на примере самого сложного случая, когда структура циклограммы управления технологическим процессом представляет собой полный граф с петлями.
В самом общем случае полумарковский процесс, описывающий циклограмму управления технологического процесса, имеет вид
5+7 ^ = +*+^ г,5+^ )}, (1)
где *+'А - множество состояний; *+' А=*Аи*А; * Ап *А =0; *А = {ац,..., а5,...,а*} - состояния, моделирующие операторы генерации транзакций;
*А = {а*+1,...,а*+j,...,а*+'} - состояния, моделирующие прочие операторы алго-
*+л +л
ритма; + r = ( + rmn ) - матрица смежности, имеющая размеры (S + J)x(S + J);
S+J
h(t ) - полумарковская матрица, имеющая размеры (S + J)x(S + J); t - время;
69