Centros em unidades reais
Parte da seção Aprendizado não supervisionado do Journey de Machine Learning da Coddy. Lição 12 de 51.
O centro de um cluster é seu membro típico. O K-means encontrou os centros do parque nos dados escalados, então eles são expressos como escores z. Os mesmos centros, antes e depois:
Mantenha o escalonador: ele memoriza a média e a dispersão de cada característica, e inverse_transform desfaz o escalonamento:
scaler = StandardScaler()
km.fit(scaler.fit_transform(park))
centers = scaler.inverse_transform(km.cluster_centers_)
print(centers.round(1))Isso imprime horas, passeios e idade, uma linha por cluster:
[[ 6. 6.2 38.4]
[ 2.4 3. 45.8]
[ 6.8 13.9 20.7]]O centro do cluster 2 era 0.8 e 1.3. Agora ele indica 6.8 horas e 13.9 viagens: o mesmo ponto, em unidades que uma pessoa pode usar.
Desafio
MédioUm fabricante de luvas transforma agrupamentos de mãos em 4 tamanhos de luva. O código inicial dimensiona 150 mãos, agrupa-as e lê a mão de um cliente em new_hand.
- Encontre o agrupamento ao qual a nova mão pertence: primeiro, dimensione-a.
- Converta os centros de volta para cm.
- Imprima o centro desse agrupamento, com 1 casa decimal, como abaixo.
Para outro fabricante de luvas:
Your glove size: hand 20.3 cm, palm 8.9 cm, finger 8.6 cmExperimente você mesmo
import pandas as pd
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
# 150 mãos medidas por um fabricante de luvas, em cm: comprimento da mão, largura da palma, dedo médio
hands = pd.read_csv("hands.csv")
scaler = StandardScaler()
scaled = scaler.fit_transform(hands)
# Um grupo para cada tamanho de luva
km = KMeans(n_clusters=4, n_init=10, random_state=0)
km.fit(scaled)
# A mão de um novo cliente, em uma tabela de uma linha com as mesmas colunas
new_hand = pd.DataFrame({
"hand_cm": [float(input())],
"palm_cm": [float(input())],
"finger_cm": [float(input())],
})
# 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