Analyse en composantes principales
Transcription
Analyse en composantes principales
Analyse en composantes principales Alain Rakotomamonjy - Gilles Gasso . INSA Rouen -Département ASI Laboratoire LITIS Analyse en composantes principales – p. 1/18 Introduction Objectifs Soit {xi }i=1,··· ,ℓ un ensemble d’observations décrit par d attributs. Les objectifs de l’analyse en composantes principales sont : 1. la représentation graphique “optimale” des observations minimisant la déformation du nuage de points dans un sous-espace de dimension q (q < d). 2. la reduction de la dimension, ou l’approximation des observations à partir de q variables (q < d). Notations 0 1 xi,1 B x C B i,2 C C Observation : xi ∈ Rd avec xi = B B .. C . A xi,d Variable (attribut) : xj Analyse en composantes principales – p. 2/18 Les données Description Soit ℓ observations décrites par d attributs. Soit X la matrice des observations (xi ∈ Rd ) : 0 x1,1 B . . X=B . xℓ,1 x1,2 xℓ,2 • Moyenne x̄ = ... 1 x̄ ... 2 x̄ 1 0 xt1 1 x1,d B . C .. C C B C . A = .. A = x1 xℓ,d xtℓ ... d t x̄ avec x̄j = 1 ℓ t x2 ... xℓ Pℓ i=1 xi,j , j = 1, . . . , d • Variance des variables var(xj ) = 1 ℓ Pℓ i=1 (xi,j − x̄j )2 • Les observations peuvent être transformées en données centrées et réduites par transformation (soustraction de la moyenne et division par l’écart-type). Cette opération est importante si les ordres de grandeur des variables sont très différents. Analyse en composantes principales – p. 3/18 Covariance et Matrice de covariance Covariance entre variables j et k ℓ 1X (xi,j − x̄j )(xi,k − x̄k ) cov(x , x ) = ℓ j k i=1 • Relations intuitives : si la covariance est grande (en valeur absolue) alors les grandes valeurs de la variable j sont associées aux grandes valeurs de la variable k (en valeur absolue). • La matrice de covariance Σ des variables est la matrice de terme général Σj,k = cov(xj , xk ). C’est une matrice symétrique et si les observations sont centrées alors : 1 Σ = X tX ℓ Analyse en composantes principales – p. 4/18 Changement de base Rappel • Le but de l’ACP est de trouver une “meilleure base” de représentation des données obtenue par combinaison linéaire de la base originale. C’est donc tout simplement un problème de changement de base. • Soit le cas général où X et Y sont des matrices de dimensions d × ℓ et H une matrice de changement de base de taille d × d. Si Y représente les coordonnées de ℓ vecteurs dans Rd et X représentent les coordonnées de ces mêmes vecteurs dans une nouvelle base alors, on a : Y = HX P avec hi,j tel que xi = j hj,i yj . • H est la matrice de transformation linéaire qui transforme un vecteur xi en yi . Les colonnes de H forment les vecteurs de la nouvelle base. Analyse en composantes principales – p. 5/18 Analyse en Composantes Principales Objectifs et hypothèses • Soit X une matrice de ℓ données appartenant à Rd . On suppose que X est centré. L’objectif de l’Analyse en Composantes Principales est de trouver un sous-espace de dimension q ≤ d qui permet d’avoir une représentation réduite de X . Pour cela, on associe un vecteur ti ∈ Rq à une observation xi à travers une transformation linéaire définie par P ∈ Rd,q . On a donc ti = P t xi avec P = (p1 , · · · , pq ) , pi ∈ Rd On impose aussi que P t P = I . P est une matrice de changement de base où les vecteurs de la nouvelle base sont orthogonaux 2 à 2 i.e. ptj pi = 0 si i 6= j • Reconstruction de xi à partir de ti : x̂i = P ti • On construit P de sorte que la représentation réduite minimise l’erreur de représentation de X (équivalent à maximiser la variance de la représentation réduite). Analyse en composantes principales – p. 6/18 Minimisation d’erreur/maximisation variance Equivalence Soit Je (P ) l’erreur quadratique d’estimation. On a : Je (P ) = ℓ ℓ X 1X 1 kxi − x̂i k2 = (xi − P P t xi )t (xi − P P t xi ) ℓ ℓ i=1 = i=1 ℓ 1X t (xi xi − 2xti P P t xi + xti P P t P P t xi ) ℓ i=1 = ℓ ℓ ℓ ℓ X X 1X t 1X t 1 1 xi xi − xi P P t xi = xti xi − tti ti ℓ ℓ ℓ ℓ i=1 = Je (P ) = trace i=1 ℓ 1X t ℓ 1X ℓ ℓ xi xi − i=1 t i=1 trace (Σ) − trace P ΣP ! ti tti i=1 = trace i=1 ℓ 1X ℓ i=1 xi xti − ℓ 1X ℓ ! P t xi xti P i=1 pour des données xi centrées • minJe (P ) revient à maximiser par rapport à P la variance P t ΣP des points projetés. Analyse en composantes principales – p. 7/18 Axes factoriels et composantes principales Définition • Soit X la matrice des données et p un vecteur unitaire ( kpk = 1) de Rd . Soit le ℓ xt1 p1 t t xℓ p1 . vecteur de R , c1 = Xp1 = On appelle premier axe factoriel ... de X le vecteur p1 tel que la variance de Xp1 soit maximale . Le vecteur c1 est appelé première composante principale . Le k ième axe factoriel de X est le vecteur pk unitaire tel que la variance de ck = Xpk soit maximale et que pk soit orthogonal aux k − 1 premiers axes factoriels. Analyse en composantes principales – p. 8/18 Minimisation de l’erreur quadratique d’estimation Premier axe factoriel On cherche un sous espace de dimension 1 engendré par p1 avec comme contrainte pt1 p1 = 1. On a donc le problème sous contraintes suivant : ℓ ℓ 1X t 1X t min Je (p1 ) = xi xi − xi p1 pt1 xi p1 ℓ ℓ i=1 avec pt1 p1 = 1 i=1 Par l’équivalence, on peut simplifier Je (p1 ) par Je (p1 ) = −pt1 1 ℓ ℓ X ! xi xti p1 = −pt1 Σp1 i=1 et donc le lagrangien s’écrit L(p1 , λ1 ) = −pt1 Σp1 + λ1 (pt1 p1 − 1) Analyse en composantes principales – p. 9/18 Minimisation de l’EQE Optimisation et solutions Les conditions d’optimalité sont : ∇p1 L = 0 = −2Σp1 + 2λ1 p1 ∇λ1 L = 0 = pt1 p1 − 1 Ainsi on a à l’optimalité : Σp1 = λ1 p1 et pt1 Σp1 = λ1 On a donc : (1) λ1 et p1 qui sont respectivement valeur propre et vecteur propre de Σ (2) −λ1 la fonction que l’on cherche à minimiser Le premier axe factoriel p1 est donc le vecteur propre associé à la plus grande valeur propre de Σ. Analyse en composantes principales – p. 10/18 k -ième axe factoriel Lemme Le sous-espace de dimension k minimisant l’erreur quadratique d’estimation des données contient nécessairement le sous-espace de dimension k − 1. Calcul de la seconde composante principale Supposons que la première composante principale est connue, on a donc un autre problème d’optimisation dont le lagrangien est : L(p2 , λ2 , µ) = −pt2 Σp2 + λ2 (pt2 p2 − 1) + µ(pt2 p1 ) et ∇p2 L = 0 = −2Σp2 + 2λ2 p2 + µp1 Vu que Σ est symétrique, et donc pt2 Σp1 = λ2 pt2 p1 = 0, on montre que µ = 0 et donc Σp2 = λ2 p2 λ2 est la seconde plus grande valeur propre de Σ et p2 le vecteur propre associé. Analyse en composantes principales – p. 11/18 Algorithme 1. Centrer les données 2. Construire la matrice de covariance Σ 3. Décomposer cette matrice en vecteur propres,valeur propres {pi , λi } 4. Ordonner les valeurs propres par ordre décroissant 5. Le sous-espace de dimension q qui représente au mieux les données au sens de l’erreur quadratique moyenne est engendré par la matrice : P = (p1 , · · · , pq ) où {p1 , · · · , pq } sont les q vecteurs propres associés aux q plus grandes valeurs propres. 6. L’ensemble des composantes principales s’ecrit matriciellement : C = XP = (c1 , · · · , cq ) Analyse en composantes principales – p. 12/18 Propriétés des axes factoriels • Les valeurs propres de Σ sont positives car Σ est une matrice semi-definie positive • Le nombre d’axes factoriels est égal au nombre de valeurs propres non-nulles de Σ. • La variance expliquée par l’axe factoriel pk (homogène à une inertie) s’écrit Ik = ptk Σpk = ptk λk pk = λk . • la variance totale des axes factoriels est I = Pdk=1 λk et le pourcentage de variance expliquée par un sous-espace d’ordre q engendré par les q premiers axes : Pq k=1 λk · 100 Pd k=1 λk • Choix de la dimension q du sous-espace • Validation croisée • Examen graphique des valeurs propres et détection "d’un coude" • On choisit q de sorte qu’un pourcentage fixé (par exemple 95%) de la variance soit expliqué Analyse en composantes principales – p. 13/18 Propriétés de l’ACP • Les composantes principales {ci }i=1,··· ,d sont centrées et non-corrélés ie cov(ci , ck ) = 0 si i 6= k . cov(ci , ck ) = cti ck = pti X t Xpk = λk pti pk = 0 • Soit pk le k-ième axe factoriel. Soit ck = Xpk , le vecteur renfermant représentant la projection de X sur pk . Alors, la variance de la composante principale ck s’écrit : ctk ck = vkt X t Xvk = vkt λk vk = λk Analyse en composantes principales – p. 14/18 Exemples • données issues d’une distribution gaussienne. 3 2 • représentation 3D des données iris et représentation sur les 2 premières composantes principales. 1 0 −1 −2 −3 −3 −2 −1 0 1 2 3 3 2 7 6 1 5 4 0 3 −1 2 1 4.5 −2 4 8 3.5 7 3 6 2.5 5 2 4 −3 4 5 6 7 8 9 10 11 12 Analyse en composantes principales – p. 15/18 Réduction de la dimensionalité • Le principe même de l’ACP est de représenter les données dans un espace de dimension plus faible. • La nouvelle base de représentation est donnée par la matrice P . Chaque vecteur de cette base est combinaison linéaire des vecteurs de la base originale. P est une matrice unitaire ie P t P = P P t = I • la matrice C est la matrice des composantes principales qui est en fait la matrice des projections de chaque xi sur les axes factoriels. Ainsi chaque xi s’écrit dans la base des axes factoriels comme : X̂ = CP t ou x̂i = q X Ci,k pk k=1 Analyse en composantes principales – p. 16/18 Réduction de la dimensionalité • Si q = d , c’est à dire que le nouveau sous-espace de représentation est égale à l’espace original alors X̂ = X • Erreur d’approximation sur un sous-espace vectoriel de dimension q ℓ d X 1X (q) 2 Eq = ||xi − x̂i || = λi ℓ i=1 i=q+1 Analyse en composantes principales – p. 17/18 Conclusions • L’Analyse en composantes principale est un outil de visualisation des données. • et permet de faire de la reduction de la dimensionalité. Analyse en composantes principales – p. 18/18