作者:十方
以往多任务学习(MTL)的研究都是针对小数量级任务做的,但是在推荐系统里需要对大数量的任务做multi-task的学习.举例来说,在推荐系统中会用MTL对用户多种行为进行建模,不同任务之间有着各种维度的相关性.所以这篇论文<Multi-Faceted Hierarchical Multi-Task Learning for a Large Number of Tasks with Multi-dimensional Relations>就提出了一个多视角层级MTL模型(MFH).使用层级结构可以充分挖掘出不同任务之间的关系并在工业数据集上也优于其他MTL模型.
PRELIMINARY
先介绍下MTL在工业场景下推荐系统里的应用.比如微视app,每天上千万人看视频,可供挑选的候选视频也有上千万,用户也会有各种各样的action,如点赞、踩、关注、评论、分享等,当用户滑过一个视频时就会推荐下一个,那用户的满意度就可以用在app的停留时长来衡量. 该文以3个task为例介绍多任务模型.
任务一(回归): 播放率预估
任务二(分类): 完播率预估
任务三(分类): 跳出率预估
该问还提到了一个冷启问题,对于高活跃度的用户,模型会过拟合,对于低活跃的用户模型会欠拟合,解决这个问题的方法是 把用户分成3档,高/中/低,和上面3个任务组合成9个任务去学习.
该文还提出了Switcher的概念,如下图所示,它表示一种网络机构,有一个输入,但有多个隐层输出
论文表示使用SOTA的switcher在数据充分的情况下会获得收益. base model如下图所示:
MFH
对于上节中的9个task的任务,一个switcher已经完全不够用了,因此层级MTL隆重登场,第0个level学习用户不同behavior的关系,第1个level直接精细到不同级别用户的各个task,如下图所示:
你以为这样就完了?H-MTL是不是有点死板,最上层是个树结构,并没有信息共享.MFH由多个H-MTL构成,从多个视角学习9个任务:
两个视角:
三个视角:
更多细节参考原文.
实验效果
参考文献
1.Multi-Faceted Hierarchical Multi-Task Learning for a Large Number of Tasks with Multi-dimensional Relations
https://arxiv.org/pdf/2110.13365.pdf