Научная статья на тему 'Разработка алгоритма гиперсегментации пользователей Интернет-ресурса'

Разработка алгоритма гиперсегментации пользователей Интернет-ресурса Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
132
14
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АЛГОРИТМ КЛАСТЕРИЗАЦИИ / ГИПЕРСЕГМЕНТАЦИЯ ПОЛЬЗОВАТЛЕЙ / КЛАСТЕРИЗАЦИЯ МНОГОМЕРНЫХ ДАННЫХ / DBSCAN

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Тюха Анастасия Сергеевна, Асадуллаев Рустам Геннадьевич

В статье разработан алгоритм гиперсегментации пользователей сайта, результаты которой используются в процессе формирования персонализированного контента. Алгоритм представляет собой модифицированный метод DBSCAN в совокупности с оригинальными процедурами. Предлагается выделение отдельной категории кластеров «шум-кластеры» с целью постоянного мониторинга дрейфа распределения пользовательских профилей в многомерном пространстве.

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

Текст научной работы на тему «Разработка алгоритма гиперсегментации пользователей Интернет-ресурса»

РАЗРАБОТКА АЛГОРИТМА ГИПЕРСЕГМЕНТАЦИИ ПОЛЬЗОВАТЕЛЕЙ ИНТЕРНЕТ-РЕСУРСА Тюха А.С.1, Асадуллаев Р.Г.2

1Тюха Анастасия Сергеевна - магистрант, направление: бизнес-информатика, кафедра прикладной информатики и информационных технологий;

2Асадуллаев Рустам Геннадьевич - кандидат технических наук, доцент, Белгородский государственный национальный исследовательский университет,

г. Белгород

Аннотация: в статье разработан алгоритм гиперсегментации пользователей сайта, результаты которой используются в процессе формирования персонализированного контента. Алгоритм представляет собой модифицированный метод БВБСАЫ в совокупности с оригинальными процедурами. Предлагается выделение отдельной категории кластеров «шум-кластеры» с целью постоянного мониторинга дрейфа распределения пользовательских профилей в многомерном пространстве. Ключевые слова: алгоритм кластеризации, гиперсегментация пользоватлей, кластеризация многомерных данных, БВБСАЫ.

С целью подбора алгоритма, подходящего для решения задачи сегментации пользовательских профилей, был проведен анализ методов кластеризации различных типов - иерархических и неиерархических (плотностных, статистических, итеративных) [1-2]. В результате было выявлено, что алгоритмы иерархического типа на начальном этапе требуют указания максимального размера кластера (максимально возможного количества элементов), что нежелательно для данной конкретной задачи. Алгоритмы неиерархические итеративные не могут быть использованы в связи с необходимостью указания количества искомых кластеров, медленно работают при анализе больших объемов данных, а также чувствительны к шумам и могут давать недостоверные результаты в связи с этим. Неиерархические статистические алгоритмы также плохо справляются с анализом больших данных [3]. Наиболее подходящими оказались плотностные алгоритмы, которые хорошо работают с большим объемом данных, не требуют указания количества кластеров и их размеров. Главными преимуществами подобных алгоритмов является устойчивость к данным шума и легкость их модификации и комбинирования с другими алгоритмами и процедурами.

На основе плотностного алгоритма ББ8СЛМ был разработан новый алгоритм гиперсегментации пользователей (рисунок 1), у которого отсутствуют обозначенные слабые стороны.

Рис. 1. Алгоритм гиперсегментаци пользователей Интернет-ресурса

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

Первым шагом осуществляется укрупненная кластеризация профилей пользователей при помощи модифицированного алгоритма БЛБ8СЛК (рисунок 2).

Рис. 2. Модифицированный алгоритм ВБ8СЛМ

Суть метода остается той же, однако отличительной особенностью является распределение точек шума по шум-кластерам в зависимости от их координат, вместо записи в одну единственную категорию «Шум».

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

X = {х1, х2,..., хп] - множество значений для анализа.

е - значение радиуса окрестности.

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

Случайным образом осуществляется выбор точки. Проводится проверка окрестности точки на наличие соседей. Если количество точек - соседей в окрестности больше минимально заданного значения (М1пР1б), то создается кластер (С+1), где ] - текущее количество кластеров, соответствующее т. Точка, с которой анализ был начат, помечается, как пройденная и принадлежащая к кластеру. Все остальные точки из окрестности помещаются во временную категорию.

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

Если в массиве входных данных еще остались не пройденные точки, то случайным образом выбирается одна из них и осуществляется проверка окрестности. В том случае, если количество соседствующих точек меньше минимально заданного, принимается решение о создании шум-кластера (Ng+1). Тем же образом, что и для полноценного кластера, который описан выше.

Таким образом, в результате работы алгоритма для процедуры «Укрупненная кластеризация» получится m кластеров и p шум-кластеров.

Далее для выявленных кластеров проводится поиск центроидов:

Yk=i xi С1=—[Г

где Cj - это центр j-го кластера, L - количество элементов (точек) в j-м кластере. Эта процедура необходима для определения областей наибольшего скопления элементов выборки.

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

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

Когда элемент не соответствует ни одному из кластеров, проводится проверка на принадлежность к выделенным шум-кластерам. В том случае, если и шум-кластер не определен, создается новый шум-кластер, состоящий из этой точки. Если же элемент отнесен к оному из шум-кластеров, то осуществляется проверка его плотности с учетом начального значения минимума плотности. Новый кластер создается, когда значение равно минимуму или больше него.

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

- не требует задания ожидаемого количества кластеров;

- позволяет учитывать изменяющиеся во времени потребности и интересы пользователей.

Список литературы

1. Бочкарёв П.В., Шестакова К.С. Алгоритмы кластеризации данных // Электронный научно-практический журнал «Молодежный научный вестник» [Электронный ресурс]. Апрель 2017. URL: http://www.mnvnauka.ru/2017/04/Bochkaryov.pdf/ (дата обращения: 15.05.2018).

2. Богушов А.К., Панюков А.В. Размещение взаимосвязанных объектов в условиях неопределенности // IV Всероссийская конференция Проблемы оптимизации и экономические приложения: Материалы конференции (Омск, 29 июня - 4 июля, 2009) / Омский филиал Института математики СО РАН. Омск: Полиграф. Центр КАН, 2009. С.113.

3. Батуркин С.А., Батуркина Е.Ю., Зименко В.А., Сигинов И.В. Статистические алгоритмы кластеризации данных в адаптивных обучающих системах // Рязань: Вестник РГРТУ. № 1 (выпуск 31). 2010.

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