OTA网站中个性化的酒店推荐系统及方法与流程

文档序号:11288123阅读:686来源:国知局
OTA网站中个性化的酒店推荐系统及方法与流程

本发明涉及一种酒店推荐系统及方法,特别是涉及一种ota网站中个性化的酒店推荐系统及方法。



背景技术:

目前随着互联网和大数据技术的快速发展,推荐系统已经被越来越多的应用到各行各业,尤其是互联网行业中。比较成熟的有亚马逊网站的个性化商品推荐系统、网易的个性化音乐推荐系统等。而随着网络及移动互联网技术的不断发展,越来越多的消费者也开始选择通过ota网站(在线旅游网站)及移动端app(应用程序)查看酒店信息并订购酒店,那么在用户需要订购酒店时为其推荐符合其偏好的酒店,便成为一项必不可少的要求。

由于酒店产品与其他电商产品相比具有一些特殊性,用于周边酒店的个性化推荐问题也存在其复杂性和特殊性,主要表现在以下几个方面:

第一,传统的推荐系统,通常会根据用户特性进行一些交叉推荐(如买漫画书,推荐该漫画的周边等),而ota网站的产品是单一的,不可能进行交叉推荐,只能利用产品细节推荐更加符合用户偏好的酒店,如星级、价位、地理位置等。

第二,由于酒店的库存是有限的,当酒店满房之后,即使它非常符合客户的需求,也不能再为用户推荐该酒店;而传统的推荐系统,很少会受到库存的影响,即使某件产品脱销了,也可以让厂家加快该产品的生产速度和适当延长发货时长来解决。

第三,酒店是一种不可移动的产品,当用户在查询目标酒店的时候,一般的会考虑该酒店附近的酒店,比如用户在查询a城的酒店时,如果推荐系统给其推荐b城市的酒店时,那么这个推荐被采用的概率就极低,所以在推荐酒店时用户对酒店的位置是有要求的,因此在设计推荐酒店推荐系统的时候,必须要考虑酒店的位置。

第四,当酒店的状态(是否满房、剩余房间价格比较高)发生变化时,必须实时进行反馈,对推荐结果进行调整,所以酒店的推荐系统必须是实现实时反馈。

基于上述情况可以看出,在其他电商中广泛采用的推荐算法与系统并不能满足ota网站进行个性化周边酒店推荐的目的。



技术实现要素:

本发明要解决的技术问题是为了克服现有技术中传统推荐算法无法处理ota网站中酒店推荐的缺陷,提供一种ota网站中个性化的酒店推荐系统及方法。本发明不仅考虑了酒店的位置、星级、价格以及用户的历史画像等因素,而且利用了酒店的实时信息、用户的实时偏好信息等,能够实时个性化的向用户推荐符合用户偏好的周边酒店,通过该算法与系统,ota网站可以让用户用更短的时间选择到满意的酒店。

本发明是通过下述技术方案来解决上述技术问题的:

本发明提供了一种ota网站中个性化的酒店推荐系统,其特点在于,包括:

数据采集模块,用于根据用户在客户端的操作,获取用户信息(ui信息)和目标酒店信息(hi信息);

初选模块,用于根据用户信息和目标酒店信息,从数据库中获取目标酒店的静态维度(如星级、商圈等)、实时维度(如酒店可订率、酒店最低价等)和目标酒店的周边酒店备选池(记为h),并获取周边酒店备选池的静态维度和实时维度;

实时偏好推荐模块,用于根据所述初选模块获取的各类数据,利用个性化周边酒店推荐算法进行处理,得到所述周边酒店备选池中的每个候选酒店的评分并进行降序排序;

实时信息过滤模块,用于过滤不可预订的候选酒店,将剩余的排名靠前的n个候选酒店推送给用户,其中n为正整数。

较佳地,所述酒店推荐系统还包括:

线上模块,用于在用户访问ota网站时,向用户展示所述n个候选酒店。所述线上模块在网站及app界面中,当用户进入酒店详情页时,调用个性化周边酒店推荐算法,在酒店详情页下方展示为根据用户个性化推荐的周边酒店。

较佳地,所述数据采集模块还用于获取用户的实时偏好;

所述初选模块还用于根据用户信息获取用户画像信息及用户的实时偏好信息;

