L'analyse en composantes principales (ACP ou PCA en anglais pour ), ou, selon le domaine d'application, transformation de Karhunen–Loève (KLT)http://tcts.fpms.ac.be/cours/1005-07-08/codage/codage/xcodim2.pdf ou transformation de Hotelling, est une méthode de la famille de l'analyse des données qui consiste à transformer des variables liées entre elles (dites « corrélées » en statistique) en nouvelles variables décorrélées les unes des autres. Ces nouvelles variables sont nommées « composantes principales » ou axes principaux. Elle permet de résumer l'information en réduisant le nombre de variables.
Il s'agit d'une approche à la fois géométriqueUne vidéo d’introduction à l’ACP fondée sur la géométrie est accessible ici. (les variables étant représentées dans un nouvel espace, selon des directions d'inertie maximale) et statistique (la recherche portant sur des axes indépendants expliquant au mieux la variabilité — la variance — des données). Lorsqu'on veut comprimer un ensemble de variables aléatoires, les premiers axes de l'analyse en composantes principales sont un meilleur choix, du point de vue de l'inertie ou de la variance.
L'outil mathématique est appliqué dans d'autres domaines que les statistiques et est parfois appelé décomposition orthogonale aux valeurs propres ou POD ().
Histoire thumb|Extrait de l'article de Pearson de 1901 sur la recherche de la « droite du meilleur ajustement ».
L'ACP prend sa source dans un article de Karl Pearson publié en 1901. Le père du test du χ² y prolonge ses travaux dans le domaine de la régression et des corrélations entre plusieurs variables. Pearson utilise ces corrélations non plus pour expliquer une variable à partir des autres (comme en régression), mais pour décrire et résumer l'information contenue dans ces variables.
Toutefois, c'est dans les années 1930 que l'ACP est formalisée par l'économiste et statisticien américain Harold Hotelling « », 1933, .. Il développe par la suite l'analyse canonique des corrélations, généralisation des analyses factorielles dont fait partie l'ACP.
Les champs d'application de l'ACP sont aujourd'hui multiples, allant de la biologie à la recherche économique et sociale, et plus récemment le traitement d'images et l'apprentissage automatique. L'ACP est majoritairement utilisée pour : décrire et visualiser des données ; les décorréler, la nouvelle base étant constituée d'axes qui ne sont pas corrélés entre eux ; les débruiter, en considérant que les axes que l'on décide d'oublier sont des axes bruités. effectuer une réduction de dimension des données d'entrainement en apprentissage automatique.
Sous le nom de « méthode de décomposition orthogonale aux valeurs propres », elle est également utilisée : pour réduire la taille de modèle d'éléments finis..
Quelques exemples introductifs
Premier exemple
On considère un objet en trois dimensions et on cherche à le représenter le mieux possible par projection en deux dimensions. L'ACP va alors déterminer les deux axes de projection qui expliquent le mieux la dispersion de l'objet, autrement dit l'inertie du nuage des points qui le compose. Ainsi, comme dans la figure ci-contre, la projection des points du poisson en 3D sur le plan 2D formé par ces deux axes respectera au mieux la forme du nuage de point initial. En d'autres termes, il s'agit de trouver le plan de projection sur lequel la forme du poisson sera la plus étendue et reconnaissable possible.
Second exemple
On possède des données sur les températures moyennes mensuelles de différentes villes et on cherche à résumer le climat du pays. Intuitivement, les villes les plus chaudes en janvier le sont aussi en juillet. Les variables sont donc corrélées positivement entre elles et l'ACP mettra en évidence un premier axe opposant les villes chaudes aux villes froides. Toutefois, ces variables ne sont pas parfaitement corrélées car il existe des différences entre les villes dans l'écart entre les températures hivernales et estivales. L'ACP dégagera alors un second axe opposant les villes selon l'amplitude des températures : par exemple un climat océanique ou continental.
Données
On applique généralement une ACP sur un ensemble de N variables aléatoires X1, …, XN connues à partir d'un échantillon de 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 :
Chaque variable aléatoire Xn, dont X1, n, …, XK, n sont des réalisations indépendantes, a une moyenne et un écart type σXn.
Poids Chaque réalisation conjointe des variables est associée à un poids . Ces poids, qui sont des nombres positifs dont la somme vaut 1, sont représentés par une matrice diagonale D de taille K :
Dans le cas le plus courant, les poids sont égaux et où est la matrice identité. Toutefois, on peut parfois vouloir appliquer des poids différents (cas des échantillons redressés, des données regroupées...).
Transformations de l'échantillon
Le vecteur est le centre de gravité du nuage de points ; on le note souvent g.
On a où désigne le vecteur de dont toutes les coordonnées sont égales à 1.
La matrice M est généralement centrée sur le centre de gravité : .
Elle peut être aussi réduite : .
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 l'on ne réduit pas le nuage : une variable à forte variance va « tirer » tout l'effet de l'ACP à elle ; si l'on réduit le nuage : une variable qui n'est qu'un bruit va se retrouver avec une variance apparente égale à une variable informative. Si les variables aléatoires sont dans des unités différentes, la réduction est obligatoire.
Calcul des covariances et des corrélations
Dans le cas de poids uniformes (), une fois la matrice transformée en ou , il suffit de la multiplier par sa transposée pour obtenir:
la matrice de variance-covariance des X1, …, XN si M n'est pas réduite : ; la matrice de corrélation des X1, …, XN si M est réduite : .
Ces deux matrices sont carrées (de taille N), symétriques, et réelles. Elles sont donc diagonalisables dans une base orthonormée en vertu du théorème spectral.
De façon plus générale, dans le cas de poids non uniformes, la matrice de variance-covariance s'écrit .
De plus, si l'on note la matrice diagonale des inverses des écarts-types:
alors on a: . La matrice des coefficients de corrélation linéaire entre les N variables prises deux à deux, notée R, s'écrit: .
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 ou . Nous utiliserons donc la matrice pour noter ou 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).
Un 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).
Projection
Etant donné un vecteur unitaire u, nous cherchons finalement u tel que la projection du nuage sur ait une variance maximale. La projection de l'échantillon des X sur u s'écrit :
la variance empirique de vaut donc :
où 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 :
Les valeurs de la diagonale de sont rangées en ordre décroissant. Le vecteur unitaire u qui maximise est un vecteur propre de C associé à la valeur propre ; on a alors :
La valeur propre est la variance empirique sur le premier axe de l'ACP.
Il est aussi possible de démontrer 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 ) :
On continue la recherche du deuxième axe de projection w sur le même principe en imposant qu'il soit orthogonal à u.
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.
Optimisation numérique
Numériquement, la matrice M étant rectangulaire, il peut être plus économique de la décomposer en valeurs singulières, puis de recombiner la décomposition obtenue, plutôt que de diagonaliser M M.
ACP et variables qualitatives
En ACP, il est fréquent que l’on veuille introduire des variables qualitatives supplémentaires. Par exemple, on a mesuré de nombreuses variables quantitatives sur des plantes. Pour ces plantes, on dispose aussi de variables qualitatives, par exemple l’espèce à laquelle appartient la plante. On soumet ces données à une ACP des variables quantitatives. Lors de l’analyse des résultats, il est naturel de chercher à relier les composantes principales à la variable qualitative espèce. Pour cela on produit les résultats suivants : identification, sur les plans factoriels, des différentes espèces en les représentant par exemple par des couleurs différentes ; représentation, sur les plans factoriels, des centres de gravité des plantes appartenant à une même espèce ; indication, pour chaque centre de gravité et pour chaque axe, d'une probabilité critique pour juger de la significativité de l’écart entre un centre de gravité et l’origine.
Tous ces résultats constituent ce que l’on appelle introduire une variable qualitative en supplémentaire. Cette procédure est détaillée dans , et .
Peu de logiciels offrent cette possibilité de façon « automatique ». C’est le cas de SPADhttp://www.coheris.com/produits/analytics/logiciel-data-mining/ qui historiquement, à la suite des travaux de Ludovic Lebart, a été le premier logiciel à le proposer, et de R avec le package FactoMineR..
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.
Méthodes voisines et extensions : la famille factorielle L’analyse en composantes principales est la plus connue des méthodes factorielles ; d’autres méthodes factorielles existent pour analyser d’autres types de tableau. À chaque fois, le principe général est le même :
on considère deux nuages de points, l’un associé aux lignes du tableau analysé et l’autre aux colonnes de ce tableau ; ces deux nuages sont liés par des relations de dualité : ils ont la même inertie totale ; chacun de ces nuages est projeté sur ses directions d’inertie maximum ; d’un nuage à l’autre, les directions d’inertie de même rang sont liées par des relations de dualité (ou de transition) : elles ont la même inertie et les coordonnées des projections sur l’une se déduisent des coordonnées des projections sur l’autre.
Analyse factorielle des correspondances (AFC)