Analyse des données

Tableaux de données et distances

Un tableau de chiffres devient un nuage de points dès qu'on regarde chaque ligne comme une position. Reste à dire ce que « proche » veut dire : c'est le rôle de la distance, et le choix de cette distance décide de tout ce que l'on verra ensuite.

Le fil de la page

Un tableau de données range des individus en lignes (ici dix villes françaises) et des variables en colonnes (quatre mesures du climat). Chaque ligne est donc une liste de nombres, c'est-à-dire un point d'un espace qui a autant de dimensions que de colonnes. Une distance est une règle qui associe à deux individus un nombre positif, nul seulement s'ils sont identiques, symétrique, et qui respecte l'inégalité triangulaire : le détour par un troisième point ne raccourcit jamais le chemin.

La page suit une progression simple : voir le nuage (planche 1), comparer plusieurs formules de distance (planche 2), découvrir pourquoi il faut presque toujours centrer et réduire (planche 3), corriger les redondances entre variables corrélées (planche 4), puis montrer, en signature, que les distances seules suffisent à redessiner une carte — et qu'en très grande dimension elles finissent par toutes se ressembler (planche 5).

Les valeurs climatiques sont des normales arrondies, indicatives : elles servent d'exemple, pas de référence météorologique.

1

Le tableau devient un nuage

Choisissez deux colonnes : chaque ville devient un point dont ces deux colonnes sont les coordonnées. Cliquez une ligne ou un point pour désigner la ville A, puis la ville B ; leur distance est le théorème de Pythagore appliqué aux écarts colonne par colonne.

Cliquez une ligne : le premier clic choisit A, le suivant B, et ainsi de suite en alternance.

Chaque point est une ligne du tableau. Croix rouge : centre de gravité G (la ligne des moyennes). Orange : écart horizontal ; violet : écart vertical ; bleu : la distance.
Écart horizontal Δx—
Écart vertical Δy—
Distance d(A,B) = √(Δx² + Δy²)—
Contrôle par Math.hypot—

L'inertie du nuage, trois fois

L'inertie mesure l'étalement du nuage : c'est la moyenne des carrés des distances au centre G. On peut aussi l'obtenir comme somme des variances des colonnes, ou par les distances entre toutes les paires de points, sans jamais calculer G.

(1/n) Σ d²(i, G)—
Var(x) + Var(y)—
(1/2n²) Σᵢ Σₖ d²(i, k)—
Écart maximal entre les trois—

Et si l'on prend les quatre colonnes ?

La formule ne change pas : on ajoute simplement un carré par colonne, d² = Δ₁² + Δ₂² + Δ₃² + Δ₄². Voici le détail pour la paire A, B choisie.

À retenir. Une ligne du tableau est un point, une colonne est un axe, et la distance euclidienne n'est que Pythagore étendu à autant de colonnes qu'on veut. Mais regardez la dernière colonne du détail : avec les unités brutes, l'ensoleillement, compté en centaines d'heures, écrase presque toujours les températures, comptées en degrés. La planche 3 y revient.
2

Plusieurs façons de mesurer « proche »

À vol d'oiseau, en suivant les rues d'un quartier quadrillé, ou en ne retenant que le plus grand écart : ce sont trois distances, toutes membres d'une même famille réglée par un exposant p. Déplacez A, B et C, et faites varier p.

dp(A,B) = ( |Δx|p + |Δy|p )1/p

Pour p = 2 on retrouve la distance euclidienne ; pour p = 1, la distance « de Manhattan » (somme des écarts, le chemin en escalier) ; quand p grandit sans limite, seul le plus grand écart compte : c'est la distance de Tchebychev, notée d∞. La courbe tracée autour de A est la « sphère » de la distance : l'ensemble des points situés à la même distance que B.

Glissez A, B et C. Bleu : la ligne droite. Orange pointillé : le chemin en escalier de Manhattan. Violet : le plus grand écart. Rouge : la sphère de rayon dp(A,B) centrée en A.
2
d₁ (Manhattan)—
d₂ (euclidienne)—
d∞ (Tchebychev)—
dp pour le p choisi—
Ordre d∞ ≤ d₂ ≤ d₁ ≤ √2·d₂—
|d₅₀ − d∞|—

L'inégalité triangulaire

