社会计算组来源武楚涵、吴方照、谢幸本文作者

基于多视角学习和个性化注意力机制的新闻推荐

编者按:个性化新闻推荐是新闻行业必然的发展方向,在其实现过程中面临着三个关键问题,即分析用户兴趣、根据新闻内容建模和新闻排序。本文将这三个问题划归为新闻信息与用户兴趣的多样性问题,并由此出发,提出了基于多视角学习和个性化注意力机制的解决方案,相关论文发表在 IJCAI 2019和 KDD 2019。

引言

如今,在线的新闻服务平台成为了热门的电子新闻阅读渠道,但海量的新闻为用户带来了严重的信息过载。因此,个性化的新闻推荐技术对于在线新闻平台来说非常重要,它一方面可以帮助用户发现感兴趣的新闻,提高新闻的阅读体验;另一方面可以帮助新闻平台提高用户的参与度和平台的收入。本文介绍我们关于新闻推荐的研究工作:基于多视角学习和个性化注意力机制的新闻推荐。

新闻推荐中有三个关键问题需要解决:

1)如何利用用户的新闻阅读历史来对用户进行建模,捕捉他们的潜在兴趣。

2)如何根据新闻的内容对新闻进行建模。

3)如何根据新闻和用户的建模结果,来对候选新闻进行有效地排序。

新闻推荐作为一个推荐系统的一个子任务,自然可以使用例如协同过滤等传统的推荐方法,进行新闻用户表示的学习以及候选新闻的排序。但是,与传统的推荐任务不同,新闻推荐有其特有的挑战。在新闻平台上,旧的新闻会很快消失,大量新的新闻会快速地出现,这就带来了严重的冷启动问题。这也使得基于协同过滤的方法难以直接应用于新闻推荐的场景。目前也有一些基于人工设计的特征来进行新闻推荐的方法。但是,这些方法需要大量领域知识进行特征工程,同时也通常难以建模新闻中的语义信息。

新闻信息和用户兴趣的多样性

近年来,随着深度学习的发展,一些基于深度学习的新闻推荐方法被提出。通常这些方法先从单一的新闻内容(如新闻标题)中学习新闻的表示,再从用户的浏览历史中学习用户的表示。这就带来了两个挑战:一是信息不足,新闻标题可能不足以概括整个新闻的内容,二是缺乏个性化的问题。在这些方法中,相同的新闻对建模不同用户使用了相同的表示,而假设不同用户点击了相同的新闻,也被认为有相同的兴趣。这实际上违背了用户兴趣的多样性。

新闻信息的多样性。如图1所示,一个新闻中通常会包含多种不同类型的信息,例如标题、正文、类别等等。而不同类型的信息特性差异很大。例如,标题通常是简短的句子,正文是很长的文档,而类别是由数个词语组成的类别 ID。因此,如何利用异构的新闻信息来学习信息更加丰富的新闻表示是需要解决的问题。

图1:两个示例新闻。红色代表标题和正文中重要的词语

用户兴趣的多样性。如图2所示,不同的用户通常对新闻阅读有不同的兴趣,并且不同的用户可能会关注同一篇新闻文章的不同重点。这导致了他们可能会因为不同的兴趣而点击相同的新闻。因此,如何学习个性化的新闻和用户表示是需要研究的问题。

图2:两个示例用户及其点击新闻多视角学习

为了解决新闻信息的多样性问题,我们在 IJCAI 2019 发表了一种基于多视角学习的方法 NAML,其框架如图3所示。该模型包含两个核心模块,分别是一个新闻编码器和一个用户编码器。在新闻编码器中,我们从新闻的标题、正文、类别和子类别中学习新闻表示。我们将这些不同类型的新闻数据视作不同的新闻视角,并且使用词语和视角级的注意力网络来选择重要的词语和视角。在用户编码器中,我们使用新闻级的注意力机制来选取高信息量的新闻。而在最后的点击预测模块中,我们根据候选新闻和用户表示的内积来计算点击分数。

图3:NAML 方法的框架实验评估

我们的实验在真实新闻推荐数据集上开展,数据集从 MSN 新闻一个月的记录中采样得到。我们使用最后一周的日志作为测试,其余用作训练和验证。结果如表1所示。

