机器学习中,经常需要计算各种距离。
比如KNN近邻的距离,Kmeans距离,相似度中的距离计算。
这种距离不一定都是欧氏距离,针对不同需求,数据的不同特点,距离的计算方式不同。
下面给出机器学习中常用的距离计算方式,及其应用特点。
对于距离,有如下基本特性:
1、d(x, x)=0 //到自己的距离为0
2、d(x ,y)>=0 //距离非负
3、d(x, y)=d(y, x) //距离对称性,A到B的距离,B到A的距离是相等的
4、d(x, z)+d(z, y)>=d(x, y) //三角形法则,两边之和大于第三边
1、闵可夫斯基距离(Minkowski distance)
衡量数值点之间距离的常用方法。公式如下。
该距离最常见形式是P=2或者1,分别对应欧氏距离、曼哈顿距离。
见下图,网格表示城市街区交通道路,直线表示欧式距离,显示情况在存在高楼,不能直接穿过,折线表示曼哈顿距离,其长度是相等的。
但公司中的P趋于无穷大时,闵可夫斯基距离就转化为切比雪夫距离(Chebyshev distance).
我们知道,平面上的距离原点欧氏距离(P=2)为1的点组成的形状为圆ÿ