Perché la distanza euclidea non è una buona metrica in dimensioni elevate?


241

Ho letto che "la distanza euclidea non è una buona distanza in dimensioni elevate". Immagino che questa affermazione abbia qualcosa a che fare con la maledizione della dimensionalità, ma cosa esattamente? Inoltre, che cosa sono le "alte dimensioni"? Ho applicato il clustering gerarchico usando la distanza euclidea con 100 funzioni. Fino a quante funzioni è "sicuro" utilizzare questa metrica?


5
Strettamente correlato: la distanza euclidea di solito non è buona per i dati sparsi? come sottolineato da facuq .
cardinale

5
Questo è probabilmente troppo semplice per te; Ho scritto una serie di post sul blog sull'argomento della metrica euclidea in dimensioni maggiori e su come ciò influisca sulla ricerca di spazi vettoriali per le corrispondenze più vicine. blogs.msdn.com/b/ericlippert/archive/tags/…
Eric Lippert

1
@ HorstGrünbusch vedi le risposte sotto per alcuni riferimenti. La varianza delle distanze diventa piccola rispetto alla media. Quindi ad un certo punto, ti trovi in ​​difficoltà nella scelta di soglie, pesi, ordini; e potresti anche avere problemi di precisione numerica. Ma se i tuoi dati sono scarsi, probabilmente hanno una dimensionalità intrinseca molto più bassa .
Anony-Mousse,

3
"alte dimensioni" sembra essere un termine fuorviante - alcune risposte trattano il 9-12 come "alte dimensioni", ma in altre aree l'alta dimensionalità significherebbe migliaia o milioni di dimensioni (diciamo, misurare gli angoli tra i vettori del bag-of-word dove ogni dimensione è la frequenza di una parola in un dizionario) e 100 dimensioni verrebbero chiamate basse, non alte.
Peteris,

2
Questa domanda potrebbe davvero fare con un certo contesto. Non va bene per cosa?
Szabolcs,

Risposte:


244

Un grande riassunto di risultati non intuitivi in ​​dimensioni superiori viene da " Alcune cose utili da sapere sull'apprendimento automatico " di Pedro Domingos all'Università di Washington:

Le nostre intuizioni, che provengono da un mondo tridimensionale, spesso non si applicano a quelle ad alta dimensione. Ad alte dimensioni, la maggior parte della massa di una distribuzione gaussiana multivariata non è vicina alla media, ma in un "guscio" sempre più distante attorno ad essa; e la maggior parte del volume di un'arancia ad alta dimensione è nella pelle, non nella polpa. Se un numero costante di esempi è distribuito uniformemente in un ipercubo ad alta dimensione, oltre una certa dimensionalità la maggior parte degli esempi sono più vicini a una faccia dell'ipercubo che al vicino più vicino. E se approssimiamo un'ipersfera iscrivendola in un ipercubo, in dimensioni elevate quasi tutto il volume dell'ipercubo è esterno all'ipersfera. Questa è una brutta notizia per l'apprendimento automatico, in cui forme di un tipo sono spesso approssimate da forme di un altro.

L'articolo è anche pieno di molte perle aggiuntive di saggezza per l'apprendimento automatico.

Un'altra applicazione, oltre all'apprendimento automatico, è la ricerca del vicino più vicino: data un'osservazione di interesse, trova i suoi vicini più vicini (nel senso che questi sono i punti con la distanza più piccola dal punto di query). Ma ad alte dimensioni, sorge un fenomeno curioso: il rapporto tra il punto più vicino e quello più lontano si avvicina a 1, cioè i punti diventano essenzialmente uniformemente distanti l'uno dall'altro. Questo fenomeno può essere osservato per un'ampia varietà di metriche della distanza, ma è più pronunciato per la metrica euclidea di, per esempio, la metrica della distanza di Manhattan. La premessa della ricerca del vicino più vicino è che i punti "più vicini" sono più rilevanti dei punti "più lontani", ma se tutti i punti sono sostanzialmente uniformemente distanti tra loro, la distinzione non ha senso.

