Analyse en composantes principales

Un article de Wikipédia, l'encyclopédie libre.

Pour les articles homonymes, voir ACP.

L'analyse en composantes principales (ACP) est une méthode mathématique d'analyse des données qui consiste à rechercher les directions de l'espace qui représentent le mieux les corrélations entre n variables aléatoires. L'ACP est aussi connue sous le nom de transformée de Karhunen-Loève ou de transformée de Hotelling (en l'honneur d'Harold Hotelling).

Lorsqu'on veut compresser un ensemble de N variables aléatoires, les n premiers axes de l'ACP sont un meilleur choix, du point de vue de l'inertie expliquée (cf plus loin).

Sommaire

[modifier] Introduction générale

Les deux axes d'une ACP sur la photo d'un homme debout
Les deux axes d'une ACP sur la photo d'un homme debout
Les deux axes d'une ACP sur la photo d'un poisson
Les deux axes d'une ACP sur la photo d'un poisson

Lorsque l'on ne considère que deux effets, il est usuel de caractériser leurs effets conjoints via le coefficient de corrélation (son seul défaut est de ne prendre en compte que des effets conjoints linéaires, ce qui se remarque en regardant les coefficients d'une régression linéaire).

Lorsque l'on se place en dimension deux, les points disponibles (l'échantillon de points tirés suivant la loi conjointe de X1 et X2) peuvent être représentés sur un plan. Le résultat d'une ACP sur ce plan est de déterminer les deux axes qui expliquent le mieux la dispersion des points disponibles. Les figures ci-contre représentent ces deux axes si on prend comme points ceux d'une photographie.

Lorsqu'il y a plus de deux effets, par exemple trois effets X1, X2, X3, il y a trois coefficients de corrélations à prendre en compte : C(X1, X2), C(X1, X3) et C(X2, X3). La question qui a donné naissance à l'ACP est : comment avoir une intuition rapide des effets conjoints ?

En dimension plus grande que deux, une ACP va toujours déterminer les axes (si on est en dimension 256, il y aura 256 axes à déterminer) qui expliquent le mieux la dispersion du nuage des points disponibles (de la photographie de ces points). Elle va aussi les ordonner par 'inertie expliquée (dans l'image de l'homme debout à gauche, l'axe expliquant le plus d'inertie est l'axe vertical).

Si on décide de ne retenir que les deux premiers axes de l'ACP, on pourra alors projeter notre nuage de dimension 256 sur un plan, et le visualiser.

Même si l'ACP est majoritairement utilisée pour visualiser des données, il ne faut pas oublier que c'est aussi un moyen :

  • de décorréler ces données ; dans la nouvelle base, constituée des nouveaux axes, les points ont une corrélation nulle ;
  • de débruiter ces données, en considérant que les axes que l'on décide d'oublier sont des axes bruités ;
  • et même de classifier ces données en amas (clusters) corrélés.

[modifier] Échantillon

On applique usuellement une ACP sur un ensemble de N variables aléatoires X1, …, XN connues à partir d'un échantillon de K réalisations conjointes de ces variables.

Cet échantillon de ces N variables aléatoires peut être structuré dans une matrice M à K lignes et N colonnes.

M=\begin{bmatrix} X_{1,1} & \cdots & X_{N,1} \\ \vdots & \ddots & \vdots \\ X_{1,K} & \cdots & X_{N,K}\end{bmatrix}

Chaque variable aléatoire Xn = (Xn, 1, …, Xn, K)' a une moyenne \bar X_n et un écart type σXn.

[modifier] Poids

Si les réalisations (les éléments de la matrice M) sont à probabilités égales alors chaque réalisation (un élément Xi,j de la matrice) a la même importance 1 / n dans le calcul des caractéristiques de l'échantillon. On peut aussi appliquer un poids pi différent à chaque réalisation conjointes des variables (cas des échantillons redressés, des données regroupées, ...). Ces poids, qui sont des nombres positifs de somme 1 sont représentés par une matrice diagonale D de taille K:

D=\begin{bmatrix} p_{1} & & & 0 \\ & p_{2} & & \\ & & \ddots & \\ 0 & & & p_{K}\end{bmatrix}

Dans le cas le plus usuel de poids égaux, D = {1 \over K} II est la matrice identité.

[modifier] Transformations de l'échantillon

Le vecteur (\bar X_1, \cdots, \bar X_N) est le centre de gravité du nuage de points ; on le note souvent g. On a g = M'D11 désigne le vecteur de Rn dont toutes les composantes sont égales à 1.

La matrice M est généralement centrée sur le centre de gravité :