其中所述初选模块在获取用户画像信息时会考虑到部分新用户,为其填充粗略的画像。

所述实时偏好推荐模块还用于根据用户的实时偏好信息修改每个候选酒店的评分。

较佳地,所述不可预订的候选酒店包括满房的、用户不可定的、临时的并且已经下线的、app前台因某种原因下线的、无法显示的、其他业务方要求的不可上线的候选酒店。

较佳地,所述个性化周边酒店推荐算法为逻辑回归模型算法。

本发明的目的在于还提供了一种ota网站中个性化的酒店推荐方法,其特点在于,包括以下步骤:

s1、根据用户在客户端的操作,获取用户信息和目标酒店信息;

s2、根据用户信息和目标酒店信息,从数据库中获取目标酒店的静态维度、实时维度和目标酒店的周边酒店备选池,并获取周边酒店备选池的静态维度和实时维度;其中,酒店维度具体包括历史维度与实时维度,储存最新的酒店数据,包括且不限于酒店的星级、价格、经纬度、所属商圈、服务、品牌等。

s3、根据所述初选模块获取的各类数据,利用个性化周边酒店推荐算法进行处理,得到所述周边酒店备选池中的每个候选酒店的评分并进行降序排序;

s4、过滤不可预订的候选酒店,将剩余的排名靠前的n个候选酒店推送给用户,其中n为正整数。

其中,周边备选池酒店不是简单的来自于对城市中所有酒店遍历后的结果,而是根据历史订单,获取曾订购过目标酒店(hi)的用户群u所订购过酒店集合h1,从h1中选取距离hi符合条件的酒店h2,并计算h1与h2之间的交叉用户数(其计算交叉用户的方法是对传统协同过滤算法的改进),如果h2的数目超过备选池所要的数目n,则选取交叉用户最多的前n个酒店,如果h2的数目小于n,则用符合距离条件的热销酒店进行补充。

所述的交叉用户的计算方法与传统的协同过滤方法存在较大的差异。在传统的基于物品的协同过滤方法中,往往采用交叉用户概率的方法对关联物品进行划分。假设存在酒店a和b,则根据公式计算二者交叉用户在并集用户中的概率:然后根据概率降序排列获得关联结果。本发明直接利用式:a∩b计算交叉用户数,克服传统依概率获取关联性的缺点,提高了准确性。

较佳地,所述酒店推荐方法还包括:

s5、在用户访问ota网站时,向用户展示所述n个候选酒店。

较佳地,步骤s1中还获取用户的实时偏好;

步骤s2中还根据用户信息获取用户画像信息及用户的实时偏好信息;

其中,所述用户画像信息包括用户的历史订购信息,所述历史订购信息包括但不限于用户订购酒店的平均星级、用户订单的平均价格、用户商务出行次数、亲子出游次数等。用户的实时偏好信息包括当前会话中浏览的酒店信息、用户的筛选信息、用户的查询信息等。在有用户实时偏好信息的情况下,可以根据实时偏好,改变参数加权进而调整候选酒店得分。

步骤s3中还根据用户的实时偏好信息修改每个候选酒店的评分。

较佳地,所述不可预订的候选酒店包括满房的、用户不可定的、临时的并且已经下线的、app前台因某种原因下线的、无法显示的、其他业务方要求的不可上线的候选酒店。

较佳地,所述个性化周边酒店推荐算法为逻辑回归模型算法。

本发明的积极进步效果在于:本发明可以提升用户体验,由于本发明所推荐的酒店都是根据客户实时偏好和实时酒店信息所推荐的,在为客户选择了适合客户产品的同时,为客户提前排除了符合条件但却因为各种原因无法提供服务的酒店,提升了用户网上订酒店的效率,其中准确率由原来的2.8%提升到16.7%,查全率从原来的56%提升到76%。。

附图说明

图1为本发明的较佳实施例的ota网站中个性化的酒店推荐系统的模块示意图。

图2为本发明的较佳实施例的ota网站中个性化的酒店推荐方法的流程图。

具体实施方式

下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。

如图1所示,本发明的ota网站中个性化的酒店推荐系统包括数据采集模块1、初选模块2、实时偏好推荐模块3、实时信息过滤模块4以及线上模块5;