Da Charu C. Aggarwal, Alexander Hinneburg, Daniel A. Keim, " Sul comportamento sorprendente delle metriche di distanza nello spazio ad alta dimensione ":

È stato discusso in [Kevin Beyer, Jonathan Goldstein, Raghu Ramakrishnan, Uri Shaft, " Quando è significativo il prossimo più vicino"? per un determinato obiettivo in uno spazio ad alta dimensione è quasi 1 per un'ampia varietà di distribuzioni di dati e funzioni di distanza. In tal caso, il problema del vicino più vicino diventa mal definito, poiché non esiste il contrasto tra le distanze a punti di dati diversi. In tali casi, anche il concetto di prossimità potrebbe non essere significativo dal punto di vista qualitativo: un problema che è ancora più fondamentale del degrado delle prestazioni degli algoritmi ad alta dimensione.

... Molte strutture e algoritmi di indicizzazione ad alta dimensione utilizzano la metrica della distanza uclidea [E] come estensione naturale del suo uso tradizionale in applicazioni spaziali bidimensionali o tridimensionali. ... In questo articolo forniamo alcuni sorprendenti risultati teorici e sperimentali nell'analisi della dipendenza della norma dal valore di . Più specificamente, mostriamo che i contrasti relativi delle distanze a un punto di query dipendono fortemente dalla metrica utilizzata. Ciò fornisce una prova considerevole che la significatività della norma peggiora più rapidamente nell'aumentare la dimensionalità per valori più alti di . Pertanto, per un dato problema con un valore (alto) fisso per la dimensionalità k L k L k k d k L 1 L 2LkkLkLkkd, può essere preferibile utilizzare valori inferiori di . Ciò significa che la metrica della distanza (metrica della distanza di Manhattan) è la più preferibile per applicazioni ad alta dimensione, seguita dalla metrica euclidea ( ). ...kL1L2

Gli autori del documento "Surprising Behaviour" propongono quindi di utilizzare norme con . Producono alcuni risultati che dimostrano che queste "norme frazionarie" mostrano la proprietà di aumentare il contrasto tra i punti più lontani e quelli più vicini. Ciò può essere utile in alcuni contesti, tuttavia esiste un avvertimento: queste "norme frazionarie" non sono metriche di distanza adeguate perché violano la disuguaglianza del triangolo. Se la disuguaglianza del triangolo è una qualità importante da avere nella tua ricerca, le metriche frazionarie non saranno tremendamente utili. k < 1Lkk<1


7
questo riferimento è fantastico
Antoine,

1
Lettura ancora una volta ... Bella ...
Richard Hardy

113

La nozione di distanza euclidea, che funziona bene nei mondi bidimensionali e tridimensionali studiati da Euclide, ha alcune proprietà in dimensioni superiori che sono contrarie alla nostra (forse solo mia ) intuizione geometrica che è anche un'estrapolazione da due e tre dimensioni.

Considera un quadratino con vertici a . Disegna quattro cerchi di raggio unitario centrati su . Questi "riempiono" il quadrato, con ogni cerchio che tocca i lati del quadrato in due punti e ogni cerchio tocca i suoi due vicini. Ad esempio, il cerchio centrato su tocca i lati del quadrato su e e i suoi cerchi vicini su e . Quindi, disegna un piccolo cerchio centrato sull'origine( ± 2 , ± 2 ) ( ± 1 , ± 1 ) ( 1 , 1 ) ( 2 , 1 ) ( 1 , 2 ) ( 1 , 0 ) ( 0 , 1 )4×4(±2,±2)(±1,±1)(1,1)(2,1)(1,2)(1,0)(0,1)r2=21(±r2/2,±r2/2)(r2,0)(2,0,0)(1,0,0)(1,1)(1,1)

4×4×4(±2,±2,±2)8(±1,±1,±1)r3=31<1(r3,0,0)(2,0,0)

n42n(±1,±1,,±1)

(1)rn=n1
(rn,0,0,,0)(1)n=4rn=1n4n>9(1)rn>2(rn,0,0,,0)4 anche se è "completamente circondato" dagli ipersferi a raggio unitario che "riempiono" l'ipercubo (nel senso di impaccarlo). La sfera centrale "rigonfia" all'esterno dell'ipercubo nello spazio ad alta dimensione. Lo trovo molto controintuitivo perché le mie traduzioni mentali della nozione di distanza euclidea a dimensioni superiori, usando l'intuizione geometrica che ho sviluppato dallo spazio 2 e 3 che conosco, non descrivono la realtà di spazio ad alta dimensione.

n9



9
@ stackoverflowuser2010: se questa risposta è completamente incomprensibile, come puoi sapere se risolve o tenta di rispondere alla domanda originale? Un approccio più costruttivo potrebbe essere quello di chiedere chiarimenti su tutti i punti che ritieni poco chiari piuttosto che respingere il tutto fuori controllo.
Scortchi

8
@ stackoverflowuser2010 Poiché questa risposta ha molte dozzine di voti, sembrerebbe che molte persone ritengano che sia ragionevolmente comprensibile e che risponda in modo accettabile alla domanda. Forse potresti tentare una critica più costruttiva - come, in particolare, pensi che questa risposta sarebbe migliorata? Cosa dovrebbe includere che non lo fa?
Glen_b,

1
@Scortchi: Forse mi aspetto troppo, ma una risposta chiara a questa domanda che potrebbe aiutare la comunità sarebbe qualcosa come "La distanza euclidea non è una buona metrica perché <X>".
stackoverflowuser2010

7
@ stackoverflow2010 Non vedrai mai una risposta "buona" come quella perché <le cose sono molto più complicate delle istruzioni if-then>. Se vuoi una risposta semplice, molto probabilmente è falso. Proprio come i maledetti bugiardi della Brexit, erano bravi a offrire risposte facili (false, ma facili).
Anony-Mousse

42

È una questione di segnale-rumore . La distanza euclidea, dovuta ai termini al quadrato, è particolarmente sensibile al rumore; ma anche la distanza di Manhattan e le distanze "frazionarie" (non metriche) ne soffrono.

Ho trovato gli studi in questo articolo molto illuminanti:

Zimek, A., Schubert, E. e Kriegel, H.-P. (2012),
un sondaggio sul rilevamento anomalo senza supervisione di dati numerici ad alta dimensione.
Analisi statistica Data mining, 5: 363–387. doi: 10.1002 / sam.11161

Rivisita le osservazioni fatte ad esempio sul comportamento sorprendente delle metriche di distanza nello spazio dimensionale elevato di Aggarwal, Hinneburg e Keim menzionate da @Pat. Ma mostra anche come gli esperimenti sintetici siano fuorvianti e che in realtà i dati ad alta dimensione possano diventare più facili . Se hai molti segnali (ridondanti) e le nuove dimensioni aggiungono poco rumore.

x,yx,y,x,y,x,y,x,y,...,x,y

Quindi, alla fine, dipende ancora dai tuoi dati. Se hai molti attributi inutili, la distanza euclidea diventerà inutile. Se potessi facilmente incorporare i tuoi dati in uno spazio di dati a bassa dimensione, allora la distanza euclidea dovrebbe funzionare anche nello spazio a piena dimensione. In particolare per i dati sparsi , come i vettori TF dal testo, questo sembra essere il caso in cui i dati hanno una dimensionalità molto inferiore rispetto a quanto suggerisce il modello dello spazio vettoriale.

Alcune persone credono che la distanza del coseno sia migliore di quella euclidea su dati ad alta dimensione. Non la penso così: la distanza del coseno e la distanza euclidea sono strettamente correlate; quindi dobbiamo aspettarci che soffrano degli stessi problemi. Tuttavia, i dati testuali in cui il coseno è popolare sono di solito sparsi e il coseno è più veloce sui dati che sono sparsi - quindi per i dati sparsi, ci sono buoni motivi per usare il coseno; e poiché i dati sono scarsi, la dimensionalità intrinseca è molto inferiore alla dimensione dello spazio vettoriale.

Vedi anche questa risposta che ho dato a una domanda precedente: https://stats.stackexchange.com/a/29647/7828


[1,1]nn

E quale sarebbe la conclusione da ciò? Su [-1; 1] ^ d non si dovrebbe usare Coseno perché non è definito a 0, la media non ci dice nulla sulla maledizione e dati uniformi non sono realistici.
Anony-Mousse

Ormai non l'ho provato, ma immagino che gli angoli siano simili per i dati reali. Il fatto che non sia definito su 0 non dovrebbe davvero importare in quanto è solo un singolo punto. La mia conclusione è simile alla tua: la distanza del coseno non è adatta per spazi ad alta dimensione (anche se potrebbero esserci domini se funziona ancora)
Martin Thoma,

Uno scenario più realistico sarebbe punti sulla sfera unitaria non negativa. E la misura dell'interesse sarebbe probabilmente una varianza, non una media.
Anony-Mousse

Per arrivare alla sfera unitaria non negativa devi solo aggiungere +1 e dividere per 2 ...
Martin Thoma

34

Il miglior punto di partenza è probabilmente quello di leggere il comportamento sorprendente delle metriche di distanza nello spazio ad alta dimensione di Aggarwal, Hinneburg e Keim. C'è un link attualmente funzionante qui (pdf) , ma dovrebbe essere molto capace di google se si rompe. In breve, con l'aumentare del numero di dimensioni, la relativa distanza euclidea tra un punto in un insieme e il suo vicino più vicino, e tra quel punto e il suo vicino più lontano, cambia in alcuni modi non ovvi. Il fatto che ciò influisca negativamente o meno sui risultati dipende molto da ciò che stai cercando di ottenere e da come sono i tuoi dati.


6

La distanza euclidea è molto raramente una buona distanza da scegliere in Machine Learning e questo diventa più evidente nelle dimensioni più elevate. Questo perché la maggior parte delle volte in Machine Learning non hai a che fare con uno spazio metrico euclideo, ma uno spazio metrico probabilistico e quindi dovresti usare funzioni probabilistiche e teoriche di distanza, ad esempio entropia.

Agli umani piace lo spazio euclideo perché è facile concettualizzare, inoltre è matematicamente facile a causa delle proprietà di linearità che ci consentono di applicare l'algebra lineare. Se definiamo le distanze in termini di, diciamo Kergback-Leibler Divergence, allora è più difficile visualizzare e lavorare matematicamente.


2
Può essere problematico, poiché KL Divergence non è una metrica. :-)
agarie

