相似度就是比较两个事物的相似性。一般通过计算事物的特征之间的距离,如果距离小,那么相似度大;如果距离大,那么相似度小。

欧氏距离

计算两个点的空间距离,距离越小,越相似。

深度学习两个人的相似度 比较两个人的相似度_深度学习


二维平面:

深度学习两个人的相似度 比较两个人的相似度_深度学习_02


三维平面:

深度学习两个人的相似度 比较两个人的相似度_机器学习_03


n维向量:

深度学习两个人的相似度 比较两个人的相似度_深度学习两个人的相似度_04


例:

a(1,1,2,0,1,1,0,0,0);

b(1,1,1,0,1,1,1,0,0);

c(0,0,0,1,0,0,1,1,1);

深度学习两个人的相似度 比较两个人的相似度_线性代数_05


深度学习两个人的相似度 比较两个人的相似度_深度学习两个人的相似度_06


深度学习两个人的相似度 比较两个人的相似度_深度学习_07

余弦相似度

1.也称为余弦相似度,是用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小的度量。余弦值越接近1,就表明夹角越接近0度,也就是两个向量越相似,这就叫"余弦相似性"。

深度学习两个人的相似度 比较两个人的相似度_深度学习两个人的相似度_08


2.两个向量a,b的夹角很小可以说a向量和b向量有很高的的相似性.

深度学习两个人的相似度 比较两个人的相似度_机器学习_09


3.两个向量a,b的夹角很大可以说a向量和b向量有很低的的相似性,或者说a和b向量代表的文本基本不相似。

深度学习两个人的相似度 比较两个人的相似度_相似度_10


4.三角形中边a和b的夹角 的余弦计算公式为:

深度学习两个人的相似度 比较两个人的相似度_线性代数_11


5.公式:

深度学习两个人的相似度 比较两个人的相似度_相似度_12


6.在向量表示的三角形中,假设a向量是(x1, y1),b向量是(x2, y2),那么可以将余弦定理改写成下面的形式,向量a和向量b的夹角 的余弦计算:

深度学习两个人的相似度 比较两个人的相似度_线性代数_13


深度学习两个人的相似度 比较两个人的相似度_机器学习_14


7.如果向量a和b不是二维而是n维,上述余弦的计算法仍然正确。假定a和b是两个n维向量,则a与b的夹角 的余弦等于:

深度学习两个人的相似度 比较两个人的相似度_线性代数_15


例:

a(1,1,2,0,1,1,0,0,0,);
b(1,1,1,0,1,1,1,0,0);
c(0,0,0,1,0,0,1,1,1);


pearson相似度

皮尔森相关系数是用于衡量任意两个变量间线性相关程度的统计量,系数值的绝对值越大相关性越强,值域范围为[-1,1]。

深度学习两个人的相似度 比较两个人的相似度_相似度_16


皮尔逊相关度评价算法首先会找出两位评论者都曾评论过的物品,然后计算两者的评分总和与平方和,并求得评分的乘积之和。

0.8-1.0 极强相关
0.6-0.8 强相关
0.4-0.6 中等程度相关
0.2-0.4 弱相关
0.0-0.2 极弱相关或无相关

例:

深度学习两个人的相似度 比较两个人的相似度_线性代数_17


计算每一行的平均值。


深度学习两个人的相似度 比较两个人的相似度_深度学习两个人的相似度_18


每一行的评分减去各自的平均值


深度学习两个人的相似度 比较两个人的相似度_线性代数_19


深度学习两个人的相似度 比较两个人的相似度_深度学习_20


深度学习两个人的相似度 比较两个人的相似度_机器学习_21

Jaccard相似度

杰卡德系数是衡量两个集合间相似性的常用公式。在推荐系统中,杰卡德相似系数可以度量两个购买若干商品的用户之间的相似性。J值越大,说明相似度越高。其公式如下:

深度学习两个人的相似度 比较两个人的相似度_线性代数_22


与Jaccard相似度相反的概念,用两个集合中不同元素的比例来衡量两个集合的区分度。公式为:

深度学习两个人的相似度 比较两个人的相似度_深度学习_23


例:

深度学习两个人的相似度 比较两个人的相似度_机器学习_24


深度学习两个人的相似度 比较两个人的相似度_深度学习两个人的相似度_25


深度学习两个人的相似度 比较两个人的相似度_相似度_26


深度学习两个人的相似度 比较两个人的相似度_深度学习_27

缺点:
Jaccard系数主要用于布尔值度量的个体间的相似度,因此无法衡量差异具体值的大小,只能获得“是否相同”这个结果,所以Jaccard系数只关心个体间共同具有的特征是否一致这个问题。只适用于二元属性数据的集合。