机器学习中,对于样本之间相似度量方法有很多,通常方法是采用计算样本之间的“距离”,不同的“距离”有不同的计算方法和含义
欧式距离euclidean
欧式距离最常用也最好理解,用于描述多维空间内的点和点之间几何距离
distance(x,y)=∑i=0k(xi−yi)2−−−−−−−−−−−⎷
曼哈顿距离Manhattan
类似在曼哈顿街区中求解距离,欧式距离是直线距离,曼哈顿距离是折线距离。
distance(x,y)=∑i=0k|xi−yi|
切比雪夫距离Chebyshev
用于在多维空间中,将对象从某个位置移动到另外一个对象所消耗的最小距离
distance(x,y)=maxi|xi−yi|
闵可夫斯基Minkowski
distance(x,y)=∑i=1k(xi−yi)p−−−−−−−−−−−⎷p
皮尔森相似度Pearson
描述不同样本偏离拟合中心线程度(TBD)
ρXY=Cov(X,Y)σXσY=E(XY)−E(X)(E(Y)E(X2)−E(Y)2−−−−−−−−−−−−−√E(Y2)−E(Y)2−−−−−−−−−−−−−√
标准欧式距离Standard euclidean
这是为了解决上面的距离计算方式的缺点,举例说,样本为二维空间,第一维分布范围为(0,1),第二维分布为(0,100), 那么计算的结果中主要是第二维的差值。
所以,还需要考虑样本的分布情况。一般使用高斯分布( η,δ )来描述,然后将样本标准化
X∗=X−μδ
改进的欧式距离
distance(x,y)=∑i=0k(xi−yiδ)2−−−−−−−−−−−⎷
马氏距离Mahalanobis
distance(Xi,Xj)=(Xi−Xj)S−1(Xi−Xj)T−−−−−−−−−−−−−−−−−−−−√
其中S是X样本空间的协方差矩阵,用于标准化样本
余弦夹角Cosine
上面计算的距离只能算是标量距离,没有考虑方向信息,若是样本是向量则不适合。例如,考虑2个裁判对于4个歌手的评分分别是(10,8,9,7)和(9,7.2,8.1,6.3)。虽然对于同样的歌手打分不一样,但是总体来说4个歌手的趋势是一样的。只不过一个裁判打分要求低,一个打分要求高,2个裁判对于4个歌手的认知是一样的。
cosθ=a∗b|a||b|
分子是两个向量的点积
改进余弦夹角
TBD
汉明距离Hamming
两个等长字符串S1和S2的距离定义为,将一个字符串变换为另一个字符串需要替换的字符。例如字符串”1111”变换为”1101”时需要替换1个字符,汉明距离为0。一般应用在信息编码中。
杰卡德相似系数Jeccard similarity
定义为不同元素占所有元素的比例
Jδ(A,B)=1−J(A,B)=|A∪B|−|A∩B||A∪B|
相关系数(correlation coefficient)和相关距离(correlation distance)
ρXY=Cov(X,Y)D(X)−−−−−√D(Y)−−−−−√=(X−E(X))(Y−E(Y))D(X)−−−−−√D(Y)−−−−−√
相关系数范围[-1,1],越大越相关。1为正线性相关,-1为负线性相关
1−ρ 为相关距离
连接距离
上面考虑的都是点与点之间的距离,有时需要计算几点和几点之间(或者子样本集之间)的距离,称为连接距离。
极大距离
d(A,B)=max{d(a,b)|aϵA,bϵB}
极小距离
d(A,B)=min{d(a,b)|aϵA,bϵB}
平均距离
d(A,B)=1|A||B|∑bϵB∑aϵAd(a,b)
中心距离
d(c1,c2)
c1 和
c2 分别是两个子样本的中心点
能量距离
TBD
信息熵只能算作样本分类信息的度量,不过当对样本进行处理后,分类信息就会发生变化。因此,可用于度量处理之前和处理之后的准则
H=−∑ipi∗logpi