距离
距离可以用来衡量N维空间中点的差异性,在数据分析、挖掘、监督、无监督学习等都是关键因素,那么距离算法定义为怎样才合理。
1、属性
距离是满足以下属性的变量:
2、一般及欧式距离
根据笛卡尔坐标,如果p=(p1,...,pn),q=(q1,...,qn)和是欧几里得n维空间中的两个点,根据勾股定理,p,q之间距离可以表示为:
向量p-q表示向量p和q之间的距离,这个新的向量有大小也有距离
上面是用坐标表示的向量p和q之间的距离,如果用向量表示就是
这里p-q看作一个新的向量,可以用向量p,q表示出来。
一维空间
二维空间
n维空间
一般情况下,距离如下:
3、平方欧式距离
欧式距离可以平方,以便在距离更远的对象上增加更大的权重,正数而言,越大的数据平方越大,这种增大是指数级的。
相似性
距离为0的两个向量或者说点的相似性确实最高,相似性取值通常在[-1,1]或[0,1]之间,相似性得分为1,表示相似性最高,相似性的度量也有很多种。
Dice系数
重叠度
Jaccard系数
Jaccard度量表示了相关性的重要程度。
夹角余弦
两个向量之间角度的余弦由下式给出:
距离和相似性是两个相反的度量。例如,数值型数据的相关程度是相似性度量,欧式距离是距离度量。通常,相似性度量的值被限制在0~1,但是距离没有这样的上界。相似性可能是负的,但根据定义,距离不能为负。
在不同算法,比如聚类算法中,需要找到新的距离度量。比如聚类算法中,两个簇的距离,可以是两个簇中的最远两个点的距离,也可以是最近两个点的距离,又或者到对方中心的平均距离。
猜你可能喜欢