搜索推荐系统中,重排模块的定位以及常见策略

2023-07-03 11:49:56

在推荐搜索系统中,我们常常可以见到重排模块,那么你知道重排模块的作用是什么吗?在本篇文章里,作者就介绍了重排模块的作用,以及常见的重排策略,一起来看看吧,或许会对想了解搜索推荐系统的你有所帮助。

很多人在最开始了解搜索推荐系统时,不明白为什么还需要单独设立一个重排模块,重排模块和精排模块能不能进行合并。本篇我们就详细介绍一下重排模块的作用以及常见的重排策略。

一、推荐系统常见架构

我们先介绍一下目前行业里先进的推荐系统架构是什么样的,分别介绍各个功能模块的定位。


(相关资料图)

上图是目前工业界常见的推荐系统架构,整体系统链路上至少分为以下5层:

召回层:从亿级别的物料中初筛出用户感兴趣的物料,输出的物料在万级别,大幅降低物料量级,减少后续系统中的性能压力。一般都是多路召回架构,接近20路的召回策略。粗排层:针对召回层返回的物料,预估召回点击率再进行排序,筛选出千级别的物料。过滤层:基于一些硬规则过滤掉最后不能在前端露出的物料,比如内容领域命中了黑词、电商领域无库存的商品等。过滤层也可以放在粗排层之前。精排层:将过滤层返回的所有物料进行CTR预估,然后按照Pctr进行排序,输出百级别的物料给到下一层。重排层:重排层会基于全局最优和相关业务规则等对于精排返回的物料顺序进行再次调整,一般都只是微调。最终一次请求中返回在百级别以内的物料给到前端。

每一个模块都有自己的定位,早期的推荐系统就只有一个最简单的排序模块,发展到现在推荐系统架构已经非常精细化,不同模块各司其职。

二、重排模块的定位

在搜推系统的众多模块中,重排模块主要实现以下三个目标:全局最优 + 流量调控 + 用户体验。

1. 全局最优

精排实现的是单点最优,但是用户实际在浏览推荐信息流时是连续浏览多个商品。不同商品之间的排列组合将影响用户整体的点击率。

就如同人穿搭衣服一样,精排模块的视角,是单点为用户选择最好看的上衣、裤子和鞋子。

而重排模块是站在整体视角,为用户选择既好看然后风格又匹配的最优的上衣、裤子和鞋子的组合,所以重排模块最终需要在精排的排序基础上,按照用户的浏览行为为其挑选出最优的一组商品或者内容组合。

2. 流量调控

重排模块是对物料的最后一道排序环节,很多时候业务的特殊流量诉求都是在重排模块进行干预。比如电商场景中对于新品的扶持,淘宝当年做直播生态时对于直播内容进行加权。这些特殊的流量诉求需要干预整体排序时,最好的实现方式都是在重排模块进行干预。

3. 用户体验

精排和重排整体的排序逻辑还是基于模型预估的CTR,但是有时候完全按照CTR大小来进行排序的内容会比较极端,比如连续多坑都是同一种类型的商品或者内容,导致用户审美疲劳,这种就是线上的问题案例,解决这类case都需要在重排模块做一些频控策略。

电商推荐里需要针对同三级类目、同品牌、同封面图的商品进行打散,内容推荐场景里需要针对同类型、同封面图、同作者的内容进行打散。打散可以有效防止用户审美疲劳化,同时有利于探索和捕捉用户的潜在兴趣,对用户体验和长期目标都很关键。

三、常见的重排策略

针对上述介绍的三大类目标,我们分别介绍实现三大类目标常用的策略。

1. 全局最优-List Wise策略

List Wise本身不是一个具体的算法或者模型,只是一个模型的优化目标或者是损失函数的定义方式,List Wise关注整个列表中物料之间的顺序关系,需要结合上下文的信息。List Wise整个策略分为两个步骤:

1)序列生成

标签:

x 广告
x 广告

Copyright ©  2015-2022 太平洋文旅网版权所有  备案号:豫ICP备2022016495号-17   联系邮箱:93 96 74 66 9@qq.com