android的电影推荐平台研究与实现(源码)

随着科技发展在不断地进步,人们正在努力寻找如何高效地推荐感兴趣的电影娱乐信息的方法。近年来,个性化推荐服务成为一个热门,它可以挖掘用户的个人喜好与物品本身的数据内在联系,从而对用户进行个性化推荐。本文针对现代人们对电影信息获取的高要求和推荐算法效率不高的冲突,本着满足用户需求和符合市场规律为目的,开发了基于Android的电影推荐系统。该系统包括基于用户协同过滤算法研究与系统功能设计与实现两大部分。通过爬虫获取豆瓣电影的数据以及用户的各种历史行为,评估出用户的喜好程度,使用推荐算法进行模拟训练,最小均方根来衡量预测准确度,推荐出相似度较高的电影。本系统主要有电影分类、电影推荐、模糊搜索、选座购票、文章推荐、定位搜索附近影院、统计管理等功能。
引言
引言
目录
推荐系统原理
推荐系统理论知识
推荐系统首先需要准确大量的数据集,对这些数据进行模拟训练,再将训练结果推荐给特定用户,利用样本中的数据集进行验证。协同过滤推荐指的是包括用户和物品两方面相似度的计算,从而预测用户的喜好程度,研究该特定用户的历史行为,查找其他具有特定历史行为的用户,将他们所喜欢的东西进行平均加权,排序后推荐给该特定用户。基于内容的推荐指的是计算内容之间的相似度,对各个内容部分进行不同的权重设置,从而为用户推荐。以上的推荐可能比较片面化,所以就出现了混合推荐,包含了用户和物品两个维度,从而更好地为用户推荐物品[4]。
在网络信息过载与用户选择困难的情况下,个性化推荐系统随之诞生。推荐系统在不同领域都有探索,如音乐推荐、电影推荐、电子商务中商品推荐、社交软件的好友推荐、网页信息的个性化推荐、淘宝中店铺推荐,从而推荐系统为商家带来了更大的利润,如热门电影因为被推荐导致更多人观看、新闻篇章因为被推荐导致点击率翻倍增加、热卖物品因为被推荐导致销量更高。
研究用户注册所选择的用户标签,以及该用户所评论过的电影,查找电影数据集中其他评论过该电影的用户,并将其他用户所喜欢的电影进行平均加权,排序之后推荐该特定用户,并实时地更新用户的行为记录到数据库中。推荐系统总体架构图如图2所示。

图2 基于Android的电影推荐系统总体架构图
基于用户的协同过滤算法介绍 *好棒文|www.hbsrm.com +Q: ¥351916072$ 

基于用户的协同过滤算法指的是根据注册用户所评分评论过的电影或者用户所选择的电影标签等历史行为,在整个电影数据集中找到其他也评论过该电影的用户,查看特定用户与其他用户的相关性,从这里可以评估出用户对物品的喜好程度,将选定的其他用户所喜欢的电影进行平均加权,排序后将电影列表推荐给该用户。

图3 基于用户协同过滤算法的原理图
要想实现基于用户协同过滤推荐,需要以下几个步骤:

图4 基于用户协同过滤算法的流程图
电影数据集:官方的电影数据集有三个版本,本系统选用的MovieLens 100K数据集进行电影推荐,电影数据集中包括用户id、电影id、用户评分三个参数。
收集用户喜好:用户的喜好可以表现为用户标签的选择、用户的浏览记录、加入购物车、收藏宝贝等各种用户历史行为,所以我们应尽可能多地收集用户的喜好。在本系统中,用户喜好表现在用户注册时电影标签的选择以及评分评论相关电影的信息。
找到相似的用户:由于使用的是基于用户的协同过滤算法,所以找到相似用户最为关键,相似一般指用户之间兴趣加权的比较,本系统采用的是皮尔逊相关系数来计算用户之间的相似度。
计算推荐:使用基于用户的协同过滤算法将其他用户所喜欢的电影进行平均加权,所得到的电影排序后推荐给该特定用户,当用户进行注册的时候可以在界面选择自己喜欢的电影标签[9]。
本系统采用皮尔逊相关系数(Pearson Correlation Coefficient)来计算两个用户的爱好相似度,相关性强弱与相关系数成正比,而相关系数在1到1之间。皮尔逊相关系数(Pearson Correlation Coefficient)如公式1所示。
(公式1)
在公式1中,两个连续变量(X,Y)的pearson相关系数sim(x,y)等于它们之间的协方差cov(X,Y)除以它们各自标准差的乘积(σX,σY)。
在计算完用户与用户之间的相似度后,应使用推荐算法为用户推荐其最感兴趣的N个物品,所以预测感兴趣程度如公式2所示。
(公式2)
在公式2中,主要在喜欢物品i的所有用户中查找前N个用户,同时将其他用户所喜欢的物品进行平均加权[14]。
系统分析与设计
基于Android的电影推荐平台设计时应满足经济可行性与技术可行性,以用户的需求为标准,同时将市场价值最大化。设计测试用例,不断地调试系统使其符合开发的需求。连通了软件的各个模块,从而可以生成和管理相应的文档,达到了实现整个系统功能的目的。
可行性分析
根据软件工程的规范要求,软件开发与设计的首要工作是进行可行性分析,该电影推荐系统研究主要分为经济可行性研究和技术可行性研究,主要的目标是确保该系统具有容易操作性,使得该推荐系统可以实现最初的功能与目标,该系统的可行性分析符合上面的需求设计,简述如下:
经济可行性
本系统主要针对热爱看电影的广大群体,因此开发费用较多,市场较大。本系统是否可以实施,我们要考虑实际开发过程的投入,主要是电脑的配置与环境的搭建,还有一定的开发费用和技术支持。而开发费用主要是开发人员所使用的网费和相关的阿里云租聘费用,技术支持可以查看网上的CSDN博客、各大程序员论坛及Github上的开源代码。该电影推荐系统具有非常大的市场价值,通过系统为用户推荐电影,用户可以进一步进行选座购票的操作,从而为商家带来巨大的利润。
技术可行性
软件开发的技术可行性是在各种突发因素下分析技术是否可以应用该系统,基于Android的电影推荐平台系统采用客户服务器端架构,前后端分别采用JS、PHP语言,基于结构化查询语言的关系型数据库MySQL,Ubuntu+阿里云+MySQL的组合可以完成客户端与后端的交互。系统需求分析

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/1608.html

好棒文