Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >干货 | 当你在携程搜索时,背后的推荐系统是如何工作的

干货 | 当你在携程搜索时,背后的推荐系统是如何工作的

作者头像
携程技术
发布于 2019-06-11 07:14:07
发布于 2019-06-11 07:14:07
2.5K0
举报
文章被收录于专栏:携程技术携程技术

作者简介

葛荣亮,携程搜索部门高级研发工程师。2015年加入携程,目前主要负责搜索平台的前端+数据挖据工作。

一、前言

随着旅游业的发展,人们对搜索的要求越来越高。智能化大趋势下,个性化的推荐系统的应用及用户需求也越来越广泛。

旅游推荐系统主要面临的问题及挑战包括:

  • 用户维度,用户的需求多种多样,如本地异地的差异,年龄、家庭结构的差异等;
  • 时间、地理维度,每个时间点的需求都是不同的,如季节(冬季的温泉,夏季避暑...)、早中晚的需求差异,不同城市用户对同一目的地的旅游产品类别需求可能不同;
  • 产品维度,如何输出多样性的产品也是推荐系统考虑的重点,如相似的酒店、景点等。

针对以上面临的问题和挑战,本文将分享携程推荐系统的更新迭代过程。

二、推荐系统架构

携程搜索推荐系统架构如下:

抛开业务和数据部分,这里只简单介绍推荐服务的结构,其简要构造如下:

2.1 用户行为

用户行为数据展示了用户的操作习惯和偏好。对这部分数据进行离线分析,可以更好地理解用户,以此来做线上产品的推荐源。

对线上需要的行为数据,可以取一个月或者近7天的历史数据,以保证数据的时效性。

2.2 可用产品

这部分指的是可供用户使用的产品及可以提供帮助的文章等。主旨在于告诉系统,我们有什么产品,哪些产品是可以提供给用户的,及哪些是优质的产品。产品的定义比较广泛,可以不限定具体的售卖产品,也可指定用户偏好,比如用户对酒店、景点的偏向等。

2.3.召回

这部分是整个系统的重点,也是规划场景最多的地方。这部分可以细分成几大召回策略(以推荐实际酒店、文章、景点的系统为例):

2.3.1 补充策略

这部分主要输出当前热门的产品信息,比如当季热门的酒店、景点等。

在具体实现的时候可以考虑季节性的变化,比如以两周为周期,统计产品的点击情况,当用户对于温泉搜索量增加时,可以输出一些热门的温泉景点。

这部分补充策略,只是为了解决冷启动问题,即当用户没有行为,或者没有地理位置信息时,做最基本的补充。

2.3.2 基于位置召回

当得到具体位置信息之后,可以做更具体的补充召回:

1)根据当前用户所在地,推荐当地的热门产品;

2)判断用户是否在常住地。如常驻上海的用户,在上海搜索产品时,更喜欢周边游,而常驻北京的用户,在上海搜产品时,更喜欢东方明珠和迪士尼。

具体分类为:

本地需求(定位城市=常驻城市),输出当地人热搜/点击的产品;

外地需求(定位城市!=常驻城市),输出外地人热搜/点击的产品;

3)根据地理位置信息,输出用户周边的几公里内的产品。

2.3.3 基于历史关联策略

这部分内容是基于用户历史行为,推出相关的产品。需要对数据和行为进行总结,并提供相应的产品展示逻辑,丰富推荐召回的内容。比如用户预定迪士尼乐园的门票,可以推迪士尼附近的酒店等。

2.3.4 协同过滤

协同过滤是推荐系统经典的算法。其对用户行为、产品的相关性做了抽象和泛化。协同过滤算法主要分为USER CF和ITEM CF,即基于用户的协同过滤和基于物品的协同过滤。

在这里我们主要用到基于物品的协调过滤,相比用户的协同过滤,物品的内容属性和数量更便于统计和计算。具体算法可以参看《推荐系统实践》这本书。

