Quand utiliserait-on la distance de Manhattan par opposition à la distance euclidienne?

18

J'essaie de chercher un bon argument sur la raison pour laquelle on utiliserait la distance de Manhattan sur la distance euclidienne dans le Machine Learning.

La chose la plus proche que j'ai trouvée pour un bon argument jusqu'à présent est sur cette conférence du MIT .

À 36h15, vous pouvez voir sur les diapositives la déclaration suivante:

"Utilisez généralement la métrique euclidienne; Manhattan peut être approprié si différentes dimensions ne sont pas comparables. "

Peu de temps après, le professeur dit que, parce que le nombre de pattes d'un reptile varie de 0 à 4 (alors que les autres caractéristiques sont binaires, ne varient que de 0 à 1), la fonction "nombre de pattes" finira par avoir un poids si la distance euclidienne est utilisée. Effectivement, c'est vrai. Mais on aurait aussi ce problème si on utilisait la distance de Manhattan (seulement que le problème serait légèrement atténué parce que nous n'équilibrons pas la différence comme nous le faisons sur la distance euclidienne).

Une meilleure façon de résoudre le problème ci-dessus serait de normaliser la fonction "nombre de segments" afin que sa valeur soit toujours comprise entre 0 et 1.

Par conséquent, comme il existe une meilleure façon de résoudre le problème, il semblait que l'argument de l'utilisation de la distance de Manhattan dans ce cas manquait d'un point plus fort, du moins à mon avis.

Est-ce que quelqu'un sait vraiment pourquoi et quand quelqu'un utiliserait la distance de Manhattan sur Euclidienne? Quelqu'un peut-il me donner un exemple dans lequel l'utilisation de la distance de Manhattan donnerait de meilleurs résultats?

Tiago
la source

Réponses:

4

Selon cet article intéressant, la distance de Manhattan (norme L1) peut être préférable à la distance euclidienne (norme L2) dans le cas de données de grande dimension:

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

Les auteurs de l'article vont même plus loin et suggèrent d'utiliser des distances de norme Lk, avec une valeur fractionnaire de k, pour des données de dimension très élevée afin d'améliorer les résultats d'algorithmes basés sur la distance, comme le clustering.

Pablo Suau
la source
stats.stackexchange.com/a/99191 fournit une réponse plus complète
micro
3

Je peux suggérer quelques idées, à partir de wikipedia .

  1. Si vous souhaitez mettre moins l'accent sur les valeurs aberrantes, la distance de Manhattan essaiera de réduire toutes les erreurs de manière égale car le gradient a une amplitude constante.
  2. Si votre bruit est distribué en laplacien, le MLE est trouvé en minimisant l'estimation de Manhattan.
Jacques Kvam
la source
3

J'ai trouvé quelque chose qui pourrait être une intuition à propos de ce problème dans l' apprentissage automatique avec Scikit-Learn et TensorFlow

Le RMSE et le MAE sont tous deux des moyens de mesurer la distance entre deux vecteurs: le vecteur de prédictions et le vecteur de valeurs cibles. Différentes mesures de distance, ou normes, sont possibles:

  • Le calcul de la racine d'une somme de carrés (RMSE) correspond à la norme euclidienne: c'est la notion de distance que vous connaissez. On l'appelle aussi la norme ℓ2 (...)

  • Le calcul de la somme des absolus (MAE) correspond à la norme ℓ1, (...). On l'appelle parfois la norme de Manhattan car elle mesure la distance entre deux points dans une ville si vous ne pouvez vous déplacer que le long de blocs de ville orthogonaux.

  • Plus généralement, (...) ℓ 0 donne simplement le nombre d'éléments non nuls dans le vecteur, et ℓ∞ donne la valeur absolue maximale dans le vecteur.

  • Plus l'indice de la norme est élevé, plus il se concentre sur les grandes valeurs et néglige les petites. C'est pourquoi le RMSE est plus sensible aux valeurs aberrantes que le MAE. Mais lorsque les valeurs aberrantes sont exponentiellement rares (comme dans une courbe en forme de cloche), le RMSE fonctionne très bien et est généralement préféré.

Damian Melniczuk
la source
2

L'utilisation de la distance de Manhattan dépend beaucoup du type de système de coordonnées utilisé par votre ensemble de données. Alors que la distance euclidienne donne la distance la plus courte ou minimale entre deux points, Manhattan a des implémentations spécifiques.

Par exemple, si nous devions utiliser un jeu de données d'échecs, l'utilisation de la distance de Manhattan est plus appropriée que la distance euclidienne. Une autre utilisation serait lorsque vous souhaitez connaître la distance entre les maisons qui sont à quelques pâtés de maisons.

De plus, vous voudrez peut-être tenir compte de la distance de Manhattan si les variables d'entrée ne sont pas de type similaire (comme l'âge, le sexe, la taille, etc.). En raison de la malédiction de la dimensionnalité, nous savons que la distance euclidienne devient un mauvais choix à mesure que le nombre de dimensions augmente.

Donc, en résumé: la distance de Manhattan ne fonctionne généralement que si les points sont disposés sous forme de grille et le problème sur lequel nous travaillons donne plus de priorité à la distance entre les points uniquement avec les grilles, mais pas la distance géométrique.

Saurabh Jain
la source