『酒店』机器学习在马蜂窝酒店聚合中的应用初探
出门旅行 , 订酒店是必不可少的一个环节 。 住得干净、舒心对于每个出门在外的人来说都非常重要 。
在线预订酒店让这件事更加方便 。 当用户在马蜂窝打开一家选中的酒店时 , 不同供应商提供的预订信息会形成一个聚合列表准确地展示给用户 。 这样做首先避免同样的信息多次展示给用户影响体验 , 更重要的是帮助用户进行全网酒店实时比价 , 快速找到性价比最高的供应商 , 完成消费决策 。
酒店聚合能力的强弱 , 决定着用户预订酒店时可选价格的「厚度」 , 进而影响用户个性化、多元化的预订体验 。 为了使酒店聚合更加实时、准确、高效 , 现在马蜂窝酒店业务中近 80% 的聚合任务都是由机器自动完成 。 本文将详细阐述酒店聚合是什么 , 以及时下热门的机器学习技术在酒店聚合中是如何应用的 。
Part.1
应用场景和挑战
1.酒店聚合的应用场景
马蜂窝酒旅平台接入了大量的供应商 , 不同供应商会提供很多相同的酒店 , 但对同一酒店的描述可能会存在差异 , 比如:
图片
酒店聚合要做的 , 就是将这些来自不同供应商的酒店信息聚合在一起集中展示给用户 , 为用户提供一站式实时比价预订服务:
图片
下图为马蜂窝对不同供应商的酒店进行聚合后的展示 , 不同供应商的报价一目了然 , 用户进行消费决策更加高效、便捷 。 
图片
2.挑战
(1) 准确性
上文说过 , 不同供应商对于同一酒店的描述可能存在偏差 。 如果聚合出现错误 , 就会导致用户在 App 中看到的酒店不是实际想要预订的:
图片
在上图中 , 用户在 App 中希望打开的是「精途酒店」 , 但系统可能为用户订到了供应商 E 提供的「精品酒店」 , 对于这类聚合错误的酒店我们称之为 「AB 店」 。 可以想象 , 当到店后却发现没有订单 , 这无疑会给用户体验造成灾难性的影响 。
(2) 实时性
解决上述问题 , 最直接的方式就是全部采取人工聚合 。 人工聚合可以保证高准确率 , 在供应商和酒店数据量还不是那么大的时候是可行的 。
但马蜂窝对接的是全网供应商的酒店资源 。 采用人工的方式聚合处理得会非常慢 , 一来会造成一些酒店资源没有聚合 , 无法为用户展示丰富的预订信息;二是如果价格出现波动 , 无法为用户及时提供当前报价 。 而且还会耗费大量的人力资源 。
酒店聚合的重要性显而易见 。 但随着业务的发展 , 接入的酒店数据快速增长 , 越来越多的技术难点和挑战接踵而来 。
Part.2
初期方案:余弦相似度算法
初期我们基于余弦相似度算法进行酒店聚合处理 , 以期降低人工成本 , 提高聚合效率 。
通常情况下 , 有了名称、地址、坐标这些信息 , 我们就能对一家酒店进行唯一确定 。 当然 , 最容易想到的技术方案就是通过比对两家酒店的名称、地址、距离来判断是否相同 。
基于以上分析 , 我们初版技术方案的聚合流程为:
1.输入待聚合酒店 A;
2.ES 搜索与 A 酒店相距 5km 范围内相似度最高的 N 家线上酒店;
3.N 家酒店与 A 酒店分别开始进行两两比对;
4.酒店两两计算整体名称余弦相似度、整体地址余弦相似度、距离;
5.通过人工制定相似度、距离的阈值来得出酒店是否相同的结论 。
整体流程示意图如下:
图片
「酒店聚合流程 V1」上线后 , 我们验证了这个方案是可行的 。 它最大的优点就是简单 , 技术实现、维护成本很低 , 同时机器也能自动处理部分酒店聚合任务 , 相比完全人工处理更加高效及时 。
推荐阅读
- 功能:能解决孩子的学习问题吗?牛听听儿童智能熏教机体验!
- 机器人:青岛造运输机器人打败五家外企 成功进驻世界最大中转枢纽港
- 每日经济新闻咨询@联邦学习成人工智能新贵 腾讯安全:技术服务能力才是重点
- 「时间」iPhone se2这机器放在现在这个时间,真的有点奇怪
- #科技如梦#iPhone se2这机器放在现在这个时间,真的有点奇怪
- 【大数据】干货满满!2020版好程序员新电商大数据平台全套学习资料
- ##QQ 发布 8.3.3正式版:新增学习模式、分享屏幕等多个功能!
- [简科技简哥]QQ 发布 8.3.3正式版:新增学习模式、分享屏幕等多个功能!
- 『孩子』担心开学后孩子学习有问题?你需要TCL 85X6C电视来救场
- [机器人]从昆虫身上找灵感,研发人员用3D打印批量制造机器人群 | 硬科技
