潘璇 王雨嫣
摘要:从旅游推荐系统的研究与应用现状出发,发现本异地差异的特点并没有在国内的旅游推荐系统中普及应用。因此依据用户的个性化偏好,以川渝的部分城市景点为基础,改进的基于物品的协同过滤推荐为核心,搭建了考虑用户是否来自于川渝地区这一本异地差异的个性化旅游推荐APP。
关键词:旅游推荐;协同过滤;本异地差异。
1.背景
在新冠病毒疫情的爆发导致国人对国内旅游需求不断增长,大数据时代信息爆炸与用户对信息的利用率反而下降的双重背景下[1],提出了一种具有现实意义的个性化旅游推荐系统,实现了一种更能符合用户需求来进行旅游景点推荐的APP。
2.算法介绍
2.1优化的基于物品的协同过滤推荐算法
2.1.1 传统的协同过滤推荐算法的缺点[2]
(1)用户对物品评分非常稀疏,可能无法得到精准的用户相似性;
(2)随着使用者和物品数目增多,计算复杂性也会增加导致系统性能变差;
(3)如果一个产品从来没有被任何一个系统使用者进行过评估,这个产品就不会成为被推荐的依据。
2.1.2 个性化环境下改进的协同过滤推荐算法
在实际应用中传统的推荐算法通常会遇到冷启动问题。为此我们提出建立初始用户必填的个性化表单,可有效解决冷启动问题。此外考虑到用户的地域差异会导致相似用户对同类型旅游景点产生不同程度的期望,该系统为每位用户增添了地域属性,以提高每位用户对推荐景点的满意度。
3.系统设计
3.1系统需求分析
主要以川渝地区的部分城市景点构建旅游推荐系统,以改良的基于物品的协同过滤推荐算法为核心,设计一个更能符合用户需求的个性化旅游推荐APP。
3.2系统总体功能设计
具体的系统功能结构图如图3.1所示。
3.3系统详细设计
3.3.1 功能模块详细设计
具体的功能流程设计如图3.2所示。
3.3.2 改进的协同过滤推荐算法设计
解决冷启动问题的具体做法如下。
(1)给用户和旅游景點增加标签
每位用户拥有风格属性和是否为川渝用户属性;每个旅游景点均有风格属性和是否火热属性。
(2)新用户注册后必须填写个性化表单
该个性化表单的内容为是否为川渝用户和风格属性。随后系统将内容保存到服务器数据库的用户表里的相应字段。
(3)按照表单内容排序呈现旅游景点
根据当前登录用户填写的风格类型对旅游景点进行排序,与当前登录用户风格相同的景点排序靠前,优先呈现给用户。
下面依次阐明本文在具体实现改进的基于物品推荐时的做法。
(1)寻找相似偏好用户
本系统所使用的偏好信息是用户“收藏”这一行为所产生的数据集,即协同过滤推荐中的隐性数据。当用户浏览到喜欢的景点时可对该景点进行“收藏”;当用户不再喜欢该景点时可对其“取消收藏”,上述行为分别会增加、减少本系统所收集的该用户偏好信息数据集中的数据。
(2)计算物品相似度
1)查看系统是否有当前登录用户的偏好数据集。请求当前登录用户的信息,然后遍历数据库中的用户收藏表。若遍历完成发现当前登录用户没有收藏,代表没有刻画该用户偏好的数据集,则退出推荐流程;反之,则继续推荐流程。
2)根据每位用户收藏的景点,先进行分类计数再以类别为单位对其降序排序。连接数据库中的用户表,获取每位用户的UID,并保存到自定义的数组中。依次从数组里取出UID,遍历收藏表,计数每位用户收藏的各类型景点;若当前计数用户就是现在的登录用户,那么在降序后把降序的结果单独保存,作为一会儿对该用户进行推荐的依据。
3)根据每位用户的top1和top2收藏,计算出最具有关联性的物品组合。根据上一步得出的每位用户收藏的景点的排序结果,依次统计top1和top2收藏的不同组合的个数,计算完成后再对其进行排序,得到最火热的组合。
4)给用户推荐景点。若用户收藏的景点中有属于最火热组合里的其中一个类别,则为用户推荐一个该组合中另外一个类别的景点,其余情况则不推荐景点。在呈现时,若用户是川渝属性,那么推荐的景点不仅满足计算出的风格后,还应属于非火热属性;反之则应属于火热属性。
4.结论
本系统考虑了本异地差异,对基于物品的推荐结果再次进行了优化。传统的基于物品的协同过滤推荐算法,是一种大众化的相似,如景点A和景点B相似,是因为整个用户群体中有很多用户同时收藏这两个景点,假设目标用户收藏了景点A虽然推荐景点B看似合理,但是这个用户是否真的有喜欢这个景点其实有待考量;在算法最后加入了本异地差异就考虑到了这一点,在最后不仅合理的理由推荐给用户,而且这个推荐的物品确实也考虑到了是否真的适合他。
References
[1]Milicevic,A.K.,Nanopoulos,A.&Ivanovic,M.Social tagging in recommender systems:a survey of the state-of-the-art and possible extensions.Artif Intell Rev 33,187–209(2010).
[2]Jia,Z.,Yang,Y.,Gao,W.,Chen,X.:User-based collaborative filtering for tourist attraction recommendations.In:International Conference on Computational Intelligence&Communication Technology,Ghaziabad,India(2015).
来源:训练计划 + 项目编号S202010615101