资讯专栏INFORMATION COLUMN

阿里搜索推荐系统又双叒叕升级了?!

susheng / 1664人阅读

摘要:在支撑好手淘搜索业务的基础上,搜索导购也积极地拓展边界,支持了集团内大量的产品线。双十一当天导购导流产品底纹热词会场搜索风向标去重使用同比去年增速,远高于搜索大盘增速。

阿里妹导读:搜索导购产品作为搜索的流量入口,承载了为用户导购推荐、搜索流量分流的重要功能。主要产品包括:首页底纹、下拉推荐、搜索发现、导航、历史搜索等。经过几年的探索和积累,各个产品越发地成熟,机器学习算法广泛地应用于导购产品中,取得了显著的效果。在支撑好手淘搜索业务的基础上,搜索导购也积极地拓展边界,支持了集团内大量的产品线。因此对搜索导购产品线提出了更高的要求:不仅需要提升本身产品的效率,更好地支持手淘搜索业务,同时也需要有一套灵活的框架,支持更多更广的业务。

一、系统框架

导购升级的优化思路从三个方向着手:1.策略升级。利用深度学习及异构网络的思想,对用户个性化进行更深的理解和建模;同时对因马太效应引起的独立query数下降等问题进行优化。 2.导购外投。在包括会场激活页、猜你喜欢等渠道进行搜索导购赋能,为用户打通搜索通路。 3.产品创新。一方面对现有的产品进行创新升级,如激活页、下拉推荐等;另一方面积极尝试新产品形态,如首页热词、搜索动态卡片等。

搜索导购核心解决对消费者关键词推荐的问题,因此虽然产品众多,形态各异,但是在底层架构上有很多共性,因此我们设计了一套通用灵活的框架进行支持。

在召回阶段,我们丰富了召回方式;并根据不同的渠道、场景以及产品形态,选择不同的召回策略得到候选query词candidates。

在排序阶段,我们不仅将深度学习引入导购算法框架中,而且创新的加入了异构网络的思想,将用户不同路径的序列信息结合lstm等模型进行有效融合,对消费者进行更深入的理解。

在业务策略阶段,我们利用 jaccard 系数、编辑距离等进行了对语义重复问题进行了优化,同时结合E&E机制对马太效应较为严重的场景进行了升级,并增加了效率轮播机制使得效率进一步的得到提升。

接下来以几个具体的产品来进行详细的介绍。

二、详细方案

2.1 底纹推荐优化

在底纹推荐的算法优化中,我们创新性地提出了基于异构网络(Heterogeneous Information Network,后面简称HIN)的推荐方法,推荐框架如下图所示:

user,item 和 query 是手淘中三种基本类型的节点,这三种类型节点之间又有不同的交互关系,比如,user 直接点击 item,user 通过查询 query 进入搜索,并在搜索里发生 item 的点击等。

但是,大多数传统推荐方法只关注特征工程,忽略了这些不同节点之间的关联关系。同时电商领域的大规模数据体量(一亿query,数十亿user和item)也是需要考虑的问题。因此我们设计提出了一种基于元路径embedding 表示的大规模 query 推荐方法,MetaPath-guided Embedding for Large-scale Query Recommendation(MELQR),它采用异构网络对 query推荐进行建模,并利用元路径通过聚合局部邻居信息来指导 user 和 query 的表示学习,此外,我们对异构网络中所有节点用term embedding的某种融合方法来进行表示,从而避免了网络学习中的大规模参数问题。

该模型结合扩召回、动态展示等策略,对线上底纹使用uv提升10%+,引导成交金额提升10%+。值得一提的是,该模型目前也同步使用到了导购的其它产品例如搜索发现、首页热词等,效果的提升同样非常明显。

2.2 首页热词优化

首页热词是今年搜索在手淘首页的一个创新性产品,可以帮助用户通过关键词找到感兴趣的商品,增强用户的搜索心智。

首页热词与底纹推荐共享系统框架与算法框架

2.3 下拉推荐优化

下拉推荐上一个版本的优化目标在于提升下拉引导pv在搜索pv中的占比,即下拉使用率。上个版本试图拟合的是用户对下拉所展示的 query 的偏好程度。但是在其使用的统计类特征中,使用的特征均都是下拉引导的数据。这就带来了一个比较严重的问题,在目前的产品形态下,每次用户输入,只能展示10个候选的 query。因此一开始展示相对较多的 query 会具有相对较高的统计值,而较高的统计值会促进该query 在排序中排到更靠前的位置。因此形成循环,久而久之,在某些特定的 query下,下拉推荐候选词的统计值特征会有非常大的差异。由此形成马太效应。马太效应一个最严重的问题就是会导致下拉展示的 query 会过度收敛到一个较小的集合中,导致引导的独立 query 数下降。

针对这些问题,我们对下拉推荐模型进行了系统的重构,框架如下:

核心思路一方面增加用户主动输入的特征以及样本,修正下拉本身的马太,另一方面强化用户个性化特征,加入用户行为序列等。优化模型上线后,对下拉本身的使用pv提升10%+。

2.4 动态卡片优化

