Härledning av PCA med Linjär Algebra
PCA söker ett nytt uppsättning axlar, kallade huvudkomponenter, så att den projicerade datan har maximal varians. Den första huvudkomponenten, betecknad som w1, väljs för att maximera variansen av den projicerade datan:
Var(Xw1)Under villkoret att ∥w1∥=1. Lösningen till detta optimeringsproblem är egenvektorn till kovariansmatrisen som motsvarar det största egenvärdet.
Optimeringsproblemet är:
wmax wTΣwsubject to∥w∥=1Lösningen är varje vektor w som uppfyller Σw=λw, där λ är det motsvarande egenvärdet. Med andra ord är w en egenvektor till kovariansmatrisen Σ associerad med egenvärdet λ.
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)
Denna huvudkomponent är den riktning längs vilken data har den högsta variansen. Projektion av data på denna riktning ger den mest informativa endimensionella representationen av den ursprungliga datamängden.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Can you explain why the principal component is important in PCA?
How do I interpret the values of the principal component?
What does projecting data onto the principal component mean?
Awesome!
Completion rate improved to 8.33
Härledning av PCA med Linjär Algebra
Svep för att visa menyn
PCA söker ett nytt uppsättning axlar, kallade huvudkomponenter, så att den projicerade datan har maximal varians. Den första huvudkomponenten, betecknad som w1, väljs för att maximera variansen av den projicerade datan:
Var(Xw1)Under villkoret att ∥w1∥=1. Lösningen till detta optimeringsproblem är egenvektorn till kovariansmatrisen som motsvarar det största egenvärdet.
Optimeringsproblemet är:
wmax wTΣwsubject to∥w∥=1Lösningen är varje vektor w som uppfyller Σw=λw, där λ är det motsvarande egenvärdet. Med andra ord är w en egenvektor till kovariansmatrisen Σ associerad med egenvärdet λ.
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)
Denna huvudkomponent är den riktning längs vilken data har den högsta variansen. Projektion av data på denna riktning ger den mest informativa endimensionella representationen av den ursprungliga datamängden.
Tack för dina kommentarer!