Статья опубликована в рамках: LXIV Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 12 апреля 2018 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Дрозд П.С. МЕТОДЫ КЛАСТЕРИЗАЦИИ ПОЛЬЗОВАТЕЛЬСКИХ ДАННЫХ ДЛЯ ПРОГНОЗИРОВАНИЯ БИЗНЕС-ПРОЦЕССОВ // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. LXIV междунар. студ. науч.-практ. конф. № 4(63). URL: https://sibac.info/archive/technic/4(63).pdf (дата обращения: 17.09.2019)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
Диплом Выбор редакционной коллегии

МЕТОДЫ КЛАСТЕРИЗАЦИИ ПОЛЬЗОВАТЕЛЬСКИХ ДАННЫХ ДЛЯ ПРОГНОЗИРОВАНИЯ БИЗНЕС-ПРОЦЕССОВ

Дрозд Павел Сергеевич

студент, Кафедра Интеллектуальных систем, Белорусский Государственный Университет,

РБ, г. Минск

В статье приведен способ решения задачи сегментации рынка, основанный на применении самоорганизующихся карт Кохонена и иерархического кластерного анализа. Для предварительной обработки данных были использованы методы Z-оценки и главных компонент. Были получены хорошие результаты в ходе проверки рассматриваемого подхода на реальных данных. Данный подход устраняет необходимость изменения архитектуры искусственной нейронной сети при изменении числа кластеров, что положительно сказывается на скорости работы при разведочном анализе данных в рамках определения маркетинговой стратегии предприятия. В ходе работы над статьёй, на языке R был реализован инструментарий, позволяющий нетехническим специалистам (например, маркетинговым стратегам) проводить кластеризацию данных клиентов, а также имеющий возможность интеграции с CRM-системами (например, Salesforce, Microsoft Dynamics).

Введение

В рамках экономической теории выделяют понятия целевого рынка и целевого сегмента. Целевой рынок – это определённая группа потребителей, на которую таргетируется предложение товара или услуги. Целевой сегмент – это однородная группа потребителей целевого рынка предприятия. Потребителем может выступать человек в случае модели бизнеса B2C и другая компания в случае модели B2B. Таким образом, под сегментированием рынка будем понимать выделение определённых групп потребителей, для каждой из которых могут потребоваться различные подходы в маркетинговой компании предприятия. Решать эту задачу будем с помощью кластеризации. Однако, на сегодняшний день существует тенденция того, что компании размещают свою ИТ-инфраструктуру в облачных системах (например, CRM Salesforce, Demandware). Поэтому выбираемый алгоритм должен быть масштабируемым и как можно более эффективно использовать возможность параллельных вычислений. Этому условию удовлетворяют самоорганизующиеся карты Кохонена. Тем не менее, карты Кохонена обладают рядом недостатков (необходимость перепроектирования архитектуры при изменении числа кластеров, возможность работы только с вещественными значениями и т.д.) [1], которые мы постараемся избежать с помощью подхода, описанного в статье.

Основная часть

Выделим следующие этапы решения поставленной задачи интеллектуального анализа данных [5]:

  1. Предварительная визуализация и исследование данных с помощью гистограмм, диаграмм рассеяния.
  2. Создание новых переменных (feature creation).
  3. Очистка данных (data clean)
  4. Снижение размерности (метод главных компонент)
  5. Проектирование архитектуры карты Кохонена
  6. Кластеризация главных компонент картой Кохонена, получение векторов весов нейронов
  7. Кластеризация весов нейронов иерархическим способом
  8. Анализ полученных результатов

Будем использовать набор данных Ta-Feng, который выложен в свободный доступ компанией ACM RecSys. Он содержит информацию по покупкам клиентами различных товаров – от продуктов до электроники:

  • 817741 записей, одна запись описывает одну транзакцию;
  • время сбора данных компанией составило 4 месяца;
  • 32266 уникальных клиентов;
  • 23812 видов товаров;
  • 9 характеристик для каждой транзакции

 

Рисунок 1 Набор данных о транзакциях покупателей Ta-Feng

 

Рисунок 2 Гистограмма распределения количества транзакций по датам

 

Создание переменных

Так как мы будем решать задачу кластеризации покупателей, необходима структура данных в виде матрицы размера , где  – количество покупателей,  – число характеристик [2]. Ta-Feng dataset содержит данные о 32366 уникальных пользователей, однако впоследствии значение  окажется несколько меньше. Это связано с удалением данных, содержащих сильные выбросы на этапе очистки данных. Исходные данные в виде таблицы размером  будем группировать по переменной customer_id, при этом агрегируя другие поля. Смысл этапа создания переменных (feature creation) заключается в получении новых знаний об изучаемом наборе данных [3].

На этапе создания новых переменных было получено 29-мерное пространство признаков.

 

