1、相似度的几种方法
1.1Jaccard相关系数
Jaccard相关系数主要用于计算两个集合的并集和交集的比值来度量用户相似度
注:Jaccard相关系数适合计算离散型集和的相似度,对于非离散型的评分矩阵,Jaccard相关系数没有考虑评分值对相似度的影响,对于10级评分矩阵的相似度计算效果较差
1.2余弦相似度
余弦相似度通过计算两个向量间的夹角余弦值衡量两个用户的相似度,首先找到两个用户共同评过分的项目集,然后再计算这两个向量余弦值,余弦相似度更加注重方向上的相似性而非距离上的。
1.3皮尔森相关系数
皮尔森相关系数利用向量间的线性相关性表示用户相似度,首先找到两个用户共同评过分的项目集,然后再计算这两个向量的相关系数
1.4欧几里德距离
欧几里德距离是最常见的距离计算公式,计算多维空间各个点的绝对距离,同类型的还有曼哈顿距离,明可夫斯距离等
因为计算是基于各维度特征的绝对数值,所以欧氏度量需要保证各维度指标在相同的刻度级别,比如对身高(cm)和体重(kg)两个单位不同的指标使用欧式距离可能使结果失效
2、标准化的几种方式
2.1 0-1标准化
2.2 Z-score标准化
这种方式处理后的数据服从正态分布,需要用到均值mu和标准差sigma
2.3 Sigmoid函数
Sigmoid函数是一个具有S型曲线的函数都可以称为Sigmoid函数,在(0, 0.5)处中心对称,在(0, 0.5)附近有比较大的斜率,而当数据趋向于正无穷和负无穷的时候,映射出来的值就会无限趋向于1和0
参考:https://blog.csdn.net/kryolith/article/details/39770187
最新评论