【paper笔记】Deep Match to Rank Model for Personalized Click-Through Rate Prediction

第三篇论文笔记



Abstrct

点击率(CTR)预测是推荐系统和许多其他应用程序领域的核心任务。对于CTR预测模型,个性化是提高性能和增强用户体验的关键。最近,有人提出了几种模型来从用户行为数据中提取用户兴趣,从而隐式反映用户的个性化偏好。但是,CTR预测领域中的现有工作主要集中在用户表示上,而很少关注表示用户和项目之间的相关性,这直接衡量了用户对目标项目的偏好强度。因此,我们提出了一种新颖的模型,称为深度匹配排名(DMR),该模型将协作过滤的思想与匹配方法的思想相结合,用于CTR预测中的排名任务。在DMR中,我们设计了用户到项目网络和项目到项目网络以两种形式表示相关性。
在用户到项目网络中,我们通过嵌入空间中相应表示的内积来表示用户与项目之间的相关性。同时,提出了一个辅助匹配网络(auxiliary match network)来监督训练并推动更大的内积代表更高的相关性。在 物品对物品 网络中,我们首先通过注意力机制计算用户交互物品与目标物品之间的物品对物品相似度,然后总结相似度以获得另一种形式的用户与物品相关性。我们在公共和工业数据集上进行了广泛的实验,以验证我们模型的有效性,该模型的性能明显优于最新模型。


Introduction

匹配和排名是推荐系统中信息检索的两个经典阶段。
在匹配阶段,又名候选生成,通过将用户与项目匹配,从整个项目集中检索一小部分候选。基于协作过滤的方法被广泛用于计算用户与项目的相关性并选择最相关的项目。
在排名阶段,排名模型将可比分数分配给通过不同匹配方法生成的候选者,并将排名前N的得分项呈现给最终用户。用户点击是推荐系统中非常重要的评估指标,是所有后续建议的基础转换行为。点击率(CTR)的预测已引起学术界和行业界的广泛关注。

个性化是提高点击率预测性能和增强用户体验的关键。已经提出了许多基于深度学习的方法来进行CTR预测,这些方法可以学习隐式特征交互并增强模型功能。这些方法大多数都关注于设计用于自动特征交互的网络结构。最近,有人提出了几种模型来从诸如点击和购买之类的用户行为数据中提取用户兴趣),这对于推荐设置(用户没有明确显示其兴趣)非常重要。为了表示用户兴趣,考虑了用户交互项与目标项之间的 项对项 的相关性。但是,这些模型主要关注于用户表示,而忽略了表示用户与项目的相关性。用户与项目的相关性直接衡量用户对目标项目的个性化偏好,并在基于协作过滤的匹配方法中精心建模。
基于这些观察,我们提出了一种新颖的模型,称为“等级深度匹配”(DMR),该模型在匹配方法中使用协作过滤的思想来捕获用户与项目的相关性,从而提高了CTR预测的性能。用户到项目网络 和项目到项目网络 是DMR中的两个子网,分别代表用户到项目的相关性。在用户到项目网络中,我们通过嵌入空间中相应表示的内积直接计算用户与项目之间的相关性,其中从用户行为中提取用户表示。考虑到最近的行为可以更好地反映用户的时间兴趣,我们应用注意力机制自适应地了解每种行为在行为序列中的位置的权重。
同时,我们提出了一个辅助匹配网络,以推动 更大的内积 代表更高的相关性,并帮助更好地适应用户到项目网络。单独的辅助匹配网络可以看作是一种匹配方法,其任务是根据用户的历史行为来预测下一个要点击的项目,然后我们在DMR中共同训练匹配模型和排名模型。在 项目到物品 网络,我们首先通过关注位置信息的注意力机制,计算用户交互物品与目标物品之间的物品之间相似度。然后,我们将项目与项目的相似性相加,以获得另一种形式的用户与项目相关性。注意,在匹配阶段,通常通过多种匹配方法来生成候选,以满足用户需求的多样性,并且用户与项目的相关性得分在不同方法之间不具有可比性

