https://zhuanlan.zhihu.com/p/27305237?utm_source=tuicool&utm_medium=referral
常见距离与相似度度量
欧氏距离
定义在两个向量(两个点)上:点
和点 的欧氏距离为:闵可夫斯基距离
Minkowski distance, 两个向量(点)的
阶距离:当
时就是曼哈顿距离,当 时就是欧氏距离。马氏距离
定义在两个向量(两个点)上,这两个点在同一个分布里。点
和点 的马氏距离为:其中,
是这个分布的协方差。当
时,马氏距离退化为欧氏距离。互信息
定义在两个概率分布
上, .它们的互信息为:余弦相似度
衡量两个向量的相关性(夹角的余弦)。向量
的余弦相似度为:理解:向量的内积除以向量的数量积。
皮尔逊相关系数
衡量两个随机变量的相关性。随机变量
的Pearson相关系数为:理解:协方差矩阵除以标准差之积。
范围:[-1,1],绝对值越大表示(正/负)相关性越大。
Jaccard相关系数
对两个集合
,判断他们的相关性,借用集合的手段:理解:两个集合的交集除以并集。
扩展:Jaccard距离=1-J。
概率分布的距离度量
KL散度
Kullback–Leibler divergence,相对熵,衡量两个概率分布
的距离:这是一个非对称距离:
.JS距离
Jensen–Shannon divergence,基于KL散度发展而来,是对称度量:
其中
。MMD距离
Maximum mean discrepancy,度量在再生希尔伯特空间中两个分布的距离,是一种核学习方法。两个随机变量的距离为:
其中
是映射,用于把原变量映射到高维空间中。理解:就是求两堆数据在高维空间中的均值的距离。
Principal angle
也是将两个分布映射到高维空间(格拉斯曼流形)中,在流形中两堆数据就可以看成两个点。Principal angle是求这两堆数据的对应维度的夹角之和。对于两个矩阵
,计算方法:首先正交化(用PCA)两个矩阵,然后:其中
分别是两个矩阵的维度, 是两个矩阵第$i$个维度的夹角, 是两个矩阵SVD后的角度:HSIC
希尔伯特-施密特独立性系数,Hilbert-Schmidt Independence Criterion,用来检验两组数据的独立性:
其中
是两堆数据的kernel形式。Earth Mover’s Distance
推土机距离,度量两个分布之间的距离,又叫Wasserstein distance。以最优运输的观点来看,就是分布
能够变换成分布 所需要的最小代价:一个二分图上的流问题,最小代价就是最小流,用匈牙利算法可以解决。
References
[1] 距离和相似度度量方法 - 皮皮blog - 博客频道 - CSDN.NET
[2] Earth Mover’s Distance -- 推土机距离
[作者简介]王晋东(不在家),中国科学院计算技术研究所博士生,目前研究方向为机器学习、迁移学习、人工智能等。作者联系方式:微博@秦汉日记 ,个人网站Jindong Wang is Here。