【论文阅读】PEPNet Parameter and Embedding Personalized Network for Infusing with Personalized Prior Information

原始题目:PEPNet: Parameter and Embedding Personalized Network for Infusing with Personalized Prior Information
中文翻译:PEPNet:用于注入个性化先验信息的参数和嵌入个性化网络
发表时间:2023-08-06
平台:SIGKDD
文章链接:10.1145/3580305.3599884
开源代码:https://github.com/UlionTse/mlgb

摘要

随着在线购物和视频观看网站等在线服务中内容页面和交互式按钮的增加,工业规模的推荐系统在多域和多任务推荐方面面临挑战。多任务多领域推荐的核心是在给定多种用户行为的情况下,准确捕捉多场景中的用户兴趣。本文提出了一种用于多域多任务推荐的即插即用参数嵌入个性化网络(PEPNet)。PEPNet以个性化先验信息为输入,通过门机制动态缩放底层嵌入和顶层DNN隐藏单元。参数嵌入个性化网络(EPNet)对嵌入进行个性化选择,以融合多个领域中不同用户不同重要性的特征。参数嵌入个性化网络(PPNet)对DNN参数进行个性化修改,以在多个任务中为不同用户平衡具有不同稀疏性的目标。我们结合快手培训框架和在线部署环境进行了一系列特殊的工程优化。通过注入嵌入的个性化选择和DNN参数的个性化修改,根据每个人的兴趣量身定制的PEPNet获得了显著的性能提升,在多个领域的多个任务指标上的在线改进超过1%。我们在快手应用中部署了PEPNet,每天为超过3亿用户提供服务。

1. 引言

传统的推荐模型侧重于单个域[5,14,31]中的单个预测任务(例如CTR),即使用从单个域收集的示例进行训练,并为单个任务的预测提供服务。然而,在现实世界的应用中,对推荐的需求在不同的场景中是分散的。随着内容页面数量的增加,推荐系统面临着数据片段位于多个域中的关键问题。例如,淘宝1有预购(猜猜你喜欢什么)、购中(一次又一次选择)和购后(猜猜你买后喜欢什么)等场景,如图1所示。快手2有FeaturedVideo选项卡、双列发现选项卡和单列幻灯片选项卡等场景。此外,通常在每个页面上设计多个按钮供用户交互。为了利用用户反馈并提供更好的体验,推荐系统需要捕捉用户的各种行为偏好,对用户在多个任务中与不同目标交互的概率进行建模。例如,快手在图1中为用户提供了各种交互目标,如点赞、关注、转发、收集和评论。

image-20240807102038194

由于不同场景中存在重叠的用户和项目,因此多个域具有共性。不同的目标在功能上是相关的,因此多个任务之间存在依赖关系。为每个领域中的每个任务训练单独的模型不仅在部署成本和迭代效率方面是不可接受的,而且没有充分利用大量数据,忽视数据之间的共性可能会导致次优性能。然而,直接混合所有数据并使用统一模型进行训练忽略了领域和任务之间的差异。由于用户行为和项目候选在多种场景中的不同分布,无法将具有不同语义和重要性的特征对齐和融合将导致领域跷跷板[25]。由于不同的目标具有独特的稀疏性并相互影响,因此无法在多个任务中平衡相互依存的目标可能会导致任务跷跷板[27]。

目前,多领域学习和多任务学习在推荐系统中取得了很大进展[5,23,30-32]。但在实际应用中,我们不能分别在多域和多任务联合设置中简单直接地重用多域或多任务学习方法。多域方法侧重于在不同域下对齐特征语义,但在多任务设置下忽略标签空间中的目标依赖关系。多任务方法侧重于拟合不同任务的目标分布,但忽略了多域设置下特征空间中的语义差异。如图2所示,与单独的多任务学习或多领域学习相比,多任务学习和多领域学习在实际应用中同时发生,并且更加复杂。一方面,同一任务的不同领域与不同任务的同一领域在特征语义和重要性上存在差距。另一方面,同一领域内的不同任务和不同领域内的同一任务具有不同的目标稀疏性和相互依赖性。与任务跷板现象和领域跷板现象不同,我们称之为不完全双跷板现象。随着领域和任务数量的增加,这种现象在行业规模的推荐系统中更为严重。由于现实工业对高效率和低成本的要求,迫切需要一种即插即用网络来解决多域和多任务的挑战。个性化建模是推荐系统的核心。增强模型的个性化有助于捕捉用户在不同情况下对项目的偏好程度。多域和多任务设置可以被视为用户在不同情况下与项目交互,因此更准确的个性化估计可以缓解不完美的双跷跷板问题。但简单地使用个性化先验信息作为底层输入,在信号通过深层网络到达顶层后,效果变得极其微弱。如何在正确的地方以正确的方式将个性化先验注入模型是至关重要的,值得探索,特别是对于多个领域和任务。