dp(A,C) en direct—
dp(A,B) + dp(B,C) par le détour—
Marge du détour—
dp(A,B) en fonction de p (échelle logarithmique) : la courbe descend toujours, de d₁ en p = 1 vers d∞ (pointillé violet).
À retenir. Pour p ≥ 1 la formule est une vraie distance : le détour par C n'est jamais plus court (marge ≥ 0). En dessous de p = 1, la sphère devient une étoile creuse, et le bouton « p = 0,5 » montre un détour plus court que le trajet direct : la formule ne mérite plus le nom de distance. Plus p est grand, plus la distance est dictée par le pire écart ; plus p est petit, plus elle additionne les petits écarts.
3

Le piège des unités : centrer et réduire

Mesurer la pluie en millimètres ou en mètres ne change rien au climat, mais change tout à la distance brute. Le remède classique consiste à centrer chaque colonne (soustraire sa moyenne) puis à la réduire (diviser par son écart-type) : chaque variable s'exprime alors en « nombre d'écarts-types », sans unité.

zij = ( xij − x̄j ) / sj

La matrice des distances : la case (ligne i, colonne k) est d'autant plus foncée que les villes i et k sont éloignées. Cliquez une case pour choisir A (ligne) et B (colonne).
Voisins de A classés du plus proche au plus lointain, à gauche en distance brute, à droite en distance centrée-réduite. Chaque trait relie la même ville : les croisements sont des changements de rang.

Qui pèse dans d²(A,B) ?

d(A,B) dans le mode choisi—
Plus proche voisin de A, brut—
Plus proche voisin de A, réduit—
Part du soleil dans Σ d² (toutes paires)—
Matrice réduite : écart max entre les 9 jeux d'unités—
Inégalité triangulaire sur les 720 triplets—
À retenir. En distance brute, une variable pèse en proportion du carré de son unité : passer la pluie des millimètres aux mètres la fait disparaître, passer le soleil en minutes lui donne tout le poids, et compter le soleil en jours suffit à changer le plus proche voisin brut de Paris : Strasbourg cède la place à Toulouse. Après centrage-réduction, chaque variable apporte exactement un quart de la somme des d² sur toutes les paires, quelle que soit l'unité choisie, et la matrice ne bouge plus d'un iota. Réduire, c'est décider que toutes les colonnes comptent autant.
4

Variables corrélées : la distance de Mahalanobis

Réduire égalise les colonnes, mais ne voit pas que deux colonnes peuvent dire presque la même chose. Quand deux variables sont corrélées, le nuage forme une ellipse inclinée : s'écarter le long de l'ellipse est banal, s'en écarter en travers est exceptionnel. La distance de Mahalanobis (1936) mesure l'écart en tenant compte de cette forme.

dM(x)² = (x − m)T S−1 (x − m)

Ici m est le centre du nuage et S sa matrice de covariance. Autre lecture, équivalente : on « blanchit » le nuage par une transformation linéaire qui le rend rond (décomposition de Cholesky S = LLT, puis w = L−1(x − m)), et l'on prend la distance euclidienne ordinaire de w.

4 000 points tirés d'une loi normale à deux dimensions (700 affichés). Glissez P (bleu) et Q (violet). Orange : le cercle euclidien passant par P. Bleu : l'ellipse de Mahalanobis passant par P. Gris : niveaux dM = 1, 2, 3.
0,80
1,40
1,10
Euclidienne d(m, P)—
Euclidienne d(m, Q)—
Mahalanobis dM(P)—
Mahalanobis dM(Q)—
Points à l'intérieur de l'ellipse de P—
Théorie 1 − e−d²/2—
Forme quadratique contre blanchiment—
Après une transformation linéaire du nuage—
À retenir. Avec le bouton, P et Q sont à la même distance euclidienne du centre, mais P se trouve dans le sens de l'ellipse et Q en travers : Mahalanobis les distingue nettement. Cette distance est la bonne pour une loi normale (la part des points à l'intérieur suit exactement 1 − e−d²/2), et elle ne dépend ni des unités ni de la façon de combiner les colonnes : on peut déformer le nuage par n'importe quelle transformation linéaire inversible, elle reste identique.
5

Ce que disent les distances, et ce qu'elles taisent

Deux expériences opposées. D'abord, une matrice de distances suffit, à elle seule, à redessiner une carte : c'est le positionnement multidimensionnel. Ensuite, quand les colonnes se comptent par centaines, toutes les distances deviennent presque égales : c'est la « malédiction de la dimension ».

