Neural News Recommendation with Long- and Short-term User Representations论文阅读笔记
这个同样是一篇很老但是比较经典的文章,这里来读一下
Abstract
存在的问题:
用户通常既有长期偏好,也有短期兴趣。然而,现有的新闻推荐方法通常只学习用户的单一表征,这可能是不够的。
提出方法:
在本文中,我们提出了一种神经新闻推荐方法,它可以学习长期和短期用户表征。我们方法的核心是新闻编码器和用户编码器。在新闻编码器中,我们从新闻标题和主题类别中学习新闻表征,并使用注意力网络选择重要词语。在用户编码器中,我们建议从用户 ID 的嵌入中学习长期用户表征。此外,我们还建议通过 GRU 网络从用户最近浏览的新闻中学习短期用户表征。
此外,我们还提出了两种结合长期和短期用户表征的方法。第一种是使用长期用户表示来初始化短期用户表示中 GRU 网络的隐藏状态。第二种方法是将长期和短期用户表征合并为统一的用户向量。
Introduction
在线用户对新闻的兴趣多种多样,这一观察结果激发了我们的工作。有些用户的兴趣可能会持续很长时间,而且对同一个用户来说是一致的。用户的长期兴趣和短期兴趣对于个性化新闻推荐都很重要,区分用户的长期兴趣和短期兴趣有助于学习更准确的用户表征。
在本文中,我们提出了一种具有长期和短期用户表征(LSTUR)的神经新闻推荐方法。我们的方法包含两个主要部分,即新闻编码器和用户编码器。新闻编码器用于从标题和主题类别中学习新闻文章的表征。我们将注意力机制应用于新闻编码器,通过选择重要词语来学习信息丰富的新闻表征。用户编码器由两个模块组成,即长期用户表征(LTUR)模块和短期用户表征(STUR)模块。
在 STUR 中,我们使用 GRU 网络从用户最近浏览的新闻中学习用户的短期表征。在 LTUR 中,我们从用户 ID 的嵌入中学习用户的长期表征。此外,我们还提出了两种结合短期和长期用户表征的方法。第一种是使用长期用户表征来初始化 STUR 模型中 GRU 网络的隐藏状态。第二种方法是将长期和短期用户表征合并为统一的用户向量。
Method
本文方法的整体结构如下:
在本节中,我们将介绍具有长期和短期用户表征(LSTUR)的神经新闻推荐方法。我们的方法包含两个主要部分,即学习新闻表征的新闻编码器和学习用户表征的用户编码器。接下来,我们将详细介绍这两个部分。
新闻编码器
新闻编码器的结构如下:
新闻编码器用于从新闻标题、主题和子主题类别中学习新闻表征。新闻编码器中有两个子模块,即标题编码器和主题编码器。
标题编码器用于从标题中学习新闻表征。标题编码器分为三层。第一层是词嵌入,用于将新闻标题从词序列转换为密集语义向量序列。
标题编码器的第二层是卷积神经网络(CNN)。 局部语境对于理解新闻标题的语义非常有用。因此,我们采用 CNN 网络,通过捕捉局部语境信息来学习上下文词语表征。将 wi 的上下文表示记为 ci。计算方式就是传统的计算方式:
\(\boldsymbol{c}_i=\mathrm{ReLU}(\boldsymbol{C}\times\boldsymbol{w}_{[i\boldsymbol{-}M:i+M]}+\boldsymbol{b}),\)
第三层是注意力网络。同一新闻标题中的不同词语可能具有不同的信息量。因此,我们采用单词级注意力网络来选择新闻标题中的重要单词,以学习更多信息量更大的新闻表征。第 i 个词的注意力权重 αi 的计算公式如下:
\(\begin{aligned}&a_i=\tanh(\boldsymbol{v}\times\boldsymbol{c}_i+v_b),\\&\alpha_i=\frac{\exp(a_i)}{\sum_{j=1}^N\exp(a_j)},\end{aligned}\)
新闻标题 t 的最终表征是其上下文词语表征的总和,按其注意力权重加权,如下所示:
\(e_t=\sum_{i=1}^N\alpha_i\boldsymbol{c}_i.\)
主题编码器模块用于从主题和子主题中学习新闻表征。在许多在线新闻平台上,新闻文章通常标有主题类别和子主题类别,以帮助锁定用户兴趣。新闻的主题和子主题类别对于学习新闻和用户的表征也很有帮助。它们可以揭示新闻的一般主题和详细主题,并反映用户的偏好。
为了将主题和子主题信息纳入新闻表征,我们建议从主题和子主题 ID 的嵌入中学习主题和子主题的表征,如图 2 所示。用\(e_v\)和\(e_{sv}\)表示主题和子主题。新闻文章的最终表示是其标题、主题和子主题表示的连接,即\(\boldsymbol{e}=[\boldsymbol{e}_t,\boldsymbol{e}_v,\boldsymbol{e}_{sv}].\)。
用户编码器
用户编码器用于从用户浏览新闻的历史记录中学习用户表征。它包含两个模块,即捕捉用户时间兴趣的短期用户表征模型(STUR)和捕捉用户一致偏好的长期用户表征模型(LTUR)。接下来,我们将详细介绍这两个模块。
短期用户表示
在线用户在阅读新闻文章时可能会有动态的短期兴趣,这种兴趣可能会受到特定情境或时间信息需求的影响。我们建议从用户最近的浏览历史中学习他们的短期表征来捕捉他们的时间兴趣,并使用门控递归网络(GRU)网络来捕捉连续的新闻阅读模式。
将按时间戳升序排序的用户新闻浏览序列表示为 C = {c1, c2, . , ck},其中 k 是该序列的长度。我们使用新闻编码器获取这些浏览过的文章的表示,记为 {e1, e2, . , ek}。短期用户表示的计算方法如下:
\(\begin{aligned} &\boldsymbol{r}_t =\sigma(\boldsymbol{W}_r[\boldsymbol{h}_{t\boldsymbol{-}1},\boldsymbol{e}_t]), \\ &\boldsymbol{z}_t =\sigma(\boldsymbol{W}_z[\boldsymbol{h}_{t-1},\boldsymbol{e}_t]), \\ &\tilde{\boldsymbol{h}}_t =\tanh(\boldsymbol{W}_{\tilde{h}}[\boldsymbol{r}_t\odot\boldsymbol{h}_{t-1},\boldsymbol{e}_t]), \\ &\boldsymbol{h}_t =\boldsymbol{z}_t\odot\boldsymbol{h}_t+(\boldsymbol{1}-\boldsymbol{z}_t)\odot\boldsymbol{\tilde{h}}_t, \end{aligned}\)
短期用户表示是 GRU 网络的最后一个隐藏状态,即\(u_s=h_k\)
长期用户表示
除了时间兴趣,网络用户在阅读新闻时还可能有长期兴趣。例如,一个篮球迷可能会在几年内浏览许多与 NBA 有关的体育新闻。因此,我们建议学习用户的长期表征,以捕捉他们的一致偏好。在我们的方法中,用户的长期表征是从用户 ID 的嵌入中学习的,这些嵌入是随机初始化的,并在模型训练过程中进行微调。将u 表示为用户 ID,Wu 为长期用户表征的查找表,则该用户的长期用户表征为\(\boldsymbol{u}_l=\boldsymbol{W}_u[u]\)。
长短期用户表示
在本节中,我们将介绍两种结合长期和短期用户展示来实现统一用户展示的方法,如图 3 所示。
第一种方法是使用长期用户表示来初始化短期用户表示模型中 GRU 网络的隐藏状态,如图 3a 所示。我们将这种方法称为 LSTUR-ini。我们使用 GRU 网络的最后一个隐藏状态作为最终用户表示。第二种方法是将长期用户表示与短期用户表示串联起来,作为最终用户表示,如图 3b 所示。我们将这种方法称为 LSTUR-con。
模型训练
新闻概率得分的计算还是传统方式:\(s(u,c_x)=\boldsymbol{u}^\top\boldsymbol{e}_x\)
损失函数的计算如下:
\(-\sum_{i=1}^P\log\frac{\exp(s(u,c_i^p))}{\exp(s(u,c_i^p))+\sum_{k=1}^K\exp(s(u,c_{i,k}^n))},\)
由于并非所有用户都能被纳入新闻推荐模型的训练(例如,新来的用户),因此在预测阶段假定所有用户在我们的模型中都有长期表征是不合适的。为了解决这个问题,在模型训练阶段,我们以一定的概率 p 随机屏蔽用户的长期表征。因此,在我们的 LSTUR 方法中,用户的长期表征可以重新计算为:
\(\boldsymbol{u}_l=M\cdot\boldsymbol{W}_u[u],M\sim B(1,1-p),\)
总结
这篇文章讲的还是比较清晰的,这里贴一下原文的conclusion
在本文中,我们提出了一种神经新闻推荐方法,它可以学习长期和短期用户表征。我们模型的核心是一个新闻编码器和一个用户编码器。在新闻编码器中,我们从新闻标题和主题类别中学习新闻表征,并使用注意力网络来突出重要词语,以进行信息表征学习。在用户编码器中,我们建议从用户 ID 的嵌入中学习用户的长期表征。此外,我们还通过 GRU 网络从用户最近浏览的新闻中学习用户的短期表征。此外,我们还提出了两种融合长期和短期用户表征的方法,即使用长期用户表征来初始化短期用户表征中 GRU 网络的隐藏状态,或者将长期和短期用户表征串联成统一的用户向量。
标签:长期,编码器,论文,LSTUR,新闻,boldsymbol,用户,笔记,表征 From: https://www.cnblogs.com/anewpro-techshare/p/18288673