Centros en unidades reales
Parte de la sección Aprendizaje no supervisado del Journey de Machine Learning de Coddy. Lección 12 de 51.
El centro de un clúster es su miembro típico. K-means encontró los centros del parque en datos escalados, así que se expresan como puntuaciones z. Los mismos centros, antes y después:
Conserva el escalador: recuerda la media y la dispersión de cada característica, e inverse_transform deshace el escalado:
scaler = StandardScaler()
km.fit(scaler.fit_transform(park))
centers = scaler.inverse_transform(km.cluster_centers_)
print(centers.round(1))Esto imprime las horas, los viajes y la edad, una fila por clúster:
[[ 6. 6.2 38.4]
[ 2.4 3. 45.8]
[ 6.8 13.9 20.7]]El centro del clúster 2 era 0.8 y 1.3. Ahora indica 6.8 horas y 13.9 viajes: el mismo punto, en unidades que una persona puede usar.
Desafío
IntermedioUn fabricante de guantes convierte los grupos de manos en 4 tallas de guantes. El código inicial escala 150 manos, las agrupa y lee la mano de un cliente en new_hand.
- Encuentra el grupo al que se une la nueva mano: primero escálala.
- Convierte los centros de nuevo a cm.
- Imprime el centro de ese grupo con 1 decimal, como se muestra a continuación.
Para otro fabricante de guantes:
Your glove size: hand 20.3 cm, palm 8.9 cm, finger 8.6 cmPruébalo tú mismo
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
# 150 manos medidas por un fabricante de guantes, en cm: longitud de la mano, anchura de la palma y longitud del dedo corazón
hands = pd.read_csv("hands.csv")
scaler = StandardScaler()
scaled = scaler.fit_transform(hands)
# Un grupo por talla de guante
km = KMeans(n_clusters=4, n_init=10, random_state=0)
km.fit(scaled)
# La mano de un nuevo cliente, en una tabla de una fila con las mismas columnas
new_hand = pd.DataFrame({
"hand_cm": [float(input())],
"palm_cm": [float(input())],
"finger_cm": [float(input())],
})
# 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