image-20240807103050172

为了解决这个问题,我们提出了一种用于多任务和多领域推荐的参数嵌入个性化网络(PEPNet),该网络充分利用了任务之间的关系,并通过增强个性化来消除领域偏见。与现有的多任务学习[18,27]和多域学习[13,25]相比,PEPNet是一种高效的即插即用网络。PEPNet以具有个性化先验信息的特征为输入,通过门机制动态缩放模型中的底层嵌入和顶层DNN隐藏单元,称为域特定EPNet和任务特定PPNet。嵌入个性化网络(EPNet)将特定领域的个性化信息添加到底层,以生成个性化的嵌入门。嵌入门用于从多个领域对原始嵌入进行个性化选择,以获得个性化嵌入。参数个性化网络(PPNet)将用户和项目的个性化信息与每个任务塔中的DNN输入连接起来,以获得个性化的门分数。然后,使用DNN隐藏单元执行元素式产品,对DNN参数进行个性化修改。通过将个性化先验映射到0到2的缩放权重,EPNet选择嵌入来融合多个领域中不同用户具有不同重要性的特征,PPNet修改DNN参数,以平衡多个任务中不同用户的不同稀疏性目标。

这项工作的贡献可以概括如下:

  • 我们提出了一种适合每个人兴趣的参数嵌入个性化网络(PEPNet)。PEPNet是一种高效、低成本的部署和即插即用方法,可以注入任何模型。我们在工业短视频数据集上评估了PEPNet和其他SOTA方法,广泛的实验证明了我们的方法在缓解不完全双跷跷板现象方面的有效性。
  • 我们在快手推荐系统中部署了PEPNet,为超过3亿日活跃用户(DAU)提供服务。PEPNet的部署使观看时间增加了1%以上,多个交互目标的观看时间提高了约2%。我们的方法可以推广到其他设置,研究人员可以从我们的部署中吸取经验教训。

2. 结果

本节介绍了缓解不完全双跷跷板问题的详细设计。我们详细阐述了所提出的PEPNet的问题制定、网络结构以及在中国最大的短视频平台之一快手的部署。

2.1 问题制定

在这里,我们定义了我们研究的符号和问题设置。该模型使用稀疏/密集输入,如用户历史行为、用户配置文件特征、项目特征、上下文特征等。预测目标\(\hat{y}_t\)是域d中第t个任务的用户u对项目i的偏好得分,通过以下公式计算:

\[\hat{y}_{t}=F(\{E\left(u_{1}\right),\ldots,E\left(u_{m}\right)\oplus E\left(i_{1}\right),\ldots,\\E\left(i_{n}\right)\oplus E\left(c_{1}\right),\ldots,E\left(c_{o}\right)\}_{d})\tag{1} \]

其中\(u_1,...,u_m\)表示用户特征,包括用户历史行为、用户简档和用户ID等。\(i_{1}...,i_{n}\)表示项目特征,包括项目类别、项目ID(iid)和作者ID(aid)等。\(c_1,...,c_o\)共同指出其他特征,包括上下文特征和组合特征。m、 n和o分别表示用户特征、项目特征和其他特征的数量。E(∗)表示稀疏/密集特征在bucketing算法后由嵌入层映射到可学习的嵌入,⊕表示连接。{}d表示域d中的示例。表示任\(\hat{y}_t\)务t的输出分数。F是推荐模型,本质上是一个可学习的预测函数。

