机器学习中的相似性度量!
标准化欧氏距离是针对简单欧氏距离的缺点而作的一种改进方案。标准欧氏距离的思路:既然数据各维分量的分布不一样,好吧!那我先将各个分量都“标准化”到均值、方差相等吧。均值和方差标准化到多少呢?这里先复习点统计学知识吧,假设样本集X的均值(mean)为m,标准差(standard deviation)为s,那么X的“标准化变量”表示为: 而且标准化变量的数学期望为0,方差为1。因此样本集的标准化过程(standardization)用公式描述就是: 标准化后的值 =? ( 标准化前的值? - 分量的均值 ) /分量的标准差 经过简单的推导就可以得到两个n维向量a(x11,x2n)间的标准化欧氏距离的公式: 如果将方差的倒数看成是一个权重,这个公式可以看成是一种加权欧氏距离(Weighted Euclidean distance)。 (2)Matlab计算标准化欧氏距离 例子:计算向量(0,2)两两间的标准化欧氏距离 (假设两个分量的标准差分别为0.5和1) X = [0 0 ; 1 0 ; 0 2] D = pdist(X,'seuclidean',[0.5,1]) 结果: D = ??? 2.0000??? 2.0000??? 2.8284 ? 6. 马氏距离(Mahalanobis Distance) (1)马氏距离定义 ?????? 有M个样本向量X1~Xm,协方差矩阵记为S,均值记为向量μ,则其中样本向量X到u的马氏距离表示为: ? ?????? 而其中向量Xi与Xj之间的马氏距离定义为: ?????? 若协方差矩阵是单位矩阵(各个样本向量之间独立同分布),则公式就成了: ?????? 也就是欧氏距离了。 若协方差矩阵是对角矩阵,公式变成了标准化欧氏距离。 (2)马氏距离的优缺点:量纲无关,排除变量之间的相关性的干扰。 (编辑:网站开发网_马鞍山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |