Explication de bas en haut de la distance de Mahalanobis?

127

J'étudie la reconnaissance des formes et les statistiques et presque tous les livres que j'ouvre sur le sujet me heurtent au concept de distance de Mahalanobis . Les livres donnent en quelque sorte des explications intuitives, mais elles ne sont toujours pas suffisantes pour que je puisse réellement comprendre ce qui se passe. Si quelqu'un me demandait "Quelle est la distance de Mahalanobis?" Je ne pouvais que répondre: "C'est cette bonne chose, qui mesure la distance d'une sorte" :)

Les définitions contiennent aussi généralement des vecteurs propres et des valeurs propres, ce que j'ai un peu de difficulté à établir avec la distance de Mahalanobis. Je comprends la définition des vecteurs propres et des valeurs propres, mais comment sont-ils liés à la distance de Mahalanobis? Cela a-t-il quelque chose à voir avec le changement de base en algèbre linéaire, etc.?

J'ai aussi lu ces anciennes questions sur le sujet:

J'ai aussi lu cette explication .

Les réponses sont bonnes et belles images, mais je ne vraiment l' obtenir ... J'ai une idée mais il est encore dans l'obscurité. Quelqu'un peut-il donner une explication «Comment expliqueriez-vous cela à votre grand-mère? :) D'où vient-il, quoi, pourquoi?

MISE À JOUR:

Voici quelque chose qui aide à comprendre la formule de Mahalanobis:

https://math.stackexchange.com/questions/428064/distance-of-a-test-point-de-le-center-of-an-ellipsoid

jjepsuomi
la source

Réponses:

188

Voici un diagramme de dispersion de certaines données multivariées (en deux dimensions):

entrez la description de l'image ici

Que pouvons-nous en faire lorsque les axes sont laissés de côté?

entrez la description de l'image ici

Introduisez les coordonnées suggérées par les données elles-mêmes.

L' origine sera au centroïde des points (le point de leurs moyennes). Le premier axe de coordonnées (bleu dans la figure suivante) s'étend le long de "l'épine" des points, ce qui (par définition) correspond à toute direction dans laquelle la variance est la plus grande. Le deuxième axe de coordonnées (rouge sur la figure) s’étend perpendiculairement au premier. (Dans plus de deux dimensions, il sera choisi dans la direction perpendiculaire dans laquelle la variance est la plus grande possible, etc.).

entrez la description de l'image ici

