One - One Code All

Blog Content

常见的距离算法

机器学习 算法   2013-02-09 22:25:03
  1. 欧几里得距离(Euclidean Distance)

    定义:指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。

    公式:sqrt( (x2-x1)^2 +(y2-y1)^2 )

  2. 马哈拉诺比斯距离(Mahalanobis Distance)

    定义:数据的协方差距离。它是一种有效的计算两个未知样本集的相似度的方法。与欧氏距离不同的是,它考虑到各种特性之间的联系(例如:一条关于身高的信息会带来一条关于体重的信息,因为两者是有关联的),并且是尺度无关的(scale-invariant),即独立于测量尺度。

    公式:对于一个均值为μ,协方差矩阵为Σ的多变量向量,其马氏距离为sqrt( (x-μ)'Σ^(-1)(x-μ) )。

  3. 曼哈顿距离(Manhattan Distance)

    定义:是种使用在几何度量空间的几何学用语,用以标明两个点在标准坐标系上的绝对轴距总和。

    公式:d(i,j)=|X1-X2|+|Y1-Y2|。在平面上,坐标(x1, y1)的i点与坐标(x2, y2)的j点的曼哈顿距离。

  4. 切比雪夫距离(Chebyshev Distance)

    定义:二个点之间的距离定义是其各坐标数值差绝对值的最大值。

    公式:以(x1,y1)和(x2,y2)二点为例,其切比雪夫距离为max(|x2-x1|,|y2-y1|)。

  5. 明可夫斯基距离(Minkowski Distance)

    定义:又称明氏距离,是欧氏空间中的一种测度,被看做是欧氏距离和曼哈顿距离的一种推广。

    公式:(∑|xi-yi|^p)^(1/p) (i=1,2,...n) 。p取1或2时的明氏距离是最为常用的,p=2即为欧氏距离,而p=1时则为曼哈顿距离。

  6. 海明距离(Hamming distance)

    定义:两个码字的对应比特取值不同的比特数称为这两个码字的海明距离。

    公式:计算对应位置不同字符的个数。



上一篇:量化交易中VWAP/TWAP算法的基本原理
下一篇:python列表排序list.sort(cmp=None, key=None, reverse=False)

The minute you think of giving up, think of the reason why you held on so long.