在现实世界中,项目候选池和部分用户在多个场景中共享。然而,由于不同的消费目的,用户对同一物品的行为倾向会在不同的场景中发生变化。为了更好地捕捉用户对多种行为的倾向及其在多种场景中的联系,推荐器f需要同时对多个域D中的多任务T进行预测。因此,多域和多任务推荐问题可以表示为:\(x_{d}\rightarrow\hat{y}_{i}\),其中xd是从每个域d∈D收集的示例的特征,\(\hat{y}_t\)是每个任务t∈T的预测得分。

2.2 网络结构

图3展示了我们提出的PEPNet模型的网络结构。总体架构由以下三个部分组成,我们将逐一详细介绍。

  • 门神经单元。Gate NU是EPNet和PPNet的基本单元,是一种门控结构,可以处理具有不同个性化语义的更多先验信息,以注入模型嵌入个性化网络。
  • EPNet将个性化领域特定信息作为Gate NU的输入,对嵌入进行个性化选择,以融合多个领域中不同用户不同重要性的特征参数个性化网络。
  • PPNet使用关于用户/项目的个性化信息来生成门,并对DNN参数进行个性化修改,以在多个任务中为不同用户平衡不同稀疏度的目标。

2.2.1门神经单元(Gate NU)。受语音识别领域提出的LHUC算法的启发[26],PEPNet引入了一种名为门神经单元的门控机制,该机制允许将个性化的先验信息注入网络。LHUC专注于学习特定说话者的隐藏单元贡献,通过用个性化贡献缩放模型的隐藏层来提高不同说话者的语音识别准确性。然而,LHUC本质上使用用户ID作为个性化标识符,忽略了其他丰富的个性化先验信息,如用户的年龄、性别和其他个人资料。此外,在匹配用户和项目的推荐系统中,项目信息也很重要,例如项目的ID、类别和作者。许多研究[22,35,36]表明,用户对不同的项目表达了不同的个性化偏好模式。

因此,我们提出了门神经单元(Gate Neural Unit,简称Gate NU)来处理具有不同个性化语义的更多先验信息,并将其注入模型中。Gate NU,也称为℧,由两个神经网络层组成。我们将Gate NU的输入表示为x,

\[\mathbf{x}^{\prime}=Relu\left(\mathbf{xW}+b\right),\tag{2} \]

其中W和b是可学习的权重和偏差。选择Relu作为非线性激活函数。第一层用于将特征与各种先验信息交叉。然后,我们通过第二层定制门分数的生成,如下所示,

\[\delta=\gamma*Sigmoid\left(\mathbf{x^{\prime}W^{\prime}}+b^{\prime}\right),\delta\in[0,\gamma].\tag{3} \]

第一层的输出x′被馈入第二层的输入。W′和b′是第二层的可训练权重和偏差。Sigmoid函数用于生成门矢量δ,将输出限制为[0,γ]。γ是设置为2的缩放因子。

根据方程2和3,Gate NU使用先验信息x生成个性化门δ,自适应地控制先验信息的重要性,并使用超参数γ进一步压缩和加倍有效信号。接下来,我们详细介绍了如何在EPNet和PPNet中使用Gate NU将重要的先验信息选择性地注入模型的关键位置。

image-20240807114221143

2.2.2嵌入个性化网络(EPNet)。在工业级推荐系统中,嵌入表非常庞大,特别是对于ID特征。为了节省计算和存储成本,

\[\mathbf{E}=E(\mathcal{F}_{S})\oplus E(\mathcal{F}_{D}),\tag{4} \]

其中\(\mathcal{F}_{S}\)是稀疏特征,\(\mathcal{F}_{D}\)是密集特征。作为一般输入,它们通过嵌入层E(∗)转换为可学习的嵌入E。

由于共享来自不同领域的训练样本的嵌入层,在实践中存在几个缺点,因为它强调共性而忽略了多个领域之间的差异。EPNet在共享嵌入层的基础上,以低成本(即参数少、收敛速度快)将特定领域的个性化先验信息注入到嵌入中。我们使用域侧特征\(E(\mathcal{F}_{d})\in\mathbb{R}^{k}\)作为EPNet的输入,包括域ID和域特定的个性化统计特征,如每个域中的用户行为计数和项目暴露。\(\mathrm{\Omega}_{\boldsymbol{ep}}是\)嵌入层中EPNet的Gate NU,其输出\(\delta_{domain}\in\mathbb{R}^e\)由下式给出