2
Se si necessita di simmetria, è possibile utilizzare le informazioni reciproche, che come suggerito possono essere definite in termini di KL.
Samthebest,

3

Come analogia, immagina un cerchio centrato sull'origine. I punti sono distribuiti uniformemente. Supponiamo che un punto selezionato casualmente sia su (x1, x2). La distanza euclidea dall'origine è ((x1) ^ 2 + (x2) ^ 2) ^ 0.5

Ora, immagina punti distribuiti uniformemente su una sfera. Lo stesso punto (x1, x2) sarà probabilmente (x1, x2, x3). Poiché, in una distribuzione uniforme, solo alcuni punti hanno una delle coordinate come zero, assumeremo che [x3! = 0] per il nostro punto distribuito uniformemente selezionato casualmente. Pertanto, il nostro punto casuale è molto probabilmente (x1, x2, x3) e non (x1, x2, 0).

L'effetto è: qualsiasi punto casuale si trova ora a una distanza di ((x1) ^ 2 + (x2) ^ 2 + (x3) ^ 2) ^ 0,5 dall'origine della sfera 3D. Questa distanza è maggiore di quella di un punto casuale vicino all'origine di un cerchio 2D. Questo problema peggiora nelle dimensioni superiori, motivo per cui scegliamo metriche diverse dalle dimensioni euclidee per lavorare con dimensioni superiori.

