Componenti come schemi
Fa parte della sezione Apprendimento non supervisionato del percorso Machine Learning di Coddy. Lezione 30 di 51.
Che cosa ha esaminato PCA? Ogni componente è costituita da 64 pesi, uno per pixel, e components_ contiene una riga per componente:
pca = PCA(n_components=4).fit(X)
print(pca.components_.shape)Stampa (4, 64). Rimodella una riga in 8 per 8 e diventa un'immagine. cmap="gray_r" è una scala di grigi invertita: i pesi grandi sono scuri, quelli negativi chiari:
ax.imshow(pca.components_[0].reshape(8, 8), cmap="gray_r")Il componente 1 è scuro dove i 4 e i 6 hanno inchiostro, quindi finiscono a destra sulla mappa. Una scansione ottiene un punteggio alto quando il suo inchiostro cade sui pixel scuri.
Sfida
MedioUn insegnante di calligrafia vuole vedere i modi in cui le persone scrivono una cifra. Il programma legge la cifra e il codice iniziale conserva le sue scansioni in X.
- Adatta PCA con 3 componenti su
X. - Disegna la componente
isuaxs[i]come un'immagine di 8 per 8 concmap="gray_r", con titoli daComponent 1aComponent 3. - Mostra il grafico.
Per i 2, disegna questo. Coddy descrive poi i tuoi pannelli:
Provalo tu
import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.decomposition import PCA
# Ogni scansione di una cifra, letta dall'input: 64 pixel per riga
d = int(input())
digits = load_digits()
X = digits.data[digits.target == d]
# Non modificare la riga seguente
fig, axs = plt.subplots(1, 3)
# Scrivi il tuo codice qui sotto
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Apprendimento non supervisionato
1Trovare gruppi
Apprendimento senza etichetteMisurare la similaritàK-Means a manoK-Means in scikit-learnRiepilogo: iscritti alla palestra4Clustering gerarchico
Unire passo dopo passoModelli agglomerativiDendrogrammiRiepilogo: razze canine7PCA nella pratica
Vedere 64 dimensioniComponenti come schemiComprimere e ricostruirePCA prima di un modelloRiepilogo: scanner facciale10Progetto: Esplorare le cifre
Osserva le cifreRiduci con PCARaggruppa le cifreDai un nome ai gruppiTrova gli elementi insoliti2Scelta di k
InerziaIl metodo del gomitoPunteggi silhouetteScala prima del clusteringRiepilogo: zone di consegnaEsercitati da solo: Compilatore Python online