\bar M=\begin{bmatrix} X_{1,1}-\bar X_1 & \cdots & X_{N,1}-\bar X_N \\ \vdots & \ddots & \vdots \\ X_{1,K}-\bar X_1 & \cdots & X_{N,K}-\bar X_N\end{bmatrix} = M - 1g'.

Elle peut être aussi réduite :

\tilde M=\begin{bmatrix} {X_{1,1}-\bar X_1\over \sigma(X_1)} & \cdots & {X_{N,1}-\bar X_N\over \sigma(X_N)} \\ \vdots & \ddots & \vdots \\ {X_{1,K}-\bar X_1\over \sigma(X_1)} & \cdots & {X_{N,K}-\bar X_N\over \sigma(X_N)}\end{bmatrix}.

Le choix de réduire ou non le nuage de points (i.e. les K réalisations de la variable aléatoire (X1, …, XN)) est un choix de modèle :

  • si on ne réduit pas le nuage : une variable à forte variance va « tirer » tout l'effet de l'ACP à elle ;
  • si on réduit le nuage : une variable qui n'est qu'un bruit va se retrouver avec une variance apparente égale à une variable informative.

[modifier] Calcul de covariances et de corrélations

Une fois la matrice M transformée en \bar M ou \tilde M, il suffit de la multiplier par sa transposée pour obtenir:

{\rm Covariances} = 1/K \cdot {}\bar M' \cdot \bar M,\; {\rm Correlations} = 1/K \cdot {}\tilde M' \cdot \tilde M

Ces deux matrices sont carrées (de taille N), symétriques, et réelles. Elles sont donc diagonalisables dans une base orthonormée.

De façon plus générale, la matrice de variance-covariance s'écrit V = M'DM - gg' = \bar M' \cdot D \cdot \bar M. Si l'on note D1 / s la matrice diagonale des inverses des écarts-types:

D_{1/s} = \begin{bmatrix} 1/s_{1} & & 0 \\ & \ddots & \\ 0 & & 1/s_{K}\end{bmatrix}

et D_{1/s^2} la matrice diagonale des inverses des variances, alors on a:

\tilde M = \bar M \cdot D_{1/s}.

La matrice des coefficients de corrélation linéaire entre les N variables prises deux à deux, notée R, s'écrit:

R = \tilde M' \cdot D \cdot \tilde M.

[modifier] Critère d'inertie

Dans la suite de cet article, nous considèrerons que le nuage est transformé (centré et réduit si besoin est). Chaque Xn est donc remplacé par X_n-\bar X_n ou (X_n-\bar X_n)/\sigma(X_n). Nous utiliserons donc la matrice M pour noter \bar M ou \tilde M suivant le cas.

Le principe de l'ACP est de trouver un axe u, issu d'une combinaison linéaire des Xn, tel que la variance du nuage autour de cet axe soit maximale.

Pour bien comprendre, imaginons que la variance de u soit égale à la variance du nuage; on aurait alors trouvé une combinaison des Xn qui contient toute la diversité du nuage original (en tout cas toute la part de sa diversité captée par la variance).

Comme le titre de cette section l'indique, le critère couramment utilisé est la variance de l'échantillon (on veut maximiser la variance expliquée par le vecteur u). Pour les physiciens, cela a plutôt le sens de maximiser l'inertie expliquée par u (c'est-à-dire minimiser l'inertie du nuage autour de u).

[modifier] Projection

Finalement, nous cherchons le vecteur u tel que la projection du nuage sur u ait une variance maximale. La projection de l'échantillon des X sur u s'écrit :

\pi_u(M) = M \cdot u

la variance empirique de πu(M) vaut donc :

\pi_u(M)' \cdot 1/K \cdot \pi_u(M) = u'\cdot \underbrace{M'\cdot  1/K \cdot M}_C \cdot u

C est la matrice de covariance.

Comme nous avons vu plus haut que C est diagonalisable dans une base orthonormée, notons P le changement de base associé et Δ la matrice diagonale formée de son spectre :

\pi_u(M)' \cdot 1/K \cdot \pi_u(M) = u' P' \Delta P u = (Pu)' \Delta \underbrace{(Pu)}_v

Après cette réécriture, nous cherchons le vecteur unitaire v qui maximise v'Δv, où Δ = Diag(λ1, …, λN) est diagonale (rangeons les valeurs de la diagonale de Δ en ordre décroissant). On peut rapidement vérifier qu'il suffit de prendre le premier vecteur unitaire ; on a alors :

 v' \cdot \Delta \cdot v = \lambda_1

Plus formellement, on démontre ce résultat en maximisant la variance empirique des données projetées sur u sous la contrainte que u soit de norme 1 (par un Multiplicateur de Lagrange α) :

 L(u,\alpha) = u' \cdot C \cdot u - \alpha (u' u -1)