EDIT: C'è un detto che ricordo ora: "La maggior parte della massa di un'arancia di dimensione superiore è nella pelle, non nella polpa", nel senso che in dimensioni superiori i punti distribuiti uniformemente sono più "vicini" (distanza euclidea) al confine rispetto all'origine.

Nota a margine: la distanza euclidea non è TROPPO grave per i problemi del mondo reale a causa della "benedizione della non uniformità", che in sostanza afferma che per i dati reali, i vostri dati NON verranno distribuiti uniformemente nello spazio dimensionale superiore, occuperà un piccolo sottoinsieme confuso dello spazio. Questo ha senso intuitivamente: se stai misurando 100 quantità su esseri umani come altezza, peso, ecc., Una distribuzione uniforme sullo spazio dimensionale non ha senso, ad esempio una persona con (altezza = 65 pollici, peso = 150 libbre, avg_calorie_intake = 4000) che non è proprio possibile nel mondo reale.


Se qualche futuro lettore è interessato alla citazione "arancione / polpa", o alla frase "benedizione della non uniformità", entrambi appaiono in "Alcune cose utili da imparare sull'apprendimento automatico", che è collegato nella mia risposta su questo filo.
Sycorax,

1

Un altro aspetto di questa domanda è questo:

Molto spesso le dimensioni elevate dei problemi (di apprendimento automatico / statistico) sono il risultato di caratteristiche troppo limitate.

