Perfilado de clústeres
Parte de la sección Aprendizaje no supervisado del Journey de Machine Learning de Coddy. Lección 11 de 51.
Este capítulo convierte los números de los clústeres en grupos que las personas pueden usar. Al terminarlo, cada clúster tendrá un nombre:
Un número como 2 no dice nada. Su perfil sí: la media de cada característica dentro del clúster. Añade las etiquetas como columna y luego agrúpalas:
park["cluster"] = km.labels_
print(park.groupby("cluster").mean().round(1))Esto imprime una fila por clúster:
hours rides age
cluster
0 6.0 6.2 38.4
1 2.4 3.0 45.8
2 6.8 13.9 20.7Ahora lee las filas como palabras. El clúster 2 es joven, permanece 7 horas y realiza 14 viajes: buscadores de emociones. El clúster 1 se va temprano: visitantes rápidos.
Desafío
IntermedioUn bar de karaoke quiere conocer a sus clientes. El código inicial los divide en 3 grupos; names contiene un nombre para cada uno, ordenados de menor a mayor número de visitas al mes.
- Añade las etiquetas a
guestsen una columnacluster. - Describe los grupos: sus medias y el número de clientes de cada uno, ordenados por
visits_month. - Imprime una línea por grupo con su nombre y las medias con 1 decimal.
Para otro 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 hoursPruébalo tú mismo
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
# 110 clientes de un bar de karaoke: visits a month, canciones 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)
# Nombres de los grupos, de menos a más visitas al mes
names = ["Once in a while", "Regulars", "Superfans"]
# Escribe tu código a continuación
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Aprendizaje no supervisado
1Encontrar grupos
Aprender sin etiquetasMedir la similitudK-Means a manoK-Means en scikit-learnRepaso: miembros del gimnasio7PCA en la práctica
Visualizar 64 dimensionesComponentes como patronesComprimir y reconstruirPCA antes de un modeloRepaso: escáner facial10Proyecto: Explorador de dígitos
Observa los dígitosReduce con PCAAgrupa los dígitosPon nombre a los gruposEncuentra los diferentes2Elegir k
InerciaEl método del codoPuntuaciones de siluetaEscalar antes de agruparRepaso: zonas de entrega3Interpretación de los clústeres
Perfilado de clústeresCentros en unidades realesClústeres frente a etiquetas conocidasCuándo falla K-MeansRepaso: cata de téPractica por tu cuenta: Compilador de Python online