在DMR中,可以以统一的方式将相关强度进行比较。本文的主要贡献概括如下:

  • 我们指出了捕获用户和项目之间相关性的重要性,这可以使点击率预测模型更加个性化和有效。为此,我们提出了一种称为DMR的新型模型,该模型将协作过滤的思想应用于匹配方法中,以分别表示与用户到项目网络和项目到项目网络的相关性
  • 我们设计了辅助匹配网络,可以将其视为匹配模型,以帮助更好地训练用户到项目的网络。据我们所知,DMR是第一个联合训练点击率预测中的匹配和排名的模型。
  • 考虑到最近的行为对用户的时间兴趣做出了更大的贡献,我们在注意力机制中引入了位置编码,以自适应地学习每种行为的权重。
  • 我们在公共和工业数据集上进行了广泛的实验,这些实验表明,建议的DMR与最新模型相比有了显着改进。我们的代码公开可复制。

Related work

近年来,基于深度学习的CTR预测模型受到了广泛关注并取得了显著成效。与传统的线性模型相比,基于深度学习的方法可以增强模型功能并通过非线性变换学习隐式特征交互。通过从高维稀疏特征中学习低维表示,深度模型可以对很少出现的特征组合进行更好的估计。
但是,在实际应用中,大范围的稀疏特征带来了巨大的挑战:深度模型可能会过拟合和泛化。基于此,提出了不同的模型来更好地建模特征交互并改善CTR预测的性能。
Wide&Deep(Cheng et al.2016)通过联合训练结合了线性模型和非线性深度模型的优势。
Deep Crossing(Shan et al.2016)应用了深度残差网络来学习交叉特征。 PNN(Qu et al.2016)引入了产品层以及完全连接的层,以探索高阶特征交互。
基于分解机(FM)(Rendle AFM(Xiao et al。2017)可以建模二阶特征相互作用,AFM通过注意力机制学习加权特征相互作用(Bahdanau,Cho和Bengio 2015)。
DeepFM(Guo et al.2017)和NFM(He and Chua 2017)通过将FM与深度网络结合使用将低阶和高阶特征交互结合在一起。
DCN(Wang et al.2017)引入了跨网络以学习某些边界度要素交互。在我们提出的DMR中,用户与项目相关性的表示可以视为用户与项目之间的功能交互。

与搜索排名不同,在推荐器系统和许多其他应用程序中,用户没有清楚地表明其意图。因此,从用户行为中捕获用户兴趣对于CTR预测至关重要,而上述模型对此却很少关注。长度可变的用户行为特征通常通过简单的平均池化转换为定长向量(Covington,Adams和Sargin 2016),这意味着所有行为都同样重要。 DIN(Zhou et al.2018)通过加权总和池来表示用户兴趣来改进这一点,其中注意力机制自适应地学习每个用户行为相对于目标项目的权重。 DIEN(Zhou et al.2019)不仅可以提取用户兴趣,还可以对兴趣的时间演变进行建模。 DSIN(Feng et al.2019)利用行为顺序中的会话信息来建模感兴趣的演化。

在我们的模型中,受Transformer的启发(Vaswani等,2017),我们将位置编码引入了注意力机制,以捕获用户的时间兴趣。尽管取得了长足的进步,但这些方法专注于用户表示,而忽略了表示用户与项目的相关性,这些方法直接衡量了用户对目标项目的偏好程度。在提出的DMR中,我们注重表示用户与项目的相关性,以提高个性化点击率模型的性能。

基于协作过滤(CF)的方法在匹配阶段构建推荐系统非常成功(Su和Khoshgoftaar 2009)。在这些方法中,由于item-to-item CF(Sarwar等,2001; Linden,Smith和York,2003年),由于其可解释性和实时个性化的效率而被广泛用于工业推荐环境,通过预先计算项目间相似度矩阵,向用户推荐与用户单击的项目相似的项目。为了计算项目之间的相似度,早期的工作着重于统计度量,例如余弦相似度和皮尔森系数。He(2018)提出了一种基于深度学习的 item-to-item CF 的NAIS方法,具有注意机制以区分用户行为的不同重要性,这与DIN具有相似的想法(Zhou et al.2018)。与 item-to-item CF不同,基于矩阵分解的CF方法(Koren 2008; Koren,Bell和Volinsky 2009)通过缩小空间中相应表示的内积直接计算用户与项目之间的相关性。通过类似的基于内积的形式,提出了基于深度学习的方法来从用户的历史行为中学习用户表示,这可以看作是分解技术的非线性概括。 Covington,Adams和Sargin(2016)提出了对匹配进行极端多重分类的方法,其中预测问题变得可以准确分类-根据用户的历史行为,用户将单击下一步的项目。 Hidasi等(2016年)将GRU(Cho et al.2014年)应用于基于会话的建议任务。 TDM(Zhu et al.2018)使用基于树的方法超越了基于内积的方法。在我们的模型中,一方面,我们使用用户表示和项目表示之间的内积来获得一种用户与项目的相关性。另一方面,我们应用注意力机制来表示项与项之间的相似性,并进一步获得另一种用户与项的相关性.


Deep Match to Rank Model

在本节中,我们将详细阐述等级深度匹配(DMR)模型的设计。
首先,我们从两个方面概述基于深度学习的CTR模型的基本结构:特征表示和多层感知器。
然后,我们介绍带有两个子网的DMR的总体结构,以建模用户与项目的相关性。

Feature Representation 特征表示

我们的推荐系统中有四类特征:用户个人资料,用户行为,目标项目和上下文。用户个人资料包含用户ID,消费级别等;目标项中的特征包括项目ID,类别ID等;用户行为是与用户交互的项目的顺序列表,这些项目具有相应的功能,例如项目ID,类别ID等;上下文包含时间,匹配方法和相应的匹配分数等。

大多数特征都是分类的,可以将其转换为高维的独热矢量 。在基于深度学习的模型中,独热矢量通过嵌入层转换为低维密集特征。例如,商品ID的嵌入矩阵可以表示为 V = [ v 1 ; v 2 ; . . . ; v k ] ∈ R k ✖ d v V =[v_1;v_2;...;v_k] \in R^{k✖d_v} V=[v1;v2;...;vk]Rkdv ,
k k k是不同项目的总数, v j ∈ R d v v_j \in R^{d_v} vjRdv是第j个项目的维度为 d v d_v dv的嵌入向量
无需在独热向量和嵌入矩阵之间进行复杂的矩阵乘法,嵌入层就可以通过查找表来获取嵌入向量。

来自用户资料,用户行为,目标项目和上下文的分类特征的嵌入向量和归一化的连续特征的串联,分别是 x p , x b , x t , x c x_p,x_b,x_t,x_c xpxbxtxc向量。特别地,用户行为包含多个项目,并且对应的特征向量是特征向量的列表,表示为 x b = [ e 1 ; e 2 ; . . . ; e T ] ∈ R T ✖ d e x_b =[e_1;e_2;...;e_T] \in R^{T✖d_e} xb=[e1;e2;...;eT]RTde其中代表第t个行为的特征向量的 e t e_t et是多个特征向量的串联, d e d_e de定义 e t e_t et的维数, T T T是用户行为的长度。注意,对于每个用户,行为的数量是不同的,并且 T T T是可变的。用户行为和目标项目位于相同的特征空间中,并共享相同的嵌入矩阵以减少内存空间。


Multiple Layer Perceptron (MLP)

将所有特征向量连接起来以形成实例的完整表示,然后将其馈入具有完全连接层的MLP。隐藏层由PRelu激活(He et al.2015),最终输出层由Sigmoid激活二进制分类任务的功能。 MLP的输入长度需要固定,因此需要用户行为 x b x_b xb 的特征向量列表通过池化层转换为固定长度的特征向量。交叉熵损失函数与S形函数一起被广泛使用,其对数分量可以抵消S形函数中指数的副作用。输入特征向量 x = [ x p , x b , x t , x c ] x=[x_p,x_b,x_t,x_c] x=[xpxbxtxc]且单击标签 y ∈ { 0 , 1 } y∈\{0,1\} y{0,1}的损失为:

其中,D是总共有N个样本的训练集, f ( x ) f(x) f(x)是MLP输出的预测结果


The structure of Deep Match to Rank

基于深度学习的CTR模型的基本结构难以通过隐式特征交互来捕获用户与项目的相关性。在DMR中,我们提出了两个子网络,即 用户到项目网络项目到项目网络 ,以对用户到项目的相关性进行建模,从而可以提高个性化点击率模型的性能。 DMR的结构如图1所示。
在这里插入图片描述
图1 DMR的结构。输入特征向量是嵌入的分类特征和标准化特征的串联连续特征。DMR使用两个子网络对用户-项目进行建模,即用户到项目网络和项目到项目网络。用户对项目的两种相关性以及用户的时间兴趣表示与所有其他特征向量串联,然后输入MLP。最终损失由MLP目标损失和辅助匹配网络丢失组成。

User-to-Item Network

遵循基于矩阵分解的匹配方法中的表示形式,User-toItem Network通过相应表示的内部积直接对用户和目标项目之间的相关性进行建模,这可以看作是用户和项目之间的一种功能交互

为了获得用户表示,我们求助于用户行为功能。用户不会在推荐设置中明确显示其兴趣,而用户行为则隐含地反映了用户的兴趣。表示用户兴趣的简单方法是在用户行为特征上使用平均池,该方法认为每种行为均对最终用户兴趣做出同等贡献。但是,用户的兴趣可能会随时间而变化,在这种情况下,最近的行为会更好地反映用户的时间兴趣。根据发生的时间为每种行为分配权重可以缓解此问题,但是也很难找到最佳权重。

在User-toItem Network中,我们将注意力编码与位置编码作为查询,以自适应地学习每种行为的权重,其中用户行为的位置是行为序列中按发生时间排序的序列号。公式如下:

其中 p t ∈ R d p p_t∈R^{d_p} ptRdp进行第t个位置嵌入, e t ∈ R d e e_t∈R^{d_e} etRde是第t个行为的特征向量, W p ∈ R d h × d p , W e ∈ R d h × d e , b ∈ R d h , z ∈ R d h W_p∈R^{d_h×d_p},W_e∈R^{d_h×d_e},b∈R^{d_h},z∈R^{d_h} WpRdh×dpWeRdh×debRdhzRdh是学习参数, α α α为对于第 t t t个行为的归一化权重。

通过加权和池,将“用户行为” x b x_b xb的特征向量列表映射为固定长度的特征向量,然后通过完全连接的图层进行转换以匹配项表示 d v d_v dv的尺寸。最终用户表示 u ∈ R d v u∈R^{d_v} uRdv可以表示为:

其中函数 g ( ⋅ ) g(·) g()表示具有输入维数 d e d_e de和输出维数 d v d_v dv的非线性变换,其中 h t h_t ht是第t个行为的加权特征向量。

这是注意力网络的三个细节,为简化起见,我们省略了它们。
首先,可以添加更多隐藏层以具有更好的表示。
其次,除了位置编码之外,还可以将更多反映用户兴趣强度的上下文特征添加到关注网络,例如,行为类型,停留时间等。在这些功能中,位置在我们的应用中主要影响重量。
第三,以相反的行为时间顺序对位置进行编码,以确保最近的行为获得第一个位置。
尽管这里的递归神经网络擅长处理顺序数据,尤其是在NLP任务中,但它不用于建模用户行为序列。与严格遵循某些规则的文本不同,用户行为顺序不确定,但可能会受到呈现给用户的内容的影响。没有特殊设计的结构,RNN很难提高性能(Zhou et al.2018)。此外,RNN中的串行计算给在线服务系统带来了挑战。

从嵌入矩阵 V ′ = [ v 1 ′ ; v 2 ′ ; . . . ; v k ′ ] ∈ R k ✖ d v V' =[v'_1;v'_2;...;v'_k] \in R^{k✖d_v} V=[v1;v2;...;vk]Rkdv直接查找目标项目表示 v ′ ∈ R d v v'∈R^{d_v} vRdv V ′ V' V是目标项目的单独嵌入矩阵,不与用户行为和目标项目中输入功能的嵌入矩阵V共享嵌入。
为了区分这两个嵌入矩阵,我们将V称为Target Item的输入表示,将V’称为Target Item的输出表示,如图1所示。通过这种方式,尽管增加了内存空间,但与仅使嵌入大小加倍相比,该模型更具表现力同时共享嵌入。我们将在以下实验部分中验证该结论。
使用 用户表示 u u u和目标项目表示 v ′ v' v,我们应用内积操作来表示用户与项目的相关性:

