论文浅尝 | DKN: 面向新闻推荐的深度知识感知网络

笔记整理:仲亮靓,东南大学硕士研究生,研究方向是基于知识图谱的推荐系统


640?wx_fmt=png

动机

新闻文本的语言非常凝练,其中包含了很多实体和常识知识。但目前的新闻个性化推荐方法都没有利用这些外部知识,也没有使用新闻之间潜在的知识层面的联系。这就导致推荐的结果总是局限于简单额匹配,不能合理地扩展。

为了解决以上的问题,文章中提出了基于内容的结合知识图谱来做新闻推荐(点击率预测)的方法DKNDeep Knowledge-awareNetwork)。

贡献

文章的贡献有:

1)新提出的DKN模型是基于内容的深度学习推荐模型,适合像新闻这样的具有高度时效性的推荐

2)设计了KCNNKnowledge-awareCNN)模块来联合学习新闻的语义层和知识层的表示

3)用Attention模块对用户历史点击过的新闻对于当前候选推荐新闻的影响程度进行建模

方法

文中提出的模型图如图 1 所示。

输入:一个用户点击过的新闻的标题、一条候选推荐新闻的标题

输出:用户点击这条候选新闻的概率

步骤:

  • 将新闻标题中的词和知识图谱中实体做实体链接

  • 为每个实体搜索它在知识图谱中的相邻实体(以此来获得更加丰富、具有区分力的信息)

  • KCNN(融合新闻的词表示和新闻表示,得到一个新闻的Knowledge-aware的向量表示)

    • 多通道(multi-channel:把word embeddingentityembedding、上下文实体embedding作为CNN的三个通道

    • 词语-实体对齐(word-entity-aligned

                将标题中的词向量和实体向量一一对应,如果词向量在知识图谱中没有与之对应的实体,就用0向量来填充。

            因为词向量和实体向量来自两个不同的向量空间且训练出来的相连的维度也不一样,所以通过一个线性640?wx_fmt=png或非线性640?wx_fmt=png的方法将实体向量映射到词向量空间中。最终得到新闻的如下形式的矩阵表示:

640?wx_fmt=png


其中,w_i 表示标题中第 i 个词的词向量,e_i 表示与第i个词对应的实体的向量,\bar{e_i} 表示第i词对应的实体在知识普图中的上下文信息(所有与它相邻的实体的向量的均值)

    • 将得到的多通道堆叠矩阵放入CNN中,最终得到新闻的embedding结果

  • Attention-based 用户兴趣抽取

  • 用户对于自己点击过的每个新闻话题的兴趣并不是完全一样的,所以用户点击过的每个新闻对于用户是否点击候选推荐新闻的影响力也是不一样的,因此这里需要加入Attention机制

  • 输入:两条新闻标题(用户点击过的一条新闻和候选新闻)的KCNN embedding结果

  • 输出:该条历史新闻对于候选新闻点击率的影响权重

  • 将两个embedding结果做全连接,然后使用一个DNN(公式中用H表示)作为Attention网络,最后再用softmax函数来规格化影响权重,具体公式如下:

640?wx_fmt=png

  • 把这些历史新闻的向量和对应的权重,做加权平均,作为用户的embedding结果

640?wx_fmt=png

  • 最后再将用户的embedding结果、候选推荐新闻的embedded结果做全连接,放到一个DNN(公式中用G表示)中,得到最终的用户点击该条候选新闻的概率


640?wx_fmt=png


1 DKN算法模型框架

实验

数据来源Bing News的系统日志

数据特征:实验中给出了新闻数据中新闻标题所含的词语数量平均值、新闻标题中包含的实体数量平均值、添加上下文实体后得到的实体数量平均值等,表明了加入知识图谱中的相邻实体确实能够丰富新闻的特征,具体如下表所示。

640?wx_fmt=png

实验对比

1)文中把当前引入深度学习的协同过滤算法(DFM)和基于内容(KPCNNDSSMDeepWideDeepFMYouTubeNet)的个性化推荐算法都做了对比,实验表明DKN算法的推荐效果最好。

2)  对于DKN算法中,也做了使用不同知识表示学习算法、是否加入Attention机制、是否将entityembedding结果转换到word embedding结果的向量空间中、以及三种输入信息(Word embedding)、Entityembedding、上下文embedding)组合都做了对比实验,实验表明使用三种输入信息、TransD方法、非线性映射方法并加入Attention机制的效果最好。

