Spiegazione dal basso verso l'alto della distanza di Mahalanobis?


127

Sto studiando il riconoscimento dei modelli e le statistiche e quasi ogni libro che apro sull'argomento mi imbatto nel concetto di distanza di Mahalanobis . I libri forniscono una sorta di spiegazioni intuitive, ma ancora non abbastanza buone per me per capire davvero cosa sta succedendo. Se qualcuno mi chiedesse "Qual è la distanza di Mahalanobis?" Potrei solo rispondere: "È questa cosa carina, che misura la distanza di qualche tipo" :)

Le definizioni di solito contengono anche autovettori ed autovalori, che ho un po 'di difficoltà a collegarmi alla distanza di Mahalanobis. Comprendo la definizione di autovettori ed autovalori, ma in che modo sono correlati alla distanza di Mahalanobis? Ha qualcosa a che fare con il cambio della base in Linear Algebra ecc.?

Ho anche letto queste precedenti domande sull'argomento:

Ho anche letto questa spiegazione .

Le risposte sono buone e belle foto, ma ancora non mi davvero farlo ... Ho un'idea ma è ancora al buio. Qualcuno può dare una spiegazione "Come lo spiegheresti a tua nonna" in modo da poter finalmente concludere tutto e non chiedermi mai più che diamine è una distanza di Mahalanobis? :) Da dove viene, cosa, perché?

AGGIORNARE:

Ecco qualcosa che aiuta a capire la formula di Mahalanobis:

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

Risposte:


188

Ecco un diagramma a dispersione di alcuni dati multivariati (in due dimensioni):

inserisci qui la descrizione dell'immagine

Cosa possiamo farne quando gli assi vengono lasciati fuori?

inserisci qui la descrizione dell'immagine

Introdurre le coordinate suggerite dai dati stessi.

L' origine sarà al centroide dei punti (il punto delle loro medie). Il primo asse di coordinate (blu nella figura successiva) si estenderà lungo la "colonna vertebrale" dei punti, che (per definizione) è qualsiasi direzione in cui la varianza è maggiore. Il secondo asse di coordinate (rosso nella figura) si estenderà perpendicolarmente al primo. (In più di due dimensioni, sarà scelto in quella direzione perpendicolare in cui la varianza è il più grande possibile, e così via.)

inserisci qui la descrizione dell'immagine

Abbiamo bisogno di una scala . La deviazione standard lungo ciascun asse farà bene a stabilire le unità lungo gli assi. Ricorda la regola 68-95-99.7: circa due terzi (68%) dei punti dovrebbero trovarsi all'interno di un'unità dell'origine (lungo l'asse); circa il 95% dovrebbe trovarsi entro due unità. Ciò semplifica il bulbo oculare delle unità corrette. Per riferimento, questa figura include il cerchio unitario in queste unità:

inserisci qui la descrizione dell'immagine

Non sembra proprio un cerchio, vero? Questo perché questa immagine è distorta (come evidenziato dalle diverse distanze tra i numeri sui due assi). Ridisegniamolo con gli assi nei loro orientamenti corretti - da sinistra a destra e dal basso verso l'alto - e con un rapporto di aspetto dell'unità in modo che un'unità in senso orizzontale sia realmente uguale a un'unità in senso verticale:

inserisci qui la descrizione dell'immagine

Misuri la distanza di Mahalanobis in questa immagine piuttosto che nell'originale.

Cos'è successo qua? Lasciamo che i dati ci dicano come costruire un sistema di coordinate per effettuare misurazioni nel grafico a dispersione. Questo è tutto. Sebbene avessimo alcune scelte da fare lungo la strada (potremmo sempre invertire uno o entrambi gli assi; e in rare situazioni le direzioni lungo le "spine" - le direzioni principali - non sono uniche), non cambiano le distanze nella trama finale.


Commenti tecnici

