Кластеризация по k-средним (Алексей Бухтарев)
20:16

Кластеризация по k-средним (Алексей Бухтарев)

Илья Балахнин 31.10.2017 18 188 просмотров 246 лайков обн. 18.02.2026
Поделиться Telegram VK Бот
Транскрипт Скачать .md
Анализ с AI
Описание видео
📚 База знаний в Telegram с книгами Ильи Балахнина и партнеров: https://t.me/PaperPlanesInfo_bot В этом видео вы узнаете: — Для каких задач используется кластеризация по k-средним? — На основе каких данных можно провести кластеризацию по к-средним? — Как подготовить данные? — С помощью каких инструментов проводится кластеризация по ключевым факторам выбора или иным параметрам Статья по теме: 100-часовой курс по маркетингу на основе данных: https://academy-paperplanes.ru/ddm 📈 Проведите диагностику корпоративной культуры организации с помощью авторской методологии Агентства Paper Planes: https://checkup-paperplanes.ru 📚 Полезные ссылки: Наш сайт: https://paper-planes.ru Академия Paper Planes: https://academy-paperplanes.ru/ Канал Ильи Балахнина в Telegram: https://t.me/ilyabalahnin Чат-бот Агентства Paper Planes https://t.me/PaperPlanesInfo_bot Медиа Paper Planes https://media.paper-planes.ru Контакты партнёров: Илья Балахнин https://t.me/ilia_balahnin +7 926 592 4877 Сергей Худовеков https://t.me/khudovekov +7 926 055 7715 Георгий Картвелишвили https://t.me/George_Kartvelishvili +7 916 336 60 64

Оглавление (5 сегментов)

  1. 0:00 Segment 1 (00:00 - 05:00) 430 сл.
  2. 5:00 Segment 2 (05:00 - 10:00) 444 сл.
  3. 10:00 Segment 3 (10:00 - 15:00) 460 сл.
  4. 15:00 Segment 4 (15:00 - 20:00) 439 сл.
  5. 20:00 Segment 5 (20:00 - 20:00) 7 сл.
0:00

Segment 1 (00:00 - 05:00)

кости практического использования алгоритмов кластеризации частности использования алгоритма к средней также мы рассмотрим для каких задач используются кластеризация на основе каких данных можно провести кластеризацию как подготовить данные как осуществить саму кластеризацию с помощью каких инструментов и как затем обработать результаты итак для каких задач мы можем использовать кластеризации в агентстве кластеризация используется для решения трех основных задач все они между собой достаточно тесно связаны и они предполагают обобщение клиентов выделения из общего массива клиентов каких-то групп клиентов по определенным признак вручную это сделать невозможно поэтому мы для этого прибегаем к помощи специальных математических алгоритмов три основные задачи в которых используются алгоритмы кластеризации эта задача кластеризации результатов опросов затем задачи кластеризации клиентов разделение клиентов на группы в зависимости от их поведения и еще одна задача которая часто встречается это кластеризация с целью выявления мошенничества или любой подозрительной активности со стороны клиентов любых действий которые шаблон стандартного поведения clean это три основные задачи с которыми мы работаем рассмотрим подробнее на основе каких данных мы проводим пастеризацию для этого возьмем пример обработки опросов кластеризация опроса опрос после того как а простых ершом все данные агрегируются и сводятся в таблицу в которой по строкам находится клиенты или респонденты которые прошли опрос по столбцам ответы на вопросы собственно нас интересует в этой таблице не все многообразие вопросов а только часть этих вопросов которые касаются факторов выбора клиент мы проводим кластеризацию на основе результатов факторов выбора клиентов с целью выявления особенностей поведения клиентов при осуществлении выбора какие факторы для gaga групп died of более важные какие мене то есть кластеризация в этом случае позволяет объединить клиентов в какие-то группы зависимости от того как они отвечали на вопросы нашей анкеты то есть клиенты с похожими ответами на вопросы будут окажутся в результате в одной группе в дальнейшем мы с этой группы и сможем работать как с единым целом разработать для этой группы определенные форматы взаимодействия возможно какие то акции какие-то дополнительные предложения итак для того чтобы обработать данные подготовить их для проведения кластеризации мы должны взять результаты опросов выделить из них часть которая касается проведения опросов по фактором выбора здесь клиенты отвечают по какой-то из шкал насколько важен тот или иной фактор выбора при принятии решения например об участии в какой-то выставки здесь в данном случае клиент и выставляли баллы от 1 до 7 то есть получается что для каждого клиента есть какое-то множество ответов на вопросы в данном случае это пять вопросов каждый клиент выставил какие то оценки для того чтобы мы могли провести кластеризацию на основе этих данных мы должны выделить эту часть данных и поместить ее отдельно рассматривать ее уже отдельно мы в
5:00