表1:数据集的统计数据

首先,我们将我们的方法与一系列基线方法对比,表2中的结果显示我们的方法显著优于基线方法。

表2:不同方法的结果。*性能的改进在p < 0.001的水平上显著接下来,我们进行了实验来验证基于注意力机制的多视角学习的有效性。首先,图4(a)显示了我们模型及其仅使用一种视角的变体的性能。根据结果,我们发现正文比标题更为重要,而通过多视角学习将三种不同的信息结合能够进一步提升模型效果。而图4(b)显示了不同注意力机制的有效性。我们通过分别移除某一种注意力机制来探究每种注意力网络的贡献。根据实验结果,词语级别的注意力机制最为重要。这可能是因为词语是承载新闻语义信息的基本单位。新闻和视角级别的注意力同样对于模型性能有用,并且将三者结合可以进一步提升模型性能。这也验证了我们模型中基于注意力机制的多视角学习方法的有效性。
图4:多视角学习框架和注意力网络的有效性可视化探究

我们进行了一些可视化探究。首先将视角级的注意力权重可视化,如图5所示。左图显示了不同视角注意力的均值和标准差,而右图显示了他们的分布。根据结果,我们发现正文比标题获得了更高的注意力权重,这也与前述的结果对应。有趣的是类别和子类别获得了最高的注意力权重,这可能说明二者有着很高的信息密度。

图5:视角注意权重的可视化我们也对词语和新闻级别的注意力进行可视化。从图6中可以发现,我们的模型能识别和选择重要的词语和新闻。例如,Bowl、Coach 这样的词语对于推测新闻的主题很有帮助,因此被高亮,而像 weekend 这样的词语则信息量较低。对于新闻而言,例如第4条新闻被高亮,因为它能够很好地反映用户的兴趣,而如第3和第5条新闻则可能被各种类型的用户浏览,没有兴趣区分度,因此获得了较低的权重
图6:单词和新闻级别注意力权重的可视化。越深的颜色代表越高的注意力权重了解更多技术细节,请查看论文:

Neural News Recommendation with Attentive Multi-View Learning

链接:https://arxiv.org/abs/1907.05576

个性化注意力机制

我们的第二个工作——基于个性化注意力机制的新闻推荐发表在 KDD 2019上。为了解决用户和新闻表示的个性化问题,我们提出了一种名为 NPA 的模型,其结构如图7所示。它的结构同样包含两个主要模块:新闻编码器和用户编码器。

图7:NPA 方法的框架新闻编码器包括三层:一个将词语序列转化为语义向量序列的词嵌入层,一个用于建模局部上下文的 CNN 层,和一个词语级的个性化注意网络。在个性化注意力网络中,我们使用一个偏好查询向量和一系列输入表示计算相似度,构建个性化的输出表示。在词语级别,用户的偏好向量是由用户的 ID 嵌入向量经过一个非线性变换生成的。而在用户编码器内,我们使用一个新闻级别的个性化注意力网络。我们通过另一个非线性变换来得到用户的新闻偏好向量。最终在点击预测模块,候选新闻的点击分数由用户和候选新闻表示向量的内积计算。在这里我们提出使用负采样方法,将每个用户点击的新闻(视为正样本)搭配 K 个在同一个会话内展示而没有被用户点击的新闻视为负样本。我们联合预测 K+1 个新闻的点击预测分数,而将任务重构为一个 K+1 路的分类任务,最终通过优化正样本的负对数似然来训练模型。

实验评估

我们的实验同样在一个 MSN 新闻推荐数据集上进行。从表3可以看到,数据集内正负样本的比例非常不平衡。

表3:数据集的统计信息与一系列基线方法对比,我们的方法一致地优于对比的基线方法,并且效果的提升是统计显著的。我们也对比了各种方法的计算复杂度。可以看出,我们的方法可以很好地平衡效果和计算效率。
表4:不同新闻推荐方法的结果。*改进的显著性水平为 p < 0.001
表5:不同方法的计算复杂度接下来,我们也进行了实验来探究负采样的作用。图8(a)显示的是使用负采样与否的结果对比,可以看出负采样对于模型性能非常重要;同时图8(b)显示了负采样比率对模型性能的影响,可以看出一个适中的负采样比例效果最佳。
图8:负采样对模型性能的影响我们同样进行了实验来探究个性化注意力机制的作用。图9(a)的结果显示了使用注意力机制的方法优于不使用注意力的方法,而使用个性化注意力机制则进一步优于普通的注意力机制。而图9(b)则显示了词语和新闻级别个性化注意力机制的作用。可以看到二者均对模型的性能非常重要,同时将二者结合可以进一步提升模型效果。
图9: 个性化注意力机制对模型性能的影响可视化探究