\[\delta_{domain}=\mathrm{\Omega}_{ep}(E(\mathcal{F}_{d})\oplus(\otimes(\mathrm{E}))),\tag{5} \]

其中我们将一般嵌入\(\mathrm{E}\in\mathbb{R}^{\boldsymbol{e}}\)与输入连接起来,但不使用梯度反向传播,表示为⊘(∗)。接下来,我们使用外部Gate NU对嵌入的E进行个性化转换,而不改变原始的嵌入层,在多个领域中为不同用户对齐不同重要性的特征。变换后的嵌入是,

\[\mathrm{O}_{ep}=\delta_{domain}\otimes\mathrm{E},\tag{6} \]

其中\(\mathrm{O}_{ep}\in\mathbb{R}^{e}\),⊗表示元素积。请注意,当嵌入层中有许多输入特征和较大的向量维数时,向量积是可选的。

2.2.3参数个性化网络(PPNet)。现有的多任务推荐器[18,27]专注于使用复杂模块对多任务表示进行建模。当基于多任务表示来拟合多任务标签时,它们都使用DNN Towers,即堆叠的神经网络层。然而,DNN塔的参数由所有用户共享。由于不同用户对各种行为的偏好不一致,缺乏个性化参数将使模型难以平衡多个任务,不可避免地导致性能跷跷板。

为了解决这个问题,我们建议PPNet修改多任务学习中的DNN参数,构建一个适合每个用户兴趣的DNN模型。我们使用用户/项目/作者侧特征(Fu/Fi/Fa)作为PPNet的个性化先验,如用户ID、项目ID、作者ID(快手短视频的制作人),以及其他侧信息特征,如用户年龄/性别、项目类别/受欢迎程度等。具体而言,PPNet的详细结构如下:

\[\mathrm{O}_{prior}=E(\mathcal{F}_{u})\oplus E(\mathcal{F}_{i})\oplus E(\mathcal{F}_{a}),\\\delta_{task}=\mathrm{U}_{pp}(\mathrm{O}_{prior}\oplus(\otimes(\mathrm{O}_{ep}))).\tag{7} \]

我们将EPNet \(\mathrm{O}_{ep}\)的输出与个性化先验\(\mathrm{O}_{prior}\)连接起来,作为PPNet中Gate NU即℧pp的输入。为了避免影响EPNet中更新的嵌入,我们对\(\mathrm{O}_{ep}\)执行停止梯度的操作。接下来,我们使用基于Gate NU输出δ任务的元素积来加倍和压缩DNN每层中的隐藏贡献H,如下所示:

\[\mathrm{O}_{pp}=\delta_{task}\otimes\mathrm{H},\tag{8} \]

其中H=[H1,…,HT]。在每个DNN层中,\(H_{t}\in\mathbb{R}^{h}\)表示第t个任务塔的隐藏单元。请注意,\(\delta_{task}\in\mathbb{R}^{h*T}\)被拆分为具有h维的T个向量后,被应用于T个任务的隐藏层单元。同样,拆分后的Opp表示T个任务中的h维PPNet输出。

此外,我们将PPNet集成到所有DNN层中,以完全个性化DNN参数,在多个任务中为不同用户平衡不同稀疏度的目标,公式如下,

\[\begin{aligned}\mathrm{O}_{pp}^{(l)}&=\delta_{task}^{(l)}\otimes\mathrm{H}^{(l)},\\\mathrm{H}^{(l+1)}&=f(\mathrm{O}_{pp}^{(l)}\mathrm{W}^{(l)}+b^{(l)}),l\in\{1,...,L\},\end{aligned}\tag{9} \]

其中L是任务塔的DNN层数,f是激活函数。对于前L−1层,激活函数f使用Relu。最后一层中的f是没有放大系数γ的Sigmoid,这与Gate NU不同。在最后一层获得多个域上多个任务的预测分数后,采用二进制交叉熵进行优化。

2.3 工程优化策略