Segment 2 (05:00 - 10:00)

данной операции выделили фрагмент данных поместили их на отдельный лист и диксы для того чтобы подготовить они стали зации мы должны привести к зеленому виду числовому представлению с помощью даме кодирования мы должны получить в результате таблицу который состоит из нулей и единиц ставим ее на существующий лист книги акций по строкам мы разместим эти клиентов по столбцам варианты ответов на вопросы и значение будут снова ради клин нас интересует количество ответов так в такой сложной таблице мы получили как видите по столбцам баллы которые могут быть ответами на вопрос то есть здесь второй клиент с номером 2 на вопрос номер один это все это вопрос номер один ответил что для него этот фактор выбора не значим то есть он поставил ему единицу поэтому в этой строке находится единицы во всех остальных строках во всех остальных столбцах пуста проделав эту операцию несколько раз мы получим таблицу вот такого вида это данные которые приведены в численное представление как видите здесь тридцать три столбца матрицы состоит из пустых ячеек и единиц там где единица там и был ответ клиента до с данными в таком виде уже можно работать и можно на основе не вправе стекла стреляться уберем лишнее столбцы приведем данные к стандартному удобную идут вот на основе такой матрицы мы можем провести анализ для того чтобы провести кластеризацию на основе этих данных вот эти данные которые приведены на отдельно или книги excel эти данные мы должны будем загрузить в нашу среду разработки которые мы используем здесь написан код на языке python с помощью которого реализовано кластеризации этот код этот язык позволяет использовать библиотеки специально разработанные для анализа данных и таких библиотека поэта не достаточно много данном случае мы используем библиотеки socket. io и пандус для работы с данным небольшой кусочек кода сюда мы добавляем ссылку на документ который мы хотим использовать и являем как же время в результаты результат проведения кластеризации также будет вы данном файле мы загружаем в программу результаты виде файла и исходные данные виде файл и получаем результаты вывод программы тоже отдельный код программы достаточно прост верхней части импорт библиотек которые мы будем использовать здесь чуть ниже находится счетчик времени сколько длился код это его начало и внизу находится его конец счетчик покажет сколько какое количество времени выполняла сама операция для маленьких данных это неважно больших порядка там сотен тысяч строк быть достаточно существенна и лучше знать сколько именно заняла вычислений также пропуске которые были в полях ввода данных они будут заполнены нулями за это отвечает данная строка кода я говорю вот про эти пропуски все эти пустые места будут заполнены нулями мы получим матрицу из нулей и единиц которая будет полностью описывать результаты нашего опроса далее данные масштабируются в данном случае
10:00

Segment 3 (10:00 - 15:00)

