Menu
CoddyTech

Agrupe os Dígitos

Parte da seção Aprendizado não supervisionado do Journey de Machine Learning da Coddy. Lição 45 de 51.

Agora, a descoberta. Peça ao k-means 10 grupos nos escaneamentos com 13 números, um para cada dígito que você espera que ele encontre. Ele nunca vê um rótulo:

km = KMeans(n_clusters=10, n_init=10, random_state=0).fit(X_small)

Um centro fica onde o k-means trabalhou, no espaço PCA: 13 números, nenhuma imagem. pca.inverse_transform reconstrói seus 64 pixels:

À esquerda, um gráfico de barras com os 13 números de um centro do k-means: duas barras altas primeiro, depois barras pequenas. À direita, o mesmo centro reconstruído como uma imagem borrada de 8 por 8 que parece um 0

value_counts() lista os clusters do maior para o menor, então uma galeria de centros parece um censo dos exames.

challenge icon

Desafio

Médio

O material inicial contém as imagens e X_small, suas versões com 13 números.

  1. Encontre 10 clusters em X_small com k-means.
  2. Reconstrua os 64 pixels de cada centro.
  3. Desenhe uma galeria de 2 por 5, começando pelo maior cluster: cada centro como uma imagem de 8 por 8 em gray_r, com o tamanho no título, como 120 scans. Organize o layout e exiba.

Com 5 clusters, ficaria assim:

Cinco centros de dígitos borrados em uma linha, intitulados 531, 367, 363, 359 e 177 scans

O seu tem dez. O Coddy descreve cada gráfico. Quais dígitos o k-means encontrou por conta própria?

Experimente você mesmo

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.decomposition import PCA
from sklearn.cluster import KMeans

# De Observe os Dígitos: 1,797 imagens de 64 pixels, intensidade da tinta de 0 a 16
digits = load_digits()
X = digits.data
y = digits.target

# De Reduza com PCA: 80% da variância em 13 números por imagem
pca = PCA(n_components=0.8)
X_small = pca.fit_transform(X)

# Escreva seu código abaixo
quiz iconTeste seus conhecimentos

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

Pratique por conta própria: Compilador de Python online