大体可以理解为,定了某一酒店的用户,又定了哪些酒店,及通常订了又订的逻辑。比如,以用户一个月的点击或订单数据为基础,计算出物品的相似度,当用户搜了某条产品时,推荐与其相似的其他产品。具体示例为:假设东方明珠、外滩、迪士尼产品相似,当用户搜索东方明珠的时,推荐外滩和迪士尼。

2.4 排序

上述召回策略,会召回大量的产品,如何对这些产品进行合理排序,是推荐系统的核心部分,同时也是反映系统优劣的指标。

这部分,经历几次迭代。

在1.0时代,在排序策略上进行了几次变动:

1)对召回产品按照类别,对相同类型产品,进行销量排序;

2)考虑到操作时间问题,加入操作时间权重。对历史行为的时间进行归一化得出权重,最大为1。操作时间越近,权重越大;

3)考虑规则的重要性,加入规则分;

上述排序策略取得一定效果,但很难完善排序问题。

最终,选取了机器学习的排序算法。其基本实现为:对每个输出产品,规划特征,输出特征集。比如季节特征,当地人/外地人特征,一天内的早、中、晚特征等。接下来根据订单和点击数据,输出训练样本,为每个召回产品做一个打分,最高5分,最低1分。最后使用XGBoost工具,对样本进行训练,这样就能得出基本模型。

通过模型,对线上每个召回产品进行打分并排序,得出最终结果。同时在系统上线后,定期的进行更新,并通过ABTest系统不断对模型进行迭代。

大致流程如下:

2.5 过滤输出

这部分内容,主要做格式化输出,并过滤一些无效,黑名单产品。

每个场景的输出,都不太一样,就需要对其数据进行筛选。比如进入搜索默认页时,提前给出推荐产品,减少用户操作。还可以在用户搜某个具体城市时,输出相应的结果。

这里需要注意的是马太效应。由于推出的内容有限,对于一些产品,会导致点击多的会越来越多,而点击少的,则慢慢退出推荐序列。这里需要对那些不常用产品做展示规划。比如随机出一两条,给一定曝光,消除一部分马太效应。

三、展望