Nous avons besoin d'une balance . La déviation standard le long de chaque axe sera utile pour établir les unités le long des axes. Rappelez-vous la règle 68-95-99.7: environ deux tiers (68%) des points doivent être dans une unité de l'origine (le long de l'axe); environ 95% devraient être dans les deux unités. Cela facilite l'observation des bonnes unités. Pour référence, cette figure inclut le cercle d’unités dans ces unités:

entrez la description de l'image ici

Cela ne ressemble pas vraiment à un cercle, n'est-ce pas? En effet, cette image est déformée (comme en témoignent les différents espacements entre les nombres sur les deux axes). Redessinons-le avec les axes dans leur orientation correcte - de gauche à droite et de bas en haut - et avec un rapport hauteur / largeur d'unité tel qu'une unité horizontale égale réellement une unité verticale:

entrez la description de l'image ici

Vous mesurez la distance de Mahalanobis dans cette image plutôt que dans l'original.

Que s'est-il passé ici? Nous laissons les données nous indiquer comment construire un système de coordonnées pour effectuer des mesures dans le diagramme de dispersion. C'est tout ce que c'est. Bien que nous ayons eu quelques choix à faire en cours de route (nous pouvions toujours inverser l’un ou les deux axes; et dans de rares cas, les directions le long des "épines" - les directions principales - ne sont pas uniques), elles ne modifient pas les distances. dans le complot final.


Commentaires techniques

(Pas pour la grand-mère, qui a probablement commencé à perdre tout intérêt dès que les chiffres ont réapparu sur les parcelles, mais pour répondre aux questions restantes qui ont été posées.)

  • Les vecteurs unitaires situés le long des nouveaux axes sont les vecteurs propres (de la matrice de covariance ou de son inverse).

  • Nous avons remarqué que le fait de ne pas déformer l’ellipse pour faire un cercle divise la distance le long de chaque vecteur propre par l’écart type: la racine carrée de la covariance. Si à la fonction de covariance, la nouvelle distance (Mahalanobis) entre deux points et est la distance de à divisée par la racine carrée de . Les opérations algébriques correspondantes, pensant maintenant à en termes de représentation en tant que matrice et à et en termes de représentations en tant que vecteurs, s’écrit . Cela marchex y x y C ( x - y , x - y ) C x y CxyxyC(xy,xy)Cxy(xy)C1(xy)quelle que soit la base utilisée pour représenter les vecteurs et les matrices. En particulier, c'est la formule correcte pour la distance de Mahalanobis dans les coordonnées d'origine.

  • Les quantités par lesquelles les axes sont développés dans la dernière étape sont les (racines carrées des) valeurs propres de la matrice de covariance inverse. De manière équivalente, les axes sont réduits par les (racines des) valeurs propres de la matrice de covariance. Ainsi, plus la dispersion est importante, plus la contraction nécessaire pour convertir cette ellipse en cercle est grande.

  • Bien que cette procédure fonctionne toujours avec n'importe quel jeu de données, elle a l'air sympa (le nuage classique en forme de football) pour des données approximativement normales à plusieurs variables. Dans d'autres cas, le point des moyennes peut ne pas être une bonne représentation du centre des données ou les "épines" (tendances générales dans les données) ne seront pas identifiées avec précision en utilisant la variance comme mesure de propagation.

  • Le décalage de l'origine des coordonnées, la rotation et l'expansion des axes forment collectivement une transformation affine. En dehors de ce décalage initial, il s'agit d'un changement de base par rapport à celui d'origine (utilisant des vecteurs unitaires pointant dans les directions des coordonnées positives) par le nouveau (utilisant un choix de vecteurs propres d'unité).

  • Il existe un lien étroit avec l’ analyse en composantes principales (ACP) . Cela seul explique en grande partie les questions "D'où vient-il" et "Pourquoi" - si vous n'êtes pas déjà convaincu par l'élégance et l'utilité de laisser les données déterminer les coordonnées que vous utilisez pour les décrire et les mesurer différences.

  • Pour les distributions normales multivariées (où nous pouvons effectuer la même construction en utilisant les propriétés de la densité de probabilité au lieu des propriétés analogues du nuage de points), la distance de Mahalanobis (à la nouvelle origine) apparaît à la place du " " dans l'expression qui caractérise la densité de probabilité de la distribution normale standard. Ainsi, dans les nouvelles coordonnées, une distribution multivariée de Normal a l’affichage standard de Normalexp ( - 1xexp(12x2)lorsqu'il est projeté sur une ligne quelconque passant par l'origine. En particulier, il est normal standard dans chacune des nouvelles coordonnées. De ce point de vue, le seul sens important dans lequel les distributions multivariées de Normal diffèrent entre elles est le nombre de dimensions qu’elles utilisent. (Notez que ce nombre de dimensions peut être et est parfois inférieur au nombre nominal de dimensions.)

