(Проект машинного обучения Capstone)
Целью проекта было
Выявление основных и сегментных клиентов на основе данных о точках продаж (POS) нескольких магазинов розничной компании.
После сегментации задача состояла в том, чтобы разработать механизм оценки для клиентов на основе их поведения и проанализировать их модели покупок, чтобы попытаться понять ассоциации с продуктами, чтобы ориентироваться в рекламных акциях.
СОСТОЯНИЕ ИСКУССТВА
При быстром увеличении объемов данных алгоритмы кластеризации являются важными инструментами анализа данных в современных исследованиях. Они были успешно применены к широкому кругу областей; например, биоинформатика, распознавание речи и финансовый анализ.
Формально говоря, при заданном наборе экземпляров данных ожидается, что алгоритм кластеризации разделит набор экземпляров данных на подмножества, которые максимизируют сходство внутри подмножества и между ними. -несходство подмножества, где заранее определена мера сходства.
Кластеризация. Метод обучения без учителя (без целевой переменной). Это процесс использования машинного обучения и алгоритмов для определения того, как связаны различные типы данных, и создания новых сегментов на основе этих отношений. Кластеризация находит взаимосвязь между точками данных, чтобы их можно было сегментировать.
Различные алгоритмы, которые могут быть приняты:
1) Иерархическая кластеризация:
В интеллектуальном анализе данных и статистике иерархическая кластеризация (также называемая иерархическим кластерным анализом или HCA) представляет собой метод кластерного анализа, который стремится построить иерархию кластеров.
Стратегии иерархической кластеризации обычно делятся на два типа.
а) Агломеративный: это подход «снизу вверх»: каждое наблюдение начинается в своем собственном кластере, и пары кластеров объединяются по мере продвижения вверх по иерархии. Популярный алгоритм - Агнес.
б) Разделительный: это подход «сверху вниз»: все наблюдения начинаются в одном кластере, и разделение выполняется рекурсивно по мере продвижения вниз по иерархии. Популярный алгоритм - Дайана. Как правило, слияния и разделения определяются жадным образом. Результаты иерархической кластеризации обычно представляются в виде дендрограммы.
2) Подход к разделению:
В данной базе данных из «n» объектов и метода разделения создается «k» раздел данных. Каждый раздел будет представлять кластер и k ≤ n. Это означает, что он будет классифицировать данные на k групп, которые удовлетворяют следующим требованиям:
Каждая группа содержит не менее одного объекта.
Каждый объект должен принадлежать ровно к одной группе.
а) K-средние: кластеризация K-средних — это метод векторного квантования, первоначально основанный на обработке сигналов, который популярен для кластерного анализа при интеллектуальном анализе данных. Кластеризация k-средних направлена на разделение n наблюдений на k кластеров, в которых каждое наблюдение принадлежит кластеру с ближайшим средним значением, выступающим в качестве прототипа кластера. Это приводит к разделению пространства данных на ячейки Вороного.
б) K-Medoids: K-medoid — это метод разбиения, аналогичный k-средним, но в качестве центров кластеров выбираются точки данных. Он более устойчив к шуму и выбросам по сравнению с kmeans, поскольку минимизирует сумму попарных различий, а не сумму квадратов евклидовых расстояний. Медоид можно определить как объект кластера, среднее непохожесть которого на все объекты кластера минимальна.
После построения кластеров мы берем номер кластера в качестве целевой переменной и выполняем классификацию кластеров, чтобы понять сформированные кластеры и сгенерировать определенные правила для каждого кластера в зависимости от новых сгенерированных переменных.
3) Дерево решений:
Дерево решений — это набор правил, используемых для классификации данных по категориям. Он смотрит на переменные в наборе данных (здесь DTM), а затем выводит дерево решений, которые лучше всего разбивают данные. Разделение данных по переменным создает дерево, а затем подсчитывает, сколько их в каждом сегменте после каждого разделения.
Преимущества:
1. Они обеспечивают объяснимость, поскольку облегчают понимание.
2. Они быстро сходятся.
Недостатки:
1. Работают по принципу жадного поиска.
2. Небольшое искажение данных приводит к совершенно другому дереву.
3. Они склонны к чрезмерной подгонке, и всегда есть необходимость подрезать дерево.
1. Данные о транзакциях в точках продаж (POS) за два года в 5 розничных магазинах розничной сети были предоставлены с их идентификатором клиента, идентификатором транзакции, идентификатором продукта, стоимостью транзакции с их датой и временем.
2. Было предоставлено 10 360 уникальных клиентов с 89 уникальными продуктами среди 56 798 экземпляров данных.
3. Допущение: за текущую дату принята последняя дата набора данных (31–12-2016).
4. Сгенерировано 7 новых переменных из заданного набора данных:
Уникальный идентификатор клиента
Доход: общая стоимость всех транзакций за
Пользовательский ИД
Количество: общее количество продуктов, купленных каждым идентификатором клиента.
Минимальная стоимость: минимальная стоимость для идентификатора клиента.
Максимальная стоимость: максимальная стоимость за CustomerID.
Частота: общее количество посещений на один CustomerID.
Недавность: количество дней между последним посещением каждого идентификатора клиента.
и 31–12 2016 г.
Срок действия: количество дней между последним посещением каждого идентификатора клиента и первым посещением.
5. Стандартизация значений:
Поскольку переменные имели экстремальный набор значений, перед передачей кадра данных в алгоритм k-средних входные данные были стандартизированы «стандартизированным» методом, поскольку он преобразует все переменные в значения со средним значением как «0» и стандартным отклонением как «1», таким образом все сгенерированные переменные будут иметь одинаковый вес.
6. Около 9% данных находятся за пределами диапазона. Таким образом, замечено, что иерархическая кластеризация не дает требуемой информации.
7. Начертите график осыпи со значением «k» по оси X и «wss» по оси Y и найдите график колена при k = 6.
8. Выводы кластеризации k=6
Наблюдал одну группу клиентов, сегментированных вместе, у которых был очень высокий доход и срок владения, хотя они были меньше в количестве.
Отметил значительное количество потенциальных ценных клиентов с приличным доходом и высоким стажем работы.
9) Для того, чтобы
понять различные правила, сгенерированные из кластеров, как упоминалось выше, запустили классификатор дерева решений с номером кластера в качестве цели.
10) Точность показана на двух используемых деревьях решений.
1) C5.0
Данные поезда: 99,6%
Данные испытаний: 98,4%
2) Рчасть
Данные поезда: 95,27%
Данные испытаний: 95,24%
11) Как упоминалось в постановке задачи, попытался провести оценку всех клиентов, объединив различные переменные и назначив оценку на основе функции.
Функция: Формула, используемая для подсчета очков:
Не учитывал фактор пребывания здесь, потому что заметил, что у некоторых клиентов не было срока пребывания, но они добавили хороший доход, хотя они только что посетили один раз.
Будущая область применения:
Мы также можем разработать ассоциации продуктов на основе предоставленных данных, сюда может быть включен механизм рекомендаций пользователей, чтобы помочь розничному продавцу рекомендовать похожим пользователям новые продукты.