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

Если вы можете пойти под присмотром, идите под присмотром.

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

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

Уловка 1. Превращение этого в проблему выбора функций

Как обычно в Data Analytics, вам необходимо сопоставить бизнес-вопрос с методом. В вашем случае вопрос: Что лучше всего описывает cluster_0? Или другими словами: Что отличает cluster_0 от всех остальных? На самом деле это можно интерпретировать как проблему выбора функции. Вы хотите знать, какие функции могут различать кластеры. Я бы рекомендовал сделать это по принципу «один против всех», поскольку это отвечает на прямой вопрос.

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

На хорошо известном наборе данных «Титаник» мы могли бы получить «возраст, пол и класс пассажира» как наиболее важные атрибуты. Это позволяет нам переименовать cluster_0 в «Возраст-пол-пассажирский класс». Проблема здесь в том, что, хотя вы нашли важные факторы, вы не назвали направление. Это группа стариков? Или, скорее, молодые женщины? Мы можем копнуть глубже, посмотрев на координаты центроида и поместив их в перспективу. Но есть более простой способ: деревья решений!

Уловка 2 - Деревья решений!

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

Второй шаг - проанализировать ветви дерева решений. Все ветки, которые предсказывают наш cluster_0, можно использовать как описание. Мы можем получить такие ветки, как:

Возраст ‹20 И Класс пассажира = Первый И Пол = женский

Что очень хорошо описывает наш cluster_0!

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