Профилирование кластеров
Часть раздела Обучение без учителя путешествия по Machine Learning на Coddy. Урок 11 из 51.
В этой главе мы превратим номера кластеров в группы, которыми люди смогут пользоваться. К концу главы у каждого кластера будет название:
Число вроде 2 ничего не говорит. О его профиле говорит среднее значение каждого признака внутри кластера. Добавь метки в виде столбца, а затем сгруппируй данные:
park["cluster"] = km.labels_
print(park.groupby("cluster").mean().round(1))Это выводит одну строку для каждого кластера:
hours rides age
cluster
0 6.0 6.2 38.4
1 2.4 3.0 45.8
2 6.8 13.9 20.7Теперь прочитай строки как слова. Кластер 2 — молодые люди, остаются на 7 часов и совершают 14 поездок: любители острых ощущений. Кластер 1 уходит рано: посетители на короткое время.
Задание
СреднеКараоке-бар хочет узнать больше о своих гостях. Начальный код разбивает их на 3 кластера; в names хранится название для каждого кластера, от наименьшего числа посещений в месяц до наибольшего.
- Добавь метки в
guestsв виде столбцаcluster. - Составь профиль кластеров: их средние значения и число гостей, отсортированные по
visits_month. - Выведи по одной строке на кластер с его названием и средними значениями, округлёнными до 1 знака после запятой.
Для другого бара:
Once in a while: 30 guests, 1.4 visits a month, 2.5 songs, 3.2 hours
Regulars: 45 guests, 3.0 visits a month, 4.6 songs, 2.0 hours
Superfans: 15 guests, 7.4 visits a month, 9.2 songs, 2.8 hoursПопробуйте сами
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
# 110 посетителей караоке-бара: visits a month, песен за посещение, часов за посещение
guests = pd.read_csv("karaoke.csv")
scaled = StandardScaler().fit_transform(guests)
km = KMeans(n_clusters=3, n_init=10, random_state=0)
km.fit(scaled)
# Названия групп в порядке возрастания числа посещений в месяц
names = ["Once in a while", "Regulars", "Superfans"]
# Напишите свой код ниже
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Обучение без учителя
1Поиск групп
Обучение без метокИзмерение сходстваK-Means вручнуюK-Means в scikit-learnПовторение: участники спортзала4Иерархическая кластеризация
Пошаговое объединениеАгломеративные моделиДендрограммыПовторение: породы собак2Выбор k
ИнерцияМетод локтяОценки силуэтаМасштабирование перед кластеризациейПовторение: зоны доставки3Анализ кластеров
Профилирование кластеровЦентры в реальных единицахКластеры и известные меткиКогда K-Means не справляетсяПовторение: дегустация чаяПотренируйтесь самостоятельно: Онлайн-компилятор Python