基于协同过滤算法的电影推荐系统设计

基于协同过滤算法的电影推荐系统设计

ID:27063474

大小:640.85 KB

页数:15页

时间:2018-11-30

基于协同过滤算法的电影推荐系统设计_第1页
基于协同过滤算法的电影推荐系统设计_第2页
基于协同过滤算法的电影推荐系统设计_第3页
基于协同过滤算法的电影推荐系统设计_第4页
基于协同过滤算法的电影推荐系统设计_第5页
资源描述:

《基于协同过滤算法的电影推荐系统设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、完美WORD格式.整理高级数据挖掘期末大作业.专业资料分享.完美WORD格式.整理基于协同过滤算法的电影推荐系统本电影推荐系统中运用的推荐算法是基于协同过滤算法(CollaborativeFilteringRecommendation)。协同过滤是在信息过滤和信息系统中正迅速成为一项很受欢迎的技术。与传统的基于内容过滤直接分析内容进行推荐不同,协同过滤分析用户兴趣,在用户群中找到指定用户的相似(兴趣)用户,综合这些相似用户对某一信息的评价,形成系统对该指定用户对此信息的喜好程度预测。电影推荐系统中引用了ApacheMahout提供的一个协同过滤算法的推荐引擎Tast

2、e,它实现了最基本的基于用户和基于内容的推荐算法,并提供了扩展接口,使用户方便的定义和实现自己的推荐算法。电影推荐系统是基于用户的推荐系统,即当用户对某些电影评分之后,系统根据用户对电影评分的分值,判断用户的兴趣,先运用UserSimilarity计算用户间的相似度.UserNeighborhood根据用户相似度找到与该用户口味相似的邻居,最后由Recommender提供推荐个该用户可能感兴趣的电影详细信息。将用户评过分的电影信息和推荐给该用户的电影信息显示在网页结果页中,推荐完成。一、Taste介绍Taste是ApacheMahout提供的一个个性化推荐引擎的高效

3、实现,该引擎基于java实现,可扩展性强,同时在mahout中对一些推荐算法进行了MapReduce编程模式转化,从而可以利用hadoop的分布式架构,提高推荐算法的性能。在Mahout0.5版本中的Taste,实现了多种推荐算法,其中有最基本的基于用户的和基于内容的推荐算法,也有比较高效的SlopeOne算法,以及处于研究阶段的基于SVD和线性插值的算法,同时Taste还提供了扩展接口,用于定制化开发基于内容或基于模型的个性化推荐算法。Taste不仅仅适用于Java应用程序,还可以作为内部服务器的一个组件以HTTP和WebService的形式向外界提供推荐的逻辑。

4、Taste的设计使它能满足企业对推荐引擎在性能、灵活性和可扩展性等方面的要求。下图展示了构成Taste的核心组件: .专业资料分享.完美WORD格式.整理 从上图可见,Taste由以下几个主要组件组成:DataModel:DataModel是用户喜好信息的抽象接口,它的具体实现支持从指定类型的数据源抽取用户喜好信息。在Mahout0.5中,Taste提供JDBCDataModel和FileDataModel两种类的实现,分别支持从数据库和文件文件系统中读取用户的喜好信息。对于数据库的读取支持,在Mahout0.5中只提供了对MySQL和PostgreSQL的支持,如

5、果数据存储在其他数据库,或者是把数据导入到这两个数据库中,或者是自行编程实现相应的类。UserSimilarit和ItemSimilarity:前者用于定义两个用户间的相似度,后者用于定义两个项目之间的相似度。Mahout支持大部分驻留的相似度或相关度计算方法,针对不同的数据源,需要合理选择相似度计算方法。UserNeighborhood:在基于用户的推荐方法中,推荐的内容是基于找到与当前用户喜好相似的“邻居用户”的方式产生的,该组件就是用来定义与目标用户相邻的“邻居用户”。所以,该组件只有在基于用户的推荐算法中才会被使用。Recommender:Recommend

6、er是推荐引擎的抽象接口,Taste中的核心组件。利用该组件就可以为指定用户生成项目推荐列表。.专业资料分享.完美WORD格式.整理二、相似性度量本章节将系统中用到的几个相似性度量函数作以介绍,taste中已经具体实现了各相似性度量类。UserCF和ItemCF都依赖于相似度的计算,因为只有通过衡量用户之间或物品之间的相似度,才能找到用户的“邻居”,才能完成推荐。下面就对常用的相似度计算方法进行详细的介绍:1.基于皮尔森相关性的相似度——Pearsoncorrelation-basedsimilarity皮尔森相关系数反应了两个变量之间的线性相关程度,它的取值在[-

7、1,1]之间。当两个变量的线性关系增强时,相关系数趋于1或-1;当一个变量增大,另一个变量也增大时,表明它们之间是正相关的,相关系数大于0;如果一个变量增大,另一个变量却减小,表明它们之间是负相关的,相关系数小于0;如果相关系数等于0,表明它们之间不存在线性相关关系。用数学公式表示,皮尔森相关系数等于两个变量的协方差除于两个变量的标准差。Pearsoncorrelation-basedsimilarity协方差(Covariance):在概率论和统计学中用于衡量两个变量的总体误差。如果两个变量的变化趋于一致,也就是说如果其中一个大于自身的期望值,另一个也大于自身

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

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

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