基于用户的协同过滤推荐算法原理和实现.docx

基于用户的协同过滤推荐算法原理和实现.docx

ID:59151303

大小:95.84 KB

页数:4页

时间:2020-09-11

基于用户的协同过滤推荐算法原理和实现.docx_第1页
基于用户的协同过滤推荐算法原理和实现.docx_第2页
基于用户的协同过滤推荐算法原理和实现.docx_第3页
基于用户的协同过滤推荐算法原理和实现.docx_第4页
资源描述:

《基于用户的协同过滤推荐算法原理和实现.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基于用户的协同过滤推荐算法原理和实现     在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单。该算法1992年提出并用于邮件过滤系统,两年后1994年被GroupLens用于新闻过滤。一直到2000年,该算法都是推荐系统领域最著名的算法。     本文简单介绍基于用户的协同过滤算法思想以及原理,最后基于该算法实现园友的推荐,即根据你关注的人,为你推荐博客园中其他你有可能感兴趣的人。基本思想     俗话说“物以类聚、人以群分”,拿看电影这个例子来说,如果你喜欢《蝙蝠侠》、《碟中谍》、《星际穿越》、《源代码》等电影,另外有个人也都喜欢这些

2、电影,而且他还喜欢《钢铁侠》,则很有可能你也喜欢《钢铁侠》这部电影。    所以说,当一个用户A需要个性化推荐时,可以先找到和他兴趣相似的用户群体G,然后把G喜欢的、并且A没有听说过的物品推荐给A,这就是基于用户的系统过滤算法。原理     根据上述基本原理,我们可以将基于用户的协同过滤推荐算法拆分为两个步骤:1.找到与目标用户兴趣相似的用户集合2.找到这个集合中用户喜欢的、并且目标用户没有听说过的物品推荐给目标用户1.发现兴趣相似的用户     通常用Jaccard公式或者余弦相似度计算两个用户之间的相似度。设N(u)为用户u喜欢的物品集合,N(v)为用户v喜欢的

3、物品集合,那么u和v的相似度是多少呢:     Jaccard公式:     余弦相似度:     假设目前共有4个用户:A、B、C、D;共有5个物品:a、b、c、d、e。用户与物品的关系(用户喜欢物品)如下图所示:     如何一下子计算所有用户之间的相似度呢?为计算方便,通常首先需要建立“物品—用户”的倒排表,如下图所示:     然后对于每个物品,喜欢他的用户,两两之间相同物品加1。例如喜欢物品a的用户有A和B,那么在矩阵中他们两两加1。如下图所示:     计算用户两两之间的相似度,上面的矩阵仅仅代表的是公式的分子部分。以余弦相似度为例,对上图进行进一步计算

4、:     到此,计算用户相似度就大功告成,可以很直观的找到与目标用户兴趣较相似的用户。2.推荐物品     首先需要从矩阵中找出与目标用户u最相似的K个用户,用集合S(u,K)表示,将S中用户喜欢的物品全部提取出来,并去除u已经喜欢的物品。对于每个候选物品i,用户u对它感兴趣的程度用如下公式计算:     其中rvi 表示用户v对i的喜欢程度,在本例中都是为1,在一些需要用户给予评分的推荐系统中,则要代入用户评分。     举个例子,假设我们要给A推荐物品,选取K=3个相似用户,相似用户则是:B、C、D,那么他们喜欢过并且A没有喜欢过的物品有:c、e,那么分别计算

5、p(A,c)和p(A,e):     看样子用户A对c和e的喜欢程度可能是一样的,在真实的推荐系统中,只要按得分排序,取前几个物品就可以了。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。