什么时候使用曼哈顿距离与欧几里得距离相反?


18

我正在尝试寻找一个很好的论据,说明为什么在机器学习中为什么要使用曼哈顿距离而不是欧几里得距离

到目前为止,我发现与一个很好的论点最接近的事情是在麻省理工学院的这次演讲中

在36:15,您可以在幻灯片上看到以下语句:

“通常使用欧几里德度量;如果不同维度之间不具有可比性,则曼哈顿可能是合适的。

在教授说之后不久,由于爬行动物的腿数从0到4变化(而其他特征是二进制的,仅从0到1变化),因此“腿数”特征最终将具有更高的特征如果使用欧氏距离,则为重量。果然,这确实是对的。但是如果使用曼哈顿距离,也会有一个问题(只是因为我们不会像欧几里德距离那样对差进行平方处理,所以该问题会得到稍微缓解)。

解决上述问题的一种更好的方法是将“支路数”特征规格化,以便其值始终在0到1之间。

因此,由于有更好的解决方法,至少在我看来,在这种情况下使用曼哈顿距离的论点缺乏要点。

有人真的知道为什么以及何时有人会在欧几里得上使用曼哈顿距离吗?谁能给我一个使用曼哈顿距离会产生更好结果的例子吗?

Answers:



3

我可以根据维基百科提出一些建议。

  1. 如果您想减少对异常值的关注,曼哈顿距离将尽量减少所有误差,因为梯度具有恒定的幅度。
  2. 如果您的噪声是拉普拉斯分布的,则通过最小化曼哈顿估计值来找到MLE。

3

我在使用Scikit-Learn和TensorFlow进行动手机器学习中发现了一些可能与该问题有关的直觉

RMSE和MAE都是测量两个向量之间的距离的方法:预测向量和目标值向量。各种距离度量或规范是可能的:

  • 计算平方根(RMSE)的根与欧几里得范数相对应:这是您熟悉的距离概念。也称为ℓ2范数(...)

  • 计算绝对和(MAE)对应于ℓ1模(...)。有时被称为曼哈顿标准,因为它只能测量沿着正交城市街区行驶的城市中两点之间的距离。

  • 更一般而言,(...)ℓ0仅给出向量中非零元素的数量,而ℓ∞给出向量中的最大绝对值。

  • 规范指数越高,它越关注大值而忽略小值。这就是为什么RMSE对异常值比MAE更敏感的原因。但是,当离群值呈指数形式稀有时(例如钟形曲线),RMSE表现非常好,通常是首选。


2

曼哈顿距离的使用在很大程度上取决于数据集使用的坐标系的类型。欧几里得距离给出了两点之间的最短或最小距离,但曼哈顿有特定的实现方式。

例如,如果我们要使用国际象棋数据集,则使用曼哈顿距离比使用欧几里得距离更合适。另一个用途是当有兴趣知道相隔几街区的房屋之间的距离时。

另外,如果输入变量的类型(例如年龄,性别,身高等)不同,则可能要考虑曼哈顿距离。由于维数的诅咒,我们知道随着维数的增加,欧几里德距离成为一个不好的选择。

简而言之:曼哈顿距离通常仅在点以网格形式排列时有效,而我们正在研究的问题将点之间的距离与网格一起放在优先位置,而不是几何距离。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.