CMD + K

Kapittel 9Begreper & formler · Dimensjonsreduksjon
Referanseside · Kapittel 9

Begreper & referanser

Alle nøkkelbegrepene, formlene og referansene fra Dimensjonsreduksjon, samlet på én side. Bruk denne som oppslag når du leser, øver flashcards eller tar quiz.

Øv med flashcards16 kort fra dette kapittelet

Begreper

Sentrale begreper fra kapittelet med korte definisjoner.

01Dimensjonalitetens forbannelse

Samlebetegnelse for problemer som oppstår når datarommet blir svært glissent etter hvert som antall dimensjoner øker.

02Dimensjonsreduksjon

Å representere data med færre variable samtidig som valgt struktur bevares best mulig.

03PCA

En lineær metode som finner ortogonale retninger med størst mulig varians i sentrerte data.

04Hovedkomponent

En retning i inputrommet som PCA bruker som ny akse.

05Egenvektor

En retning som bare skaleres, ikke roteres, når en lineærtransformasjon anvendes.

06Forklart varians

Mengden eller andelen av datasettets totale varians som fanges av en hovedkomponent.

07t-SNE

En ikke-lineær visualiseringsmetode som prøver å bevare lokale naboskap i en lavdimensjonal projeksjon.

08Embedding

En lavdimensjonal representasjon der observasjoner uttrykkes med nye koordinater.

Formler

Hver formel: hva den heter, hvordan den ser ut, og hva symbolene betyr.

sentrering

Sentrering

PCA starter med å trekke middelverdien fra hver observasjon.

x_iobservasjon i
featurevis middelverdi
x_i^csentrert observasjon
kovariansmatrise

Kovariansmatrise

Kovariansmatrisen beskriver varians og samvariasjon mellom featureaksene.

X_csentrert datamatrise
nantall observasjoner
Sutvalgets kovariansmatrise
egenvektorligning

Egenvektorligning

PCA-retningene er egenvektorer til kovariansmatrisen, sortert etter egenverdiene.

Skovariansmatrise
v_jegenvektor j
λ_jvariansen langs v_j
pca-projeksjon

PCA-projeksjon

Kolonnene i er de viktigste hovedkomponentene som dataene projiseres på.

X_csentrert datamatrise
W_kmatrise med de k viktigste hovedkomponentene
Zprojiserte koordinater
forklart-variansandel

Forklart variansandel

Andelen viser hvor mye av total varians hovedkomponent forklarer.

λ_kegenverdi for komponent k
r_kandel av total varians forklart av komponent k
kl-divergens

KL-divergens

t-SNE minimerer en KL-divergens mellom nabosannsynligheter i originalrommet og projeksjonen.

P_inabosannsynlighet i originalrommet
Q_inabosannsynlighet i projeksjonen
D_KLasymmetrisk avvik mellom fordelingene

Kodesnutter

Kodesnutter fra kapittelet, vist literal.

kap9-pca-fra-bunnen

PCA med egenverdidekomponering

python
import numpy as np rng = np.random.default_rng(4172)x1 = rng.normal(size=80)x2 = 1.8 * x1 + rng.normal(0, 0.35, size=80)x3 = rng.normal(0, 0.25, size=80)X = np.column_stack([x1, x2, x3]) Xc = X - X.mean(axis=0)S = Xc.T @ Xc / (len(Xc) - 1)egenverdier, egenvektorer = np.linalg.eigh(S)rekkefolge = np.argsort(egenverdier)[::-1]egenverdier = egenverdier[rekkefolge]W = egenvektorer[:, rekkefolge]Z = Xc @ W[:, :2] print("forklart varians:", np.round(egenverdier / egenverdier.sum(), 3))print("form før/etter:", X.shape, Z.shape)

Koden følger definisjonene direkte: sentrering, kovarians, sorterte egenvektorer og projeksjon. eigh brukes fordi kovariansmatrisen er symmetrisk.

kap9-tsne-reproduserbar

t-SNE på tre syntetiske grupper

python
import numpy as npfrom sklearn.manifold import TSNE rng = np.random.default_rng(4172)sentra = np.array([    [-2, -2, 0, 0, 1, 1],    [2, 0, -2, 1, 0, 1],    [0, 2, 2, -1, 1, 0],])X = np.vstack([rng.normal(senter, 0.45, size=(30, 6)) for senter in sentra]) modell = TSNE(    n_components=2,    perplexity=20,    init="pca",    learning_rate="auto",    random_state=4172,)Z = modell.fit_transform(X)print("embedding-form:", Z.shape)print("KL-divergens:", round(modell.kl_divergence_, 4))

Fast seed gjør én kjøring reproduserbar, men koordinatenes rotasjon og avstander mellom grupper skal fortsatt ikke tolkes som absolutte størrelser.

Læringsmål

Hva du skal kunne etter å ha lest kapittelet.

  1. 01Forklare hvorfor avstander og datatetthet blir vanskeligere i høy dimensjon
  2. 02Gjennomføre sentrering, egenvektorvalg og projeksjon i en liten PCA-beregning
  3. 03Beregne forklart variansandel og velge antall komponenter med en begrunnet terskel
  4. 04Tolke PCA-retninger og loadings uten å gjøre dem til årsaksforklaringer
  5. 05Sammenligne PCA og t-SNE ut fra bevart struktur, bruk og begrensninger
  6. 06Tolke en t-SNE-embedding uten å overtolke globale avstander eller clusterstørrelser