网站建设岗位,外贸电子网站,自己做网站和推广,设计说明翻译摘要#xff1a;
背景#xff1a; 新闻语言是高度浓缩的#xff0c;充满了知识实体和常识。然而#xff0c;现有的方法并没有意识到一些外在的知识#xff0c;也不能充分发现新闻之间潜在的知识层面的联系。因此#xff0c;推荐给用户的结果仅限于简单的模式#xff0c…摘要
背景 新闻语言是高度浓缩的充满了知识实体和常识。然而现有的方法并没有意识到一些外在的知识也不能充分发现新闻之间潜在的知识层面的联系。因此推荐给用户的结果仅限于简单的模式不能进行合理的扩展。此外新闻推荐还面临着新闻高时效性和用户兴趣动态多样性的挑战。提出 为了解决上述问题本文提出了一种将知识图谱表示融合到新闻推荐中的深度知识感知网络(DKN)。DKN是一个基于内容的深度推荐框架用于预测点击率。DKN的关键组件是一个 multi-channel and word-entity-aligned 的知识感知卷积神经网络(KCNN)它融合了新闻的语义级和知识级表示和外在的实体作为对应。KCNN将单词和实体视为多个通道并在卷积过程中明确保持它们的对齐关系。此外为了解决用户的多样化兴趣我们还在DKN中设计了一个attention模块可以根据当前候选新闻动态聚合用户的历史。通过在一个真实的在线新闻平台上的大量实验我们证明了DKN在最先进的深度推荐模型上取得了实质性的收益。我们还验证了在DKN中使用知识的有效性。
关键字 新闻推荐;知识图表示;深层神经网络;注意模式
introduction
难点 一、 新闻文章有高度的时间敏感性相关性在很短时间失效过时的新闻被更新的新闻所取代。因此基于用户的方法有效性降低协同过滤 CF 二、人们通常对多个话题感兴趣而且往往是特定的领域。 因此要根据用户对当前候选新闻的多样化阅读历史动态衡量用户的兴趣 三、新闻语言通常是高度浓缩的由大量的知识实体和常识组成。 可以看到上图中一个新闻名字包含有多个实体我们可以根据实体的类别进行语义层面的联系。 而传统的语义模型和主体模型只能基于词的共现或者是聚类结构来发现它们之间的关联很难发现它们之间潜在的知识层面联系。现在的方法 为了提取新闻之间的深层逻辑联系可以引入额外的知识图谱信息。 知识图谱是节点对应实体而边对应关系的有向异构图。 最近研究者提出了一些学术知识图 比如NELL和DBpedia、谷歌知识图和微软的Satori这些被用于机器阅读、文本分类和单词嵌入等场景。我们的方法 基于外部知识进行新闻推荐的新框架 即DKN即深度知识感知网络(deep knowledge aware network, DKN)。与基于cf的方法不同DKN是一种基于内容的点击率预测模型以一条候选新闻和一个用户的点击历史作为输入输出用户点击该新闻的概率。具体而言 对于一条输入新闻我们首先通过将新闻内容中的每个单词与知识图中的相关实体相关联来丰富其信息。我们还搜索和使用每个实体(即它在知识图中的直接邻居)的上下文实体集以提供更多的互补和可区分的信息。然后我们设计了DKN中的一个关键组件即知识感知卷积神经网络(knowledge-aware convolutional neural networks, KCNN)将新闻的词级表示和知识级表示进行融合生成知识感知的嵌入向量。与现有的作品[46]不同KCNN是:1)多通道它将新闻的词嵌入、实体嵌入和上下文实体嵌入视为像彩色图像一样的多个堆叠通道;2)词实体对齐(word-entity-aligned)通过多个通道对词及其关联实体进行对齐并利用transformers消除词嵌入空间和实体嵌入空间的异质性。
预赛
在本节中我们提出了几个与这项工作相关的概念和模型包括知识图嵌入和用于句子表示学习的卷积神经网络。
2.1知识图嵌入
一个典型的知识图由数以百万计的实体-关系三元组(h,r,t)组成其中h,r和t分别代表三元组的头部、关系和尾部。 输入 给定知识图中的所有三元组 输出 知识图嵌入的目标是学习每个实体和关系的低维表示向量该表示向量保留了原始知识图的结构信息。 TransE、TransH、TransR、TransD 可以自己去查查资料或者我的装载里也有 为了鼓励正确三元组和不正确三元组之间的区分对于上述所有方法都使用了以下 margin-based的排名损失进行训练: 其中γ\gammaγ是边界值而Δ\DeltaΔ 和 Δ′\Delta{}Δ′ 是正确三元组和不正确三元组的集合。
2.2 CNN用于句子表征学习
传统的方法通常采用词袋(BOW)技术来表示句子即将单词计数统计作为句子的特征。然而缺点是显而易见的 没有语序有稀疏性问题泛化能力差。而更有效的建模句子的方法是给语料库中的每个句子表示为一个分布式的低维向量 使用CNN-based模型用在NLP中是很可以的 回忆Kim-CNN
输入 一个单词矩阵wi:nw_{i:n}wi:n输出 提取的特征cic_ici
第一步 卷积 其中wi:n[w1w2w3...wn]∈Rd×1w_{i:n} [w_1 w_2 w_3... w_n] \in{\mathbb{R}^{{d} \times {1}} }wi:n[w1w2w3...wn]∈Rd×1 是整个句子 我们采用卷积核h∈Rd×1{h}\in{\mathbb{R}^{{d} \times {1} }}h∈Rd×1操作在输入矩阵上 其中l(l≤n)l(l\le n)l(l≤n)就是window 大小 其中cic_ici由子矩阵wi:il−1w_{i:il-1}wi:il−1生成 fff是线性函数 ∗*∗是卷积操作b∈Rb\in\mathbb{R}b∈R是偏差。
第二步聚合 将滤波器应用到词嵌入矩阵中的每个可能位置后一个特征图被获得 然后在feature map ccc上使用max-over-time池操作来识别最重要的feature: 可以使用多个过滤器(具有不同的窗口大小)来获得多个特征然后将这些特征连接在一起形成最后的句子表示。
3 问题公式化
本文将新闻推荐问题表述如下给定一个在线新闻平台上的用户iii我们将他的点击历史表述为{t1i、t2i...tni}\left \{ {t_1^i、t_2^i... t_n^i}\right \}{t1i、t2i...tni}其中tji(j1,....,Ni)t_j^i \left ( j 1,...., N_i \right )tji(j1,....,Ni)是被第iii个用户点击的第jjj个新闻并且NiN_iNi是用户iii的点击的新闻。每一个新闻标题ttt是由一系列单词组成的比如t[wi,w2,...]t [w_i, w_2,...]t[wi,w2,...]其中每个单词www可以与知识图中的实体eee相关联。
4. 深度的基于知识的网络
在本节中我们将详细介绍所提出的DKN模型。首先介绍了DKN的总体框架然后分别讨论了从知识图中提取知识的过程、知识感知卷积神经网络(KCNN)的设计和基于注意力的用户兴趣提取。
4.1 DKN框架
DKN的框架如图3所示。我们自下而上地介绍了DKN的体系结构。 如图3所示DKN将一条候选新闻和一条用户单击的新闻作为输入。对于每条新闻都使用一个专门设计的KCNN来处理其标题并生成嵌入向量。我们将在4.2节详细介绍知识蒸馏的过程在4.3节详细介绍KCNN模块。通过KCNN我们得到一组用户点击历史的嵌入向量。为了得到用户对当前候选新闻的最终嵌入我们使用一种基于attenion的方法自动将候选新闻与用户的每条点击新闻进行匹配并将用户的历史兴趣按不同权重进行聚合。基于注意的用户兴趣提取的详细内容见第4.4节。将候选新闻嵌入和用户嵌入连接起来并送入深度神经网络(DNN)计算用户点击候选新闻的预测概率。
4.2 Knowledge Distillation在KCNN之前提取
知识蒸馏的过程如图4所示分为四个步骤。
第一步 消除实体歧义 首先为了区分新闻内容中的知识实体我们利用实体链接技术通过将文本与知识图中的预定义实体关联来消除文本中提到的歧义。
第二步 构造子图并形成关系链接 基于这些被识别的实体我们构造一个子图并从原始知识图中提取它们之间的所有关系链接。注意被识别的实体之间的关系可能是稀疏的缺乏多样性。因此我们将知识子图扩展到one hop of identified ones的所有实体。
第三步 实体表示学习 在提取出的知识图的基础上可以利用TransE、TransH、TransR、TransD等多种知识图嵌入方法进行实体表示学习。
第四步实体送入KCNN 在DKN框架中将学习到的实体嵌入作为KCNN的输入。
需要注意的是尽管最先进的知识图嵌入方法一般可以保留原始图中的结构信息但我们发现在后续推荐中使用的单个实体的学习嵌入信息仍然有限。为了帮助识别实体在知识图中的位置我们提出为每个实体提取额外的上下文信息。实体e的“上下文”定义为知识图中其近邻的集合即: 其中r是一个关系G是知识图。由于上下文实体通常在语义和逻辑上与当前实体密切相关使用上下文可以提供更多的补充信息并有助于提高实体的可识别性。图5演示了一个上下文示例。除了使用《搏击俱乐部》本身的嵌入来代表实体我们还包括它的上下文如“悬疑”(genre)、“布拉德·皮特”(actor)、“美国”(country)和“奥斯卡奖”(award)作为它的标识符。给定实体eee的上下文将上下文嵌入计算为其上下文实体的平均值: 其中eie_iei通过知识图嵌入获得的实体嵌入。在实验部分我们用经验证明了context嵌入的有效性。
4.3 Knowledge-aware CNN加入上下文嵌入
我们使用tw1:n[w1,w2…wn]t w_{1:n} [w_1,w_2…w_n]tw1:n[w1,w2…wn]表示长度为nnn的新闻标题t的原始输入序列w1:n[w1w2…wn]∈Rd×nw_{1:n} [w_1 w_2 … w_n]∈{\mathbb{R}^{{d} \times {n}} }w1:n[w1w2…wn]∈Rd×n表示标题的词嵌入矩阵可以预先从大型语料库中学习也可以随机初始化。 经过4.2节中介绍的知识提炼每个词还可以与一个实体嵌入ei∈Rk×1{\mathbf{e}}_{i} \in \mathbb{R}^{k \times 1}ei∈Rk×1和对应的上下文嵌入e‾i∈Rk×1\overline{\mathbf{e}}_{i} \in \mathbb{R}^{k \times 1}ei∈Rk×1相关联其中k为实体嵌入的维数。
根据上面的输入组合单词和关联实体的一种简单方法是将实体视为“伪单词”并将它们连接到单词序列即: 其中etje_{t_{j}}etj是与新闻标题相关的实体嵌入集合。将得到的新句子WWW输入CNN进行进一步处理。然而我们认为这种简单的连接策略有以下局限性:1)连接策略打破了单词和关联实体之间的连接并且不知道它们的对齐。2)单词嵌入和实体嵌入的学习方法不同不适合在单个向量空间中进行卷积。3)连接策略隐式地迫使词嵌入和实体嵌入具有相同的维度但在实际环境中可能不是最优的因为词嵌入和实体嵌入的最优维度可能不同。 考虑到上述局限性我们提出了多通道和词实体对齐的KCNN用于结合词语义和知识信息。KCNN的架构如图3的左下方所示。每个新闻标题t[w1,w2…wn]t [w_1,w_2…w_n]t[w1,w2…wn]作为输入我们还引入了transformed entity embeddings 和transformed context embeddings 作为输入源 其中ggg为变换函数。在KCNN中ggg可以是线性的: 或者非线性 其中M∈Rd×k\mathbf{M} \in \mathbb{R}^{d \times k}M∈Rd×k为可训练变换矩阵b∈Rd×1\mathbf{b} \in \mathbb{R}^{d \times 1}b∈Rd×1为可训练偏差。由于变换函数是连续的它可以将实体嵌入和上下文嵌入从实体空间映射到词空间同时保持它们原有的空间关系。注意单词嵌入w1:nw_{1:n}w1:n转换实体嵌入g1:ng_{1:n}g1:n和转换上下文嵌入g(e1‾:n)g(\overline{e_1}:n)g(e1:n)大小相同类似于彩色图像的多通道。因此我们将三个嵌入矩阵排列和堆叠为: 得到多通道输入W后类似Kim CNN,我们使用有着不同的窗口大小lll的多个过滤器h∈Rd×1×3\mathbf{h} \in \mathbb{R}^{d \times 1 \times 3}h∈Rd×1×3来提取新闻标题中的特定local pattern。子矩阵Wi:il−1W_{i:il-1}Wi:il−1相对于hhh的局部激活可表示为 我们在输出特征映射上使用max-over-time池操作来选择最大的特征: 我们将所有特征c~hi\tilde{c}^{h_{i}}c~hi连接在一起作为输入新闻标题t的最终表示即: 其中m是过滤器的数量
4.4 基于注意的用户兴趣提取
给定用户iii点击历史{t1i、t2i...tni}\left \{ {t_1^i、t_2^i... t_n^i}\right \}{t1i、t2i...tni}他的点击新闻的嵌入可以写e(t1i),e(t2i),…,e(tNii)\mathbf{e}\left(t_{1}^{i}\right), \mathbf{e}\left(t_{2}^{i}\right), \ldots, \mathbf{e}\left(t_{N_{i}}^{i}\right)e(t1i),e(t2i),…,e(tNii)。要表示用户iii代表当前候选新闻tjt_jtj可以简单地计算出用户点击新闻标题的所有嵌入量: 但是正如引言中所讨论的用户对新闻话题的兴趣可能是多种多样的当考虑用户i是否会点击tj时用户i所点击的条目应该会对候选新闻tj产生不同的影响。为了表征用户的多样化兴趣我们使用注意力网络[47,54]来模拟用户点击新闻对候选新闻的不同影响。注意网络如图3的左上方所示。具体来说对于useri的点击newsti和候选newstj我们首先将它们的嵌入连接起来然后使用DNN H作为注意网络并使用softmax函数计算归一化冲击权值: 注意网络H接收两个新闻标题的嵌入作为输入输出影响权重。因此用户i对候选新闻tj的嵌入可以计算为其点击新闻标题嵌入的加权和: 最后给定useri的embedding (i)和候选newstj的embedding (e(tj))则另一个DNN G预测的用户i点击新闻tjis的概率为:
5 实验
在本节中我们将展示我们的实验和相应的结果包括数据集分析和模型比较。并以用户的阅读兴趣为例对超参数的调优进行了讨论。
5.1数据集描述
我们的数据集来自Bing新闻的服务器日志。每条日志主要包含timestamp、用户id、新闻url、新闻标题和点击次数(0表示没有点击1表示点击)。我们收集2016年10月16日至2017年6月11日的随机采样均衡数据集作为训练集2017年6月12日至2017年8月11日的测试集作为测试集。此外我们搜索数据集中所有发生的实体以及微软Satori知识图中它们的周围一跳one hop的实体并提取其中所有置信度大于0.8的边(三重)。新闻数据集和提取的知识图的基本统计和分布情况分别如表1和图6所示。 图6:新闻数据集和提取的知识图的统计分布示意图
图6a说明了新闻生命周期长度的分布其中我们将一条新闻的生命周期定义为从其出版日期到最后一次收到点击的日期。我们观察到大约90%的新闻在两天内被点击这证明了网络新闻的时效性非常强被更新频率高的新闻所取代。图6b显示了用户点击新闻的数量分布。77.9%的用户点击不超过5条新闻体现了新闻推荐场景中的数据稀疏性。 图6c和图6d分别说明了新闻标题中单词(不间断单词)和实体的数量分布。平均每个标题的单词数为7.9实体数为3.7这表明平均而言新闻标题中几乎每两个单词中就有一个实体。实体出现的高密度也从经验上证明了KCNN的设计。 图6e和图6f分别给出了一个实体在新闻数据集中的出现次数分布和一个实体在抽取的知识图中的上下文实体数量分布。我们可以从这两个数据得出在线新闻的发生模式的实体是稀疏的,长尾(80.4%的实体发生不超过10倍),但实体通常有丰富的上下文知识图:每个实体上下文实体的平均数为42.5,最大的是140737。因此上下文实体可以极大地丰富新闻推荐中单个实体的表现形式
5.2 Baselines
在我们的实验中我们使用以下最先进的方法作为基线:
LibFM[37]是一种最先进的基于特征的因子分解模型广泛应用于CTR场景。在本文中LibFM每条新闻的输入特征由TF-IDF特征和平均实体嵌入两部分组成。我们将用户和候选新闻的特性连接到LibFM中。KPCNN[46]将所包含的实体附加到新闻标题的词序列中并使用Kim CNN学习新闻的表示如4.3节所介绍的。DSSM[18]是一个使用词哈希和多个全连接层进行文档排序的深度结构化语义模型。本文将用户点击的新闻作为查询候选新闻作为文档。DeepWide[7]是一个可供推荐的通用深度模型它结合了(宽)线性通道和(深)非线性通道。类似于LibFM,我们使用连接的TF-IDF特征和平均实体嵌入作为输入馈送两个通道。DeepFM[15]也是一个通用的深度推荐模型它结合了分解机器组件和共享输入的深度神经网络组件。我们对DeepFM使用与LibFM相同的输入。YouTubeNet[9]使用深度候选生成网络和深度排名网络推荐YouTube中大规模候选集的视频。在本文中我们将深度搜索网络应用于新闻推荐场景。DMF[50]是一种用于推荐系统的深度矩阵分解模型它使用多个非线性层来处理用户和项目的原始评级向量。我们忽略新闻内容将隐式反馈作为DMF的输入。
请注意除了LibFM其他基线都是基于深度神经网络的因为我们的目标是将我们的方法与最先进的深度学习模型进行比较。此外除了基于协同过滤的DMF外其他基线都是基于内容的或混合的方法。
5.3实验设置
我们选择TransD[20]对知识图进行处理学习实体嵌入并在KCNN中使用Eq.(15)中的非线性变换函数。 词嵌入和实体嵌入的维度均设为100。 对于每个窗口大小1、2、3、4过滤器的数量设置为100。 我们使用Adam[23]通过优化日志损失来训练DKN。 我们将分别在5.4节和5.6节中进一步研究DKN的变异和关键参数的灵敏度。 为了将DKN与基线进行比较我们使用F1和AUC值作为评价指标。 基线的关键参数设置如下。KPCNN的词嵌入和实体嵌入的维度都设置为100。 对于DSSM语义特征的维数设为100。对于DeepWide深度和宽组件的最终表示都设置为100。 对于YouTubeNet最后一层的尺寸设置为100。 对于LibFM和DeepFM分解机的维度设置为{1,1,0}。 对于DMF用户和项目的潜在表示维度设置为100。 以上设置是为了公平考虑。基线中的其他参数设置为默认值。每个实验重复5次我们将平均偏差和最大偏差作为结果
5.4结果
在本节中我们给出了不同模型的比较结果和DKN变量之间的比较结果。
5.4.1不同模型的比较
不同模型比较结果如表2所示。对于输入中包含实体嵌入的每个基线我们还从输入中删除实体嵌入以查看其性能如何变化(用“(-)”表示)。此外我们在括号中列出基线相对于DKN的改进并通过t检验计算统计学显著性的p值。从表2中可以看出以下几点:
实体嵌入的使用可以提高大多数基线的性能。例如KPCNN、DeepWide和YouTubeNet的AUC分别增长了1.1%、1.8%和1.1%。然而DeepFM的改善就不那么明显了。我们尝试对DeepFM进行不同的参数设置发现如果AUC下降到0.6左右使用知识带来的改善可能高达0.5%。结果表明基于fm的方法在新闻推荐中不能稳定地利用实体嵌入。DMF在所有方法中表现最差。这是因为DMF是一种基于cf的方法但新闻通常是高度时间敏感的生命周期很短。结果证明了前面提到的CF方法在新闻推荐场景中不能很好地工作。•除了DMF其他基于深度学习的基线在F1上的表现比LibFM高出2.0%至5.2%在AUC上高出1.5%至4.5%这表明深度模型在捕捉新闻数据中的非线性关系和依赖性方面是有效的。在新闻推荐场景中DeepWide和YouTubeNet的架构相似因此我们可以观察到两种方法的性能相当。DSSM的表现优于DeepWide和YouTubeNet其原因可能是DSSM直接使用单词哈希对原始文本进行建模。KPCNN在所有基线中表现最好。这是因为KPCNN使用CNN对输入文本进行处理可以更好地提取句子中特定的局部模式。最后与KPCNN相比DKN的AUC仍可增加1.7%。我们将DKN的优越性归结于它的两个特性:1)DKN采用单词实体对齐的KCNN进行句子表示学习能够更好地保持单词和实体之间的相关性;2) DKN利用注意力网络对用户的点击历史进行区别对待更好地捕捉用户多样化的阅读兴趣。 图7显示了DKN的AUC评分和额外10天测试的基线。我们可以观察到DKN的曲线在10天内始终高于基线这有力地证明了DKN的竞争力。此外与基线相比DKN的性能也具有较低的方差说明DKN在实际应用中也具有鲁棒性和稳定性。
5.4.2 DKN变异株比较
进一步我们从知识的使用、知识图嵌入方法的选择、变换函数的选择和注意网络的使用四个方面对DKN的变量进行比较以证明DKN框架设计的有效性。结果如表3所示从中我们可以得出结论:•使用实体嵌入和上下文嵌入可以分别提高AUC 1.3%和0.7%结合使用可以获得更好的性能。这一发现证实了在DKN模型中使用知识图的有效性。
DKNTransD优于其他组合。这可能是因为如2.1节所述TransD是四种嵌入方法中最复杂的模型能够更好地捕捉新闻推荐知识图之间的非线性关系。带映射的DKN优于不带映射的DKN非线性函数优于线性函数。结果表明变换函数可以通过自学习缓解词空间和实体空间之间的异质性非线性函数可以获得更好的性能。对于DKN模型关注网络带来了1.7%的F1增益和0.9%的AUC增益。我们将在下一小节中对注意力网络做一个更直观的演示。
5.5案例研究
为了直观地展示知识图和注意网络使用的有效性我们随机抽取一个用户从训练集和测试集中提取他的所有日志(为简单起见省略标签为0的训练日志)。如表4所示点击后的新闻清晰地展示了他的兴趣点:1-3号关注的是汽车4-6号关注的是政治(类别不在原始数据集中而是我们手动标记的)。我们利用整个训练数据训练具有完整特征的DKN和没有实体或上下文嵌入的DKN然后将该用户的每一对可能的训练日志和测试日志分别输入到两个训练模型中得到其注意网络的输出值。结果如图8所示其中较深的蓝色表示较大的注意值。从图8我们观察到,在测试日志第一个冠军就高度重视价值观与“汽车”的培训日志,因为它们共享相同的词“特斯拉”,但结果第二标题不太满意,自第二次标题与任何共享没有明确word-similarity标题在训练集,包括1 - 3。这种情况与测试日志中的第三个标题类似。相比之下在图8b中我们可以看到注意力网络准确地捕捉到了“汽车”和“政治”这两个类别中的相关性。这是因为在知识图谱中“通用汽车”和“福特公司”与“特斯拉公司”和“埃隆·马斯克”有着大量的关联“杰·约翰逊”和“俄罗斯人”也与“唐纳德·特朗普”有着高度的关联。注意网络响应的差异也会影响最终的预测结果:有知识图的DKN(图8b)能准确预测所有的测试日志而没有知识图的DKN(图8a)对第三个测试日志的预测不准确。
5.6参数的敏感性
DKN涉及许多超参数。在本小节中我们将研究超参数的不同选择如何影响DKN的性能。在接下来的实验中除了要测试的参数外所有其他参数都按照5.3节中介绍的方法进行设置。
5.6.1词嵌入维数d实体嵌入维数k
我们首先通过测试集合{20,50,100,200}中d和k的所有组合来研究单词嵌入的维数和实体嵌入的维数如何影响性能。结果如图9a所示从图中我们可以看到给定实体嵌入的维数k性能最初是随着词嵌入维数的增加而提高的。这是因为在字嵌入中更多的位元可以编码更多有用的字语义信息。然而当d进一步增加时性能会下降因为a太大(例如d 200)可能会引入噪声从而误导后续的预测。当d已知时k的情况与此类似。
5.6.2 滤波器的窗口大小和滤波器的数量m。
我们进一步研究了DKN模型中KCNN滤波器窗口大小和滤波器个数的选择。如图9b所示给定窗口大小AUC得分通常随着过滤器数量的增加而增加因为更多的过滤器能够捕获更多输入句子中的局部模式并增强模型的能力。然而当m过大(m 200)时由于可能的过拟合趋势发生变化。同样我们可以观察到给定m的窗口大小也有类似的规则:小的窗口大小不能捕获句子中的长距离模式而过大的窗口大小则容易导致噪声模式的过拟合。
6. 相关工作
6.1 新闻推荐
新闻推荐此前已被广泛研究。非个性化新闻推荐的目的是模拟新闻[31]之间的相关性或学习人类编辑的演示[47]。在个性化新闻推荐中基于cf的方法[43]由于新闻条目被频繁替换经常会遇到冷启动问题。因此大量基于内容或混合方法被提出[2,24,29,36,41]。例如[36]提出了一种基于用户点击行为预测当前新闻兴趣的贝叶斯方法[41]提出了一种基于位置的新闻推荐的显式本地化情感分析方法。最近研究人员也尝试将其他特征结合到新闻推荐中例如contextualbandit[27]主题模型[30]循环神经网络[34]。与之前的工作主要不同的是我们使用知识图来提取新闻之间潜在的知识层次联系以便更好地探索新闻推荐。
6.2知识图
知识图表示的目的是学习知识图中每个实体和关系的低维向量同时保持原始的图结构。除了DKN中使用的基于平移的方法[5,20,28,48]研究人员还提出了许多其他模型如结构化嵌入[6]、潜在因子模型[19]、神经张量网络[39]和语义匹配能量[4]。近年来知识图也被应用于许多应用中如电影推荐[52]、top n推荐[35]机器阅读[51]文本分类[46]、词嵌入[49]问答[11]。据我们所知本文是第一个提出将知识图嵌入应用于新闻推荐的研究。
6.3深度推荐系统
最近深度学习已经成为推荐系统的革命并在许多推荐场景中取得了更好的性能。粗略地说深度推荐系统可以分为两类:使用深度神经网络处理用户或商品的原始特征或者使用深度神经网络模拟用户与商品之间的交互。除了上述的DSSM[18]、DeepWide[7]、DeepFM[15]、YouTubeNet[9]和DMF[50]其他流行的基于深度学习的推荐系统包括Collaborative Deep Learning[45]、Hybrid CF-SDAE[12]、Multi-view Deep Learning[13]和Neural Collaborative Filtering[16]。这些方法与我们的主要区别在于DKN专门从事新闻推荐可以获得比其他通用深度推荐系统更好的性能。
7. 结论
在本文中我们提出了DKN一个利用知识图表示的深度知识感知网络在新闻推荐。DKN解决了新闻推荐面临的三大挑战:1)与基于id的协同过滤等方法不同DKN是一种基于内容的深度模型用于预测点击率适用于时间敏感的新闻。2)为了利用新闻内容中的知识实体和常识我们在DKN中设计了一个KCNN模块共同学习新闻的语义级表示和知识级表示。单词和实体的多通道和对齐使KCNN能够结合来自异构源的信息并保持每个单词不同嵌入的对应关系。3)为了模拟用户的不同历史兴趣对当前候选新闻的不同影响DKN使用关注模块动态计算用户的聚合历史表示。我们在必应新闻的数据集上进行了广泛的实验。结果表明与强基线相比DKN具有显著的优势并能有效地利用知识实体嵌入和注意模块。