Quando si usa la distanza di Manhattan come opposta alla distanza euclidea?


18

Sto cercando di cercare una buona argomentazione sul perché si dovrebbe usare la distanza di Manhattan sulla distanza euclidea in Machine Learning.

La cosa più vicina che ho trovato ad una buona discussione finora è su questa lezione del MIT .

Alle 36:15 puoi vedere nelle diapositive la seguente dichiarazione:

"In genere usa la metrica euclidea; Manhattan può essere appropriata se dimensioni diverse non sono comparabili. "

Poco dopo il professore afferma che, poiché il numero di gambe di un rettile varia da 0 a 4 (mentre le altre caratteristiche sono binarie, variano solo da 0 a 1), la funzione "numero di gambe" finirà per avere un valore molto più alto peso se viene utilizzata la distanza euclidea. Abbastanza sicuro, è proprio così. Ma si avrebbe anche quel problema se si utilizza la distanza di Manhattan (solo che il problema sarebbe leggermente mitigato perché non quadriamo la differenza come facciamo sulla distanza euclidea).

Un modo migliore per risolvere il problema di cui sopra sarebbe normalizzare la funzione "numero di segmenti", quindi il suo valore sarà sempre compreso tra 0 e 1.

Pertanto, poiché esiste un modo migliore per risolvere il problema, mi è sembrato che l'argomento dell'uso della distanza di Manhattan in questo caso mancasse di un punto di forza, almeno secondo me.

Qualcuno sa davvero perché e quando qualcuno dovrebbe usare la distanza di Manhattan su Euclide? Qualcuno può darmi un esempio in cui l'uso della distanza di Manhattan produrrebbe risultati migliori?

Risposte:


4

Secondo questo interessante documento, la distanza di Manhattan (norma L1) potrebbe essere preferibile alla distanza euclidea (norma L2) nel caso di dati ad alta dimensione:

https://bib.dbvis.de/uploadedFiles/155.pdf

Gli autori dell'articolo fanno anche un ulteriore passo avanti e suggeriscono di utilizzare le distanze della norma Lk, con un valore frazionario di k, per dati di dimensioni molto elevate al fine di migliorare i risultati degli algoritmi basati sulla distanza, come il clustering.


stats.stackexchange.com/a/99191 fornisce una risposta più completa
mic

3

Posso suggerire un paio di idee, da Wikipedia .

  1. Se si desidera porre meno enfasi sugli outlier, la distanza di Manhattan proverà a ridurre tutti gli errori allo stesso modo poiché il gradiente ha una magnitudine costante.
  2. Se il tuo rumore è distribuito in Laplaciano, l'MLE viene trovato minimizzando la stima di Manhattan.

3

Ho trovato qualcosa che potrebbe essere intuizione su questo problema nell'apprendimento automatico pratico con Scikit-Learn e TensorFlow

Sia RMSE che MAE sono modi per misurare la distanza tra due vettori: il vettore delle previsioni e il vettore dei valori target. Sono possibili varie misure di distanza o norme:

  • Il calcolo della radice di una somma di quadrati (RMSE) corrisponde alla norma euclidea: è la nozione di distanza che conosci. Si chiama anche la norma ℓ2 (...)

  • Il calcolo della somma degli assoluti (MAE) corrisponde alla norma ℓ1, (...). A volte viene chiamata la norma di Manhattan perché misura la distanza tra due punti in una città se si può viaggiare solo lungo gli isolati ortogonali.

  • Più in generale, (...) ℓ 0 indica solo il numero di elementi diversi da zero nel vettore e ℓ∞ indica il massimo valore assoluto nel vettore.

  • Più alto è l'indice della norma, più si concentra su valori grandi e trascura quelli piccoli. Questo è il motivo per cui RMSE è più sensibile ai valori anomali rispetto al MAE. Ma quando gli outlier sono esponenzialmente rari (come in una curva a campana), l'RMSE si comporta molto bene ed è generalmente preferito.


2

L'uso della distanza di Manhattan dipende molto dal tipo di sistema di coordinate utilizzato dal set di dati. Mentre la distanza euclidea fornisce la distanza più breve o minima tra due punti, Manhattan ha implementazioni specifiche.

Ad esempio, se dovessimo usare un set di dati di scacchi, l'uso della distanza di Manhattan è più appropriato della distanza euclidea. Un altro uso sarebbe quando sono interessati a conoscere la distanza tra le case che sono a pochi isolati di distanza.

Inoltre, potresti prendere in considerazione la distanza di Manhattan se le variabili di input non sono simili nel tipo (come età, sesso, altezza, ecc.). A causa della maledizione della dimensionalità, sappiamo che la distanza euclidea diventa una scelta sbagliata con l'aumentare del numero di dimensioni.

Quindi, in breve: la distanza di Manhattan funziona generalmente solo se i punti sono disposti sotto forma di una griglia e il problema su cui stiamo lavorando dà più priorità alla distanza tra i punti solo insieme alle griglie, ma non alla distanza geometrica.

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.