ImageVerifierCode 换一换
格式:DOC , 页数:11 ,大小:256KB ,
资源ID:2491236      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2491236.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于混合推荐的电影推荐系统设计.doc)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于混合推荐的电影推荐系统设计.doc

1、基于混合推荐的电影推荐系统设计基于混合推荐的电影推荐系统设计绪论随着经济的快速发展,人们的娱乐生活越来越丰富。电影,作为娱乐的重要组成部分,越来越受到大众的欢迎,特别是受到年轻人的喜爱。但是,如何在海量的电影中找到满足自己喜爱的电影却成为一个难题。电影个性化推荐应运而生,它就是来解决如何在海量信息中寻找关键点,向用户推荐出符合用户要求的电影。本文,基于内容和协同过滤混合的推荐算法,建立一个个性化的电影推荐系统。电影作为推荐给用户的一种产品,其对特定的时间依赖性并不强。基于内容的推荐系统可以有效地克服冷启动和数据稀疏性问题,在系统初运行阶段和有新用户进入阶段可以提供较高的准确性。当数据评估到达一

2、定程度后,使用协同过滤推荐系统进行推荐。协同过滤技术,不仅可以提供同类型的优质产品给用户,还可以根据近邻集的不同进行跨类型的推荐。并且随着时间的增加,用户评价数的增多,更多的用户加入到系统中后,会找到更匹配的近邻用户,使得推荐质量得到提升。系统设计一、 总体构架设计电影推荐系统采用B/S模式的三层框架设计,分为表示层、业务层和数据层。这样的设计模式达到了分散关注、松散耦合、逻辑复用和标准定义的目的。系统总体框架结构图如图1所示。二、 对象关系及动态模型a) 对象关系电影管理中的主要对象有:管理员和电影。管理员对电影的操作有:查询、修改、删除、添加等。管理员与电影是一对多的关系。电影推荐中的对象

3、是电影,系统在这些电影信息的基础上进行推荐,系统和电影的关系是多对多的关系。用户对象可以细分为普通用户和管理员。对象详细关系图如图2所示。电影信息,用户信息,用户浏览信息等数据层实时业务数据库数据仓库(历史数据)电影查阅,电影修改,电影删除,电影添加等业务层电影管理业务电影推荐系统算法注册,登陆,浏览,观看,添加,删除,修改等表示层页面浏览器网络应用客户端图1 总体构架设计用户管理员普通用户电影管理浏览观看电影信息推荐算法图2 对象间关系图b) 动态模型电影推荐模块是系统主要的动态模型。电影推荐系统的状态转化图如3所示。未推荐登陆已推荐(用户得到推荐信息)推荐已完成(用户根据得到的信息进行浏览

4、或观看)推荐处理结果记录用户兴趣保存用户浏览信息推荐结束图3 推荐的状态转化图三、 数据库设计用户信息表有三个属性,用户名、邮箱、密码。用户名是主键,为文本类型,邮箱和密码也是文本类型。用户信息数据字典如下表所示。表1用户信息数据表数据项类型用户名文本邮箱文本密码文本电影信息表有10个属性,电影序号是主键,为数值型。浏览次数也是数值型。电影名、演员、导演、类型、年代、地区、介绍、图片都是文本类型。电影信息表的数据字典如下表所示。表2 电影信息数据表数据项类型电影序号数值电影名文本演员文本导演文本类型文本年代文本地区文本介绍文本浏览次数数值图片文本用户兴趣信息表具有6个属性,其中序号为主键,是数

5、值型。其他用户名、电影名、类型、年代、类型都是文本类型。用户兴趣表的数据字典如下表所示。表3 用户兴趣信息数据表数据项类型序号类型用户名数值电影名文本类型文本年代文本类型文本电影显示信息表主要有4个属性,电影名为主键,文本类型。其他导演、演员、图片也是文本类型。电影显示信息表的数据字典如下表所示。表4 电影显示信息数据表数据项类型电影名文本导演文本演员文本图片文本电影推荐系统的E-R图如4所示。用户名用户密码邮箱浏览电影导演电影名用户名电影名演员演员类型地区图4 系统E-R图四、 混合推荐算法设计协同过滤通过计算用户之间的相似性获得推荐,但是忽略了项目和用户自身的特性,而且还具有冷启动问题。基

6、于内容的推荐虽然能够解决协同过滤中的不足,但是它也有缺陷。基于内容的推荐不可避免地受到信息获取技术的制约,例如自动提取多媒体数据的内容特征具有技术上的难题。在这种条件下,将这两个结合混合推荐算法成为必要。这两种算法的融合不仅相互弥补各自的不足,而且这种混合推荐系统还具有较高的精度和效率。本混合电影推荐系统中主要有两种推荐算法。一种是协同过滤算法,另一种是基于内容的推荐算法。这两种算法融合于本推荐系统中,根据不同的条件进行推荐。下面详细介绍两种算法的使用条件。协同过滤算法:与该用户相似的邻居大于等于3基于内容的推荐算法:与该用户相似的邻居小于3协同过滤算法原理:当用户登录时,系统自动计算此时的用

