Derivação da PCA Usando Álgebra Linear
A ACP busca um novo conjunto de eixos, chamados de componentes principais, de modo que os dados projetados apresentem variância máxima. O primeiro componente principal, denotado como w1, é escolhido para maximizar a variância dos dados projetados:
Var(Xw1)Sujeito à restrição de que ∥w1∥=1. A solução para este problema de maximização é o autovetor da matriz de covariância correspondente ao maior autovalor.
O problema de otimização é:
wmax wTΣwsubject to∥w∥=1A solução é qualquer vetor w que satisfaça Σw=λw, onde λ é o autovalor correspondente. Em outras palavras, w é um autovetor da matriz de covariância Σ associado ao autovalor λ.
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 é a direção ao longo da qual os dados apresentam a maior variância. Projetar os dados nesta direção fornece a representação unidimensional mais informativa do conjunto de dados original.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
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?
Incrível!
Completion taxa melhorada para 8.33
Derivação da PCA Usando Álgebra Linear
Deslize para mostrar o menu
A ACP busca um novo conjunto de eixos, chamados de componentes principais, de modo que os dados projetados apresentem variância máxima. O primeiro componente principal, denotado como w1, é escolhido para maximizar a variância dos dados projetados:
Var(Xw1)Sujeito à restrição de que ∥w1∥=1. A solução para este problema de maximização é o autovetor da matriz de covariância correspondente ao maior autovalor.
O problema de otimização é:
wmax wTΣwsubject to∥w∥=1A solução é qualquer vetor w que satisfaça Σw=λw, onde λ é o autovalor correspondente. Em outras palavras, w é um autovetor da matriz de covariância Σ associado ao autovalor λ.
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 é a direção ao longo da qual os dados apresentam a maior variância. Projetar os dados nesta direção fornece a representação unidimensional mais informativa do conjunto de dados original.
Obrigado pelo seu feedback!