我们希望更大的 r r r代表更强的相关性,从而对点击预测产生积极的影响。但是,从反向传播的角度来看,仅通过单击标签的监督来确保这一点并不容易。此外,嵌入矩阵 V ′ V' V中的参数的学习完全依赖于唯一的相关单元 r r r
基于这些,我们提出了一个辅助匹配网络,该网络从用户行为中引入标签,以监督用户对项目网络的学习。

辅助匹配网络的任务是预测基于先前 T − 1 T-1 T1 个行为的第 T T T 个行为,这是一项极端的多分类任务。按照用户表示 u u u的形式,我们可以获得第一个 T − 1 T-1 T1用户行为的用户表示,用 u T − 1 ∈ R d v u_{T-1}∈R^{d_v} uT1Rdv 表示。用户具有第一个 T − 1 T -1 T1行为接下来点击项 j j j 的概率可以用 s o f t m a x softmax softmax函数表示为:

其中 v j ′ ∈ R d v v'_j∈R^{d_v} vjRdv 表示第j个项目的输出表示。可以将目标项目的输出表示 v j ′ ∈ R k ∗ d v v'_j∈R^{k*d_v} vjRkdv视为 s o f t m a x softmax softmax层中的参数。

以交叉熵作为损失函数,我们的损失如下:

其中 y j i ∈ { 0 , 1 } y^i_j∈\{0,1\} yji{0,1}表示第j个项目的标签,例如 i i i,而 y j i y^i_j yji则是相应的预测结果, K K K是不同类别(即项目)的总数。仅当项 j j j为用户行为序列中的第 T T T个行为时, y j i = 1 y^i_j = 1 yji=1

但是,计算 p j p_j pj公式(6)的成本巨大,与项目总数 K K K成正比。为了有效地训练具有数百万个类别的分类任务,我们应用了负采样技术(Mikolov等,2013),该技术从背景中采样了负面示例分配。我们将负匹配的辅助匹配网络损失定义为:

其中 σ ( ⋅ ) σ(·) σ是sigmoid函数, v o ′ v'_o vo是正例, v j ′ v'_j vj是负例, k k k是采样中的负例数,与 K K K相比非常小。最终损失可以表示为:

其中 β β β 是一个超参数,用于平衡损耗的两个部分。

通过从用户行为中引入标签,辅助匹配网络可以推入更大的 r r r来表示更强的相关性,并帮助更好地训练嵌入矩阵 V ′ V' V和其他参数。了解用户对物品网络的另一种方法是,在统一模型中联合训练排名模型和匹配模型,其中匹配方法是使用辅助匹配网络。在匹配阶段,通过分数不具有可比性的多种匹配方法生成候选,每个候选仅具有对应匹配方法的相关性得分。与仅将匹配分数作为特征馈入MLP不同,用户到项目网络能够在给定任意目标项目的情况下获得用户到项目的相关性得分,并且相关性以统一的方式可比。