我们也对个性化的新闻和词语注意力进行了可视化。我们根据点击历史发现,例如图10(a)中,用户1可能对体育感兴趣,而用户2对电影更感兴趣。因此对于用户1,候选新闻中体育关键词则被高亮,而对于用户2,电影关键词被高亮。同时在图10(b)中,对于同一个点击过的新闻,体育新闻对用户1被赋予了较高的注意力权重,而对用户2则不然。这也说明了我们的方法可以根据用户的偏好选取重要的词语和新闻。

图10:词语和新闻个性化注意力权重的可视化

了解更多技术细节,请查看论文:

NPA: Neural News Recommendation with Personalized Attention

链接:https://arxiv.org/abs/1907.05559

结语

综上,我们提出了两种有效的新闻推荐方法,分别是利用多视角学习来从异构的新闻信息中学习更好的新闻表示,以及利用个性化注意力来建模用户兴趣的差异,做到千人千面的新闻推荐。

微软研究院AI头条
微软研究院AI头条

专注科研19年,盛产黑科技

理论注意力机制多视角学习
1
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

重构技术

代码重构(英语:Code refactoring)指对软件代码做任何更动以增加可读性或者简化结构而不影响输出结果。 软件重构需要借助工具完成,重构工具能够修改代码同时修改所有引用该代码的地方。在极限编程的方法学中,重构需要单元测试来支持。

协同过滤技术

协同过滤(英语:Collaborative Filtering),简单来说是利用某兴趣相投、拥有共同经验之群体的喜好来推荐用户感兴趣的信息,个人通过合作的机制给予信息相当程度的回应(如评分)并记录下来以达到过滤的目的进而帮助别人筛选信息,回应不一定局限于特别感兴趣的,特别不感兴趣信息的纪录也相当重要。协同过滤又可分为评比(rating)或者群体过滤(social filtering)。其后成为电子商务当中很重要的一环,即根据某顾客以往的购买行为以及从具有相似购买行为的顾客群的购买行为去推荐这个顾客其“可能喜欢的品项”,也就是借由社区的喜好提供个人化的信息、商品等的推荐服务。除了推荐之外,近年来也发展出数学运算让系统自动计算喜好的强弱进而去芜存菁使得过滤的内容更有依据,也许不是百分之百完全准确,但由于加入了强弱的评比让这个概念的应用更为广泛,除了电子商务之外尚有信息检索领域、网络个人影音柜、个人书架等的应用等。

词嵌入技术

词嵌入是自然语言处理(NLP)中语言模型与表征学习技术的统称。概念上而言,它是指把一个维数为所有词的数量的高维空间嵌入到一个维数低得多的连续向量空间中,每个单词或词组被映射为实数域上的向量。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

推荐系统技术

推荐系统(RS)主要是指应用协同智能(collaborative intelligence)做推荐的技术。推荐系统的两大主流类型是基于内容的推荐系统和协同过滤(Collaborative Filtering)。另外还有基于知识的推荐系统(包括基于本体和基于案例的推荐系统)是一类特殊的推荐系统,这类系统更加注重知识表征和推理。

特征工程技术

特征工程是利用数据所在领域的相关知识来构建特征,使得机器学习算法发挥其最佳的过程。它是机器学习中的一个基本应用,实现难度大且代价高。采用自动特征工程方法可以省去采用人工特征工程的需求。Andrew Ng 说“挖掘特征是困难、费时且需要专业知识的事,应用机器学习其实基本上是在做特征工程。”

查询技术

一般来说,查询是询问的一种形式。它在不同的学科里涵义有所不同。在信息检索领域,查询指的是数据库和信息系统对信息检索的精确要求

推荐文章
暂无评论
暂无评论~