一文读懂:基于多任务学习(MTL)的推荐系统
一文读懂:基于多任务学习(MTL)的推荐系统
多任务学习(Multi-task Learning,MTL)在计算机视觉和自然语言处理领域已广泛应用,近年来在推荐系统领域也逐渐成为研究热点。通过同时学习多个相关任务,MTL能够更好地利用任务间的共享知识,提升推荐系统的性能和泛化能力。本文将深入探讨推荐系统中MTL的应用现状、优势、挑战以及各类MTL方法的原理和特点。
传统的推荐系统往往专注于单一任务,如预测评分或点击率,这种单一视角可能导致用户兴趣的误判。相比之下,MTL方法能够在一个模型中同时学习多个相关任务,如点击、观看时长、点赞、分享等,从而更全面地理解用户行为。
MTL在推荐系统中的优势
- 提高性能:通过综合考虑点击率、完成率、分享、收藏等多个维度,能够更全面地理解用户兴趣。
- 促进泛化:通过学习辅助任务,可以起到正则化效果,减少过拟合,提高模型的稳健性。
- 减少偏见:数据丰富的任务可以辅助数据稀疏的任务,减小训练和实际使用时的数据分布差异。
- 处理数据稀疏性:通过辅助任务学习,可以挖掘更多有用的特征,缓解主要任务的数据稀疏问题。
- 缓解冷启动问题:利用相关任务或领域的数据,帮助新用户快速建立用户画像。
- 成本效益:参数共享机制可以降低维护成本和计算资源需求。
- 可解释性:通过学习不同任务的权重比例,可以生成推荐解释,提高推荐的透明度。
MTL在推荐系统中的挑战
尽管MTL具有诸多优势,但也面临一些挑战:
- 任务关系复杂性:任务间的关系可能复杂且难以建模。
- 数据稀疏性:某些任务可能缺乏足够的训练数据。
- 用户行为的序列依赖性:用户行为往往具有时间序列特性,需要专门的模型来处理。
MTL方法分类
根据任务关系的建模方式,可以将MTL方法分为以下几类:
并行任务关系
这类方法将多个任务并行建模,通常采用固定权重的损失函数加权和,或使用注意力机制来捕捉共享特征。代表性模型包括:
- Rank and Rate (RnR)
- Multi-Task Explainable Recommendation (MTER)
- Co-Attentive Multi-Task Learning (CAML)
- Deep Item Network for Online Promotions (DINOP)
- Deep User Perception Network (DUPN)
- Multiple Relational Attention Network (MRAN)
并行任务关系:示例架构
级联任务关系
这类方法考虑任务间的顺序依赖关系,常用于电商、广告和金融领域。代表性模型包括:
- Adaptive Pattern Extraction Multi-task (APEM)
- Adaptive Information Transfer Multi-task (AITM)
- Entire Space Multi-task Model (ESMM)
辅助任务学习
这类方法将一个任务作为主要任务,其他任务作为辅助任务,以提升主要任务的性能。代表性模型包括:
- Multi-gate Mixture-of-Experts (MMoE)
- Progressive Layered Extraction (PLE)
- Multi-task Inverse Propensity Weighting estimator (Multi-IPW)
- Multi-task Doubly Robust estimator (Multi-DR)
- Distillation based Multi-task Learning (DMTL)
- Multi-task framework for Recommendation over HIN (MTRec)
- Cross-Task Knowledge Distillation (Cross-Distill)
- Contrastive Sharing Recommendation model in MTL learning (CSRec)
参数共享范式
根据参数共享的方式,可以将MTL方法进一步细分为:
硬共享
所有任务共享同一套底层特征提取网络,再通过各自特有的层学习特定特征。代表性模型包括:
- Meta AI的MetaBalance
- 腾讯的多面层次MTL模型(MFH)
- 任务自适应学习(AdaTask)
稀疏共享
通过独立的参数掩码将子网络连接到共享参数空间,以解决计算和内存限制问题。代表性模型包括:
- 蚂蚁集团的多级稀疏共享模型(MSSM)
对比共享
通过对比掩码评估每个参数对特定任务的贡献,避免负迁移。代表性模型包括:
- 对比共享推荐模型(CSRec)
参数共享范式。蓝色代表共享参数,粉色和绿色代表任务特定参数
软共享
通过权重或注意力机制融合不同任务的信息。代表性模型包括:
- Deep Item Network for Online Promotions (DINOP)
- Gating-enhanced Multi-task Neural Networks (GemNN)
- Co-Attentive Multi-Task Learning (CAML)
- Causal Feature Selection Mechanism for Multi-task Learning (CFS-MTL)
- Multi-objective Risk-aware Route Recommendation (MARRS)
专家共享
通过任务特定的权重组合多个专家网络的知识。代表性模型包括:
- Multi-gate Mixture-of-Experts (MMoE)
- Progressive Layered Extraction (PLE)
- Distillation based Multi-task Learning (DMTL)
- Meta Hybrid Experts and Critics (MetaHeac)
- Prototype Feature Extraction (PFE)
- Mixture of Virtual-Kernel Experts (MVKE)
- Mixture of Sequential Experts (MoSE)
- Deep Multifaceted Transformers (DMT)
- Elaborated Entire Space Supervised Multi-task Model (ESM2^2)
层次共享
将不同任务放在不同层级上,共享部分网络结构。代表性模型包括:
- 多面层次MTL模型(MFH)
- 层次多任务图循环网络(HMT-GRN)
其他架构
除了基于参数共享的架构外,还有一些创新的MTL方法:
- 对抗性学习:如CnGAN和CLOVER,基于生成对抗网络(GAN)的MTL模型。
- 强化学习:如BatchRL-MTF,基于批量强化学习的MTL模型。
梯度冲突与负迁移
在多任务学习中,不同任务之间的梯度冲突可能导致性能下降。为了解决这一问题,研究者提出了多种方法:
- 投影冲突梯度(PCGrad)
- 冲突规避梯度下降(CAGrad)
- 梯度归一化(GradNorm)
- MetaBalance
- 任务自适应学习(AdaTask)
通过这些方法,可以更好地平衡不同任务的学习过程,避免负迁移现象。
总结
多任务学习在推荐系统中的应用前景广阔,通过合理设计任务关系和参数共享策略,可以显著提升推荐系统的性能和用户体验。随着研究的深入,未来可能会出现更多创新的MTL方法,进一步推动推荐系统的发展。