为了在快手的大规模推荐场景中部署PEPNet,我们制定了以下工程优化策略:

  • 特征消除策略:在大规模推荐系统中,将每个特征映射到嵌入向量会迅速占用服务器的内存资源。为了避免在存储嵌入的服务器中耗尽内存,我们设计了一个无冲突且内存高效的全局共享嵌入表(GSET)。与侧重于最大化缓存命中率的LFU和LRU等传统缓存消除策略不同,GSET采用特征分数消除策略来防止低频特征进入和退出系统,这可能会对系统性能产生负面影响。通过有效地管理嵌入向量,可以将内存使用率保持在预定阈值以下,从而确保长期的系统性能。
  • 在线同步策略:我们将在线学习中的最小训练单位称为“通过”。在每次传递中,DNN的更新参数都会完全在线同步。然而,由于用户和项目数量庞大,完全同步嵌入是不可行的。尽管新用户和项目不断出现,但旧用户和项目可能会过期或变冷。在每次迭代中完全同步更新的嵌入将增加系统的冗余,带来额外的存储、计算和通信成本。为了解决这个问题,我们实现了两种策略来同步每个过程中所需的嵌入。第一种策略是为每个特征设置数量限制,以防止任何单个特征的嵌入过度同步。第二种策略是为嵌入设置一个过期时间,只同步那些经常更新的嵌入,不同步那些没有达到指定更新频率的嵌入。
  • 离线训练策略:在短视频场景中,嵌入的更新比DNN参数更频繁,特别是对于ID特征。为了在在线学习的情况下更好地捕捉底层嵌入的变化并稳定更新顶层DNN参数,我们分别训练嵌入和DNN参数并采用不同的更新策略。在嵌入层,我们使用AdaGrad优化器,学习率设置为0.05。而DNN参数由Adam优化器以5.0e-06的学习率进行更新。

3. 实验

在本节中,我们进行了广泛的实验来评估PEPNet,目的是回答以下问题。

  • RQ1:与最先进的推荐器相比,所提出的方法表现如何?在多任务和多域场景中的性能如何?
  • RQ2:所提出的方法中的PPNet和EPNet能否分别解决多任务和多域推荐中的不完全双跷跷板问题?
  • RQ3:所提出的方法中不同组件和实现的效果是什么?
  • RQ4:PEPNet在真实的在线场景中表现如何?

3.1 实验设置

3.1.1数据集和指标。为了在遭受不完全双跷跷板问题的现实场景中评估PEPNet,我们从快手收集了一个具有丰富领域和任务的工业数据集。我们提取了2022年9月11日至9月22日共12天的日志子集。我们考虑了三个域,即双列发现选项卡、特色视频选项卡和单列幻灯片选项卡,在我们的实验中分别注释为域A、B和C。在多个任务中,六种类型的用户交互被预测为二元目标,即点赞、跟随、前进、憎恨、点击和EffView。在单列选项卡中单击被定义为观看超过3秒,以模拟沉浸式选项卡中不存在的单击行为。EffView是有效视图的缩写,如果观察时间达到所有样本的50%或更多,则定义为1,否则定义为0。

我们使用前10天的数据作为训练集,第11天用于验证,最后一天用于测试。我们进一步筛选出交互次数少于10次的用户和由少于10次用户交互的项目。我们使用两种广泛采用的准确性指标来评估模型,包括AUC和GAUC[36]。表1总结了数据集的统计数据,包括基本信息、每个领域中每个任务的稀疏性以及用户和暴露项目在各个领域的重叠。尽管域共享相同的项目池并包含许多重叠的用户,但可以观察到,不同域的项目暴露和用户行为不同。这表明用户在多个领域有不同的行为意图,并体验到差异化的消费生态系统。

image-20240808105637091

3.1.2基线和实施。为了证明PEPNet的有效性,我们将其与几种最先进的方法进行了比较。基线分为三类:只处理单个领域上的单个任务的一般推荐器,忽略多个领域影响的多任务推荐器,以及考虑全面性的多任务和多领域推荐器。

一般推荐器:我们分别训练每个域中的每个任务,以报告多任务和多域结果。

  • DeepFM[8]是一种广泛使用的通用推荐器,它用因子分解机取代了WDL[5]的大部分内容
  • DCN[30]用交叉网络代替DeepFM的因式分解机,对线性交叉特征进行建模
  • xDeepFM[14]进一步将矢量思想引入DCN的交叉部分,以有效地学习特征交叉
  • DCNv2[31]使用低秩DCN的混合,在性能和延迟之间进行更健康的权衡,以实现SOTA。

