欧式间隔介绍

欧式间隔是最常见的一种间隔度量方式,欧氏间隔(Euclidean Distance)也称欧几里得间隔,指在多维空间中两个点之间的绝对间隔。这个间隔根据咱们熟悉的勾股定理,也便是求解三角形的斜边。简略的来说,欧氏间隔便是两点之间的实践间隔。

欧式间隔核算

在二维空间下欧式间隔的核算公式

二维平面上两点a(x1,y1)a(x_1,y_1)b(x2,y2)b(x_2,y_2)间的欧氏间隔,也便是咱们小学里学的勾三股四弦五——勾股定理,核算公式如下:

d(a,b)=(x1−x2)2+(y1−y2)2d(a,b)=sqrt[]{(x_1-x_2)^2+(y_1-y_2)^2}

nn维空间中欧式间隔核算公式

nn维空间中的点x和y的坐标分别为:x=(x1,x2,…,xn)x=(x_1,x_2,…,x_n)y=(y1,y2,…,yn)y=(y_1,y_2,…,y_n),则点x和点y之间的欧式间隔核算公式如下:

d(x,y)=(x1−y1)2+(x2−y2)2+…+(xn−yn)2=∑i=1n(xi−yi)2d(x,y)=sqrt[]{(x_1-y_1)^2+(x_2-y_2)^2+…+(x_n-y_n)^2}=sqrt[]{sum_{i=1}^{n}(x_i-y_i)^2 }

nn维向量之间的欧式间隔核算公式

两个nn维向量a(x11,x12,…,x1n)a(x_{11},x_{12},…,x_{1n})和向量a(x21,x22,…,x2n)a(x_{21},x_{22},…,x_{2n})之间的欧式间隔核算公式如下:

d12=∑k=1n(x1k−x2k)2d_{12}=sqrt[]{sum_{k=1}^{n}(x_{1k}-x_{2k})^2 }

欧式间隔核算完成

用Python完成欧式间隔核算时,能够运用numpy.linalg.norm()函数来核算欧式间隔,示例代码如下:

import numpy as np
x = np.array([1, 2, 3])
y = np.array([4, 5, 6])
euclidean_distance = np.linalg.norm(x - y)
print(euclidean_distance)
  • 弥补解说:linalg.norm()是NumPy库中用于核算向量或矩阵的范数(或长度)的函数。在核算欧式间隔时,能够用来核算向量之间的差异。如下实例代码核算单个向量的范数:
import numpy as np
# 核算向量的范数
x = np.array([1, 2, 3])
norm_x = np.linalg.norm(x)
print(norm_x)

欧式间隔的类似度核算使用

欧式间隔在聚类剖析、机器学习、引荐系统和图画辨认等领域中的类似度核算有使用。

  • 如在聚类剖析中,欧式间隔能够用来衡量数据点之间的类似度,根据欧式间隔将数据点分组成簇。
  • 又如在机器学习中,欧式间隔被用来核算特征向量之间的类似度。
    • 譬如在K近邻算法中便是运用欧式间隔来衡量样本之间的间隔。
  • 在图画辨认中,欧式间隔能够用来比较图画之间的类似度,然后完成图画的匹配和辨认。

使用实例阐明

假设有一组学生的数据,包含学生的数学和语文成果,现在咱们想要核算学生之间的类似度,那么需要怎么去核算呢?

既然本文章说的是欧式间隔在类似度核算的使用,那么咱们必定就能够用欧式间隔来衡量每对学生之间的成果差异,然后找出成果较为挨近的学生。

假设有两个学生A和B,他们的数学和语文成果分别为(A1, A2)和(B1, B2),则能够通过核算欧式间隔来衡量他们之间的类似度,间隔越小表明他们的成果越挨近,间隔越大表明他们的成果差异越大。

通过这种办法,咱们能够找出成果类似的学生,由此能够进行下一步的剖析和比较。