机器学习 多目标_推荐系统中的多目标学习

4d404121ae6f364711e004b509716de7.png

1 多目标排序

1.1 定义

多目标排序就是有多个目标函数,找到一种排序方法使得多个目标都达到整体最优。

1.2 为什么需要多目标

推荐系统中的显示反馈较少,因为大多数用户反馈都不是直接评分。推荐系统大多数基于隐式反馈来推荐,比如说用户的点击、收藏、分享、观看时长、购买等,在评估用户满意度的时候会存在一些认知偏差,主要包括目标偏差、物品偏差、用户偏差:

  1. 目标偏差:目标不同,偏好程度不同。比如电商场景中,购买这个行为表达的偏好高于收藏;比如视频的场景中,观看时长超过20s这个行为表达的偏好高于点击。
  2. 物品偏差:被推荐物品需要多个衡量目标,单个目标衡量不全面。短视频推荐,如果仅以视频播放完成率为目标,就可能在视频中留下悬念,需要观看下一个,让用户多操作,用户会不满意;比如信息流推荐,如果仅以点击率为目标,就可能被标题党钻了空子;如果仅以转发分享为目标,就可能存在转发保平安之类的内容。
  3. 用户偏差:不同用户表达满意的方式不同。比如知乎上观看文章,有的用户喜欢点赞,有的用户喜欢收藏。

1.3 目的

通过一些方法来解决目标偏差、物品偏差和用户偏差的问题,完成多目标的优化。比如说,电商场景,希望能够在优化GMV(付款+未付款)的基础上提高点击率;信息流场景,希望在提高用户点击率的基础上提高用户关注,点赞,评论等行为。因此推荐系统做到后期,往往会向多目标学习演化,承担起更多的业务目标,以提高用户的粘性。

关于单个目标性能提升参考:

奔奔:推荐算法注意点和DeepFM工程化实现​zhuanlan.zhihu.com
27ca04d0a4b686ac63f16f24d28dbe97.png

算法原理参考:

奔奔:深入浅出DeepFM​zhuanlan.zhihu.com
c3d9cb500cbb578c8ebaf45872fab0a9.png

2 多目标排序问题的解决方案

多目标排序问题的解决方案,大概有以下四种:通过改变样本权重、多模型分数融合、排序学习(Learning To Rank,LTR)、多任务学习(Multi-Task Learning,MTL)。

2.1 通过样本权重进行多目标优化

如果主目标是点击率,分享功能是我们希望提高的功能。那么点击和分享都是正样本(分享是点击行为的延续),分享的样本可以设置更高的样本权重。模型训练在计算梯度更新参数时,梯度要乘以权重,对样本权重大的样本给予更大的权重。

因此,样本权重大的样本,如果预测错误就会带来更大的损失。通过这种方法能够在优化某个目标(点击率)的基础上,优化其他目标(分享率)。在实际AB测试的过程中会发现,通过调整样本权重的这样的方法,原始目标A会受到一定的损失以换取新增加目标B的增长,实现初级的多目标优化。

优点:模型简单,通过梯度乘以样本权重设计目标函数,不需要额外架构支持,没有增加算法时间复杂度。

缺点:没有对多目标进行建模,而是将多个目标折算成同一个目标。样本的折算权重需要根据AB测试才能确定。比如认为一次分享算两次点击;在视频中停留了2min等价于3次对视频的点击行为等,这里面的数字需要根据线上评价指最优,测试出来的。

2.2 多模型分数融合

多模型分数融合就是每个优化目标都由独立的模型来预测一个分数,最后将这些分数采用加权的方式进行融合。如下图,每个模型都有一个得分,通过模型的权重来设计一个最终的得分,完成多目标优化。

53fd316cb8f1034b90ac11f83d2a4e57.png

当然,融合的函数可以有很多,比如连乘或者指数相关的函数,可以根据自己面临的场景不断去探索。下面列举一个电商的例子。

2.2.1 电商场景

f423ee7ff42e3b32229d44ef7af752ab.png

经典推荐系统包括召回、排序、重排序的阶段。上图展示了整个大体的流程。图中将召回的候选集,通过参数服务器和数据库中的特征一起去预测各个指标的得分(排序阶段)。在重排序阶段,将排序阶段传递来的CTR、CVR、stay等分数进行融合,最后得分计算公式如下:

equation?tex=score%3DCTR%2A%28%5Calpha%2BCVR%29%2A%28%5Cbeta%2Bprice%29%2Astay%5E%7Ba%7D%2Acart%5E%7Bb%7D%2Acollect%5E%7Bc%7D%2A%7Brule%2Aweight%7D....

根据最终的得分,推荐给用户合适的商品。

优点:模型简单

缺点:

  1. 线上服务需要有额外的时间开销,需要将多个模型预测的结果组合。
  2. 不同目标难以量化评估重要性。
  3. 样本部分特征稀疏,模型准确率低。
  4. 模型融合的超参难以学习。

那么如何更好地确定超参呢?

实际应用中,通过AB测试不断尝试,以线下和

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值