RecSys'24 | HTLNet:探索推荐系统中的混合目标之间的任务依赖性

推荐算法机器学习数据库

picture.image

关注我们,一起学习

标题:Touch the Core: Exploring Task Dependence Among Hybrid Targets for Recommendation

论文链接:https://dl.acm.org/doi/pdf/10.1145/3640457.3688101

会议:RecSys 2024

公司,学校:腾讯,麦吉尔大学

1 引言

随着用户行为的复杂化,在线推荐更加注重如何触达与平台利益高度相关的核心转化。这些核心转化通常是连续的目标,例如观看时长、收入等,其预测可以通过前置离散的转化行为得到增强。因此可以采用多任务学习(MTL)作为范式来学习这些混合目标。然而现有的研究主要关注离散的转化行为之间的顺序依赖关系,忽视了离散转化行为和最终连续转化之间像相关依赖的复杂性。此外,同时优化强依赖的混合任务也面临着不稳定问题,因为核心的任务会受到其它任务的影响。

本文研究具有混合目标的MTL问题,提出混合目标学习网络(HTLNet, Hybrid Targets Learning Network)来探索任务间的依赖性和增强优化。创新点为:

1.为每个任务引入标签embedding,明确任务之间传递的标签信息来探索任务间依赖性

2.设计了最终回归任务与其他任务间的梯度调整机制来增强优化效果

2 先验知识

通常情况下,推荐模型会根据混合目标(包括一个/多个转化目标和核心目标)对商品进行排序,首先考虑输入的样本空间X = {x1, x2, ..., xN}下对核心目标的预测,给定一个数据集{xi, yi},其中xi表示特征向量,yi是相应的核心连续目标,假定用户需要完成T个转化步骤才能完成核心目标。在每个步骤t中,表示用户是否完成该步的转化并满足序列依赖性的约束,即。因此构成了所有数据点的混合目标。同时引入这些辅助序列任务来提高核心目标预测的准确性,并为这些转化提供预测。混合目标的MTL问题被定义为:

其中表示MTL模型f的参数, 是前序目标的预测,第一个等式表示核心目标预测的回归任务,其余等式为分类任务,这构成了典型的序列依赖多任务学习(SDMTL),而学习这个问题的关键是探索混合目标之间的依赖关系。

MTL模型的参数通常由三个部分组成,其中为共享参数,为核心目标预测的参数,为任务特定的参数。模型通过联合最小化核心目标任务损失和其他任务损失来学习:

其中Lcore可以是均方误差Lt\mathcal{L}*{core} 可以是均方误差 \mathcal{L}*{t}是二元交叉熵(BCE)损失。通过一次优化步骤,MTL模型的梯度计算如下

梯度由两部分组成:核心目标任务的梯度和其他任务的梯度之和。其中哪部分的梯度更大,对整体梯度的影响也更大。因此学习混合目标的MTL问题的另一个关键问题是维持稳定优化并提高性能。

3 方法

picture.image

本文提出的混合目标学习网络(HTLNet)整体结构如上图所示,主要由三部分构成:(1)混合目标的任务塔;(2)标签嵌入单元(LEU),用于编码辅助序列任务的标签;(3)信息融合单元(IFU),利用所有前序任务的信息。后两个组件使模型能够有效地探索任务依赖关系。此外本文还介绍了一种基于HTLNet的梯度调整方法,使优化过程稳定并提升模型性能。

3.1 HTLNet框架

核心思想是通过引入标签embedding和传递任务间的显式和隐式信息来探索任务依赖关系,如结果图所示,所有任务共享一个embedding层,通过输入后得到输出E。

注意到核心连续目标引入混合目标之间共享信息的困难,为探索任务依赖关系仅依赖于共享嵌入是不够的,此外核心目标的预测将从前序任务的信息中受益。因此本文将显式和隐式地从将前序任务传递的信息作为输入纳入任务塔。具体操作为,对于两个相邻任务t−1和t,任务t的输入为:

其中和分别是任务t-1对应IFUs的隐式和显式输出,隐式输出可以是任务塔特定层的输出。编码标签信息的一种方式是直接将标签作为最终损失的约束,这在混合目标学习中是不适当的,将使核心目标的预测受到前序标签信息不足的影响。本文在这引入LEU来解决这个问题,稍后将详细说明。

对于分类任务,任务塔给出实例i的预测概率:

对应的损失为

对于连续任务,任务塔执行回归操作,损失则使用MSE

3.1.1 标签嵌入单元

picture.image

LEU旨在显式编码标签信息,如上图(a)所示。编码标签信息可以让一个任务利用其所有前序任务的标签,然而因为混合目标的问题,离散的0/1标签信息很难直接传递给核心连续。因此LEU为每个分类任务引入了一个包含label 0/1信息的两行embedding表 。该表实现了从标签到Ld维可训练向量的映射。每一行包含对应于标签0或1的信息,分别表示为le0和le1.

在LEU中,作者从预测概率分布中采样一个标签,而不是使用预定义的标签。如果采样的标签是最终核心任务的错误预测,来自核心目标的反向传播梯度将惩罚embedding。唯一问题是采样操作是不可微分得,这与整体框架训练不兼容,为解决这个问题,进一步引入Gumbel-softmax重参数化操作来近似采样:

3.1.2 信息融合单元

IFU被提出来用于融合所有前序任务的信息,结合LEU,有两种类型的信息要融合,即标签嵌入和任务表示。IFU采用了类似于注意力机制的结构如上图(b)所示。具体而言,任务t的前序任务向量可以表示为,其中e是来自LEU的le或来自任务塔表示的rep,注意力机制被设计为自适应地分配这些传递信息的权重

其中wt定义为

其中<·>为点积操作,k是隐藏维度,hi(u)是可学习的核,用于将输入信息转换为新的输出空间。最后,可以从IFU获得标签信息和任务表示,以有效的探索任务依赖关系。

3.2 HTLNet的优化策略

HTLNet网络的优化存在一些挑战。首先核心连续目标的损失与其他任务不同,这意味着来自核心目标塔的梯度与其它任务相差甚远,导致性能下降。其次所有的标签embedding和任务表示将传递到核心目标塔,允许核心目标损失通过梯度反向传播来影响其他任务的优化。

于是作者提出了针对HTLNet的优化策略,某个任务影响其他任务有两种方式:共享嵌入和传递信息。如上所述,传递的信息会通过LEU和IFU干扰前序任务的标签预测和任务表示。因此如结构图所示,训练过程中切断传递信息的影响,只留下共享嵌入作为相互影响的唯一方式,即梯度反向传播过程中断。

接着处理共享embedding的梯度大小和方向,考虑一对任务对应的梯度来应对离散任务和核心连续任务之间共享embedding的梯度冲突, 对于每个分类任务t和核心任务,首选消除梯度方向冲突,以核心任务为目标梯度进行共享embedding

当前序任务t与核心任务冲突时,上式的余弦相似度是负的,上式将投影到的法平面上,经过迭代之后,所有都不会与发生冲突,意味着所有的前序任务都针对核心任务进行了优化。梯度冲突以外的另一个问题是和的大小差异,核心任务的损失为MSE,一般情况下比分类任务的交叉熵损失对应的梯度大的多。本文参考其他工作,采用自适应的方式将任务t的梯度朝着核心任务调整

4 效果

picture.image

交流群:点击“联系 作者”--备注“研究方向-公司或学校”

欢迎|论文宣传|合作交流

往期推荐

CIKM'24|大模型增强的协同过滤(让推荐模型学会ICL,兼顾效率和效果)

如何进行单调性建模?

算法工程师修炼之路

KDD'24 | 一文详解腾讯广告推荐算法优化实践

长按关注,更多精彩

点个在看你最好看

picture.image

0
0
0
0
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论