多任务推荐器:我们在每个领域分别训练多个任务,以报告多任务和多领域的结果。

  • DCNv2 MT将DCNv2扩展到多任务场景,在不同任务之间共享主模型,并使用不同的DNN层生成偏好评分。
  • SharedBottom是最常见的多任务模型,它共享底层DNN层的参数,并使用特定的任务塔生成相应的分数
  • MMoE[18]在所有任务中共享多个专家子模型和一个门控网络,以隐式建模具有不同标签空间的多个任务之间的关系
  • PLE[27]是一种最先进的方法,为每项任务设置独立的专家,并在MMoE中保留共享专家的基础上考虑专家之间的互动。

多任务和多域推荐器:很少有工作致力于同时解决多任务和跨域推荐问题。我们提出了一些变体来填补这一空白。

  • PLE-MD将PLE扩展到多域场景,跨不同域共享输入嵌入层SharedTop首先与PLE-MD一样共享输入嵌入层,并在不同域之间共享顶部DNN任务塔,这与共享底部DNN层的SharedBottom不同。
  • SpecificTop:与SharedTop不同,该模型在不同域上对同一任务采用不同的任务塔,而底层嵌入层仍在域之间共享
  • SpecificAll:与SpecificTOP不同,该模型不仅区分了不同领域的不同顶部DNN任务塔,还采用了特定的底部嵌入层。

3.1.3超参数设置。在离线实验中,我们基于TensorFlow实现了所有模型[1]。我们使用Adam[12]进行优化,初始学习率为0.001。批量大小设置为1024,所有型号的嵌入大小固定为40。Xavier初始化[7]用于初始化参数。所有方法都使用隐藏大小为[100,64]的两层前馈神经网络进行交互估计。EPNet和PPNet中使用的先验信息被添加为所有基线中嵌入层的额外输入,以进行公平比较。我们应用仔细的网格搜索来找到最佳的超参数。在[4,6,8]中搜索了MMoE、PLE及其变体的专家数量。所有正则化系数都在[1e-7,1e-5,1e-3]中搜索。

3.2 总体性能(RQ1)

表2显示了三个领域中六个任务的实验结果。从结果来看,我们有以下观察结果:

我们提出的方法始终达到最佳性能。我们可以观察到,在三个领域的所有六个任务指标方面,我们的模型PEPNet明显优于所有基线。具体来说,我们的模型在域A上平均将GAUC提高了约0.01,在域B上提高了0.02,在域C上提高了0.02p,p值<0.05。对于三个域上每个任务的平均性能,Like增加0.01,Follow增加0.02,Forward增加0.02,Hate增加0.03,Click增加0.002,EffView增加0.005。这种改进在更稀疏的域和任务上更为明显,这验证了我们的方法可以更有效地平衡多任务和多域推荐问题。它显著降低了以跨域和跨任务的方式对稀疏域和稀疏任务进行建模的难度。

一般推荐器无法平衡任务跷跷板。一般推荐器在密集域(域B)中的密集任务(Click)上表现良好,但在稀疏域(域A)中的稀疏任务(Forward)上表现不佳。简单地将通用推荐器(DCNv2)扩展到多任务(DCNv2-ML)会导致一些任务(Like)变得更好,一些任务(Hate)变得更差。这表明,当面对多任务估计时,集中式通用模型存在跷跷板问题,导致任务之间的性能不平衡。与此相比,具有共享参数层和特定任务塔的SharedBottom在某些域(域C)的所有指标上都获得了平衡的性能提升。这表明,专门设计的多任务推荐器可以缓解任务跷跷板现象。模型的共享部件和特定部件(MMoE和PLE)的设计越复杂,性能改进就越明显。但它们在稀疏域(域A)上的性能仍然很差。

image-20240808113346521

多任务推荐器无法平衡领域跷跷板。即使是最强大的多任务推荐器(PLE),当扩展到多域(PLE-MD)时,仍然会出现一些域(域A)变得更好,一些域(领域C)变得更差,即域跷跷板现象。原因是顶层标签空间和底层嵌入空间不一致。对不同领域进行建模的多任务方法的局限性在于,它们不能同时考虑跨领域和跨任务信息。建立在SharedBottom基础上的多任务和多领域变体SharedTop是多任务学习的早期成果,可以在一定程度上缓解双跷跷板现象。由于任务塔是特定于域的,SpecificTop只会在某些域(域A)中带来更好的结果,同时将参数数量增加几倍。而SpecificAll进一步划分了底层嵌入空间,忽略了域之间的共享知识,降低了推荐效果。我们的方法基于共享的底部嵌入层和共享的顶部DNN任务塔插入门控网络,以捕捉用户在域和任务之间的个性化偏好,用少量参数实现最佳性能。