эта операция не необходимо но во многих других случаях ее использования очень желательно данные трансформируются и используется для пастеризации вот эта строка она как раз ссылается на библиотеку которая с помощью которой стали зация будет реализован здесь есть настраиваемые параметры их можно изменять в зависимости от исследование главный параметр который меняется здесь это количество кластеров которые мы хотим получить в данном случае я указал 5 классов попробуем запустить программу значит программ выполняется вот мы получили результат в количество нулевом кластере столько элементов во втором кластере столько элементов и так далее результаты кластеризации могут достаточно существенно отличаться в зависимости от того какие данные мы возьмем положим в основу кристаллизации и в зависимости от того сколько кластерах мы выберем и вообще такой метод куста лизации будем использовать дело в том что в задачи кластеризации нет совершенно правильного ответа то есть можно разделить множество большим количеством различных способов и в принципе все они будут в какой-то степени правильными и то насколько хороший результат пастеризации зависит от того что мы хотим достичь и так результат кластеризации который мы получили мы можем просмотреть выглядит результат пастеризации как набор меток для каждого из клиентов каждая из анкет который мы вводили в программу получила определенную метку класс та которая относится то есть каждый из анкет теперь отнесена к одному из классов и теперь мы можем обрабатывать их отдельно при помощи сводных таблиц или каких-то других инструментов результат кластеризации по опросам выглядит как правило таким образом выделяется какое-то количество групп анкет в которых ответы респондентов были похожи друг на друга на основе данных можно принимать решение о том как взаимодействовать с определенными группами клиентов то есть здесь например видно что для клиентов из кластера один важные факторы выбора чтобы на выставке были представлены образцы продукции чтобы выставки принимали участие новые производители и поставщики и чтобы на выставке принимали участие партнеры компании другие факторы важны в меньшей мере сравнивая эти ответы с другими классами мы видим что с вот этой группой клиентов нужно взаимодействовать особенным образ и иначе формулировать для них посыл например в рекламных сообщениях и прочей маркетинговой активности рассмотрим другие способы другие задачи кластеризации эта задача внутри множество клиентов выделить клиентов с похожим поведение в зависимости от того как интенсивное клиенты покупают как часто совершают сделки как какой них средний чек и какую общую сумму дохода клиент нам принес в процессе своего взаимодействия с нами мы можем разделить клиентов на какие то опять же группа мы берем исходные данные из нашей crm системы или баз данных в любой другой форме здесь это стандартная достаточно вид это метка клиента такой клиент совершил сделку и здесь описание транзакций покупка такого до автомобиля в такую-то дату за какую то сумму денег этих клиентов операции по этим клиентом мы сводим при помощи сводный то птицы и получаем ряд расчетных показателей таких
15:00

Segment 4 (15:00 - 20:00)

как глубина чек а средний чек количество сделок средняя ширина отсека активе клиента средняя и средний интервал лишь двумя последовательными сделку на основе этих данных которые могут выглядеть например в таком виде мы можем провести кластеризацию и выявить среди множества клиентов с особенности скажем в поведении результат кластеризации будет выглядеть примерно следующим образом то есть опять же у нас есть меткий кластеров количество клиентов которые попала в эти кластеры и их средние параметры как видите параметры клиентов сильно отличаются друг от друга опять же с этими группами клиентов нужно взаимодействовать по разным технически осуществляется это операция вот таким образом мы провели кластеризацию точно тем же способом который был показан ранее привязали кластеры к нашим исходным данным на основе которых мы проводили кластеризацию затем при помощи с водной таблице мы забираем небольшой отчет кластера мы размещаем по строкам и по столбцам мы указываем в значениях мы указываем то какие эти постеры имеют характеристики для того что бы отличия в характеристиках было более заметным мы можем использовать условное форматирование как видите совершенно различные показатели в разных кластерах нас здесь интересует не суммы значений а средние значения по класс то таким образом собранная таблица может пролить свет на особенности поведения отдельных групп и последняя задача эта задача поиска а нам они в поведении как видите давайте рассмотрим эту диаграмму большая часть клиентов отмечены зеленым цветом она имеет достаточно нормальное поведение определенное количество сделок и число дней активности за период но есть группу клиентов которые сильно отличается по своим показателям и на данном графике она представлена красными точками есть группы которая представлена коричневыми точками их поведение тоже аномально но немного в другой скажем сфере повели клиенты с отмечены желтыми точками их поведение скажем более подозрительно чем у обычных рядовых клиентов в данном случае рассматриваются операции по картам лояльности книжного магазина и интенсивность операции по ним именно на ней был в основной фокус внимание видим что клиенты которые совершают слишком много операций слишком часто они очень хорошо отделились от остального множество клиентов как правило это указывает ну в данном конкретном случае это указывает что операции по картам лояльности проводятся слишком часто то есть может быть несколько операций в день это указывает на то что операции по карте проводят необычные покупателя например продавец который осуществляет скорее всего какую-то форму мошенничества со скидками предоставляемыми клиентов то есть он использует программ условия программы лояльности для того чтобы нажиться на предприятии выявить это поведение можно по сырым данным вспомнить по которым мы проведем кустореза цию используя многие параметры данных поведение очень хорошо можно отсечь такого рода и затем каждый случай отдельно расследовать так основной результат кластеризация это разделенное множество клиентов на какие то группы которые отличаются в поведении
20:00

Segment 5 (20:00 - 20:00)

из которыми мы будем строить отношении по-разному

Ещё от Илья Балахнин

Ctrl+V

Экстракт Знаний в Telegram

Транскрипты, идеи, методички — всё самое полезное из лучших YouTube-каналов.

Подписаться