(Non per la nonna, che probabilmente ha iniziato a perdere interesse non appena i numeri sono riapparsi sui grafici, ma per rispondere alle restanti domande che sono state poste.)

  • I vettori unitari lungo i nuovi assi sono gli autovettori (della matrice di covarianza o del suo inverso).

  • Abbiamo notato che la distorsione dell'ellisse per formare un cerchio divide la distanza lungo ciascun autovettore per la deviazione standard: la radice quadrata della covarianza. Lasciando basamento per la funzione di covarianza, il nuovo (Mahalanobis) distanza tra due punti ed è la distanza da a diviso per la radice quadrata di . Le operazioni algebriche corrispondenti, pensando ora di in termini di rappresentazione come matrice e ed in termini di rappresentazioni come vettori, sono scritti . Questo funzionaCxyxyC(xy,xy)Cxy(xy)C1(xy)indipendentemente da quale base viene utilizzata per rappresentare vettori e matrici. In particolare, questa è la formula corretta per la distanza di Mahalanobis nelle coordinate originali.

  • Gli importi con cui gli assi vengono espansi nell'ultimo passaggio sono gli ( autovalori quadrati) degli autovalori della matrice di covarianza inversa. Equivalentemente, gli assi sono ridotti dagli autovalori (radici degli) della matrice di covarianza. Pertanto, maggiore è la dispersione, maggiore è la riduzione necessaria per convertire quell'ellisse in un cerchio.

  • Sebbene questa procedura funzioni sempre con qualsiasi set di dati, sembra così piacevole (la classica nuvola a forma di pallone da calcio) per i dati che sono approssimativamente multivariati normali. In altri casi, il punto delle medie potrebbe non essere una buona rappresentazione del centro dei dati o le "spine" (tendenze generali nei dati) non saranno identificate accuratamente usando la varianza come misura della diffusione.

  • Lo spostamento dell'origine delle coordinate, la rotazione e l'espansione degli assi formano collettivamente una trasformazione affine. A parte quello spostamento iniziale, si tratta di un cambiamento di base da quello originale (usando i vettori di unità che puntano nelle direzioni delle coordinate positive) a quello nuovo (usando una scelta di autovettori di unità).

  • Vi è una forte connessione con Principal Components Analysis (PCA) . Questo da solo fa molto per spiegare le domande "da dove proviene" e "perché" - se non sei già stato convinto dall'eleganza e dall'utilità di lasciare che i dati determinino le coordinate che usi per descriverli e misurarne differenze.

  • Per le distribuzioni Normali multivariate (dove possiamo eseguire la stessa costruzione usando le proprietà della densità di probabilità invece delle proprietà analoghe della nuvola di punti), la distanza di Mahalanobis (alla nuova origine) appare al posto della " " nell'espressione che caratterizza la densità di probabilità della distribuzione normale standard. Pertanto, nelle nuove coordinate, una distribuzione normale multivariata sembra normale normalexexp(12x2)quando proiettato su qualsiasi linea attraverso l'origine. In particolare, è normale normale in ciascuna delle nuove coordinate. Da questo punto di vista, l'unico senso sostanziale in cui le distribuzioni Normali multivariate differiscono tra loro è in termini di quante dimensioni usano. (Si noti che questo numero di dimensioni può essere, e talvolta è, inferiore al numero nominale di dimensioni.)


3
Se qualcuno dovesse essere curioso, una trasformazione affine è "è una trasformazione che conserva linee rette ... e rapporti di distanze tra punti che giacciono su una linea retta". (@whuber, non so se potresti voler aggiungere qualcosa di simile nel punto puntato.)
gung

