Komponenten als Muster
Teil des Abschnitts Unüberwachtes Lernen der Machine Learning-Journey von Coddy. Lektion 30 von 51.
Was hat sich PCA angesehen? Jede Komponente besteht aus 64 Gewichten, eines pro Pixel, und components_ enthält eine Zeile pro Komponente:
pca = PCA(n_components=4).fit(X)
print(pca.components_.shape)Dies gibt (4, 64) aus. Forme eine Zeile in ein 8-mal-8-Bild um, und sie wird zu einem Bild. cmap="gray_r" bedeutet umgekehrte Graustufen: große Gewichte sind dunkel, negative hell:
ax.imshow(pca.components_[0].reshape(8, 8), cmap="gray_r")Komponente 1 ist dort dunkel, wo die 4er und 6er Tinte haben, daher landen sie rechts auf der Karte. Ein Scan erzielt einen hohen Wert, wenn seine Tinte auf dunkle Pixel fällt.
Aufgabe
MittelEin Kalligrafielehrer möchte sehen, auf welche Arten Menschen eine Ziffer schreiben. Das Programm liest die Ziffer ein, und der Starter speichert die Scans in X.
- Führe PCA mit 3 Komponenten auf
Xaus. - Zeichne die Komponente
iaufaxs[i]als 8-mal-8-Bild mitcmap="gray_r"und mit Titeln vonComponent 1bisComponent 3. - Zeige das Diagramm an.
Für die Zweien zeichnet es dies. Coddy beschreibt dann deine Teilbilder:
Probier es selbst
import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.decomposition import PCA
# Jeder Scan einer Ziffer, die aus der Eingabe gelesen wird: 64 Pixel pro Zeile
d = int(input())
digits = load_digits()
X = digits.data[digits.target == d]
# Ändere die folgende Zeile nicht
fig, axs = plt.subplots(1, 3)
# Schreibe deinen Code darunter
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Unüberwachtes Lernen
1Gruppen finden
Lernen ohne LabelsÄhnlichkeit messenK-Means von HandK-Means mit scikit-learnRückblick: Fitnessstudiomitglieder4Hierarchisches Clustering
Schrittweises ZusammenführenAgglomerative ModelleDendrogrammeZusammenfassung: Hunderassen7PCA in der Praxis
64 Dimensionen sehenKomponenten als MusterKomprimieren und rekonstruierenPCA vor einem ModellRückblick: Gesichtsscanner10Projekt: Ziffern erkunden
Die Ziffern ansehenMit PCA verkleinernDie Ziffern gruppierenDie Gruppen benennenDie Ausreißer finden2k wählen
TrägheitDie Elbow-MethodeSilhouettenwerteVor dem Clustering skalierenRückblick: LieferzonenÜbe selbstständig: Online-Python-Compiler