版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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和年代为y
10、ear的电影查找电影库,推荐地区为area和年代为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) 多样性Diver
12、sity s(x,y)表示用户x和y的相似性。6) 覆盖率Coverage 表示推荐列表L中不同的电影个数,M为系统电影库中电影总数。在本文实现的混合系统中,总共有1500部电影,1200个用户,总共6500个评分,以此为测试条件。设定不同的推荐列表长度L,Hits和diversity指标的值如下表所示。表5 不同推荐列表长度系统性能评价推荐列表长度LHitsDiversity500.75200.7232200.75680.7126100.71430.701250.66860.773110.53460.9293从上表可以看出,混合推荐系统中,不同列表长度L下系统性能是相对稳定的。下面的表6给出
13、了混合推荐系统与传统算法在准确度P、召回率R、F和多样性四个方面的结果比较。从该表中可以发现,混合推荐算法比传统算法的准确性方面有所提升。表6 系统性能评价指标对比评价指标基于内容推荐混合推荐算法提升百分比准确度P0.0067920.0068751.22%召回率R0.29280.29741.57%F0.0131860.013492.31%多样性0.65120.69626.91%从推荐系统的覆盖率指标来看,结果如下图所示。从下图可知,混合推荐系统在覆盖率指标上市明显高于单纯的基于内容推荐系统。图8 覆盖率比较结论本文电影推荐系统采用B/S模式的三层框架设计,分为表示层、业务层和数据层。采用分层结构只要目的是使各层之间相互独立,各层不需要关注别层的内部或者内部实现机制。个性化推荐系统是当前非常热门的领域,融合了网络
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江西省吉安市安福中学2026届高二上物理期末综合测试模拟试题含解析
- 福建省福州市闽侯第一中学2026届高二生物第一学期期末考试试题含解析
- 辽宁省抚顺市十中2025-2026学年高一生物第一学期期末学业质量监测试题含解析
- 河南省安阳市滑县第二高级中学2026届数学高二第一学期期末考试模拟试题含解析
- 汽车二手车鉴定与评估
- 船舶运输招工合同范本
- 茶馆转让物品合同范本
- 菇棚大棚建设合同范本
- 网络办理租赁合同范本
- 网络贷款续签合同范本
- 管理经济学:理论与案例 第2版 课件全套 毛蕴诗 第1-14章 企业性质与环境、企业目标 -政府与企业
- 2024单位消防安全评估导则
- 传感器应用技术 课程思政课件 项目一 传感器概述
- 《百年孤独》专用课件
- 将配偶追加为被执行人申请书
- 煤矿井下零星工程管理制度
- 退耕还林工程
- 省纸打印版:法国 纪录片《家园》(Home)中英字幕
- 抗菌药物的合理应用
- GB/T 18380.11-2022电缆和光缆在火焰条件下的燃烧试验第11部分:单根绝缘电线电缆火焰垂直蔓延试验试验装置
- DB4113T 021-2022 南阳艾 艾绒标准
评论
0/150
提交评论