总结

论文中所提出的模型主要部分还是使用了CNNAttention这两个的组合,主要创新点还是在于首次将知识图谱引入到新闻推荐算法中,也就是利用知识图谱来提取更多的新闻特征应用推荐算法中。

 



OpenKG


开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

640?wx_fmt=jpeg

点击阅读原文,进入 OpenKG 博客。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479960.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

聊聊工业界做机器学习的里程碑

文 | 吴海波编 | YY阅读说明,本文的机器学习领域限制于互联网搜索、推荐、广告场景,仅限于个人观点。2017年,我和团队的几个核心去了趟北京,找了各大互联网公司一线实战的同学,交流各自在机器学习上的经验。这次交流让…

直通BAT JVM必考题:Minor GC、Major GC、Full GC的区别

Java面试过程,JVM属于必考题系列: 直通BAT必考题系列:深入详解JVM内存模型与JVM参数详细配置 直通BAT必考题系列:JVM的4种垃圾回收算法、垃圾回收机制与总结 直通BAT必考题系列:7种JVM垃圾收集器特点,优…

matplotlib绘制多张图、多子图、多例图

绘制多图 关键: fig plt.figure(1) 表示新建第几个图 import matplotlib.pyplot as pltfig plt.figure(1) plt_rec_loss [1,2,3,4,5,6] plt_rec_recall [4,3,6,5,8,9] plt.xlabel("epoch") plt.ylabel("loss") plt.plot(range(len(plt_re…

jieba分词并做分析

Github:结巴分词地址 https://github.com/fxsjy/jieba 几种分词方法的简单使用:一 . jieba安装、示例 pip install jieba,jieba分词的语料是基于人民日报。分词示例1 import jieba 2 3 str1 江州市长江大桥 4 word_object jieba.cut(s…

研讨会 | CCF TF 第 17 期:认知计算产业化落地

CCF TF 技术前线只为技术专家CCFTF第17期主题 认知计算产业化落地2019年05月11日上海斯波特酒店五楼(上海市南丹路15号,徐汇区政府对面)人类迈入人工智能时代,技术的发展使得机器可以从大数据中提取信息,串联成知识&a…

短网址系统

文章目录1. 短网址服务整体介绍2. 如何通过哈希算法生成短网址?2.1 如何让短网址更短2.2 如何解决哈希冲突?2.3 如何优化哈希算法生成短网址的性能?3. 如何通过ID生成器生成短网址?3.1 相同的原始网址可能会对应不同的短网址3.2 如…

一个神经元的价值和一个神经病的坚持

作者 | 周博磊来源 | 机器之心一个神经元能够催生多少故事?香港中文大学信息工程系助理教授周博磊近日撰文介绍了他自 2015 年开始至今对神经元的研究经历。最近,他与 David Bau、朱俊彦等人合作的神经元研究论文发表在了 PNAS 杂志上。以下是周博磊的原…

直通BAT必考题系列:深入剖析JVM之G1收集器、及回收流程、与推荐用例

金三银四马上到了,即将进入面试的高峰期。在BAT面试中,JVM基本都是必考的系列。你至少需要掌握JVM内存模型与JVM参数详细配置,JVM的4种垃圾回收算法、垃圾回收机制与总结,以及今天重点谈到的JVM垃圾回收算法的实现:JVM…

多任务学习方法

最近一直在做多任务,但是效果好象没什么提升,因为都是凭自己的想法和感觉在做。于是上网查找了一些这方面的资料,寻求一些理论上的支撑和前人经验上的帮助。 多任务学习: 故名思意,就是多个任务一起学习。为什么要进行…

曹羽 | 从知识工程到知识图谱全面回顾

本文转载自公众号:集智俱乐部。文本挖掘和图形数据库 | ©ontotext导语知识工程是符号主义人工智能的典型代表,近年来越来越火的知识图谱,就是新一代的知识工程技术。知识工程将如何影响未来人工智能领域的发展,甚至让计算机拥…

4大JVM性能分析工具详解,及内存泄漏分析方案

谈到性能优化分析一般会涉及到: Java代码层面的,典型的循环嵌套等 还会涉及到Java JVM:内存泄漏溢出等 MySQL数据库优化:分库分表、慢查询、长事务的优化等 阿里P8架构师谈:MySQL慢查询优化、索引优化、以及表等优化…

从 0 搭建一个工业级推荐系统

推荐系统从来没像现在这样,影响着我们的生活。当你上网购物时,天猫、京东会为你推荐商品;想了解资讯,头条、知乎会为你准备感兴趣的新闻和知识;想消遣放松,抖音、快手会为你奉上让你欲罢不能的短视频。而驱…

论文浅尝 | 虚拟知识图谱:软件系统和应用案例综述

本文转载自公众号:DI数据智能。Virtual Knowledge Graphs: An Overview of Systems and Use Cases作者:Guohui Xiao, Linfang Ding, Benjamin Cogrel & Diego Calvanese供稿:Guohui Xiao编者按:Data Intelligence 发表意大利博…

LeetCode 169. 求众数(摩尔投票)

文章目录1. 题目信息2. 解题思路3. 代码3.1 排序3.2 map计数3.3 摩尔投票1. 题目信息 给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在众数。 示例 1:输入…

阿里P8架构师谈:JVM的内存分配、运行原理、回收算法机制

不管是BAT面试,还是工作实践中的JVM调优以及参数设置,或者内存溢出检测等,都需要涉及到Java虚拟机的内存模型、内存分配,以及回收算法机制等,这些都是必考、必会技能。 JVM内存模型 JVM内存模型可以分为两个部分&…

我的BERT!改改字典,让BERT安全提速不掉分(已开源)

文 | 苏剑林编 | 小轶背景当前,大部分中文预训练模型都是以字为基本单位的,也就是说中文语句会被拆分为一个个字。中文也有一些多粒度的语言模型,比如创新工场的ZEN和字节跳动的AMBERT,但这类模型的基本单位还是字,只不…

2020年考证时间表汇总!这些证书值得拥有!

原文地址: https://zhuanlan.zhihu.com/p/100824416 2020年考证时间表汇总!这些证书值得拥有!已认证的官方帐号154 人赞同了该文章昨日之日不可留,2019年已然过去,2020年的我们不能再一成不变!快根据自身情…

征稿 | 2019年全国知识图谱与语义计算大会(CCKS2019)第二轮征稿启事

2019年全国知识图谱与语义计算大会China Conference on Knowledge Graph and Semantic Computing (CCKS 2019)2019年8月24日-27日,杭州征稿截止: 2019年5月18日全国知识图谱与语义计算大会(CCKS: China Conference on Knowledge Graph and Semantic Comp…

直通BAT必考题系列:JVM的4种垃圾回收算法、垃圾回收机制与总结

BAT必考JVM系列专题 直通BAT必考题系列:深入详解JVM内存模型与JVM参数详细配置 垃圾回收算法 1.标记清除 标记-清除算法将垃圾回收分为两个阶段:标记阶段和清除阶段。 在标记阶段首先通过根节点(GC Roots),标记所…

遗传算法及其应用实现

使用遗传算法求解函数具有最大值的点X """ Visualize Genetic Algorithm to find a maximum point in a function. """ import numpy as np import matplotlib.pyplot as pltDNA_SIZE 10 # DNA length POP_SIZE 100 # population size CROSS…