7、户相似性矩阵。如果该用户的相似性邻居大于等于3,则可以使用协同过滤算法推荐电影。基于内容的推荐算法原理:用户登录时,系统自动计算此时的用户相似性矩阵,如果该用户的相似邻居小于3,那么则使用基于内容的算法推荐电影。开始计算用户相似矩阵协同过滤算法推荐该用户的相似邻居=3是否基于内容的推荐算法推荐图5 混合系统推荐算法流程图如上图所示,用户登录后,系统即开始个性化推荐了,但是针对每个用户使用的方法不同,对任何一个用户进行推荐都要按照当前该用户的历史信息进行判断处理。首先计算用户相似性矩阵,如果与该用户的相似邻居大于等于3,那么表示打分矩阵不稀疏,则按照协同过滤算法推荐;否则,则使用基于内容的推荐算

8、法进行推荐。协同过滤算法流程图如下所示。开始计算与用户A对相同项目打分的用户得到列表listlist=3结束计算list中用户A的相似性(夹角余弦方法)找到与用户最相似的3个邻居集合S利用集合S,计算用户没有评分的项目(采用均值的方法)将计算得到的评分排序,找到评分最高的5个项目图6 协同过滤算法流程图如上图所示,介绍协同过滤的算法步骤:第一步: 用户A登录后,系统查询用户电影评分矩阵,如果某个用户X与用户A一样,A打分了他也打分了,那么将用户X加入到用户列表list中;第二步: 计算list表中各个用户与A之间的相似性,相似性的计算利用夹角余弦的方法,公式如下: 第三步: 根据第二步计算相似

9、性后,得到与用户A最相似的3个近邻集合S。第四步: 利用集合S,计算用户A没有评分的电影,采用S集合中三个邻居的打分均值。公式如下: 第五步: 将计算得到的电影评分排序,找出评分最高的5个电影,推荐给用户A,算法结束。基于内容的推荐算法流程图如下图所示:开始统计用户A浏览历史信息,找到用户A浏览过最多电影类型class、年代year和地区area查找电影库,推荐类型class、年代year和地区area查找电影库,推荐类型为class和地区为area的电影找到电影个数=5否是是找到电影个数=5结束找到电影个数=5查找电影库,推荐类型为class和年代为year的电影查找电影库,推荐地区为are

10、a和年代为year的电影否否是图7 基于内容的推荐算法流程图上图介绍了用户登录时,使用基于内容的推荐算法为用户推荐感兴趣的电影,该算法步骤如下:第一步: 根据用户浏览历史信息表,找到当前用户A浏览过的电影,统计这些电影中,用户A所关注的电影的类型class、年代year和地区area。第二步: 得到用户A浏览过的电影的类型、年代和地区后,得到电影数据库中找到类型为class、年代为year和地区为area的电影。找到的电影个数和大于等于5,则退出。否则,进行下一步。第三步: 在电影库中找到类型为class和地区为area的电影。找到的电影个数和大于等于5,则退出。否则,进行下一步。第四步: 在

11、电影库中找到类型为class、年代为year的电影。找到的电影个数和大于等于5,则退出。否则,进行下一步。第五步: 在电影库中找到年代为year和地区为area的电影。退出。性能测试推荐系统常用的几种评价指标定义如下:1) 准确率P 其中,表示在列表L中用户u的准确率,表示推荐列表L中用户u喜欢的产品数,L是推荐列表集合长度。2) 召回率R其中,表示在列表L中用户u的召回率,表示用户在测试集中观看的电影总数。3) F1score 其中,P为准确率,R为召回率。4) 命中率hit 其中,N为用户观看电影总数,S为推荐列表中的电影总数。5) 多样性Diversity s(x,y)表示用户x和y的相

12、似性。6) 覆盖率Coverage 表示推荐列表L中不同的电影个数,M为系统电影库中电影总数。在本文实现的混合系统中,总共有1500部电影,1200个用户,总共6500个评分,以此为测试条件。设定不同的推荐列表长度L,Hits和diversity指标的值如下表所示。表5 不同推荐列表长度系统性能评价推荐列表长度LHitsDiversity500.75200.7232200.75680.7126100.71430.701250.66860.773110.53460.9293从上表可以看出,混合推荐系统中,不同列表长度L下系统性能是相对稳定的。下面的表6给出了混合推荐系统与传统算法在准确度P、召回

13、率R、F和多样性四个方面的结果比较。从该表中可以发现,混合推荐算法比传统算法的准确性方面有所提升。表6 系统性能评价指标对比评价指标基于内容推荐混合推荐算法提升百分比准确度P0.0067920.0068751.22%召回率R0.29280.29741.57%F0.0131860.013492.31%多样性0.65120.69626.91%从推荐系统的覆盖率指标来看,结果如下图所示。从下图可知,混合推荐系统在覆盖率指标上市明显高于单纯的基于内容推荐系统。图8 覆盖率比较结论本文电影推荐系统采用B/S模式的三层框架设计,分为表示层、业务层和数据层。采用分层结构只要目的是使各层之间相互独立,各层不需要关注别层的内部或者内部实现机制。个性化推荐系统是当前非常热门的领域,融合了网络和数据库以及算法等技术,在当前随着互联网的普及,网上娱乐要求不断增加,个性化推荐系统具有很大的市场,也具有更多的挑战。如何以最简便的算法和要求为用户找到他们感兴趣的内容尤为重要,这要求不仅要有一个很好的数据模型还有能处理庞大数据的数据库。本文的混合推荐系统是基于内容推荐和协同过滤推荐的混合推荐系统。这两种算法有各自的优缺点,但是混合后可以体现出两种算法的各自优点,弥补各自的不足,比只使用一种算法效果更好。 11

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1