`
iluoxuan
  • 浏览: 579904 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

皮尔逊相关度评价-寻找用户相似度

 
阅读更多

1:python的数据字典格式在《集体智慧》中的,

 

prefs={'a':{'harrybotter':2.5,'superman':2.0}}等这样的字典格式

 2:数学公式:

 

http://zh.wikipedia.org/zh-cn/%E7%9B%B8%E5%85%B3#.E7.9A.AE.E5.B0.94.E9.80.8A.E7.A7.AF.E5.B7.AE.E7.B3.BB.E6.95.B0

 

 

皮尔逊积差系数

参见皮尔森积差相关系数

[编辑]数学特征

\rho_{X,Y}={\mathrm{cov}(X,Y) \over \sigma_X \sigma_Y} ={E((X-\mu_X)(Y-\mu_Y)) \over \sigma_X\sigma_Y},

其中,E数学期望,cov表示协方差\sigma_X和 \sigma_Y标准差

因为\mu_X = E(X)\sigma_X^2 = E(X^2) - E^2(X),同样地,对于Y,可以写成

\rho_{X,Y}=\frac{E(XY)-E(X)E(Y)}{\sqrt{E(X^2)-E^2(X)}~\sqrt{E(Y^2)-E^2(Y)}}.

当两个变量的标准差都不为零,相关系数才有定义。从柯西-施瓦茨不等式可知,相关系数的绝对值不超过1。当两个变量的线性关系增强时,相关系数趋于1或-1。当一个变量增加而另一变量也增加时,相关系数大于0。当一个变量的增加而另一变量减少时,相关系数小于0。当两个变量独立时,相关系数为0.但反之并不成立。 这是因为相关系数仅仅反映了两个变量之间是否线性相关。比如说,X是区间[-1,1]上的一个均匀分布的随机变量。Y = X2. 那么Y是完全由X确定。因此Y 和X是不独立的。但是相关系数为0。或者说他们是不相关的。当Y 和X服从联合正态分布时,其相互独立和不相关是等价的。

当一个或两个变量带有测量误差时,他们的相关性就受到削弱,这时,“反衰减”性(disattenuation)是一个更准确的系数。

3:python的实现:


分子=E(XY)-E(X)E(Y)=pSum/n-(sum1*sum2)/n*n

分母= sqrt((sum1Sq/n-pow(sum1,2)/n*n)*(sum2sq/n-pow(sum2,2)/n*n))

r=分子/分母=上面的num/den

 

总结:

皮尔逊相关是对用户对相同的物品的喜欢程度,必需求出用户的共同物品,已经分别的和,按照公式就可以算出r
 
  • 大小: 45.9 KB
分享到:
评论

相关推荐

    基于皮尔逊相关度算法的推荐引擎的研究

    在众多的推荐算法中,皮尔逊相关度算法是一种常用且有效的策略,它基于用户评分数据来计算物品之间的相似性。这篇研究深入探讨了如何运用皮尔逊相关度算法构建推荐系统,并提供了相应的代码实现,旨在提升推荐的准确...

    电子政务-基于线性相似度排序的电力运行月度重要指标筛选方法.zip

    通过计算指标间的相关系数,如皮尔逊相关系数,可以量化它们之间的线性关系强度和方向。 接着,使用线性相似度算法,例如余弦相似度或欧几里得距离,来评估每对指标之间的相似度。这些算法可以测量两个向量(即两个...

    电信设备-基于用户之间相似度进行信息推送的方法及装置.zip

    常见的计算方法有余弦相似度、Jaccard相似度、皮尔逊相关系数等。 3. **用户画像**:基于用户的行为数据,构建一个抽象的、代表用户特征的模型,包括用户的年龄、性别、职业、兴趣、消费习惯等,用于更准确地理解和...

    基于用户协同过滤算法代码实现Java

    - **相似度计算**:在UCF中,通常使用余弦相似度或皮尔逊相关系数来衡量用户之间的相似性。当计算两个用户u和v的相似度时,会考虑他们共同评价过的电影,并根据他们的评分计算相似度。 - **预测评分**:对于目标...

    利用相似度矩阵根据用户浏览记录判断相似用户进行推荐的算法

    每个元素(i, j)表示用户i和用户j之间的相似度,通常通过计算他们共同评价过的物品的余弦相似度或者皮尔逊相关系数来得到。这种矩阵可以帮助我们找出具有相似兴趣的用户群体。 描述中提到的核心代码位于`test`包下...

    基于协同过滤算法的图书推荐系统论文 - 副本.docx

    - 计算用户之间的相似度(通常使用余弦相似度或皮尔逊相关系数)。 - 找出与目标用户最相似的一组用户。 - 推荐这些用户喜欢但目标用户尚未接触过的图书。 - **优点**:能够捕捉用户的个人兴趣,推荐结果更加个性...

    网络游戏-基于用户-服务特征的网络服务协同过滤方法.zip

    这一步通常使用余弦相似度或者皮尔逊相关系数等方法。相似度高的用户意味着他们可能有类似的口味,因此他们的游戏选择可以作为参考。同样,服务间的相似度也可以帮助找出在特征上相近的游戏。 然后,通过预测用户对...

    相似度计算

    在推荐系统中,它可以用于计算用户与用户或物品与物品之间的关联度。缺点是它不考虑重叠数量,且需要数据符合正态分布。 2. **欧几里德距离**(Euclidean Distance): 欧几里德距离是多维空间中两点间的直线距离...

    基于ItemCF的协同过滤 物品推荐系统 .zip

    - 物品相似度计算:基于用户对物品的评分,计算每对物品之间的相似度,常用的相似度指标有余弦相似度、皮尔逊相关系数等。 - 推荐生成:对于一个目标用户,找出其已评分物品中最相似的N个物品,然后推荐这些物品中...

    基于用户相似度和信任度的协同过滤算法

    相似度的计算方法可以有很多,比如皮尔逊相关系数、余弦相似度等。其次,算法还需要考虑用户之间的信任关系,这是本研究中提出的算法与其他传统算法的不同之处。信任关系的建立可以通过用户间的直接评价、共同行为的...

    基于协同过滤算法的旅游推荐系统.docx

    - 用户评价信息(评分、评论、点赞等) 这些数据需要经过预处理,如数据清洗(去除无效或重复数据)、数据标准化(确保数据格式一致)等步骤,以确保后续算法的有效运行。 ##### 2. 计算用户相似度 用户相似度计算...

    一种基于协同过滤推荐算法-K最近邻分类算法的App推荐方法.docx

    - **相似度计算**:常用的相似度计算方法有皮尔逊相关系数、余弦相似度等。 - **邻居选择**:确定一个合适的邻居数量K值,选择最相似的K个用户或物品作为参考对象。 - **推荐策略**:根据邻居用户或物品的行为为当前...

    机器学习算法配套案例实战-推荐系统ppt

    - 稀疏性问题:用户评价数据往往非常稀疏。 - 解决方案: - 使用皮尔逊相关系数计算相似度。 - 考虑共同打分物品的数量,通过归一化处理提高推荐准确性。 - **混合推荐算法**: - 结合多种推荐技术的优势,提供...

    python基于协同过滤的书籍推荐系统.zip

    这里可以使用余弦相似度或者皮尔逊相关系数来衡量用户之间的相似性。Python的Scipy库提供了计算这类相似度的函数。 在得到相似度矩阵后,推荐系统的核心部分就是预测用户对未评价书籍的评分。对于用户-用户协同过滤...

    基于协同过滤算法的推荐系统设计.docx

    - **相似度度量**:协同过滤中常见的相似度度量包括皮尔逊相关系数、曼哈顿距离、欧几里得距离、余弦相似度和Jaccard相似度。皮尔逊系数用于度量两个变量的线性相关性,而其他距离和相似度指标则用于衡量用户或物品...

    推荐系统讲解--.pdf

    在推荐系统中,皮尔逊相关系数可以用来衡量两个用户评分向量之间的相似度。 - 余弦相似度(Cosine Similarity):它是通过测量两个向量的夹角的余弦值来确定它们之间差异的一种方法。在推荐系统中,余弦相似度可以...

    协同过滤算实现

    物品相似度的计算通常采用余弦相似度或皮尔逊相关系数等方法。这种方法的优点在于可以有效地处理大规模数据,并且能发现物品之间的隐含关联。然而,它也可能面临冷启动问题,即新物品没有足够的评价历史,导致难以...

Global site tag (gtag.js) - Google Analytics