全国服务热线:18888889999
在线报名
欧陆注册CURRICULUM
欧陆资讯 NEWS CENTER
联系我们 CONTACT US
手机:
18888889999
电话:
0898-66889888
邮箱:
admin@youweb.com
地址:
海南省海口市玉沙路58号
欧陆资讯
你的位置: 首页 > 欧陆资讯
推荐系统多目标优化专题(2)—融合公式设计思路
2024-02-28 00:16:51 点击量:

前文我们介绍了推荐系统的基本知识:为了建模用户的满意度,我们会对多个隐式、显式目标进行预估,如点击率、有效播放率、播放时长、点赞率、关注率等。最终用统一的融合公式将预估值合成一个排序分,对视频排序。

本文是多目标优化专题的第二章,从业界的一些分享里带大家一起看看如何设计融合公式的形式。

(1)iwtbs:推荐系统多目标优化专题(1)——深入理解推荐系统

(2)融合公式的设计思路:融合公式有哪些形式,分别有什么物理意义和优劣

(3)时长预估模型:对于时长等回归类目标,有哪些常用的建模方式

(4)融合公式的自动搜参:简述在模型训练和线上推理过程中,如何进行参数的自动调优

(5)全链路优化:对于复杂的多目标优化场景,如何全链路优化提高最终的推荐效果

注:本文内容均源于公开分享,基于我个人的理解进行解读。如果有其他公开的资料or想法欢迎讨论,但鉴于保密原则自家或其他家更优的未公开方案均不交流。

PS:正值金三银四,如果大家对出海业务感兴趣,想在全球最好的业务场景之一大展拳脚无论是对基础模型还是直播电商等业务感兴趣,都欢迎私聊我内推到tiktok)

多目标排序在快手短视频推荐中的实践中,提出了最常见的加法融合公式,基本形式如下

这个加法的形式应该是最容易想到的,优点是目标权重就代表了在融合公式中的重要度,我们认为哪个目标应该更重要(或者想涨哪个指标)调大就完事。

当然缺点非常明显,这个系数对于所有用户都是一样的比例。比如点赞这种稀疏目标,理论上更合理的是让预估值高的权重更重一些,预估值低的就权重低一些,但上述形式显然做不到。

这个公式形式是从腾讯PLE论文里截取的,和上述加法刚好优缺点互换。我们先看一下单独一个目标的曲线

其中指数3是预估值越大,单目标在融合公式的影响力也越强;(比如弹幕这种目标,理论上不应该在最后打分占特别大的权重,但是对于那些喜欢发弹幕的用户,不妨让他们的弹幕目标影响力大一些)

指数0.3则是预估值越大,单目标在融合公式的影响力进行抑制(通俗来讲就是有没有很重要,多还是超级多不关心)

此时我们不再能调大单一目标整体的影响力了。如果简单的给单一目标乘系数,其实是对所有目标都生效了(等价于融合公式整体乘系数)

要注意由于预估分可能是0、负数,这个形式可能会出现错误的结果。

一矢多穿:多目标排序在爱奇艺短视频推荐中的应用 中提出了下面两种公式形式,也是我所知道的业界用的比较多的。

显然这个形式解决了上述提到了几个问题

  1. 通过factor调节单目标整体的影响力
  2. 通过beta基于预估分数调节单目标影响力,即融合公式对于不同用户是有一定个性化的
  3. alpfa起到一定兜底作用,同时保证factor只调大单一目标权重,而不是作用于融合公式整体

缺点是,加法形式特别容易被最大的目标主导,而稀疏目标我们一般都给了比较大的factor。比如正常点击 时长 点赞的分数应该是500,600,20,但是有些点赞狂魔用户的点赞分数是几千,相当于最终item排序全看点赞了,这显然是有问题的。

有时上线检查不严格,业务同学加目标的时候不规范,可能调调参数大盘正向就推全了,也完全不看单目标的分布,就更容易出现虽然均值不大,但是pct95以上的值巨大的情况。

爱奇艺公开分享的公式4是有问题的,因为factor依然是作用于全体目标,完全起不到提高单一目标权重的效果,正确的形式应该是 (\\alpha+factor * score)^\\beta ,同时文章里还说

在业务的目标较少时,通过加法方式融合新增目标可以短期内快速获得收益。但随着目标逐渐增多时,加法的融合排序能力会逐渐受限。主要包括:
(1)对于新增目标乘法融合具有一定的目标独立性,无需考虑旧目标集的值域分布;
(2)随着目标逐渐增多,加法融合会逐步弱化各子目标的重要性影响。

其实是站不住脚的,因为在乘法融合公式下施加一个对数变换,就能把它等价地变回加法融合公式。对于当前乘法融合公式,整体求对数就会变成如下形式:

log((a1 + f1*x1)^{b1}*(a2 + f2*x2)^{b2})=b1*log(a1 + f1*x1) + b2*log(a2 + f2*x2)

那么乘法和加法到底区别在哪里呢?我们不妨将公式4 log后和公式1作比较。分析单一目标的函数图,x较小时蓝线大,x较大时蓝线小

所以对于加法,有一个目标大的就容易排在前面,点赞狂魔能看到更多点赞的内容,AB实验中会看到用户行为率上升 ;

而对于乘法,鼓励的是各个目标都不能太差,因此即使是点赞狂魔,也需要考虑到其他目标的影响,AB实验中会看到行为渗透的上升。

首先这里我们不介绍自动调参or黑盒优化算法,只阐述不同变量的物理意义。

对于 (1+\\beta x)^{\\alpha} 来说

  1. \\beta 改变整个目标的影响力,\\beta越大则 \\alpha 的影响越强(无论是扩大还是抑制)
  2. \\alpha 一定程度上起到了个性化目标影响力的作用

首先以上四种公式都只是基础形式,当我们做业务时要结合具体场景来设计公式,比如京东的公式有三个目标,点击率是基础,avr和cvr算是点击后的后续价值,所以可以合在一起

再来个别人之前问过的思考题,可以评论区留言