3.3 消融研究(RQ2)

为了进一步验证PEPNet模型中提出的子模块的有效性,我们比较了没有PPNet模块、没有EPNet模块、两个模块都没有以及完整模型的离线性能,如图4(a)所示。此外,我们研究了PEPNet作为即插即用模块在多任务和多域推荐问题之外的其他设置上的泛化能力。具体来说,我们比较了图4(b)中PPNet对多任务和单域推荐的效果,图4(c)中EPNet对单任务和多域推荐的影响,以及图4(d)中将PPNet添加到单任务和单领域模型的效果。

图4(a)、(b)和(c)中的结果显示了通过EPNet和PPNet捕获跨域和跨任务信息的有效性。嵌入EPNet的个性化和PPNet的参数个性化可以分别带来进一步的性能改进。在图4(d)中,向单任务和单域模型添加纯参数个性化也可以为一般推荐问题带来好处,这也说明了在推荐中建模个性化偏见的重要性。

image-20240808113505729

3.4 超参数研究(RQ3)

为了研究所提出模型中不同设置和实现的影响,我们进行了超参数实验。首先,我们比较了图5(a)中每个输入特征在不同嵌入大小下EPNet的性能,以及图5(b)中DNN层数与PPNET耦合的效果。其次,由于我们建议在Gate NU中的Sigmoid上添加缩放因子来放大或压缩维度之间的差异,我们在图5(c)中评估了不同系数下的推荐性能。最后,我们研究了额外输入在EPNet和PPNet中的作用,并比较了图5(d)中删除输入、添加输入但删除反向传播(BP)以及添加输入和BP对性能的影响。

从结果可以看出,EPNet的性能在不同维度的嵌入下是鲁棒的,即使只有16个维度的小维度也能保持出色的性能。随着DNN层数的增加,PPNet的性能会变得更好,但在达到一定层数后,过深的神经网络会导致过拟合。Gate NU中的Sigmoid系数在值为2时表现最佳,因为它的输出范围是以1为中心的(0,2),这可以更好地平衡缩放效果。在EPNet和PPNet中添加一般输入并删除反向传播(BP)比其他设置更好,这表明这种方式可以更好地利用输入信息并在不影响骨干网的情况下对用户进行个性化建模。

3.5 在线A/B测试(RQ4)

为了评估PEPNet的在线性能,我们进行了严格的在线A/B测试。表3显示了三个代表性领域的改进:双栏发现选项卡、特色视频选项卡和单栏幻灯片选项卡。与电子商务场景中的CTR和GMV不同,短视频场景注意以下指标:点赞、关注、转发和观看时间。Watch Time测量每个用户在视频上的平均观看时间。我们可以看到,与之前的SOTA方法相比,所有指标都有显著改善。请注意,观看时间增加0.1%被认为是快手的有效改善,因此PEPNet取得了显著的业务效益。PEPNet部署在我们的在线服务中,每天为超过3亿用户提供服务。

image-20240808113743366

4. 相关工作

我们的工作建立在传统CTR预测的基础上,并使用门将其扩展到多领域和多任务。在本节中,我们讨论了推荐中CTR预测、多域学习、多任务学习和门控机制的相关工作。

4.1 点击率预测

点击率(CTR)预测是电子商务和流媒体互联网公司最重要的增长引擎,可以改善用户体验,增加公司收入。传统的浅层CTR模型,如逻辑回归(LR)、因式分解机(FM)和梯度提升决策树(GBDT),具有很强的可解释性和轻量级的训练部署要求,在早期被广泛使用。

