相似度的计算
来源:互联网 发布:服务器带宽测试软件 编辑:程序博客网 时间:2024/05/01 13:15
种1:欧氏距离
我们希望相似度的值在0--1之间变化,并且物品越相似,他们的相似度值也就越大,我们可以用相似度=1/(1+距离)来表示,当距离为0时,相似度为1.0,当距离非常大时,相似度也就趋近于0
种2:皮尔逊相关系数(pearsoncorrelation)
它度量的是两个向量之间的相似度。它相对于欧氏距离的一个优势是:它对用户评级的量级并不敏感。比如:一个狂躁者对所有物品的评分都是5分,而另一个忧郁着对所有物品的评分都是1分,它会认为这两个向量是相等的。在Numpy中,它的计算是由函数corrcoef进行的。可以看代码实现
种3:余弦相似度(cosinesimilarity)
计算的是两个向量夹角的余弦值.如果夹角为90度,则相似度为0;如果两个向量的方向相同,则相似度为1.0。我们采用两个向量的预选相似度的定义如下:
python实现程序:
#coding:utf-8
from numpy import *
from numpy import linalg as la
#欧式距离
def ecludSim(inA, inB):
return 1.0/(1.0 + la.norm(inA - inB))
#皮尔逊相关系数
def pearsSim(inA, inB):
if len(inA) < 3 : return 1.0
return 0.5+0.5*corrcoef(inA,inB,rowvar=0)[0][1]
#余弦相似度
def cosSim(inA, inB):
num = float(inA.T*inB)
denom = la.norm(inA)*la.norm(inB)
return 0.5+0.5*(num/denom)
python2中是实现
- 相似度的计算
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度。
- 计算字符串的相似度
- 计算字符串的相似度
- 计算字符串的相似度
- ACM HDU 11 2016 数据的交换输出
- 机房收费系统(1)
- ios 合理利用try catch
- 《深入理解JAVA虚拟机》笔记1——回顾
- Beautiful Ip address
- 相似度的计算
- 工作流
- MQ技术介绍
- 操作系统之页面置换算法
- glFlush和glFinish以及SwapBuffer的用法
- Spring+Ibatis多数据源问题
- react-redux,redux,react native之间的关系
- NodeJS+Angular+Mongodb Web开发(4)
- DOL开发环境配置