Хотя каждый клиент уникален, группировка похожих клиентов может быть очень выгодной. Эта группировка или кластеризация имеет решающее значение для предприятий, взаимодействующих с клиентами в масштабе. Например, разработка уникальной инициативы по удержанию клиентов для каждого клиента несостоятельна, особенно если у компании тысячи клиентов. Вместо этого бизнес должен понять, какая группа клиентов более восприимчива к инициативе по удержанию. Чтобы понять состав этой группы или сегмента, компания должна начать с разделения похожих клиентов на определенные группы.

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

Перебирать строку за строкой, чтобы вручную отнести клиента к группе на основе многочисленных критериев, неэффективно. Вскоре каждый покупатель станет уникальным, и за деревьями пропадет лес. Требуется автоматизированное решение. Задача состоит в том, чтобы обнаружить, какие клиенты систематически похожи. Похожие клиенты могут быть сгруппированы по определенному типу, например быстрорастущие, стабильные или подверженные риску. К счастью, существует математический подход к решению этой проблемы даже для тысяч клиентов. Этот подход называется кластеризацией K-средних.

В этом посте будут рассмотрены концепции кластеризации k-средних и «метода локтя». Мы обсудим, как эти методы группируют схожие точки данных. Наконец, мы рассмотрим, как компании могут применять их для создания большей ценности.

Так что же такое кластеризация k-средних?

Кластеризация K-средних — это метод, используемый для группировки схожих точек данных. Это тип неконтролируемого алгоритма машинного обучения, который разбивает данные на k групп или кластеров, где каждая группа содержит похожие наблюдения.

Успешная кластеризация имеет два критерия: (A) точки данных должны быть близки к назначенным им центроидам, и (B) центроиды должны быть далеко друг от друга. Эти критерии могут быть количественно определены с помощью индекса Данна — min(B)/max(A). Чем выше индекс Данна, тем выше успех кластеризации.

Мы рассмотрим два из многочисленных доступных методов кластеризации. Два метода: (1) случайный выбор нескольких центроидов одновременно и (2) случайный выбор одного центроида за раз. Давайте начнем изучать первый подход, который является более распространенным.

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

После построения алгоритм начинает со случайного выбора k наблюдений из всего набора данных. K представляет количество кластеров. Определение подходящего количества кластеров будет обсуждаться позже. Предполагается наличие двух кластеров на основе двух переменных или осей, таких как доход и возраст. Затем вычисляется евклидово расстояние между каждым центроидом и каждой точкой данных. Евклидово расстояние — это просто расстояние по гипотенузе между этой точкой и центроидом.

В приведенной ниже таблице представлены все рассчитанные расстояния. Вы увидите, что некоторые точки имеют более короткое расстояние до одного центроида, чем до другого. Точка данных назначается центроиду с кратчайшим расстоянием. Три точки фиолетового цвета обозначают кластеризацию с центроидом 1. Остальные синие точки данных относятся к центроиду 2.

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

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

И, наконец, центр каждого центроида определен!

Но не так быстро! Упражнение началось со случайного выбора точек данных в качестве центроидов. Что, если были выбраны разные случайные точки? Описанные выше шаги необходимо повторять много раз, но с разными начальными центроидами. Сколько раз нужно повторить процесс? Единого ответа не существует, но существуют другие подходы. Самый простой подход — заранее определить количество прогонов. В качестве альтернативы дополнительные прогоны не требуются, если положения центроидов не перемещаются при последующих прогонах.

Итак, каково правильное количество кластеров? Опять же, единого ответа не существует, но есть разные подходы. Метод локтя — это распространенный подход к определению оптимального количества кластеров. Он определяет, что добавление еще одного кластера перестает повышать точность — точка вашего локтя.

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

Эффект постепенного увеличения количества кластеров рассчитывается как «искажение» кластера. Искажение обычно рассчитывается как среднеквадратичное расстояние между каждой точкой данных и ее центром тяжести. Искажение будет уменьшаться по мере увеличения кластеров. Улучшение искажения будет уменьшаться с добавлением каждого последующего кластера. Вскоре улучшение искажений не оправдывает дополнительный кластер.

В этом примере 3 кластера (точка C) — оптимальное количество. Четвертый кластер (точка D) обеспечивает минимальное улучшение искажения по сравнению с добавлением 2-го и 3-го кластеров. Точка C — это «локоть», в котором линейный график «изгибается», чтобы выровняться.

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

Возвращаясь к двум критериям успешной кластеризации, нам нужны более тесные кластеры, которые находятся дальше друг от друга. Традиционный метод k-средних случайным образом выбирает предварительно определенное количество центроидов одновременно для инициализации алгоритма. K-means++ случайным образом выбирает один центроид для инициализации. Каждый дополнительный центроид выбирается путем выбора точки, наиболее удаленной от текущего(их) центроида(ов). Этот подход лучше всего подходит для максимизации второго критерия успешной кластеризации. В остальном эти две техники схожи.

Так как же кластеризация повышает ценность компании?

Кластеризация K-средних необходима для выявления похожих клиентов и понимания их поведения путем группировки точек фирмографических данных. Сегментирование клиентов на группы со схожими потребностями позволяет компании лучше удовлетворять эти потребности. Удовлетворение потребностей клиентов улучшает удержание и создает ценность.

Возвращаясь к нашему варианту использования, мы видим, что Кластер 2 приносит немного больший доход, чем Кластер 1, хотя группа в среднем моложе. Это наблюдение ставит под сомнение нашу гипотезу о том, что пожилые клиенты приносят больший доход. Чтобы понять эту взаимосвязь, необходимо провести дополнительное исследование, прежде чем внедрять продвижение инициативы по удержанию.