其中,所述数据采集模块1用于根据用户在客户端的操作,获取用户信息和目标酒店信息;并且优选地,所述数据采集模块1还可以获取用户的实时偏好;

所述初选模块2用于根据用户信息和目标酒店信息,从数据库中获取目标酒店的静态维度、实时维度和目标酒店的周边酒店备选池,并获取周边酒店备选池的静态维度和实时维度;所述初选模块2还用于在获取用户画像信息时会考虑到部分新用户,为其填充粗略的画像;

所述实时偏好推荐模块3用于根据所述初选模块获取的各类数据,利用个性化周边酒店推荐算法进行处理,得到所述周边酒店备选池中的每个候选酒店的评分并进行降序排序;所述实时偏好推荐模块3还用于根据用户的实时偏好信息修改每个候选酒店的评分。

所述实时信息过滤模块4用于过滤不可预订的候选酒店,将剩余的排名靠前的n个候选酒店推送给用户,其中n为正整数。其中,所述不可预订的候选酒店包括满房的、用户不可定的、临时的并且已经下线的、app前台因某种原因下线的、无法显示的、其他业务方要求的不可上线的候选酒店。

所述线上模块5则用于在用户访问ota网站时,向用户展示所述n个候选酒店。所述线上模块5在网站及app界面中,当用户进入酒店详情页时,调用个性化周边酒店推荐算法,在酒店详情页下方展示为根据用户个性化推荐的周边酒店。

如图2所示,本发明还提供了一种ota网站中个性化的酒店推荐方法,其利用上述的酒店推荐系统实现,所述酒店推荐方法包括以下步骤:

步骤101、根据用户在客户端的操作,获取用户信息和目标酒店信息;

步骤102、根据用户信息和目标酒店信息,从数据库中获取目标酒店的静态维度、实时维度和目标酒店的周边酒店备选池,并获取周边酒店备选池的静态维度和实时维度;

其中,酒店维度具体包括历史维度与实时维度,储存最新的酒店数据,包括且不限于酒店的星级、价格、经纬度、所属商圈、服务、品牌等。

步骤103、根据所述初选模块获取的各类数据,利用个性化周边酒店推荐算法进行处理,得到所述周边酒店备选池中的每个候选酒店的评分并进行降序排序;

步骤104、过滤不可预订的候选酒店,将剩余的排名靠前的n个候选酒店推送给用户,其中n为正整数;

步骤105、在用户访问ota网站时,向用户展示所述n个候选酒店。

其中,步骤101中还获取用户的实时偏好;步骤102中还根据用户信息获取用户画像信息及用户的实时偏好信息;步骤103中还根据用户的实时偏好信息修改每个候选酒店的评分。

下面对本发明作进一步详细说明:

当用户打开ota客户端时,首先会进入主页菜单,此时系统会根据用户的个人信息从数据库中获取该用户画像。用户点击进入酒店模块,在对应的搜索页面中进行相应搜索。

若用户没有明确目标,筛选、搜索模糊关键字,系统会转跳进入酒店列表页面,用户浏览并选择感兴趣的相应酒店,系统转跳进入酒店详情页;若用户有明确目标,进行精确搜索选择,则系统直接转跳进入酒店详情页。该过程中,后台系统从用户的点击,筛选或浏览行为中获得该用户的实时偏好。

其中用户的实时偏好来自于用户当前会话中浏览的酒店信息、用户的筛选信息、用户的查询信息等。

在详情页中,系统会从数据库中调取该酒店竞争圈相关酒店数据,结合之前获得的用户画像数据和用户实时偏好,在后台进行个性化周边推荐模型的计算,从而得到个性化周边酒店的推荐列表。若该用户对当前酒店没有订购意向,在酒店详情页下滑页面,可从下方的“附近同类型酒店”板块获得周边酒店推荐计算结果,以供参考。

其中个性化周边酒店推荐算法的具体步骤如下:

计算c城市每个酒店的离线周边酒店备选池,并选取当下hi酒店的周边备选池作为下一步骤的输入。离线的周边酒店备选池具体算法如下:

(1)根据ota的数据库中的历史订单数据提取出以下三种信息:首先是从数据库获取c城市下的酒店hi,其次是获取订购hi的用户群u,最后是获取用户群u订购过的酒店w。

