PCA:n Johtaminen Lineaarialgebran Avulla
PCA etsii uuden akselistoston, jota kutsutaan pääkomponenteiksi (principal components), siten että projisoidulla datalla on maksimaalinen varianssi. Ensimmäinen pääkomponentti, merkittynä w1, valitaan maksimoimaan projisoidun datan varianssi:
Var(Xw1)Ehdolla, että ∥w1∥=1. Tämän maksimointiongelman ratkaisu on kovarianssimatriisin ominaisvektori, joka vastaa suurinta ominaisarvoa.
Optimointiongelma on:
wmax wTΣwsubject to∥w∥=1Ratkaisu on mikä tahansa vektori w, joka toteuttaa ehdon Σw=λw, missä λ on vastaava ominaisarvo. Toisin sanoen, w on kovarianssimatriisin Σ ominaisvektori, joka liittyy ominaisarvoon λ.
12345678910111213import numpy as np # Assume cov_matrix from earlier X = np.array([[2.5, 2.4], [0.5, 0.7], [2.2, 2.9]]) X_centered = X - np.mean(X, axis=0) cov_matrix = (X_centered.T @ X_centered) / X_centered.shape[0] # Find the principal component (eigenvector with largest eigenvalue) values, vectors = np.linalg.eig(cov_matrix) principal_component = vectors[:, np.argmax(values)] print("First principal component:", principal_component)
Tämä pääkomponentti on suunta, jossa datalla on suurin varianssi. Datan projisointi tähän suuntaan antaa informatiivisimman yksiulotteisen esityksen alkuperäisestä aineistosta.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 8.33
PCA:n Johtaminen Lineaarialgebran Avulla
Pyyhkäise näyttääksesi valikon
PCA etsii uuden akselistoston, jota kutsutaan pääkomponenteiksi (principal components), siten että projisoidulla datalla on maksimaalinen varianssi. Ensimmäinen pääkomponentti, merkittynä w1, valitaan maksimoimaan projisoidun datan varianssi:
Var(Xw1)Ehdolla, että ∥w1∥=1. Tämän maksimointiongelman ratkaisu on kovarianssimatriisin ominaisvektori, joka vastaa suurinta ominaisarvoa.
Optimointiongelma on:
wmax wTΣwsubject to∥w∥=1Ratkaisu on mikä tahansa vektori w, joka toteuttaa ehdon Σw=λw, missä λ on vastaava ominaisarvo. Toisin sanoen, w on kovarianssimatriisin Σ ominaisvektori, joka liittyy ominaisarvoon λ.
12345678910111213import numpy as np # Assume cov_matrix from earlier X = np.array([[2.5, 2.4], [0.5, 0.7], [2.2, 2.9]]) X_centered = X - np.mean(X, axis=0) cov_matrix = (X_centered.T @ X_centered) / X_centered.shape[0] # Find the principal component (eigenvector with largest eigenvalue) values, vectors = np.linalg.eig(cov_matrix) principal_component = vectors[:, np.argmax(values)] print("First principal component:", principal_component)
Tämä pääkomponentti on suunta, jossa datalla on suurin varianssi. Datan projisointi tähän suuntaan antaa informatiivisimman yksiulotteisen esityksen alkuperäisestä aineistosta.
Kiitos palautteestasi!