欧氏距离是用来衡量两个向量之间的相似性或差异性的一种度量方法。它在很多领域,包括图像处理、聚类分析和推荐系统中都得到了广泛的应用。
欧氏距离的定义:
欧氏距离是在多维空间中计算两点之间的直线距离的方法。对于两个点(向量) p = ( p 1 , p 2 , . . . , p n ) p = (p_1, p_2, ..., p_n) p=(p1,p2,...,pn) 和 q = ( q 1 , q 2 , . . . , q n ) q = (q_1, q_2, ..., q_n) q=(q1,q2,...,qn),欧氏距离可以表示为:
d ( p , q ) = ( p 1 − q 1 ) 2 + ( p 2 − q 2 ) 2 + . . . + ( p n − q n ) 2 d(p, q) = \sqrt{(p_1 - q_1)^2 + (p_2 - q_2)^2 + ... + (p_n - q_n)^2} d(p,q)=(p1−q1)2+(p2−q2)2+...+(pn−qn)2
其中, n n n 是向量的维数。
为什么欧氏距离重要:
欧氏距离的概念简单易懂,但在很多数据分析任务中都扮演着关键角色。例如,在聚类分析中,我们可以使用欧氏距离来衡量数据点之间的相似性,从而将相似的数据点归为一类。在图像处理中,可以利用欧氏距离来比较图像的相似性,从而进行图像检索或匹配。
示例代码:
假设你有两个二维点 p = ( 2 , 3 ) p = (2, 3) p=(2,3) 和 q = ( 5 , 7 ) q = (5, 7) q=(5,7),我们可以使用 Python 来计算它们之间的欧氏距离:
import math
def euclidean_distance(p, q):
distance = math.sqrt((p[0] - q[0])**2 + (p[1] - q[1])**2)
return distance
p = (2, 3)
q = (5, 7)
distance = euclidean_distance(p, q)
print("欧氏距离:", distance)
在这个例子中,我们定义了一个计算欧氏距离的函数 euclidean_distance
,最后计算并打印出了点
p
p
p 和
q
q
q 之间的欧氏距离。