Un tableau de données n'est pas une matrice carrée : il n'a ni déterminant ni inverse. Pourtant, deux opérations le rendent maniable. La transposée fait passer des individus aux variables et ramène une analyse géante à une petite matrice. L'inverse de la matrice des corrélations, elle, révèle les liens directs entre variables, mesure les distances et stabilise les régressions. Cinq planches pour voir ces deux outils au travail dans une analyse en composantes principales (ACP).
Notons Z le tableau centré-réduit : n lignes (les individus), p colonnes (les variables). Deux produits carrés en sortent :
| Produit | Taille | Ce qu'il contient | Rôle dans l'ACP |
|---|---|---|---|
| R = ZᵀZ / n | p × p | les corrélations entre variables | ses vecteurs propres sont les axes principaux |
| ZZᵀ / n | n × n | les ressemblances entre individus | mêmes valeurs propres non nulles que R |
| R⁻¹ | p × p | les liens directs entre variables | VIF, corrélations partielles, distance de Mahalanobis |
La transposée échange les rôles des lignes et des colonnes. L'inverse, quand il existe, se lit entièrement sur l'ACP : R⁻¹ = Σ (1/λₖ) uₖuₖᵀ. Les axes de petite variance y pèsent donc le plus lourd.
Comment passer des coordonnées des élèves à celles des matières, et retrouver une note sur le graphique ?
Si uₖ est un vecteur propre de R, de valeur propre λₖ, les coordonnées des élèves sur l'axe k sont Fₖ = Zuₖ. En multipliant par Zᵀ, on retombe sur les matières : ZᵀFₖ = nλₖuₖ. Ce sont les formules de transition. Elles disent qu'un élève est du côté des matières où il a de bonnes notes, et qu'une matière est du côté des élèves qui y réussissent. Conséquence pratique, le biplot (Gabriel, 1971) : en superposant les deux nuages, la note centrée-réduite zij se lit comme le produit scalaire du point de l'élève i par la flèche de la matière j.
Quand il y a beaucoup plus de variables que d'individus, faut-il vraiment diagonaliser une matrice p × p ?
Chaque visage est une image de 20 × 20 = 400 pixels, donc un point de ℝ⁴⁰⁰. L'ACP des 12 visages demanderait de diagonaliser ZᵀZ, de taille 400 × 400. Mais elle n'a que 11 valeurs propres non nulles (12 images centrées), les mêmes que celles de la petite matrice ZZᵀ, de taille 12 × 12. On diagonalise donc la petite, puis on remonte : uₖ = Zᵀvₖ / √λₖ. C'est l'idée des visages propres de Turk et Pentland (1991), à l'origine de la reconnaissance faciale par ACP. Les visages ici sont dessinés par la page, avec des paramètres tirés au hasard.
Cinq variables sont toutes corrélées entre elles. Lesquelles sont liées directement ?
Les données (300 observations simulées) suivent un schéma caché : X₂ dépend de X₁, X₃ et X₅ dépendent de X₂, X₄ dépend de X₃. Les corrélations ordinaires sont partout non nulles, car les influences se propagent le long des chaînes. L'inverse R⁻¹ fait le tri :
Un point peut être banal pour chaque variable prise seule et pourtant très atypique pour les deux ensemble. Comment le mesurer ?
La distance usuelle ignore la forme du nuage. Mahalanobis (1936) propose d²(x) = (x − m)ᵀ Σ⁻¹ (x − m), où Σ est la matrice de covariance. Par l'ACP, Σ⁻¹ = Σ (1/λₖ) uₖuₖᵀ, donc d² = Σ sₖ²/λₖ, où sₖ est la coordonnée du point sur l'axe k : chaque écart est mesuré en unités de l'écart type de son axe. Un pas dans la direction étroite du nuage coûte beaucoup plus cher qu'un pas dans la direction large.
Si une valeur propre λₖ est minuscule ou nulle, le terme 1/λₖ explose. Trois façons de s'en sortir, toutes lues dans la base de l'ACP.
La régression des moindres carrés demande (ZᵀZ)⁻¹. Quand les variables sont presque colinéaires, les coefficients deviennent énormes et instables. La régression ridge (Hoerl et Kennard, 1970) remplace (ZᵀZ)⁻¹ par (ZᵀZ + kI)⁻¹. Dans la base de l'ACP, cela revient à multiplier la contribution de l'axe j par le facteur λⱼ/(λⱼ + k) : les petits axes, les plus bruités, sont écrasés en premier.
Avec 6 observations et 10 variables, ZᵀZ (10 × 10) est de rang 6 au plus : elle n'a pas d'inverse, et le système Zβ = y a une infinité de solutions exactes. Le pseudo-inverse de Moore-Penrose choisit celle de plus petite norme : β⁺ = Zᵀ(ZZᵀ)⁻¹y. On n'inverse que la petite matrice 6 × 6, l'astuce de la transposée encore une fois. Ajouter à β⁺ un vecteur du noyau de Z ne change pas l'ajustement, mais allonge toujours β.
Six notes du tableau des élèves ont disparu. Plutôt que de les remplacer par la moyenne de la matière, on exploite la structure du tableau. On remplit les trous par les moyennes, on fait l'ACP, on remplace les trous par la reconstruction sur deux axes, et l'on recommence jusqu'à stabilisation. C'est l'ACP itérative (algorithme de type EM), qui tire parti de ce que le tableau est presque de rang 2.
ZᵀZ et ZZᵀ ont les mêmes valeurs propres non nulles. On passe des individus aux variables par les formules de transition, et l'on diagonalise toujours la plus petite des deux matrices.
R⁻¹ = Σ (1/λₖ)uₖuₖᵀ. Sa diagonale donne les VIF, ses autres termes les corrélations partielles, et Σ⁻¹ définit la distance de Mahalanobis. Les petits axes y dominent.
Ridge amortit les petits λ, le pseudo-inverse les ignore, l'ACP itérative ne garde que les grands. Dans les trois cas, la base de l'ACP dit exactement ce que l'on fait.
Version 1. La première version de cette page construit ZᵀZ/n case par case sur les notes de neuf élèves, compare avec ZZᵀ/n, inverse la matrice de passage et montre l'effet de la colinéarité sur une régression.
Lasso et réseaux parcimonieux. Le « lasso graphique » (Friedman, Hastie et Tibshirani, 2008) estime directement un R⁻¹ creux quand les variables sont plus nombreuses que les observations.
Liens. SVD (décomposition en valeurs singulières) des matrices rectangulaires, ACP (éboulis et cercle des corrélations), formes quadratiques, espaces euclidiens, statistique (variance et covariance).