You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

平方欧氏距离为何是非度量函数?与欧氏距离有何差异?

嘿,咱们一步步理清楚平方欧氏距离和普通欧氏距离的区别,以及为啥前者会被归为非度量函数~

1. 平方欧氏距离与欧氏距离的核心区别
  • 数学表达式差异

    • 对于n维空间中的两点 (x=(x_1,x_2,...,x_n)) 和 (y=(y_1,y_2,...,y_n)),欧氏距离的计算是:
      d(x,y) = sqrt(Σ(x_i - y_i)²)
    • 平方欧氏距离则直接省略了平方根运算,公式为:
      d²(x,y) = Σ(x_i - y_i)²
  • 数值与单位特性

    • 欧氏距离的结果和原始数据的单位一致(比如数据单位是米,距离结果也是米),数值大小直观反映两点间的实际空间距离。
    • 平方欧氏距离的单位是原始单位的平方(比如平方米),数值上会比对应的欧氏距离大(除了距离为0或1的情况)。
  • 排序一致性

    • 就像你在书里看到的,这两个函数对样本间的距离排序是完全一致的。因为平方根是严格单调递增的函数,所以如果d²(x,y) > d²(a,b),必然有d(x,y) > d(a,b),反过来也成立。这也是很多算法(比如K-means聚类)会用平方欧氏距离代替欧氏距离的原因——计算更快(不用开根号),而且完全不影响结果的相对排序,而这正是算法需要的核心信息。
2. 为什么平方欧氏距离属于非度量函数?

一个函数要被称为度量函数,必须满足四个核心公理:

  1. 非负性:(D(x,y) ≥ 0),且当且仅当(x=y)时,(D(x,y)=0)
  2. 同一性:(D(x,x)=0)
  3. 对称性:(D(x,y)=D(y,x))
  4. 三角不等式:对任意三点(x,y,z),都满足(D(x,z) ≤ D(x,y) + D(y,z))

平方欧氏距离轻松满足前三个公理:

  • 平方运算保证了非负性,只有两点完全相同时结果才为0;交换两点顺序,计算结果也不会变,满足对称性。

它的问题出在三角不等式上,咱们用一个简单的一维例子就能看明白:

  • 设三个点分别为 (x=0),(y=0.5),(z=1)
  • 计算平方欧氏距离:
    • (D(x,y) = (0-0.5)² = 0.25)
    • (D(y,z) = (0.5-1)² = 0.25)
    • (D(x,z) = (0-1)² = 1)
  • 现在验证三角不等式:(D(x,z) ≤ D(x,y) + D(y,z)) → (1 ≤ 0.25 + 0.25) → (1 ≤ 0.5),显然不成立!

因为平方欧氏距离不满足度量函数要求的三角不等式,所以它被归类为非度量函数。

内容的提问来源于stack exchange,提问作者raikumardipak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:27:46