-
入口模块:主要为用户进行 TOP1 的需求预测,也就是 TOP1 推荐,让用户点进到各个子场景当中,起到一个引流的作用。 -
模糊搜索:主要为用户填上一个目的地、出发地以及一个时间段,在未来的某个时间段,他们可能会去哪里。 -
低价模块:主要为用户去推荐,或者预测,用户会对哪些 OD 感兴趣,因为这些是比较便宜的,有可能命中用户的心智。 -
瀑布流模块 & Listing模块:主要为了提升用户的浏览深度,给用户种草,激发用户出行。
-
激发需求,用户为什么想要出去。如热门城市,或者节假日,如春节,国庆等固定的出行需求,或者当用户发现一个好的地方,想去出行。这一阶段,定义为种草,主要是平台去激发用户的出行需求。 -
行前阶段,用户准备去哪里玩,需要做的一些准备工作。比如订哪个酒店,交通方式是什么,用特价机票还是火车票,还有相应的门票等,这是行前阶段。 -
行中阶段,主要捕获用户的心智在于当前所在的地方,周边有没有好玩的,返回或者下一个目标交通如何到达,或者是门票如何购买。 -
行程之后,用户出行之后是反馈,然后再循环。
-
需求,用算法预测用户去哪里,或者预测用户下个阶段会去哪里。 -
效率,首页推荐要比用户搜索得到体感更好,减少了用户看到感兴趣OD的时间。 -
心智,不同的用户,有不同的心智和想法。在出行中,如何捕捉到不同用户的不同心智,也就是用户的潜在心理与需求,也是一个难点。
-
召回,主要有热门目的地、热门航向、Swing 用户的长期需求、重定向以及用户搜索。 -
排序,目前线上模型主要支持单任务学习模型和多任务学习模型。
-
单任务学习,使用特征融合或特征交叉的AutoInt 或者 WDL 模型。其中,用户历史点击行为序列的模型,主要是采用的 DIN 模型。 -
多任务学习模型,包括 ESMM、MMOE、PLE等模型。
-
用户A:西安—>重庆(黑色线连接)
-
用户B & C:北京—>杭州
-
H2S,S2H:从家乡去一个景点,或者返程 -
S2S:从景点去了下一个景点,比如从厦门去了三亚 -
W2S,S2W:从景点回工作地,或者从工作地去景点 -
W2W:工作地之间的转换 -
H2W,W2H:从家到工作地,从工作地回家
-
Travel 旅游去上海,算法召回策略是青岛、三亚、昆明、重庆、成都一些比较相似的沿海城市,或者是比较热门的旅游城市。 -
Work 工作去上海,算法会召回深圳、北京、杭州这些具有高工作代表性的城市。 -
另外,如果是Trigger OD,用户从郑州—>上海。为什么从郑州去上海? -
如果对用户而言,郑州是家乡。而对于上海去,是Work,那算法推荐的应该是返程,上海—>郑州。 -
如果用户是去这个两个地方旅游的,就会给用户保持旅游的推荐的连续性,从上海—>厦门,或者从上海—>三亚。
-
行前决策,假设暑假来了,用户想着怎么出去玩,首先是没有任何特定城市的明确需求。比如要考虑去南方城市,或者是华东城市。会选择华东哪一个城市呢?是杭州、苏州还是上海,还是最后去上海。以上的行前决策行为是非常重要的,决策过程在算法中相当于一个区域缩减行为,把目的地候选集一步一步地变小,最终得到一个比较准确的推荐,如何去建模行前决策是一个难点。 -
临近城市,也会影响用户的决策。假设从家里去青岛旅游,因为青岛、威海、蓬蓬莱这三个城市离得比较近,先去青岛,威海或者蓬莱,下一个去哪对我们来说意义不大。影响我们心智的无非是价格或是交通的便捷性,这就导致了邻近城市的推荐会出现相互的影响性。所以如何建模邻近城市的相互影响性也是十分必要的。 -
行动阶段,假设用户出发到了北京,但是最近从北京->重庆,或者从北京—>天津的人特别多,用户会不会受热门城市的影响,或者会不会也想从北京—>天津?
-
阶段性决策多任务学习模块
-
保持 OD 模块的新颖性和空间依赖性
-
长短兴趣记忆模型
-
Fliggy,飞猪线上收集的 10/01~11/01 将近一个月的数据,通过 ACC 的1,5,10,20,和Map值进行一个预估。 -
Fliggy2,第一个数据集进行策略过滤,因为用户具有稀究性,一年可能点不了几次。过滤策略会将在一年之内点击或者购买大于 4 次的用户,作为高质量用户过滤得到。过滤完之后,再进行模型的训练。
-
针对用户1,要给他推威海、杭州或者三亚。
-
针对用户2,给他推成都、青海、西安和北京。
-
注意力单元计算
-
用户潜在意图捕捉模型
-
周期性的行为捕捉模块
-
在召回方面
-
在排序方面
分享嘉宾
黄茂雷
阿里巴巴
机器学习算法工程师
本科毕业于山东大学、硕士毕业于中科院计算所,自2021年6月起进入阿里巴巴飞猪算法团队,目前主要负责交通业务场景的用户行程预测与推荐。

