基于个性化推荐算法的电影旅游APP

(整期优先)网络出版时间:2021-01-05
/ 2

基于个性化推荐算法的电影旅游 APP

赵薇

天津工业大学 计算机科学与技术学院 ,天津 ,西青 ,300387

摘要:近年来旅游业发展迅速,生活多元化、个性化的趋势使得将特色旅游与影视作品相结合的影视旅游主题备受年轻人青睐。因此我们提出开发一款基于个性化推荐算法的影视旅游APP。APP采用协同过滤推荐算法,实现针对不同用户的个性化影视旅游资源推荐,还可以根据多种路径规划算法为用户实现旅游路线的个性化推荐,达到智能规划的功能。

关键词:影视旅游,个性化推荐,智能规划,协同过滤推荐算法

1 引言

随着生活水平的不断提高,物质的充足已经无法完全满足人们对生活多元化、个性化的追求。在提高精神生活水平的过程中,看电影、旅游成为了很多人休闲放松的方式。电影是日常生活中流行文化的重要组成部分,而这些电影制作的背景往往成为吸引人的中心[1],对于自己在电影中看到的美丽的场景, 自然会产生想去其中游历的想法,有需求就有市场,影视旅游应运而生。

本文提出基于个性化推荐算法的电影旅游APP的构想,研究基于用户喜好的协同过滤推荐算法,实现电影景点的个性化推荐,以及基于路径规划算法的智能规划路线功能。

2 APP整体架构

本APP为一款集电影、旅游景点资源为一体,辅之以路线推荐、旅游导航、社交分享、旅游攻略的多功能APP,采用基于用户喜好的协同过滤推荐算法,实现电影景点的个性化推荐,以及基于最短路径算法的智能规划路线功能。旨在将电影场景与旅游景点相关联,并且不拘泥于某一景点或电影,而是通过主题进行推荐。在推荐中,用户可以找到想看的电影,也能发现想去的景点。实现为不同喜好的用户推荐电影和景点,安排个性化旅游路线的核心功能。同时提供景点实地导航、酒店查询、旅游攻略、游记分享等模块,丰富APP内容。主要内容可以分为:实现多目的地路线规划;目的地模糊的智能推荐景点;目的地明确的智能规划游览路线、景点实时实地导航、其他应用功能设计与实现。

APP采用前后端分离的开发模式,前端使用Vue框架;接口服务器采用Spring Boot框架;采用Redis+Mysql作为存储数据的解决方案。数据获取方面,使用基于Scrapy爬虫框架。目前爬取了电影1千多部,景点2万多条,周边酒店1万多个。推荐算法采用基于用户的协同过滤算法。景点规划算法使用基于迪杰斯特拉和广度优先搜索的A*算法。

3 算法

3.1偏好景点推荐算法

在人们普遍追求生活多元化的同时,个性化旅游推荐越来越受到人们的欢迎和关注。应用基于用户的协同过滤推荐算法[2],为用户实现景点推荐。

3.1.1 筛选关联用户

用户众多,每个用户的需求都不尽相同,研究的前提是筛选出有共同喜好的用户,以减少无意义的计算。采用倒排法[3]筛选关联用户。首先将用户-物品表转化为物品-用户表,即倒排表。然后根据倒排表画出相似度矩阵。

3.1.2 计算用户相似度

筛选出关联用户后,根据用户过去的行为轨迹计算这些有关联的用户的兴趣相似度。根据常用相似度算法杰卡德相似系数[4]

5ff42da8311e1_html_c3f29c55b63f5de4.gif

(1)

变形得出计算两个用户兴趣相似度的方法:

5ff42da8311e1_html_3ae7563f84997a71.gif

(2)

式中5ff42da8311e1_html_c3313c45fc974eea.gif 代表了用户5ff42da8311e1_html_aff491899c664e58.gif 感兴趣的电影和地点,5ff42da8311e1_html_e8d65f81c9f40376.gif 代表了用户5ff42da8311e1_html_4de0bdb2d787966.gif 感兴趣的电影和地点。

值得注意的是,相似度矩阵中数值为0时,不需要去计算兴趣相似度。

3.1.3 计算用户对物品的兴趣度

利用用户5ff42da8311e1_html_aff491899c664e58.gif 对物品5ff42da8311e1_html_6881f05de28a0d18.gif 的感兴趣程度公式求得用户对物品的兴趣度:

5ff42da8311e1_html_63712c6297b73b4c.gif

(3)

式中5ff42da8311e1_html_9a1b6b375a489ea6.gif 是与用户5ff42da8311e1_html_aff491899c664e58.gif 兴趣最接近的5ff42da8311e1_html_e256ef11c89faf84.gif 个用户的集合5ff42da8311e1_html_bd0c6c61e059f751.gif 是对物品5ff42da8311e1_html_6881f05de28a0d18.gif 有过行为的用户集合, 5ff42da8311e1_html_9d05697f7694fb69.gif 是用户5ff42da8311e1_html_aff491899c664e58.gif 和用户5ff42da8311e1_html_4de0bdb2d787966.gif 的兴趣相似度,5ff42da8311e1_html_cf359a6a0040cd79.gif 代表用户5ff42da8311e1_html_4de0bdb2d787966.gif 对物品5ff42da8311e1_html_6881f05de28a0d18.gif 的兴趣因为使用的是单一行为的隐反馈数据,所以另其等于1。