@gung La mia menzione delle trasformazioni affine è seguita immediatamente da una loro caratterizzazione: una traduzione seguita da un cambio di base. Ho scelto questa lingua perché è la stessa usata nella domanda. (Dobbiamo prendere "il cambio di base" in modo un po 'liberale per comprendere trasformazioni lineari non invertibili: questo è un problema importante per PCA, che abbassa effettivamente alcuni degli elementi di base.)
whuber

13
@whuber, la tua spiegazione è probabilmente la migliore che abbia mai visto. In genere, quando questo è spiegato, è coperto in modo molto astratto quando hanno menzionato ellissoidi e sfere, e non riescono a mostrare cosa significano. Complimenti per aver dimostrato come la trasformazione degli assi trasforma la distribuzione dei dati in una "sfera" in modo che la distanza possa essere "vista" come multipli della sd dei dati dalla media dei dati, come è prontamente il caso di una dimensione dati. Questa visualizzazione è secondo me fondamentale e sfortunatamente è stata esclusa dalla maggior parte delle discussioni sull'argomento. Ottimo lavoro --- il tuo esplicativo

Esiste un PCA robusto? Una variazione che ci consente di eliminare punti di dati anomali osservando le dimensioni della matrice di covarianza?
EngrStudent,

@Engr Certo: qualsiasi stima attendibile della matrice di covarianza porterebbe a un solido PCA. Esistono altri metodi diretti, come indicato dai riferimenti ad essi nelle risposte alle domande su un solido PCA .
whuber

37

Mia nonna cucina. Anche il tuo. Cucinare è un modo delizioso per insegnare le statistiche.

I biscotti Habanero di zucca sono fantastici! Pensa a quanto possono essere meravigliosi cannella e zenzero nelle prelibatezze natalizie, quindi renditi conto di quanto sono caldi da soli.

Gli ingredienti sono:

  • peperoni habanero (10, seminati e tritati finemente)
  • zucchero (1,5 tazze)
  • burro (1 tazza)
  • estratto di vaniglia (1 cucchiaino)
  • uova (2 medie)
  • farina (2,75 tazze)
  • bicarbonato di sodio (1 cucchiaino)
  • sale (1 cucchiaino)

Immagina che i tuoi assi delle coordinate per il tuo dominio siano i volumi degli ingredienti. Zucchero. Farina. Sale. Bicarbonato di sodio. La variazione lungo quelle direzioni, a parità di altre condizioni, non ha quasi l'impatto sulla qualità del sapore come variazione nel conteggio dei peperoni habanero. Una variazione del 10% nella farina o nel burro lo renderà meno eccezionale, ma non killer. L'aggiunta di una piccola quantità in più di habanero ti farà cadere su una scogliera di sapori dal dessert avvincente al concorso del dolore a base di testosterone.

Mahalanobis non è tanto una distanza nei "volumi degli ingredienti" quanto una distanza dal "miglior gusto". Gli ingredienti veramente "potenti", molto sensibili alle variazioni, sono quelli che devi controllare con più attenzione.

Se pensi a una distribuzione gaussiana rispetto alla distribuzione normale standard , qual è la differenza? Centro e scala in base alla tendenza centrale (media) e alla tendenza alla variazione (deviazione standard). Uno è la trasformazione delle coordinate dell'altro. Mahalanobis è quella trasformazione. Ti mostra che aspetto ha il mondo se la tua distribuzione di interessi è stata ri-lanciata come una normale norma invece che una gaussiana.


4
Le distribuzioni gaussiane sono distribuzioni normali, quindi quale distinzione stai cercando di fare nel tuo ultimo paragrafo?
whuber

1
@Whuber - standard. Intendevo standard. Pensavo di averlo detto. Dovrebbe controllare la cronologia delle modifiche. Le frasi seguenti ripetono il pensiero principale.
EngrStudent,

2
Che poi cosa si intende per " la distribuzione gaussiana"?
whuber

1
Meglio? Potrebbe essere una distribuzione gaussiana con qualsiasi media e varianza, ma la trasformazione è mappata alla normale standard sottraendo la media e il ridimensionamento dalla deviazione standard.
EngrStudent,

4
Sì, ora è più chiaro. Sono perplesso sul perché usi due termini (gaussiano e normale) per riferirti alla stessa cosa, ma va bene ora che l'hai spiegato. Sono anche un po 'confuso riguardo alla tua ultima affermazione, che sembra dire che ogni distribuzione multivariata può essere trasformata in una Normale standard (che secondo la definizione a cui ti colleghi è univariata ): penso che tu intenda che può essere fatta sembrare standard Normale in ogni componente. Indipendentemente da ciò, l'analogia con cui inizi è buona.
whuber

10

Come punto di partenza, vedrei la distanza di Mahalanobis come adatto deformazione della solita distanza euclidea tra vettori ed in . L'ulteriore pezzo di informazioni qui è che ed sono in realtà casuali vettori, vale a dire 2 diverse realizzazioni di un vettore di variabili casuali, che si trovano sullo sfondo della nostra discussione. La domanda che Mahalanobis cerca di affrontare è la seguente:d(x,y)=x,yxyRnxyX

"come posso misurare la 'diversità' tra ed , sapendo che sono realizzazione della stessa variabile casuale multivariata?" xy

Chiaramente la dissomiglianza di ogni realizzazione con se stessa dovrebbe essere uguale a 0; inoltre, la dissomiglianza dovrebbe essere una funzione simmetrica delle realizzazioni e dovrebbe riflettere l'esistenza di un processo casuale in background. Quest'ultimo aspetto viene preso in considerazione introducendo la matrice di covarianza della variabile casuale multivariata.xC

Raccogliendo le idee di cui sopra arriviamo in modo abbastanza naturale

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

Se i componenti della variabile casuale multivariata non sono correlati, ad esempio (abbiamo "normalizzato" gli per avere ), allora la distanza di Mahalanobis è la distanza euclidea tra ed . In presenza di correlazioni non banali, la matrice di correlazione (stimata) "deforma" la distanza euclidea.XiX=(X1,,Xn)Cij=δijXiVar(Xi)=1D(x,y) xyC(x,y)


9

Consideriamo il caso di due variabili. Vedendo questa immagine del normale bivariato (grazie @whuber), non puoi semplicemente affermare che AB è più grande di AC. C'è una covarianza positiva; le due variabili sono correlate tra loro.

Puoi applicare semplici misure euclidee (linee rette come AB e AC) solo se le variabili lo sono

  1. indipendente
  2. hanno varianze pari a 1.

In sostanza, la misura della distanza di Mahalanobis fa quanto segue: trasforma le variabili in variabili non correlate con varianze pari a 1, quindi calcola la semplice distanza euclidea.


1
stai suggerendo che ogni volta che vedo una correlazione in un grafico come mostrato nella tua risposta qui, dovrei solo pensare al calcolo di Mahalanobis piuttosto che alla distanza euclidea? Cosa mi direbbe quando usare quale?
sandyp,

7

Proverò a spiegarti il ​​più semplicemente possibile:

La distanza di Mahalanobis misura la distanza di un punto x da una distribuzione di dati. La distribuzione dei dati è caratterizzata da una media e dalla matrice di covarianza, quindi è ipotizzata come gaussiana multivariata.

Viene utilizzato nel riconoscimento dei pattern come misura di somiglianza tra il pattern (distribuzione dei dati dell'esempio di addestramento di una classe) e l'esempio di test. La matrice di covarianza dà la forma di come sono distribuiti i dati nello spazio delle caratteristiche.

La figura indica tre diverse classi e la linea rossa indica la stessa distanza Mahalanobis per ogni classe.  Tutti i punti che si trovano sulla linea rossa hanno la stessa distanza dalla media della classe, perché viene utilizzata la matrice di covarianza.

La figura indica tre diverse classi e la linea rossa indica la stessa distanza Mahalanobis per ogni classe. Tutti i punti che si trovano sulla linea rossa hanno la stessa distanza dalla media della classe, perché viene utilizzata la matrice di covarianza.

La caratteristica chiave è l'uso della covarianza come fattore di normalizzazione.


6

Vorrei aggiungere alcune informazioni tecniche all'ottima risposta di Whuber. Questa informazione potrebbe non interessare la nonna, ma forse suo nipote potrebbe trovarla utile. Quella che segue è una spiegazione dal basso verso l'alto dell'algebra lineare pertinente.

La distanza di Mahalanobis è definita come , dove è una stima della matrice di covarianza per alcuni dati; questo implica che è simmetrico. Se le colonne utilizzate per stimare non sono linearmente dipendenti, è definito positivo. Le matrici simmetriche sono diagonali e i loro autovalori e autovettori sono reali. Le matrici PD hanno autovalori che sono tutti positivi. Gli autovettori possono essere scelti per avere unità di lunghezza e sono ortogonali (cioè ortogonali) in modo da poter scrivere e . Inserendolo nella definizione della distanza,d(x,y)=(xy)TΣ1(xy)ΣΣΣΣ=QTDQΣ1=QD12D12QTd(x,y)=[(xy)TQ]D12D12[QT(xy)]=zTz . Chiaramente i prodotti tra parentesi quadre sono trasposti e l'effetto della moltiplicazione per sta ruotando il vettore in una base ortogonale. Infine, , che è diagonale e formato capovolgendo ogni elemento sulla diagonale, quindi prendendo la radice quadrata, sta riscalando ogni elemento di ciascun vettore. In effetti, è precisamente la deviazione standard inversa di ogni caratteristica nello spazio ortogonale (cioèQ(xy)D12D12D1una matrice di precisione e poiché i dati sono in una base ortogonale, la matrice è diagonale). L'effetto è quello di trasformare ciò che Whuber chiama un'ellisse ruotata in un cerchio "appiattendo" i suoi assi. Chiaramente viene misurato in unità quadrate, quindi prendere la radice quadrata restituisce la distanza in unità originali.zTz


5

Potrei essere un po 'in ritardo per rispondere a questa domanda. Questo documento qui è un buon inizio per comprendere la distanza di Mahalanobis. Forniscono un esempio completo con valori numerici. Quello che mi piace è la rappresentazione geometrica del problema.


4

Solo per aggiungere alle eccellenti spiegazioni sopra, la distanza di Mahalanobis sorge naturalmente nella regressione lineare (multivariata). Questa è una semplice conseguenza di alcune delle connessioni tra la distanza di Mahalanobis e la distribuzione gaussiana discusse nelle altre risposte, ma penso che valga la pena spiegarle comunque.

Supponiamo di avere alcuni dati , con e . Supponiamo che esista un vettore di parametri e una matrice di parametri tale che , dove sono iid -dimensionale vettori casuali gaussiani con media e covarianza (e sono indipendenti dal ). Quindi dato è gaussiano con media(x1,y1),,(xN,yN)xiRnyiRmβ0Rmβ1Rm×nyi=β0+β1xi+ϵiϵ1,,ϵNm0Cxiyixiβ0+β1xi e covarianza .C

Ne consegue che la probabilità logaritmica negativa di dato (in funzione di ) è data da Stiamo prendendo la covarianza come costante, quindi dove è la distanza di Mahalanobis trayixiβ=(β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 .

Per indipendenza, la probabilità di data è dato dalla somma Pertanto, dove il fattore non influenza 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

In sintesi, i coefficienti che minimizzano la probabilità logaritmica negativa (cioè massimizzano la verosimiglianza) dei dati osservati minimizzano anche il rischio empirico dei dati con funzione di perdita data dalla distanza di Mahalanobis.β0,β1


1
Bene, non proprio. Quel termine corrispondente a cambia un po 'le cose. E sembra che tu ti sia concentrato sull'altra dimensione: la distanza di Mahalanobis svolge in realtà un ruolo molto più importante nello spazio dimensionale attraversato dalle colonne, perché è legato alla leva. I lettori saranno probabilmente confusi da ciò, tuttavia, a causa dell'inversione dei ruoli di e nella tua notazione: è il vettore dei parametri e la matrice del design! logdetCnxβxβ
whuber

Il mio intento era che qui denotasse un singolo esempio di training con etichetta (quindi nessuna matrice di design qui); il motivo per cui è un vettore è che sto facendo una regressione multivariata (altrimenti il ​​termine noise sarebbe un gaussiano a variabile singola, non ci sarebbe una matrice di covarianza e l'esempio potrebbe sembrare troppo banale). Forse la mia notazione non è standard, poiché il mio background non è nelle statistiche. Per quanto riguarda la presenza del termine , intendevo che . (x,y)yϵlogdetCargminβ[logp(yx;β)]=argminβ(yβx)C1(yβx)
Ben CW,

È importante spiegare a cosa si riferiscono i tuoi simboli piuttosto che richiedere ai lettori di indovinare. Molto probabilmente la tua spiegazione è buona, ma senza quella spiegazione (che hai iniziato con l'ultimo commento) sospetto che la maggior parte dei lettori avrà difficoltà a capire il tuo significato.
whuber

2
Vedo il tuo punto. Ho modificato la risposta originale per incorporare alcune idee in questi commenti.
Ben CW,

2

La distanza di Mahalanobis è una distanza euclidea (distanza naturale) che tiene conto della covarianza dei dati. Dà un peso maggiore al componente rumoroso ed è quindi molto utile per verificare la somiglianza tra due set di dati.

Come puoi vedere nel tuo esempio qui quando le variabili sono correlate, la distribuzione viene spostata in una direzione. Potresti voler rimuovere questi effetti. Se si tiene conto della correlazione a distanza, è possibile rimuovere l'effetto di spostamento.


2
Credo che la distanza di Mahalanobis appesantisca effettivamente le direzioni di grande covarianza, piuttosto che dare pesi "più grandi" lì.
whuber
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.