Analysez les composantes principales de vos données
Dans ce chapitre, nous allons parler d'une méthode très utilisée pour réduire la dimension d'un jeu de données : l'analyse en composantes principales, ou ACP. On parle aussi souvent de PCA, de son nom anglais Principal Components Analysis.
Objectif : maximiser la variance
Le but d'une analyse en composantes principales est de trouver une nouvelle base orthonormée dans laquelle représenter nos données, telle que la variance des données selon ces nouveaux axes soit maximisée.
La variance des données selon l'axe orange est grande. Si on projette les points sur cet axe, ils auront tous des coordonnées différentes ; en utilisant cet axe comme unique dimension, on réduit la dimension de nos données (de 2 à 1), mais on continue à pouvoir distinguer les points les uns des autres.
Calculer les composantes principales
Supposons que nous ayons p variables : chaque observation est représentée par un vecteur dans , et nous avons n observations rassemblées dans une matrice .
Commençons par chercher une nouvelle direction, à savoir un vecteur , de norme 1, tel que la variance de nos données projetées sur cette direction soit maximale. La projection des données X sur est .
La variance de est égale à , soit, comme (les données sont centrées), .
Appelons la matrice de taille égale à . C'est la matrice de covariance des données, et une estimation de .
Nous cherchons donc tel que :
w1⊤Σw1 est maximale
||w1||=1
est, par construction, une matrice symétrique définie positive. Elle est donc diagonalisable par un changement de base orthonormé : , où est une matrice diagonale dont les valeurs diagonales sont les valeurs propres de , qui sont toutes positives.
Nous avons donc
Posons ; nous cherchons à maximiser . Comme et que Q est orthonormée, et donc . La somme est donc maximisée pour un vecteur qui a une seule entrée à 1 et les autres à 0, l'entrée à 1 étant pour la valeur maximale des , autrement dit la plus grande valeur propre de .
Par conséquent, est le vecteur propre correspondant à la plus grande valeur propre de . C'est la première composante principale de X.
La deuxième composante principale de X doit vérifier les mêmes critères que : être de norme 1 et maximiser , mais lui est orthogonale. Il s'agit donc du vecteur propre de correspondant à sa deuxième plus grande valeur propre.
Et ainsi de suite pour les autres composantes principales.
Nous pouvons donc utiliser comme nouvelles dimensions la base formée par les vecteurs propres de la matrice de covariance des données.
Comment choisir le nombre de composantes principales ?
La méthode que nous venons de décrire nous permet de construire autant de composantes principales que a de vecteurs propres, soit autant que le nombre de descripteurs p de nos données. Nous n'avons pas encore réduit la dimension de nos données.
Pour ce faire, nous allons regarder la proportion de variance expliquée par chacune des composantes principales.
La variance totale du jeu de données est donnée par la somme des termes diagonaux de la matrice de covariance (autrement dit la somme des variances de toutes les variables), soit sa trace. Or, .
La variance totale est donnée par , et celle expliquée par les k premières composantes principales, par . La proportion de variance expliquée par les k premières composantes principales est donc
Nous pouvons maintenant regarder comment cette proportion évolue en fonction du nombre de composantes, et construire ce qu'on appelle en anglais un scree plot. Ce graphique présente la proportion de variance expliquée par la k-ième composante principale, ou par les k premières composantes principales, en fonction de k.
On peut l'utiliser pour choisir :
le nombre de composantes principales qui explique un pourcentage de la variance que l'on s'est initialement fixé (par exemple, 90 %) ;
le nombre de composantes principales correspondant au « coude » du graphe, à partir duquel ajouter une nouvelle composante principale ne fait pas grande différence.
Une autre possibilité consiste à utiliser seulement deux ou trois composantes pour visualiser les données.
Résumé
Les composantes principales forment une base orthonormée, et sont construites pour que les données aient une variance maximale selon ces nouveaux axes.
Les composantes principales sont en fait les vecteurs propres de la matrice de covariance des données, classés par ordre décroissant de valeur propre correspondante.
Pour choisir le nombre de composantes à utiliser, on regarde la proportion de la variance totale expliquée par k composantes.