当用户的搜索词比较宽泛时,并不能较好地表征用户的搜索意图,用户在搜索结果页的实时点击行为,能更加实时地反应用户当前的意图,此时给用户推荐符合其搜索意图的搜索词,可以提升用户体验。对通过给用户推荐相关搜索词,提升人均 query,进而提升人均pv,提升用户在搜索的停留时长。产品示例如下:

通过持续的优化,动态卡片的展示ctr已经高于商品、内容等卡片,说明用户有很强的意愿点击;同时用户人均 query 提升4%+,人均pv提升1%+,用户体验提升。

2.5 其它工作

除上述几个工作,我们还支持了搜索发现、会场搜索、推荐风向标、搜索激活页改版等项目优化。

三、双十一效果

导购产品线从多个方面进行优化升级,在双十一也取得了非常不错的效果:一方面基于异构网络与深度学习进行了算法策略升级,增强了个性化表达降低了马太效应,提升了用户使用率,例如首页底纹;另一方面将导购能力赋能于各个渠道,增强了用户搜索的心智、粘性,提升了各渠道效率,例如首页热词;并对现有的产品进行了交互形态上的创新,丰富产品活力,例如下拉推荐。双十一当天导购导流产品(底纹+热词+会场搜索+风向标)去重使用uv同比去年增速70%+,远高于搜索大盘uv增速。

四、未来工作

1.Graphembedding 的挖掘。我们已经基于计算平台 Graph mind 搭建了第一版的异构网络 metapath2vec 算法,对比 deep walk 效果已经有明显提升,接下来会继续尝试,更灵活方便的获取不同路径上节点的信息,结合gcn算法进行效果调优。

item2query 挖掘。i2q的数据是导购的一份基础数据,很大程度会影响导购效果。目前的逻辑核心通过用户行为生成,因此存在覆盖较低,冷启动商品无数据等问题。我们期望能结合智能生成的方法,为商品生成候选query。

3.query到图的挖掘。query以图文展示的形式可以对消费者有更直观的感受,因此我们期望能结合图像处理的算法,充分挖掘出能代表query的高质量图片。

4.激活&下拉新形态探索。在移动互联网时代,用户的生活习惯、使用方式等一直都在发生变化,我们期望通过创新的产品形态能捕捉用户的需求,增加用户的访问时间、停留时长等。



本文作者: 西克

阅读原文

本文来自云栖社区合作伙伴“阿里技术”,如需转载请联系原作者。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/20595.html

相关文章

  • 阿里搜索推荐系统又双叒叕升级?!

    摘要:在支撑好手淘搜索业务的基础上,搜索导购也积极地拓展边界,支持了集团内大量的产品线。双十一当天导购导流产品底纹热词会场搜索风向标去重使用同比去年增速,远高于搜索大盘增速。 showImg(https://segmentfault.com/img/remote/1460000019173476); 阿里妹导读:搜索导购产品作为搜索的流量入口,承载了为用户导购推荐、搜索流量分流的重要功能。...

    rollback 评论0 收藏0
  • 又双叒叕是一个动态简历

    摘要:标点处理根据传入的字符来判断下一个字符出现的延迟时间,即方法的第二个参数。年初的时候试着重写了这个项目,感觉已是没有什么难度了,不过也是面向过程,一顿操作罢了。 先看效果 请戳这里看预览这里是代码 见过了?别走,这是与众不同的地方 针对移动端优化了体验 支持动画跳过 支持多段动画 标点字符特殊处理,停留时间略长于字符时间 typescript 编写 对功能进行了封装处理,可以直接引入...

    firim 评论0 收藏0
  • 又双叒叕是一个动态简历

    摘要:标点处理根据传入的字符来判断下一个字符出现的延迟时间,即方法的第二个参数。年初的时候试着重写了这个项目,感觉已是没有什么难度了,不过也是面向过程,一顿操作罢了。 先看效果 请戳这里看预览这里是代码 见过了?别走,这是与众不同的地方 针对移动端优化了体验 支持动画跳过 支持多段动画 标点字符特殊处理,停留时间略长于字符时间 typescript 编写 对功能进行了封装处理,可以直接引入...

    iKcamp 评论0 收藏0
  • 又双叒叕是一个动态简历

    摘要:标点处理根据传入的字符来判断下一个字符出现的延迟时间,即方法的第二个参数。年初的时候试着重写了这个项目,感觉已是没有什么难度了,不过也是面向过程,一顿操作罢了。 先看效果 请戳这里看预览这里是代码 见过了?别走,这是与众不同的地方 针对移动端优化了体验 支持动画跳过 支持多段动画 标点字符特殊处理,停留时间略长于字符时间 typescript 编写 对功能进行了封装处理,可以直接引入...

    levius 评论0 收藏0
  • 又双叒叕是一个动态简历

    摘要:标点处理根据传入的字符来判断下一个字符出现的延迟时间,即方法的第二个参数。年初的时候试着重写了这个项目,感觉已是没有什么难度了,不过也是面向过程,一顿操作罢了。 先看效果 请戳这里看预览这里是代码 见过了?别走,这是与众不同的地方 针对移动端优化了体验 支持动画跳过 支持多段动画 标点字符特殊处理,停留时间略长于字符时间 typescript 编写 对功能进行了封装处理,可以直接引入...

    tinysun1234 评论0 收藏0

发表评论

0条评论

susheng

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<