由于深度学习捕捉高阶特征交叉的强大能力,现代深度方法取得了显著的进步。FNN[32]使用FM对嵌入层进行预训练,然后将处理后的密集特征输入到DNN中。PNN[23]将预训练的向量内积/外积直接传输到神经网络。WDL[5]联合训练宽线性模型和深度神经网络,以结合记忆和泛化优势。DeepFM[8]用FM替换了WDL的宽部分,从而不再依赖于手动特征工程。DCN[30,31]用跨网络替换了DeepFM的FM,xDeepFM[14]进一步将矢量化的思想引入了DCN的交叉部分。DCNv2[31]使用低秩DCN的混合,在性能和延迟之间进行更健康的权衡,以实现SOTA。

4.2 多域学习

多域学习是域适应的延伸,属于转换迁移学习。迁移学习可以使用具有足够标记数据的源域来帮助具有很少标记数据的目标域。当源域和目标域中的数据分布不同,但两个任务相同时,这种特殊的迁移学习被称为域自适应[6]。由于不满足独立和同一分布(IID)假设,直接在源域上训练的模型在目标域上的表现通常很差,这种现象被称为负迁移[3,4]。域自适应的基本思想是将源域和目标域的不同分布的数据对齐到一个统一的空间中,以获得域不变特征。与一般的域自适应问题不同,多源域自适应涉及具有不同分布的多个源域,多目标域自适应旨在转移到多个目标域[37]。解决这些问题的关键是多个领域的对齐策略[21,33,34]。

传统的CTR预测主要侧重于估计单个域中的单个目标。随着现实世界场景的不断增加,需要考虑不同领域数据的联合训练。因此,与之前的工作不同,推荐场景中的多域学习[13,25]削弱了源域和目标域的概念,强调在多个域中同时提高推荐效果。

4.3 多任务学习

多任务学习旨在同时学习多个相关任务,并通过挖掘共享信息来促进每个特定任务的学习。早期的线性模型[2]使用共享稀疏表示来跨多个任务学习。在深度学习时代,硬参数共享方法可能会因任务差异而导致负迁移。为了获得更好的性能,一些研究采用软参数共享方法进行优化。十字绣网络[20]和水闸网络[24]被提出用于学习特定任务隐藏层的线性组合。其他方法使用门控机制和注意力机制进行信息融合。MOE[11]使用门结构将底部共享的几位专家结合起来。MTAN[15]由一个共享网络和几个特定任务的注意力模块组成。

在推荐系统中,基于协同过滤和矩阵分解的早期模型[16,28,29]表现出较低的表达能力,忽略了任务之间的相关性。由于简单高效等不可替代的优势,底层硬参数共享(ShareBottom)在推荐系统中得到了广泛的应用。MMoE[18]进一步分享了不同任务中的所有专家,并为每个任务使用不同的关卡来扩展MOE。ESSM[19]基于软参数共享结构,同时使用顺序模式优化两个相关任务,以减轻预测目标的稀疏性。在保留MMoE共享专家的基础上,PLE[27]为每项任务设立独立专家,并考虑不同专家之间的互动。

4.4 推荐中的门控机制

门控机制因其能够自适应地增强重要信息和削弱无关信息而在推荐系统中得到广泛应用。最近,Ma等人[17]提出了一种分层门控网络(HGN),该网络使用特征级门和实例级门模块来自动模拟用户对具有不同特征的项目实例的选择。Huang等人[10]应用计算机视觉领域提出的挤压激励网络(SENET)来动态捕捉特征的重要性,并使用双线性函数来学习特征组合。Huang等人[9]提出了特征嵌入门和隐藏门,它们通过将自身用作门输入,自适应地选择要传递给网络更深层的特征和特征交互。然而,这些方法强调信息选择,而不考虑个性化建模。由于缺乏对领域跷跷板和任务跷跷板的洞察和设计,它们不适合多任务和多领域推荐。

5. 结论

本文研究了不完全双跷跷板问题,其中一些域的数据比其他域少得多,一些任务受到稀疏标签的影响。然后,我们提出了一种参数和嵌入个性化网络(PEPNet),它学习了多个域和多个任务之间的异构关系。在快手的推荐场景中,充分考虑了嵌入个性化和参数个性化,大大改善了用户的消费体验。针对短视频推荐的特点,我们制定了工程策略,在训练和在线推理过程中进行优化。我们已将该模型部署在快手应用程序中。来自多个领域的多个任务的所有在线和离线实验在应用程序使用和参与度方面都取得了显著改善。

posted @ 2024-08-08 11:42  张天明  阅读(198)  评论(0编辑  收藏  举报