Christopher Bishop écrit dans son livre Pattern Recognition and Machine Learning une preuve, que chaque composant principal consécutif maximise la variance de la projection à une dimension, après que les données ont été projetées dans l'espace orthogonal aux composants précédemment sélectionnés. D'autres montrent des preuves similaires.
Cependant, cela prouve seulement que chaque composante consécutive est la meilleure projection sur une dimension, en termes de maximisation de la variance. Pourquoi cela implique-t-il que la variance d'une projection pour dire 5 dimensions est maximisée en choisissant d'abord ces composants?
Réponses:
Ce que l'on entend par variance dans plusieurs dimensions («variance totale») est simplement une somme de variances dans chaque dimension. Mathématiquement, c'est une trace de la matrice de covariance: la trace est simplement une somme de tous les éléments diagonaux. Cette définition a diverses propriétés intéressantes, par exemple la trace est invariante sous les transformations linéaires orthogonales, ce qui signifie que si vous tournez vos axes de coordonnées, la variance totale reste la même.
Ce qui est prouvé dans le livre de Bishop (section 12.1.1), c'est que le vecteur propre principal de la matrice de covariance donne la direction de la variance maximale. Le deuxième vecteur propre donne la direction de la variance maximale sous une contrainte supplémentaire qu'il doit être orthogonal au premier vecteur propre, etc. (je crois que cela constitue l'exercice 12.1). Si l'objectif est de maximiser la variance totale dans le sous-espace 2D, alors cette procédure est une maximisation gourmande: choisissez d'abord un axe qui maximise la variance, puis un autre.
Votre question est: pourquoi cette procédure gourmande obtient-elle un maximum global?
Voici un bel argument que @whuber a suggéré dans les commentaires. Alignons d'abord le système de coordonnées avec les axes PCA. La matrice de covariance devient diagonale: . Pour simplifier, nous considérerons le même cas 2D, c'est-à-dire quel est le plan avec la variance totale maximale? Nous voulons prouver que c'est le plan donné par les deux premiers vecteurs de base (avec variance totale ).Σ=diag(λi) λ1+λ2
Considérons un plan couvert par deux vecteurs orthogonaux et . La variance totale dans ce plan estIl s'agit donc d'une combinaison linéaire de valeurs propres avec des coefficients tous positifs, ne dépassant pas (voir ci-dessous) et totalisant . Si c'est le cas, alors il est presque évident que le maximum est atteint à .u v
Il ne reste plus qu'à montrer que les coefficients ne peuvent pas dépasser . Notez que , où est le vecteur de base . Cette quantité est une longueur au carré d'une projection de sur le plan couvert par et . Par conséquent, elle doit être inférieure à la longueur au carré de qui est égale à , QED.1 u2k+v2k=(u⋅k)2+(v⋅k)2 k k k u v k |k|2=1
Voir aussi la réponse de @ cardinal à Quelle est la fonction objective de l'ACP? (il suit la même logique).
la source
Si vous avez variables aléatoires non corrélées triées par ordre décroissant de leur variance et qu'on vous a demandé de choisir d'entre elles de sorte que la variance de leur somme soit maximisée, seriez-vous d'accord que l'approche gourmande de choisir les premiers accomplirait cela?N k k
Les données projetées sur les vecteurs propres de sa matrice de covariance sont essentiellement colonnes de données non corrélées et dont la variance est égale aux valeurs propres respectives.N
Pour que l'intuition soit plus claire, nous devons relier la maximisation de la variance au calcul du vecteur propre de la matrice de covariance avec la plus grande valeur propre, et relier la projection orthogonale à la suppression des corrélations.
La deuxième relation est claire pour moi car le coefficient de corrélation entre deux vecteurs (moyenne nulle) est proportionnel à leur produit intérieur.
La relation entre la maximisation de la variance et la décomposition propre de la matrice de covariance est la suivante.
Supposons que est la matrice de données après avoir centré les colonnes. Nous devons trouver la direction de la variance maximale. Pour tout vecteur unitaire , la variance après projection le long de estD v v
qui est maximisée si est le vecteur propre de correspondant à la plus grande valeur propre.v Cov(D)
la source