Рисунок 3 Характеристики, полученные на этапе feature creation

 

Очистка данных

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

где x – значение случайной величины, μ – математическое ожидание, SE – стандартная ошибка, σ – среднеквадратичное отклонение генеральной совокупности, n – объём выборки [2].

При выборе максимального стандартного отклонения  было потеряно всего 3.9% исходных данных.

 

Рисунок 4 Результат применения Z-оценки для параметра itemNumber (количество купленных товаров)

 

Уменьшение размерности пространства признаков

Для уменьшения размерности пространства признаков применим метод главных компонент (PCA) [2], который с помощью линейного преобразования, задаваемого матрицей , представляет исходные данные (матрица ) в виде нового набора . Столбцы  называются главными компонентами, причем можно выделить  первых главных компонент, которые обеспечивают требуемую долю дисперсии . Матрица  получается из следующих выражений :

где R – корреляционная матрица входных данных,  – матрица, содержащая на главной диагонали собственные значения корреляционной матрицы, причём выполняется следующее [5]:

В результате применения метода главных компонент было получено 8 первых главных компонент, которые вносят 93.4% дисперсии в исходные данные, что можно считать хорошим результатом. Таким образом, размерность данных была снижена с 29 до 8.

 

Рисунок 5 Зависимость первых двух главных компонент от переменных из исходного набора данных

 

Проектирование и обучение самоорганизующейся карты Кохонена

В качестве архитектуры карты Кохонена была выбрана сетка размером 20 на 20 нейронов с шестиугольной формой ячеек. В результате были получены векторы весов всех 20x20=400 нейронов карты. Визуализировать результаты можно с помощью “тепловых карт” (heatmaps) главных компонент (см. рис 6)

 

Рисунок 6 Тепловая карта пятой главной компоненты

 

Рисунок 7. Зависимость ошибки карты от количества эпох

 

Критерием завершения алгоритма обучения карты является сумма евклидовых расстояний от всех объектов до соответствующих им нейронов [4]:

где  – число изучаемых объектов.

Иерархическая кластеризация векторов весов

Далее используем иерархический подход для кластеризации полученных весовых векторов нейронов. Выберем количество предполагаемых кластеров равным 6. Существенным достоинством такого подхода является то, что при изменении количества кластеров не требуется повторение этапов проектирования и обучения карты Кохонена. Для этого нужно только выбрать определённый уровень на дендрограмме, полученной на последнем этапе [5].

 

Рисунок 8. Результат иерархической кластеризации весов нейронов

 

В качестве примера использования полученной информации для прогнозирования бизнес-процессов опишем кластер под номером 6. В этот кластер попали преимущественно VIP-покупатели, которые совершают мало очень дорогих покупок (в отличии, например, от кластера 1 – основной массы покупателей), причем выручка компании от этого кластера минимальна. В свою очередь, большой доход приносят покупатели из кластера 5, который составляют преимущественно пожилые люди. Рост заинтересованности в товарах верхней ценовой категории для таких людей наблюдается по выходным дням. Следовательно, бизнесу стоит задуматься о расширении маркетинговой деятельности среди пожилых людей и распродажах по выходным дням.

Заключение

Описанный метод показал хорошие результаты при использовании реальной базы данных. На языке R разработан инструментарий, позволяющий нетехническим специалистам (например, маркетинговым стратегам) проводить кластеризацию данных и анализ рынка. Методы Z-оценки и главных компонент позволяют автоматизировать процесс подготовки данных и выбора значимых характеристик. Иерархический кластерный анализ в сочетании с картой Кохонена позволяют изменять число кластеров без необходимости повторять этапы проектирования и обучения модели, что хорошо сказывается на общем времени решения задачи интеллектуального анализа данных. На практике этот подход будет применяться при разработке модуля анализа данных в рамках CRM-системы Salesforce, включая использование технологий Big Data.

 

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

  1. T. Kohonen, Self-Organizing Maps (Third Extended Edition) / T. Kohonen, New York, 2001
  2.  Leonard Kaufman, Peter J. Rousseeuw, Finding Groups in Data: An Introduction to Cluster Analysis / Leonard Kaufman, Peter J. Rousseeuw,- Copyright © 2005 John Wiley & Sons, Inc  - 2008
  3. Fern, X.Z., Brodley, C.E. Clustering ensembles for high dimensional data clustering // In Proc. International Conference on Machine Learning, 2003.
  4. В.Б. Бериков, Г.С. Лбов, Современные тенденции в кластерном анализе / В.Б. Бериков, Г.С. Лбов, - Новосибирск
  5. Интеллектуальный анализ данных: метод. указания к лабораторным работам / Н. Н. Яцков, И. П. Шингарѐв. – Минск: БГУ, 2012.
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
Диплом Выбор редакционной коллегии

Оставить комментарий