Herleitung der PCA mittels linearer Algebra
PCA sucht ein neues Satz von Achsen, genannt Hauptkomponenten (principal components), sodass die projizierten Daten maximale Varianz aufweisen. Die erste Hauptkomponente, bezeichnet als w1, wird so gewählt, dass die Varianz der projizierten Daten maximiert wird:
Var(Xw1)Unter der Nebenbedingung, dass ∥w1∥=1 gilt. Die Lösung dieses Maximierungsproblems ist der Eigenvektor der Kovarianzmatrix, der zum größten Eigenwert gehört.
Das Optimierungsproblem lautet:
wmax wTΣwunter der Nebenbedingung∥w∥=1Die Lösung ist jeder Vektor w, der Σw=λw erfüllt, wobei λ der zugehörige Eigenwert ist. Mit anderen Worten: w ist ein Eigenvektor der Kovarianzmatrix Σ, der mit dem Eigenwert λ assoziiert ist.
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)
Diese Hauptkomponente ist die Richtung, entlang der die Daten die höchste Varianz aufweisen. Die Projektion der Daten auf diese Richtung liefert die informativste eindimensionale Darstellung des ursprünglichen Datensatzes.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Awesome!
Completion rate improved to 8.33
Herleitung der PCA mittels linearer Algebra
Swipe um das Menü anzuzeigen
PCA sucht ein neues Satz von Achsen, genannt Hauptkomponenten (principal components), sodass die projizierten Daten maximale Varianz aufweisen. Die erste Hauptkomponente, bezeichnet als w1, wird so gewählt, dass die Varianz der projizierten Daten maximiert wird:
Var(Xw1)Unter der Nebenbedingung, dass ∥w1∥=1 gilt. Die Lösung dieses Maximierungsproblems ist der Eigenvektor der Kovarianzmatrix, der zum größten Eigenwert gehört.
Das Optimierungsproblem lautet:
wmax wTΣwunter der Nebenbedingung∥w∥=1Die Lösung ist jeder Vektor w, der Σw=λw erfüllt, wobei λ der zugehörige Eigenwert ist. Mit anderen Worten: w ist ein Eigenvektor der Kovarianzmatrix Σ, der mit dem Eigenwert λ assoziiert ist.
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)
Diese Hauptkomponente ist die Richtung, entlang der die Daten die höchste Varianz aufweisen. Die Projektion der Daten auf diese Richtung liefert die informativste eindimensionale Darstellung des ursprünglichen Datensatzes.
Danke für Ihr Feedback!