On obtient ainsi les deux résultats suivants:

  1. u est vecteur propre de C associée à la valeur propre λ1
  2. u est de norme 1

La valeur propre λ1 est la variance empirique sur le premier axe de l'ACP.

On continue la recherche du deuxième axe de projection w sur le même principe en imposant qu'il soit orthogonal à u

[modifier] Diagonalisation

La diagonalisation de la matrice de corrélation (ou de covariance si on se place dans un modèle non réduit), nous a permis d'écrire que le vecteur qui explique le plus d'inertie du nuage est le premier vecteur propre. De même le deuxième vecteur qui explique la plus grande part de l'inertie restante est le deuxième vecteur propre, etc.

Nous avons vu en outre que la variance expliquée par le k-ième vecteur propre vaut λk.

Finalement, la question de l'ACP se ramène à un problème de diagonalisation de la matrice de corrélation.

[modifier] Numériquement

Numériquement, la matrice M étant rectangulaire, il est plus économique de la décomposer en valeurs singulières, puis de recombiner la décomposition obtenue, plutôt que de diagonaliser M' M.

[modifier] Résultats théoriques

Si les sections précédentes ont travaillé sur un échantillon issu de la loi conjointe suivie par X1, …, XN, que dire de la validité de nos conclusions sur n'importe quel autre échantillon issu de la même loi ?

Plusieurs résultats théoriques permettent de répondre au moins partiellement à cette question, essentiellement en se positionnant par rapport à une distribution gaussienne comme référence.

[modifier] Applications

L'Analyse en Composantes Principales est usuellement utilisée comme outil de compression linéaire. Le principe est alors de ne retenir que les n premiers vecteurs propres issus de le diagonalisation de la matrice de corrélation (ou covariance), lorsque l'inertie du nuage projeté sur ces n vecteurs représente qn pourcents de l'inertie du nuage original, on dit qu'on a un taux de compression de 1 - qn pourcents, ou que l'on a compressé à qn pourcents. Un taux de compression usuel est de 20 %.

Les autres méthodes de compressions statistiques habituelles sont:

Il est possible d'utiliser le résultat d'une ACP pour construire une classification statistique des variables aléatoires X1, …, XN, en utilisant la distance suivante (Cn, n' est la corrélation entre Xn et Xn' ):

d(X_n,X_{n'})=\sqrt{2\,(1-C_{n,n'})}

[modifier] Voir aussi

[modifier] Références

  • Jean-Paul Benzécri ; Analyse des données. T2 (leçons sur l'analyse factorielle et la reconnaissance des formes et travaux du Laboratoire de statistique de l'Université de Paris 6. T. 2 : l'analyse des correspondances), Dunod Paris Bruxelles Montréal, 1973
  • Jean-Paul Benzécri et Al. Pratique de l'analyse des données. T1 (analyse des correspondances. Exposé élémentaire), Dunod Paris, 1984,
  • Jean-Paul Benzécri et Al. Pratique de l'analyse des données. T2 (abrégé théorique. Études de cas modèle), Dunod Paris, 1984
  • Escofier Brigitte, Pagès Jérôme ; Analyse factorielles simples et multiples. Objectifs, méthodes et interprétation, Dunod Paris, 1988
  • Lebart Ludovic, Morineau Alain, Piron Marie; Statistique exploratoire multidimensionnelle, Dunod Paris, 1995
  • Michel Volle, Analyse des données, Economica, 4e édition, 1997, ISBN 2717832122

[modifier] Liens Internet

Articles d'algèbre linéaire générale
vecteur • scalaire • combinaison linéaire • espace vectoriel
famille de vecteurs sous-espace

colinéarité • indépendance linéaire
famille libre ou liée • rang
famille génératrice • base
théorème de la base incomplète

somme • somme directe
supplémentaire
dimension • codimension
droite • plan • hyperplan

morphismes et notions relatives

application linéaire • noyau • conoyau •  lemme des noyaux
pseudo-inverse•  théorème de factorisation • théorème du rang
équation linéaire • système • élimination de Gauss-Jordan
forme linéaire • espace dual • orthogonalité • base duale
endomorphisme • valeur, vecteur, espace propres • spectre
projecteur • symétrie • diagonalisable • nilpotent

en dimension finie

trace • déterminant • polynôme caractéristique
polynôme d'endomorphisme • théorème de Cayley-Hamilton
polynôme minimal • invariants de similitude
réduction • réduction de Jordan • décomposition de Dunford

matrice
enrichissements de structure

norme • produit scalaire • forme quadratique • topologie
orientation • multiplication • crochet de Lie • différentielle

développements

théorie des matrices • théorie des représentations
analyse fonctionnelle • algèbre multilinéaire
module sur un anneau