On ne donne à l'ordinateur que les 45 distances entre les dix villes, sans aucune coordonnée. La méthode de Torgerson (1952) transforme les carrés des distances en une matrice de produits scalaires par double centrage, B = −½·J·D²·J, puis en tire les axes principaux par diagonalisation. Les deux premiers axes donnent une carte, que l'on superpose à la vraie par une simple rotation (ajustement de Procuste). La seconde méthode, SMACOF, part de positions tirées au hasard et les corrige pas à pas pour réduire l'écart entre distances dessinées et distances données (le « stress »).

Cercles gris : positions réelles. Points bleus : la carte reconstruite à partir des distances seules, après rotation. Traits rouges : l'erreur de chaque ville.
0 %
Part de l'axe 1—
Part de l'axe 2—
Masse des valeurs propres négatives—
Erreur moyenne par ville après rotation—
Stress-1 de Torgerson—
Stress-1 de SMACOF—
Contrôle de la diagonalisation ‖Bv − λv‖—
Facteur d'échelle de l'ajustement—

On tire 150 points au hasard, uniformément dans un cube de dimension p, et l'on calcule les 11 175 distances entre eux. En dimension 2, il y a des voisins proches et des points lointains. Montez la dimension : l'histogramme des distances se resserre autour de sa moyenne, si bien que le plus proche voisin n'est guère plus proche que le plus lointain.

4
Histogramme des 11 175 distances, divisées par √(p/6). Le trait vert marque 1 : en grande dimension, tout se concentre là.
Contraste (dmax − dmin)/dmin mesuré pour onze dimensions, en échelles logarithmiques. Le point rouge est la dimension choisie.
Moyenne de d²/p—
Valeur exacte 1/60,166667
Coefficient de variation de d, × √p—
Limite √(7/20) en grande dimension0,5916
Contraste (dmax − dmin)/dmin—
Pour un point : plus proche / plus lointain—
À retenir. Les distances contiennent la géométrie : sur un plan, 45 nombres redonnent la carte à l'arrondi de la machine près, avec deux axes et rien d'autre ; sur la sphère, la courbure laisse une petite trace sous forme de valeurs propres négatives. Mais en très grande dimension, la dispersion relative des distances fond comme 1/√p : « le plus proche voisin » perd son sens. C'est pourquoi on réduit d'abord la dimension (ACP, AFC) avant de classer ou de chercher des voisins.

Repères historiques

Synthèse

Le tableau est un nuage

Lignes = points, colonnes = axes. L'inertie du nuage se lit indifféremment autour du centre de gravité, colonne par colonne ou par toutes les paires de points.

La distance est un choix

Exposant p, unités, centrage-réduction, prise en compte des corrélations : chaque décision change les voisins. Réduire égalise les colonnes ; Mahalanobis corrige en plus leurs redondances.

Les distances suffisent

Une matrice de distances contient une carte, que le double centrage retrouve. En revanche, en très grande dimension, toutes les distances se ressemblent : il faut d'abord résumer.

Pour aller plus loin

Les trois axiomes. d(x,y) ≥ 0 avec égalité si et seulement si x = y ; d(x,y) = d(y,x) ; d(x,z) ≤ d(x,y) + d(y,z). Pour p < 1, la formule dp viole le troisième : la planche 2 l'exhibe.

Pourquoi un quart exactement ? Pour une colonne réduite, Σi<k(zi − zk)² = n²·Var(z) = n², la même valeur pour chaque colonne : avec quatre colonnes, chacune pèse 25 %.

Le double centrage. Si les points ont des coordonnées centrées X, alors −½·J·D²·J = X·XT, où J = I − (1/n)·11T. Diagonaliser cette matrice donne les coordonnées à une rotation près ; des valeurs propres négatives signalent des distances qu'aucun espace euclidien ne peut réaliser exactement.

Distances pour d'autres données. Pour des tableaux de contingence, la distance du χ² (voir la page d'AFC) ; pour des variables qualitatives, des indices de dissimilarité (Jaccard, Gower) ; pour des courbes ou des répartitions, la distance de Wasserstein (page du transport optimal).

Le chiffre √(7/20). Pour deux points uniformes du cube de dimension p, d² a pour moyenne p/6 et pour variance 7p/180 ; d'où un coefficient de variation de d voisin de ½·√(7·36/180)/√p = √(7/20)/√p ≈ 0,5916/√p.