whuber
la source
3
Si quelqu'un est curieux, une transformation affine est "est une transformation qui préserve les lignes droites ... et les rapports de distances entre les points situés en ligne droite". (@whuber, je ne sais pas si vous voudrez peut-être ajouter quelque chose comme ceci dans la liste à puces.)
gung
@gung Ma mention des transformations affines est immédiatement suivie d'une caractérisation: traduction suivie d'un changement de base. J'ai choisi cette langue parce que c'est la même chose que dans la question. (Nous devons prendre le "changement de base" de façon un peu libérale pour englober les transformations linéaires non inversibles: c'est une question importante pour PCA, qui supprime effectivement certains des éléments de base.)
whuber
13
@ Whuber, votre explication est probablement la meilleure que j'ai jamais vue. Typiquement, lorsque ceci est expliqué, cela est couvert de manière très abstraite quand ils mentionnent des ellipsoïdes et des sphères, et ils ne montrent pas ce qu’ils signifient. Félicitations à vous pour avoir montré comment la transformation de l’axe transforme la distribution des données en une "sphère" de sorte que la distance puisse être "vue" comme une multiplication de la valeur sd des données à partir de la moyenne des données, comme c’est le cas pour une dimension Les données. À mon avis, cette visualisation est essentielle et est malheureusement laissée de côté dans la plupart des discussions sur le sujet. Bon travail --- vos explications
Existe-t-il une ACP robuste? Une variante qui nous permet d’éliminer les points de données aberrants lorsque nous examinons la taille de la matrice de covariance?
EngrStudent
@Engr Bien sûr: toute estimation robuste de la matrice de covariance conduirait à une ACP robuste. Il existe d’autres méthodes directes, comme indiqué par des références à celles-ci dans les réponses aux questions relatives à une ACP robuste .
whuber
37

Ma grand-mère cuisine. Le vôtre pourrait aussi. La cuisine est un moyen délicieux d’enseigner les statistiques.

Citrouille Habanero cookies sont géniaux! Pensez aux merveilles de la cannelle et du gingembre dans les friandises de Noël, puis réalisez à quel point elles sont chaudes.

Les ingrédients sont:

  • poivrons habanero (10, épépinés et hachés finement)
  • sucre (1,5 tasse)
  • beurre (1 tasse)
  • extrait de vanille (1 c. à thé)
  • oeufs (2 moyens)
  • farine (2,75 tasses)
  • bicarbonate de soude (1 c. à thé)
  • sel (1 c. à thé)

Imaginez que vos axes de coordonnées pour votre domaine soient les volumes d'ingrédients. Sucre. Farine. Sel. Bicarbonate de soude. Les variations dans ces directions, toutes choses étant égales par ailleurs, n’ont pratiquement pas d’impact sur la qualité de la saveur en tant que variation du nombre de piments habanero. Un changement de 10% dans la farine ou le beurre le rendra moins bon, mais pas mortel. En ajoutant juste une petite quantité supplémentaire de habanero, vous tomberez sur une falaise de saveurs allant du dessert addictif au concours de douleur à base de testostérone.

Mahalanobis n'est pas aussi loin en termes de "volume d'ingrédients" que de "meilleur goût". Les ingrédients vraiment "puissants", ceux qui sont très sensibles aux variations, sont ceux que vous devez contrôler avec le plus grand soin.

Si vous pensez à une distribution gaussienne par rapport à la distribution standard normale , quelle est la différence? Centre et échelle basés sur la tendance centrale (moyenne) et la tendance à la variation (écart type). L'un est la transformation de coordonnées de l'autre. Mahalanobis est cette transformation. Cela vous montre à quoi le monde ressemble si votre distribution d'intérêts était redéfinie comme une norme normale au lieu d'une gaussienne.

Étudiant
la source
4
Les distributions gaussiennes sont des distributions normales. Quelle distinction essayez-vous de faire dans votre dernier paragraphe?
whuber
1
@Whuber - standard. Je voulais dire standard. Je pensais l'avoir dit. Devrait vérifier l'historique d'édition. Les phrases suivantes répètent la pensée principale.
EngrStudent
2
Que puis voulez - vous dire par « la distribution gaussienne »?
whuber
1
Mieux? Il pourrait s'agir d'une distribution gaussienne avec n'importe quelle moyenne et variance, mais la transformation correspond à la normale standard en soustrayant la moyenne et en la mettant à l'échelle par l'écart-type.
EngrStudent
4
Oui, maintenant c'est plus clair. Je me demande bien pourquoi vous utilisez deux termes (gaussien et normal) pour désigner la même chose, cependant, mais c'est OK maintenant que vous l'avez expliqué. Je suis aussi un peu confus au sujet de votre dernière affirmation, qui semble indiquer que chaque distribution multivariée peut être transformée en une norme standard (qui, selon la définition à laquelle vous vous associez, est univariée ): Normal dans chaque composant. Quoi qu'il en soit, l'analogie avec laquelle vous commencez est agréable.
whuber
10

d(x,y)=x,yxyRnxyX

xy

xC

En rassemblant les idées ci-dessus, nous arrivons tout naturellement à

D(x,y)=(xy)C1(xy)

XiX=(X1,,Xn)Cij=δijXiVar(Xi)=1D(x,y) xyC(x,y)

Avitus
la source
9

Considérons le cas des deux variables. En voyant cette image normale bivariée (merci @whuber), vous ne pouvez pas simplement prétendre que AB est plus grand que AC. Il y a une covariance positive; les deux variables sont liées l'une à l'autre.

Vous pouvez appliquer des mesures euclidiennes simples (lignes droites comme AB et AC) uniquement si les variables sont

  1. indépendant
  2. avoir des variances égales à 1.

La mesure de distance de Mahalanobis a essentiellement les effets suivants: elle transforme les variables en variables non corrélées avec des variances égales à 1, puis calcule la distance euclidienne simple.

den2042
la source
1
Dites-vous que chaque fois que je vois une corrélation dans un graphique, comme le montre votre réponse, je ne devrais penser qu'au calcul de Mahalanobis plutôt qu'à la distance euclidienne? Qu'est-ce qui me dirait quand utiliser lequel?
sandyp
7

Je vais essayer de vous expliquer le plus simplement possible:

Mahalanobis distance mesure la distance d'un point x d'une distribution de données. La distribution des données est caractérisée par une moyenne et la matrice de covariance, elle est donc supposée être un gaussien multivarié.

Il est utilisé dans la reconnaissance de modèle en tant que mesure de similarité entre le modèle (distribution de données de l'exemple d'apprentissage d'une classe) et l'exemple de test. La matrice de covariance donne la forme de la répartition des données dans l'espace des fonctions.

La figure indique trois classes différentes et la ligne rouge indique la même distance de Mahalanobis pour chaque classe.  Tous les points situés sur la ligne rouge ont la même distance de la moyenne de la classe, car la matrice de covariance est utilisée.

La figure indique trois classes différentes et la ligne rouge indique la même distance de Mahalanobis pour chaque classe. Tous les points situés sur la ligne rouge ont la même distance de la moyenne de la classe, car la matrice de covariance est utilisée.

La caractéristique principale est l'utilisation de la covariance en tant que facteur de normalisation.

robbisg
la source
6

J'aimerais ajouter quelques informations techniques à l'excellente réponse de Whuber. Cette information pourrait ne pas intéresser grand-mère, mais peut-être que son petit-fils le trouverait utile. Ce qui suit est une explication de bas en haut de l'algèbre linéaire pertinente.

d(x,y)=(xy)TΣ1(xy)ΣΣΣΣ=QTDQΣ1=QD12D12QTd(x,y)=[(xy)TQ]D12D12[QT(xy)]=zTzQ(xy)D12D12D1zTz

Sycorax
la source
5

Je pourrais être un peu en retard pour répondre à cette question. Ce papier ici est un bon point de départ pour comprendre la distance Mahalanobis. Ils fournissent un exemple complet avec des valeurs numériques. Ce qui me plait c'est la représentation géométrique du problème présenté.

CroCo
la source
4

Pour ajouter aux excellentes explications ci-dessus, la distance de Mahalanobis apparaît naturellement dans la régression linéaire (multivariée). Ceci est une simple conséquence de certains des liens entre la distance de Mahalanobis et la distribution gaussienne discutés dans les autres réponses, mais je pense que cela vaut la peine de le préciser de toute façon.

(x1,y1),,(xN,yN)xiRnyiRmβ0Rmβ1Rm×nyi=β0+β1xi+ϵiϵ1,,ϵNm0Cxiyixiβ0+β1xiC

yixiβ=(β0,β1)

logp(yixi;β)=m2log(2πdetC)+12(yi(β0+β1xi))C1(yi(β0+βxi)).
C
argminβ[logp(yixi;β)]=argminβDC(β0+β1xi,yi),
DC(y^,y)=(yy^)C1(yy^)
y^,yRm

Par indépendance, le log-vraisemblance de donné est donné par la somme Par conséquent, où le facteur n'affecte pas l'argmin.logp(yx;β)y=(y1,,yN)x=(x1,,xN)

logp(yx;β)=i=1Nlogp(yixi;β)
argminβ[logp(yx;β)]=argminβ1Ni=1NDC(β0+β1xi,yi),
1/N

En résumé, les coefficients qui minimisent la log-vraisemblance négative (c'est-à-dire maximisent la vraisemblance) des données observées minimisent également le risque empirique des données avec fonction de perte donnée par la distance de Mahalanobis.β0,β1

Ben CW
la source
1
Pas tout à fait. Ce terme correspondant à change un peu les choses. Et vous semblez vous être concentré sur l’autre dimension: la distance de Mahalanobis joue en réalité un rôle beaucoup plus important dans l’ espace dimensionnel couvert par les colonnes, car il est lié à l’effet de levier. Les lecteurs seront probablement déconcertés par cela, cependant, en raison de l'inversion des rôles de et dans votre notation: est le vecteur de paramètre et la matrice de conception! logdetCnxβxβ
whuber
Mon intention était que désigne ici un seul exemple de formation étiqueté (donc pas de matrice de conception ici); La raison pour laquelle est un vecteur est que je fais une régression multivariée (sinon, le terme de bruit serait un gaussien à une variable, il n'y aurait pas de matrice de covariance, et l'exemple peut sembler trop trivial). Peut-être que ma notation est non standard, car mon arrière-plan n'est pas dans les statistiques. En ce qui concerne la présence du terme , je voulais dire que . y ε log det C a r g m i n p [ - log p ( y | x ; β ) ] = a r g m i n β (x,y)yϵlogdetCargminβ[logp(yx;β)]=argminβ(yβx)C1(yβx)
Ben CW
Il est important d'expliquer à quoi vos symboles se réfèrent plutôt que de demander aux lecteurs de deviner. Peut-être que votre explication est bonne, mais sans cette explication (que vous avez commencée avec ce dernier commentaire), je suppose que la plupart des lecteurs auront du mal à comprendre votre sens.
whuber
2
Je vois ce que tu veux dire. J'ai modifié la réponse originale pour incorporer certaines des idées dans ces commentaires.
Ben CW
2

La distance de Mahalanobis est une distance euclidienne (distance naturelle) qui prend en compte la covariance des données. Cela donne un poids plus important aux composants bruyants et est donc très utile pour vérifier la similarité entre deux jeux de données.

Comme vous pouvez le voir dans votre exemple ici, lorsque les variables sont corrélées, la distribution est décalée dans une direction. Vous voudrez peut-être supprimer ces effets. Si vous prenez en compte la corrélation dans votre distance, vous pouvez supprimer l'effet de décalage.

lcrmorin
la source
2
Je crois que la distance de Mahalanobis est effectivement un facteur de poids pour les grandes covariances plutôt que de donner des poids "plus gros".
whuber