Item-to-Item Network

除了直接计算用户与项目的相关性外,我们还提出了项目间网络以间接方式表示相关性。我们首先对用户交互项与目标项之间的相似性进行建模,然后对其进行总结,以获得另一种用户项相关性。为了使相关性表示更具表达性,我们使用 用户-项目网络 中使用的内积以外的注意力机制对 项目-项目 相似度进行建模。在用户交互的项目,目标项目和位置编码为输入的情况下,项目与项目的相似度表示为:

其中 e ^ c ∈ R d e \hat e_c ∈R^{d_e} e^cRde 是目标项的特征向量, p ^ t ∈ R d p \hat p_t ∈R^{d_p} p^tRdp是第t个位置嵌入, e ^ t ∈ R d e \hat e_t ∈R^{d_e} e^tRde 是第t个行为的特征向量, W ^ c ∈ R d h × d e , W ^ p ∈ R d h × d p , W ^ e ∈ R d h × d e , b ^ ∈ R d h , z ^ ∈ R d h \hat Wc∈R^{d_h×d_e},\hat Wp∈R^{d_h×d_p} ,\hat We∈R^{d_h×d_e},\hat b∈R^{d_h} ,\hat z∈R^{d_h} W^cRdh×deW^pRdh×dpW^eRdh×deb^Rdh,z^Rdh 是学习参数。用户行为与目标项目之间的项目间相似度之和构成了另一种用户项目相关性:

通过加权和池,将用户行为 x b x_b xb的特征向量列表转换为固定长度的特征向量,以形成与目标相关的时间兴趣表示。公式如下:

其中 α ^ t \hat α_t α^t 是第t个行为的归一化权重。与用户表示形式 u u u不同,与目标相关的用户表示形式 u ^ \hat u u^相对于目标项目有所不同,该目标项目也被馈送到MLP中以进行进一步的功能交互。通过注意力机制的局部激活能力,与目标项目相关的行为的权重更高,并支配与目标相关的用户表示。
用户对项目的相关性的两种形式 r r r r ^ \hat r r^ 以及用户时间兴趣 u ^ \hat u u^与其他输入特征向量一起并入MLP中。 MLP的最终输入由 c = [ x p , x t , x c , u ^ , r , r ^ ] c = [x_p,x_t,x_c,\hat u,r,\hat r] c=[xpxtxcu^rr^]表示。


Experiments

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值