Significa che le dimensioni NON sono indipendenti (o non correlate), ma le metriche euclidee assumono (almeno) una non correlazione e quindi potrebbero non produrre i migliori risultati

Quindi, per rispondere alla tua domanda, il numero di "alte dimensioni" è correlato a quante funzioni sono interdipendenti o ridondanti o troppo vincolate

Inoltre: è un teorema di Csiszar (et al.) Che le metriche euclidee sono candidati "naturali" per l'inferenza quando le caratteristiche sono di determinate forme


3
Le metriche euclidee non "assumono ... non correlazione". Le distanze euclidee funzionano peggio in dimensioni elevate con variabili non correlate. Considera il caso estremo: hai moltissime dimensioni tutte perfettamente correlate, r = 1, ora i tuoi dati sono in realtà unidimensionali e la distanza euclidea funziona bene con i dati unidimensionali.
gung

No, non la penso così, la distanza euclidea per definizione assume dati non correlati (tranne se si utilizza la distanza euclidea generalizzata con matrice di costellazione)
Nikos M.

Le caratteristiche con correlazione totale (r = 1) sono un esempio banale ed equivalgono a una "matrice di correlazione banale", ma forse mi sbaglio
Nikos M.

@gung È possibile interpretare una perdita euclidea come una perdita entropia crociata di gaussiani con matrice di varianza isotropica a unità fissa. Penso che questo sia un buon punto, ma potrebbe essere meglio spiegato.
Neil G,

1
(0,0)(1,1)dE=j(x2jx1j)22X1=X212cor(X1,X2)=02

0

Questo documento può essere utile anche per te "Migliore misurazione della somiglianza sqrt-cosine" visita https://journalofbigdata.springeropen.com/articles/10.1186/s40537-017-0083-6 Questo documento spiega perché la distanza euclidea non è una buona metrica in alta dimensione dati e qual è il miglior sostituto della distanza euclidea in dati ad alta dimensione. La distanza euclidea è la norma L2 e diminuendo il valore di k nella norma Lk possiamo alleviare il problema della distanza in dati ad alta dimensione. Puoi trovare i riferimenti anche in questo documento.


2
Benvenuti nel sito. Stiamo cercando di creare un archivio permanente di informazioni statistiche di alta qualità sotto forma di domande e risposte. Pertanto, siamo diffidenti nei confronti delle risposte solo link, a causa di linkrot. Puoi pubblicare una citazione completa e un riassunto delle informazioni al link, nel caso in cui vada a mancare?
gung
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.