Caracterizando agrupamentos
Parte da seção Aprendizado não supervisionado do Journey de Machine Learning da Coddy. Lição 11 de 51.
Este capítulo transforma números de clusters em grupos que as pessoas podem usar. Ao final, cada cluster terá um nome:
Um número como 2 não diz nada. Seu perfil diz: a média de cada característica dentro do cluster. Adicione os rótulos como uma coluna e, em seguida, agrupe:
park["cluster"] = km.labels_
print(park.groupby("cluster").mean().round(1))Isso imprime uma linha por cluster:
hours rides age
cluster
0 6.0 6.2 38.4
1 2.4 3.0 45.8
2 6.8 13.9 20.7Agora leia as linhas como palavras. O agrupamento 2 é jovem, fica 7 horas e faz 14 passeios: pessoas em busca de emoção. O agrupamento 1 vai embora cedo: visitantes rápidos.
Desafio
MédioUm bar de karaokê quer conhecer seus clientes. O código inicial os divide em 3 grupos; names contém um nome para cada um, do menor para o maior número de visitas por mês.
- Adicione os rótulos a
guestscomo uma colunacluster. - Crie o perfil dos grupos: suas médias e o número de clientes, ordenados por
visits_month. - Imprima uma linha por grupo com seu nome e as médias com 1 casa decimal.
Para outro bar:
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 hoursExperimente você mesmo
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
# 110 clientes de um bar de karaokê: visits a month, músicas por visita, horas por visita
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)
# Nomes dos grupos, do menor para o maior número de visitas por mês
names = ["Once in a while", "Regulars", "Superfans"]
# Escreva seu código abaixo
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Aprendizado não supervisionado
1Encontrando Grupos
Aprendendo sem RótulosMedindo a SimilaridadeK-Means à MãoK-Means no scikit-learnRevisão: Frequentadores da Academia4Clustering Hierárquico
Mesclando passo a passoModelos aglomerativosDendrogramasRevisão: raças de cães7PCA na prática
Visualizando 64 dimensõesComponentes como padrõesComprimir e reconstruirPCA antes de um modeloRecapitulação: scanner facial10Projeto: Explorando os Dígitos
Observe os DígitosReduza com PCAAgrupe os DígitosDê Nome aos GruposEncontre os Diferentes2Escolhendo k
InérciaO método do cotoveloPontuações de silhuetaEscale antes de agruparRecapitulando: zonas de entrega3Interpretando agrupamentos
Caracterizando agrupamentosCentros em unidades reaisAgrupamentos versus rótulos conhecidosQuando o K-Means falhaRevisão: degustação de cháPratique por conta própria: Compilador de Python online