(2)计算hi与w之间的距离,将求得的距离与距离阈值dis(判别条件)比较,选取距离小于dis的酒店h’,而dis需要根据用户浏览酒店和订购酒店的距离、以及结合该城市的酒店密度来确定。

首先,根据统计数据,80%的订单中,用户浏览酒店和订购酒店的距离在5km以内。其次,计算每个城市的酒店密度,以上海的酒店密度为基准,将dis设定为dis=5*(ci城市的酒店密度/上海的酒店密度),其中酒店密度定义为该城市两两酒店的平均距离。距离可根据两两酒店之间的经纬度来计算,如下公式:

distince=2*6538.137*asin(sqrt(pow(sin((p.lat-q.lat)*3.1415/360.0),2)

+cos(p.lat*3.1415/180.0)*cos(q.lat*3.1415/180.0)

*pow(sin((p.lon-q.lon)*3.1415/360.0),2)))

其中p和q代表两个不同的酒店,lat和lon表示经度和纬度。

(3)在得到距离在dis内的酒店h’后,需要统计h与h’之间的交叉用户数。计算交叉用户的方法,与传统的协同过滤方法存在较大的差异。在传统的基于物品的协同过滤方法中,往往采用交叉用户概率的方法对关联物品进行划分。假设存在酒店a和b,则根据公式计算二者交叉用户在并集用户中的概率:然后根据概率降序排列获得关联结果。而上述概率计算方法存在一定缺陷。考虑以下两种情况:

(1)a酒店销量一定,而b酒店销量远小于a;

(2)a酒店销量一定,而b酒店销量远大于a。

在这两种情况下,由于分母的修正作用,使得pa,b可能取值相似,即两种情况下b酒店被关联的概率相似。但在实际酒店订购场景中,销量大的酒店往往比销量小的酒店更具有推荐性。因此考虑仅保留公式分子来避免上述情况的发生,即使用公式:pa,b=a∩b。当pa,b越大,则b酒店关联性越强,从而提高推荐概率。

(4)根据上面步骤得到h与h’之间的交叉用户数,接下是判断h’与n(代表目标酒店周围备选推荐酒店数目)如果h’大于个数n,则从h’中选择交叉用户个数最多的前n个酒店,将该酒店放入hi的周边酒店备选池中,而如果h’小于个数n,则进行以下操作:

计算出同城市除h外的所有酒店与hi的距离,选择距离小于dis的酒店,记为h”;

计算出需要备选池需要补足的酒店个数k=n-h’;根据数据库统计h”的历史订单量,将h”进行排序,选择k个热销酒店,也就是选择销量前k的酒店作为周边酒店备选池的补充,进而获得包含n个酒店的备选周边酒店池。

(5)根据客户端的获取的用户当前浏览的酒店hi,从离线备选池酒店里提取出当前客户浏览的酒店hi的周边酒店备选池。

然后,结合酒店历史维度、酒店实时维度、用户历史画像、用户实时数据等进行实时的个性化推荐,算法流程如下:

(1)由于已经获得了hi酒店周边备选池,接下来就是获取用户的uid(用户身份证明),根据uid匹配用户的历史画像,如果uid为新用户,则通过空值填充的方法,将对应的画像值填充为均值或者0。如果是老用户直接从数据库提取该用户的历史画像。

同时获取酒店h’的静态维度(如星级、商圈等)、实时维度(如酒店可订率、酒店最低价等)和h’酒店的周边酒店备选池(该备选池就是有之前算法所得到的备选池,此时记为h’),并获取h的静态维度和实时维度。

在获取以上数据后,利用逻辑回归模型计算h酒店的得分,记为s。

(2)接下来看系统是否可以获得用户实时偏好,如果能够获取用户的实时偏好,则根据用户的实时偏好,对h酒店的得分进行实时的调整。例如用户偏好4星级酒店,则增加4星级酒店的得分;用户偏好陆家嘴附近的酒店,则增加该商圈酒店的得分等。将调整后的h得分记为s’,根据s’做降序排序。

如果系统没有获得用户的实时偏好则直接对s进行降序排序。

(3)最后是将s或者s’通过过滤规则之后,选择得分排名前n的酒店进行推荐展示。其中的过滤规则如下:

满房的、用户不可定的、临时的并且已经下线的、app前台因某种原因下线的、无法显示的、其他业务方要求的不可上线的酒店

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1