3.1.4 5ff42da8311e1_html_8b4cebdab40dc88b.gif分析法进行推荐

得到用户对物品的兴趣度后,利用5ff42da8311e1_html_8b4cebdab40dc88b.gif[5]分析法为用户推荐。

5ff42da8311e1_html_8b4cebdab40dc88b.gif 分析法为通过5ff42da8311e1_html_8b4cebdab40dc88b.gif 算法从研究对象中得到所需的5ff42da8311e1_html_cbc567f58dde0851.gif 个数据,并从排序列表中选取最大或最小的5ff42da8311e1_html_cbc567f58dde0851.gif 个数据,即对所有物品进行5ff42da8311e1_html_3bff574869973901.gif 计算兴趣度后进行降序,取前5ff42da8311e1_html_cbc567f58dde0851.gif 个物品推荐给用户。

精确判断两个用户的兴趣是否相同,广受欢迎的热门物品并不能说明问题,而应该用冷门产品做决策。利用更能精确判断的公式:

5ff42da8311e1_html_4ea201cdb1ea04e9.gif

(4)

式中5ff42da8311e1_html_18de0da8ccdb0dcc.gif 惩罚了用户u和用户v共同兴趣列表中热门物品对他们相似度的影响,使得结果更为精确。

3.2游览顺序推荐算法

采用最短路径算法实现为用户智能规划路线,设计计算位移距离最短的算法,选择“球面距离公式”[6],设所求点A纬度角β1,经度角α1, 点B 纬度角β2, 经度角α2

5ff42da8311e1_html_b79304935bc87b22.gif

(5)

将需要计算距离的两点记为A、B,球心为O。地球本身是个不规则的球体,本文将其看作一个规制球体半径取平均值:6371.393千米。编写SQL语句的时候将算法分解为以下3步:

  1. 5ff42da8311e1_html_4616ba28081a3b3a.gif ——求∠AOB的余弦值;

  2. 5ff42da8311e1_html_ebd2a07c1b698a60.gif ——求∠AOB的反余弦值,值域为[0,π],本质是5ff42da8311e1_html_86efb15b73b9264c.gif

  3. 5ff42da8311e1_html_b6430f448107ce5c.gif 的反余弦值,等价于5ff42da8311e1_html_2ccb44d6e6efb97b.gif ,集合弧长公式。

4 APP效果展示


5ff42da8311e1_html_94ed10cfb59f43ab.png

图1:路线规划

5ff42da8311e1_html_534d5cc5840c7e45.png

图2:实时导航

5ff42da8311e1_html_1d397c415ee4cffd.png

图3:旅游日记

5ff42da8311e1_html_180c0c62de4d9ab3.jpg

图4:旅游攻略

5 结语

在电影和旅游成为越来越多的人的休闲方式之后,影视旅游备受欢迎。当观众沉浸于电影画面时产生心向往之的冲动,希望通过参观电影中的场景,体验现实生活中难以企及的生活。本APP既面向爱好电影的用户又面向热爱旅游的用户,将电影场景与旅游景点结合,根据场景顺序推荐旅游路线,为每一部电影,为每一位用户,都定制一条独特的旅游路线。旅游之余,用户还可以发布自己的游记和心得并且可以阅读他人的游记、电影心得,从而认识志同道合的朋友。APP将让电影积极作用于城市旅游,不仅可以增加其文化附加值,还可以将观众直接转换为旅客,大大推动旅游业的发展。

参考文献

[1]ŞENAY GÜNGÖR, AHMET UYSAL. FILM TOURISM: THE INFLUENCE OF FILM AND TV SERIES ON THE TOURISM ACTIVITIES IN NEVŞEHİR. 2019, :189-202.

[2]Hailong Chen, Wuyue Yan, Haijiao Sun, et al. Tag-Extended Collaborative Filtering Recommendation Algorithm. 2020, 1(5):745-752.

[3]陈震,刘洪健.基于倒排列表的网流索引检索与压缩方法[J].信息网络安全,2014(04):25-30.

[4]Paul, Jaccard. THE DISTRIBUTION OF THE FLORA IN THE ALPINE ZONE .onlinelibrary.wiley.com

[5]张雪峰,陈秀莉,僧德文.融合用户信任和影响力的top-N推荐算法[J].浙江大学学报(工学版),2020,54(02):311-319.

[6]丁佩. 球面距离公式及其应用[J]. 高中数学教与学, 2005, 000(007):9-11.

【基金项目】本文系天津市高等学校大学生创新创业训练计划,项目编号:202010058097