目前推荐系统已经运用在多个场景,但对场景及产品的引入毕竟有限,同时对query 分析还不够完善,后续将丰富产品,并引入更多机器学习的内容,让系统更智能化和自动化。同时会加入更多深度学习内容,在搜索意图和NLP相关方面做更进一步的分析。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 携程技术中心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
美团点评旅游搜索召回策略的演进
背景 美团点评作为最大的生活服务平台,有丰富的品类可供用户选择,因此搜索这个入口对各业务的重要性不言而喻,除了平台搜索外,业务搜索系统的质量和效果对用户体验、商家曝光、平台交易也有着关键作用。 相对美团点评平台的O2O检索,旅游搜索系统主要面临以下几点挑战: 本异地差异大。在本地生活场景中用户的搜索需求往往集中在本城市内,而在旅游场景特别是行前场景用户会先搜索异地的POI(门店),比如常驻城市为北京的用户在去上海之前可能会先搜索“东方明珠”、“迪士尼”了解相关信息。 搜索意图多样,不同意图的展现形式可能不同
美团技术团队
2018/03/13
3.5K1
美团点评旅游搜索召回策略的演进
旅游推荐系统的演进
背景 度假业务在整个在线旅游市场中占据着非常重要的位置,如何做好做大这块蛋糕是行业内的焦点。与美食或酒店的用户兴趣点明确(比如找某个确定的餐厅或者找某个目的地附近的酒店)不同,旅游场景中的用户兴趣点(比如周末去哪儿好玩)很难确定,而且会随着季节、天气、用户属性等变化而变化。这些特点导致传统的信息检索并不能很好的满足用户需求,我们迫切需要建设旅游推荐系统(本文中度假=旅游)。 旅游推荐系统主要面临以下几点挑战: 本异地差异大。在本地生活场景中用户需求绝大部分集中在本地,而在旅游场景中超过30%的订单来自于异地
美团技术团队
2018/03/12
2.5K0
旅游推荐系统的演进
【基于机器学习的推荐系统项目实战-1】初识推荐系统
几十年来,从时间维度上看,信息呈指数爆炸式的增长,数据和信息已经成为一种重要的生产资料了。
程序员洲洲
2024/06/07
2450
【基于机器学习的推荐系统项目实战-1】初识推荐系统
推荐系统从0到1[二]:个性化召回
前文说完数据的基础积累,包括用户画像和内容画像的构建,接下来我们可以正式着手开始推荐了。以新闻推荐举例来说,推荐可以有很多策略,包括基于用户兴趣画像语义的策略(兴趣关键词/分类/主题相关),基于用户行为的策略(itemCF/userCF/clusterCF),基于位置的策略(地域相关),基于社交关系的策略(SNS推荐)等等。
星回
2018/08/02
7.3K0
推荐系统从0到1[二]:个性化召回
推荐系统遇上深度学习(三十九)-推荐系统中召回策略演进!
推荐系统中的核心是从海量的商品库挑选合适商品最终展示给用户。由于商品库数量巨大,因此常见的推荐系统一般分为两个阶段,即召回阶段和排序阶段。召回阶段主要是从全量的商品库中得到用户可能感兴趣的一小部分候选集,排序阶段则是将召回阶段得到的候选集进行精准排序,推荐给用户。
石晓文
2019/05/05
1.2K0
推荐系统遇上深度学习(三十九)-推荐系统中召回策略演进!
图解推荐系统知识点:用户理解、召回、排序、冷启动
大家好,最近看到一篇图解推荐系统的文章,觉得全面和基础,可以快速了解推荐系统中的知识点~分享给大家
数据STUDIO
2023/11/21
7720
图解推荐系统知识点:用户理解、召回、排序、冷启动
基于协同过滤的推荐系统
原公式中,只考虑用户消费用一种商品,而没有考虑用户消费同一种商品处在不同时期。如果用户消费了物品i和物品j,如果消费时间间隔越近,那么这次“同现”的权重应该越大,间隔越远权重越小。在分子上除以间隔时间,惩罚时间间隔影响。
birdskyws
2018/11/22
1.9K0
学姐问我推荐系统是怎么做的?我用23张图带她搞懂!
做广告业务1年多时间了,但是平时的工作主要和广告工程有关,核心的广告算法由 AI 部门支持,对我们而言可以说是「黑盒般」的存在,只需要对训练好的模型进行调用即可。
Guide哥
2020/09/27
8260
学姐问我推荐系统是怎么做的?我用23张图带她搞懂!
干货 | 机器学习模型在携程海外酒店推荐场景中的应用
Louisa,携程算法工程师,热爱前沿算法和技术在个性化推荐和广告建模等业务的性能优化和落地。
携程技术
2020/08/18
1.5K0
干货 | 机器学习模型在携程海外酒店推荐场景中的应用
推荐系统[八]算法实践总结V1:淘宝逛逛and阿里飞猪个性化推荐:召回算法实践总结【冷启动召回、复购召回、用户行为召回等算法实战】
内容化这几年越来越成为电商的重点,用户来到网购的时候越来越不局限在只有明确需求的时候,而更多的是没有明确需求的时候,就像是逛街一样。逛逛就是在这样的背景下诞生的内容化产品,打造出有用、有趣、潮流、奇妙、新鲜的内容,为消费者提供全新的内容消费体验。在这个场景下的内容召回有很多问题需要探索,其中主要的特点和挑战有:
汀丶人工智能
2023/02/25
2.5K0
推荐系统--完整的架构设计和算法(协同过滤、隐语义)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
mantch
2019/09/18
1.7K0
推荐系统--完整的架构设计和算法(协同过滤、隐语义)
混合推荐系统介绍
作者在前面几篇文章中对常用的推荐算法,如基于内容的推荐、协同过滤、矩阵分解、分解机、基于标签的推荐、深度学习等进行了详细介绍(点击蓝色字体阅读相关文章),并在这些文章中详细说明了这些算法的优缺点。在本篇文章我们会介绍混合推荐系统(Hybrid Recommender Systems),就是利用多种推荐算法配合起来做推荐,期望避免单个推荐算法存在的问题,最终获得比单个算法更好的推荐效果。
石晓文
2019/12/19
2K0
混合推荐系统介绍
推荐系统[一]:超详细知识介绍,一份完整的入门指南,解答推荐系统相关算法流程、衡量指标和应用,以及如何使用jieba分词库进行相似推荐
如果说互联网的目标就是连接一切,那么推荐系统的作用就是建立更加有效率的连接,推荐系统可以更有效率的连接用户与内容和服务,节约了大量的时间和成本。
汀丶人工智能
2023/02/21
5.6K0
原创 | 五千字长文干货,带你领略推荐系统
点击最近有一些小伙伴给我留言说非常想要我开一个推荐系统专题,其实我也有过这个想法,一直没动笔主要有两个原因。第一个原因是担心自己水平不够,班门弄斧或者是误导了一些读者。第二个原因是,我的确不知道这个专题应该怎么写。但是读者有求,总得回应不是,所以咬着牙写了本文。
TechFlow-承志
2020/10/09
3750
原创 | 五千字长文干货,带你领略推荐系统
从算法到应用,新零售背后的推荐系统
内容来源:2018 年 05 月 26 日,袋鼠云高级算法专家尼奥在“AICAMP人工智能沙龙(杭州)”进行《新零售推荐系统:从算法到应用》演讲分享。IT 大咖说(微信id:itdakashuo)作为独家视频合作方,经主办方和讲者审阅授权发布。
IT大咖说
2018/10/23
1.4K0
从算法到应用,新零售背后的推荐系统
深入理解推荐系统:召回
鱼遇雨欲语与余:深入理解YouTube推荐系统算法​zhuanlan.zhihu.com
Coggle数据科学
2020/04/03
3.4K0
《深度学习推荐系统》-阅读笔记
本文是《深度学习推荐系统》一书的阅读笔记和思维导图,建议大家入手一本王喆老师的新书,看完绝对会收获颇丰!
guichen1013
2020/09/25
1.9K0
《深度学习推荐系统》-阅读笔记
大数据–商品推荐系统介绍(上)
为了解决信息过载和用户无明确需求的问题,找到用户感兴趣的物品,才有了个性化推荐系统。
全栈程序员站长
2022/07/21
1.9K0
大数据–商品推荐系统介绍(上)
干货 | 携程个性化推荐算法实践
作者简介 携程基础业务研发部-数据产品和服务组,专注于个性化推荐、自然语言处理、图像识别等人工智能领域的先进技术在旅游行业的应用研究并落地产生价值。目前,团队已经为携程提供了通用化的个性化推荐系统、智能客服系统、AI平台等一系列成熟的产品与服务。 携程作为国内领先的OTA,每天向上千万用户提供全方位的旅行服务,如何为如此众多的用户发现适合自己的旅游产品与服务,挖掘潜在的兴趣,缓解信息过载,个性化推荐系统与算法在其中发挥着不可或缺的作用。而OTA的个性化推荐一直也是个难点,没有太多成功经验可以借鉴,本文分享
携程技术
2018/03/16
2.3K0
干货 | 携程个性化推荐算法实践
干货 | 携程实体链接技术的探索及实践
作者简介 携程旅游AI研发团队致力于为携程旅游事业部提供丰富的AI技术产品,其中知识图谱组专注旅游领域知识图谱的构建及应用落地。 一、背景介绍 随着网络应用技术的飞速发展,多元化、低密度数据的急剧膨胀对人们获取正确信息带来巨大挑战,大量冗余信息出现的根源在于自然语言表达的多样性,即一词多义和多词同义。例如,“苹果”在不同语境下既可以表示蔷薇科苹果属植物又可以表示苹果产品公司,“申城”和“魔都”尽管字面完全不同,却都是上海市的别称。实现对海量Web数据的高效处理,理解用户意图,降低信息过载,是实体链接的目
携程技术
2022/06/17
1.5K0
干货 | 携程实体链接技术的探索及实践
推荐阅读
相关推荐
美团点评旅游搜索召回策略的演进
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文