💡
原文中文,约12100字,阅读约需29分钟。
📝
内容提要
多目标排序解决推荐系统中的偏差问题,通过改变样本权重、多模型分数融合和多任务学习等方式进行优化。MMOE是一种多任务学习模型,通过引入多个门控网络来解决任务相关性不强的问题。代码实现中,可以使用MMoE层和任务塔构建多目标模型。
🎯
关键要点
- 推荐系统中的显示反馈较少,主要基于隐式反馈,存在目标偏差、物品偏差和用户偏差。
- 目标偏差指不同目标的偏好程度不同,例如电商中购买行为的偏好高于收藏。
- 物品偏差是指推荐物品需要多个衡量目标,单一目标衡量不全面。
- 用户偏差表现为不同用户对满意度的表达方式不同。
- 多目标排序旨在解决上述偏差问题,通过优化多个目标来提高用户粘性。
- 多目标排序的主要方式包括改变样本权重、多模型分数融合和多任务学习。
- MMOE是一种多任务学习模型,通过多个门控网络解决任务相关性不强的问题。
- MMOE在MOE的基础上增加多个门控网络,针对不同任务自适应加权专家网络的输出。
- 在MTL中,稀疏任务可以尝试使用Focal loss来提升效果。
- 可以通过对负例进行降权或寻找更难的负例来改善模型效果。
- 任务间的预测可以相互作为输入,注意梯度传递的处理。
- MMOE层的代码实现包括定义层的参数和构建前向传播函数。
- 在MMOE层基础上构建多目标模型时,需要增加不同任务的塔网络。
- 模型编译时可以设置损失函数和优化器,输出层使用softmax激活函数。
➡️