Multi-Task Learning in recommendation
Deep Multi-Task Architectures
Historical Overview and Taxonomy
-
深度学习之前,MTL试图对任务之间的共同信息进行建模。为解决负迁移的问题,选择基于对任务相似性或相关性的先验信念将任务分组。
-
深度多任务架构被分为硬参数共享技术和软参数共享技术。
-
硬参数共享中,参数集分为共享参数和任务特定参数。使用硬参数共享的MTL模型通常由一个共享编码器组成,该编码器分出task-specific head。模型:UberNet、多线性关系网络
-
软参数共享中,每个任务被分配它自己的一组参数,一个特征共享机制处理跨任务对话。模型:Cross-stitch、Sluice network、NDDR-CNN、MTAN
![](https://img-blog.csdnimg.cn/20210411095434499.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNjk1NTY4,size_16,color_FFFFFF,t_70#pic_center
-
-
最近一些研究提出首先使用多任务网络来进行出师任务预测,然后利用初始预测的特性以一次性或递归的方式进一步改进每个任务输出。PAD-Net提出空间注意力从其他任务的初始任务预测中提取信息,然后将其作为剩余信息添加到感兴趣的任务中,使用递归过程传播在初始任务预测中发现类似的交叉任务和特定任务模式。JTRL按顺序预测每个任务,目的是在每次迭代时利用来自一个任务过去预测的信息来细化另一个人物的特性。MTI-Net采用了一种多尺度多模态蒸馏过程来明确地模拟在每个独立尺度上发生的独特的任务交互作用。
PLE
Single-Level MTL Models
- a)是硬参数共享,最常用的MTL结构。由于参数直接在任务之间共享,可能会因为任务冲突产生负迁移。
- b)非对称共享,底层任务之间是不对称共享的,需要共享哪个任务取决于任务之间的关系。
- c)自定义共享,显示的分离共享参数和特定任务的参数,避免内在冲突和负迁移。
- d)MMOE为不同任务设计使用不同的门,将底层的专家合起来。在实际中,MMOE很难发现收敛路径。
- e)CGC明确的分离了任务公共参数和任务特定参数,以避免复杂的任务关联导致的参数冲突。
Multi-Level MTL Models
-
Cross-Stitch Network和Sluice Network都提出学习线性组合的权值,有选择的融合来自不同任务的表示。但在模型中,所有的样本表示都与相同的静态权值相结合,没解决跷跷板问题。
-
ML-MMOE在MMOE的基础上在底层增加专家和门控。
-
PLE不像CGC那样不同任务的参数在早期层完全分离,而是在上层逐步分离。
ESSM
motivation
- 样本选择性偏差(SSB)CVR只能利用点击后样本,而预测是在整个样本空间上,导致训练和预测样本分布不一致
- 样本稀疏,点击只占样本空间很小的一部分
summary
MMOE和ESSM主要解决负迁移但仍存在跷跷板现象。PLE中,每个任务都有独立的专家,同时有一个共享的专家。这样既可以捕捉任务之间更复杂的关系 ,同时也不会给单个任务带来噪音。对于不同的expert之间的交互,PLE在底层增加了一个交互层。
参考文献
- Multi-Task Learning for Dense Prediction Tasks: A Survey. Simon Vandenhende, Stamatios Georgoulis
- Progressive Layered Extraction (PLE): A Novel Multi-Task
Learning (MTL) Model for Personalized Recommendations.Hongyan Tang - Entire Space Multi-Task Model: An Effective Approach for Estimating Post-Click Conversion Rate. Xiao Ma.