摘要:
1.常见的距离算法
1.1欧几里得距离(Euclidean Distance)以及欧式距离的标准化(Standardized Euclidean distance)
1.2马哈拉诺比斯距离(Mahalanobis Distance)
1.3曼哈顿距离(Manhattan Distance)
1.4切比雪夫距离(Chebyshev Distance)
1.5明可夫斯基距离(Minkowski Distance)
2.常见的相似度(系数)算法
2.1余弦相似度(Cosine Similarity)以及调整余弦相似度(Adjusted Cosine Similarity)
2.2皮尔森相关系数(Pearson Correlation Coefficient)
2.3Jaccard相似系数(Jaccard Coefficient)
2.4Tanimoto系数(广义Jaccard相似系数)
2.5对数似然相似度/对数似然相似率
2.6条件熵、基尼系数等
内容:
1.常见的距离算法
1.1欧几里得距离(Euclidean Distance)
公式:
标准欧氏距离的思路:现将各个维度的数据进行标准化:标准化后的值 = ( 标准化前的值 - 分量的均值 ) /分量的标准差,然后计算欧式距离
欧式距离的标准化(Standardized Euclidean distance)
公式:
1.2马哈拉诺比斯距离(Mahalanobis Distance)
公式:
关系:若协方差矩阵是对角矩阵,公式变成了标准化欧氏距离。
特点:量纲无关,排除变量之间的相关性的干扰。
1.3曼哈顿距离(Manhattan Distance)
公式:
定义:通俗来讲,想象你在曼哈顿要从一个十字路口开车到另外一个十字路口,驾驶距离是两点间的直线距离吗?显然不是,除非你能穿越大楼。而实际驾驶距离就是这个“曼哈顿距离”,此即曼哈顿距离名称的来源,同时,曼哈顿距离也称为城市街区距离(City Block distance)。
1.4切比雪夫距离(Chebyshev Distance)
公式:
1.5明可夫斯基距离(Minkowski Distance)
定义:
关系:明氏距离是欧氏距离的推广,是对多个距离度量公式的概括性的表述。p=1退化为曼哈顿距离;p=2退化为欧氏距离;切比雪夫距离是明氏距离取极限的形式。
2.常见的相似度(系数)算法
2.1余弦相似度(Cosine Similarity)
公式:
定义:两向量越相似,cosine绝对值越小;值为负两向量负相关。
不足:只能分辨个体在维之间的差异,没法衡量每个维数值的差异(比如用户对内容评分,5分制,X和Y两个用户对两个内容的评分分别为(1,2)和(4,5),使用余弦相似度得出的结果是0.98,两者极为相似,但从评分上看X似乎不喜欢这2个内容,而Y比较喜欢,余弦相似度对数值的不敏感导致了结果的误差,需要修正这种不合理性)
调整余弦相似度(Adjusted Cosine Similarity)
公式:,其中Here is the average of the u-th user‘s ratings.
2.2皮尔森相关系数(Pearson Correlation Coefficient)
定义:两个变量之间的皮尔逊相关系数定义为两个变量之间的协方差和标准差的商
2.3Jaccard相似系数(Jaccard Coefficient)
公式:
定义:Jaccard系数主要用于计算符号度量或布尔值度量的个体间的相似度,因为个体的特征属性都是由符号度量或者布尔值标识,因此无法衡量差异具体值的大小,只能获得“是否相同”这个结果,所以Jaccard系数只关心个体间共同具有的特征是否一致这个问题。
2.4Tanimoto系数(广义Jaccard相似系数)
公式:
2.5对数似然相似度/对数似然相似率
对数似然相似度
公式:
定义:The Likelihood Ratio The likelihood ratio for a hypothesis is the ratio of the maximum value of the likelihood function over the subspace represented by the hypothesis to the maximum value of the likelihood function over the entire parameter space.
对数似然相似率
公式:
定义:
2.6条件熵、基尼系数等