Derivación de PCA Utilizando Álgebra Lineal
PCA busca un nuevo conjunto de ejes, llamados componentes principales, de modo que los datos proyectados tengan varianza máxima. El primer componente principal, denotado como w1, se elige para maximizar la varianza de los datos proyectados:
Var(Xw1)Sujeto a la restricción de que ∥w1∥=1. La solución a este problema de maximización es el vector propio de la matriz de covarianza correspondiente al mayor valor propio.
El problema de optimización es:
wmax wTΣwsubject to∥w∥=1La solución es cualquier vector w que satisface Σw=λw, donde λ es el valor propio correspondiente. En otras palabras, w es un vector propio de la matriz de covarianza Σ asociado con el valor propio λ.
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)
Este componente principal es la dirección a lo largo de la cual los datos presentan la mayor varianza. Proyectar los datos sobre esta dirección proporciona la representación unidimensional más informativa del conjunto de datos original.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
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
Derivación de PCA Utilizando Álgebra Lineal
Desliza para mostrar el menú
PCA busca un nuevo conjunto de ejes, llamados componentes principales, de modo que los datos proyectados tengan varianza máxima. El primer componente principal, denotado como w1, se elige para maximizar la varianza de los datos proyectados:
Var(Xw1)Sujeto a la restricción de que ∥w1∥=1. La solución a este problema de maximización es el vector propio de la matriz de covarianza correspondiente al mayor valor propio.
El problema de optimización es:
wmax wTΣwsubject to∥w∥=1La solución es cualquier vector w que satisface Σw=λw, donde λ es el valor propio correspondiente. En otras palabras, w es un vector propio de la matriz de covarianza Σ asociado con el valor propio λ.
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)
Este componente principal es la dirección a lo largo de la cual los datos presentan la mayor varianza. Proyectar los datos sobre esta dirección proporciona la representación unidimensional más informativa del conjunto de datos original.
¡Gracias por tus comentarios!