DKN:Deep Knowledge-Aware Network for News Recommendation
DKN
2018
introduction
本文提出了一种深度知识感知网络——DKN,它是一个基于内容的深度推荐框架,用于点击率预测。
面临的问题:
新闻文章具有高度的时间敏感性,其相关性在短时间内很快失效。用户对于新闻的话题度都是很敏感的。根据用户对新闻的阅读历史来动态地衡量用户的兴趣是关键所在。新闻语言是高度浓缩的,由大量的知识实体和常识组成。
解决:
DKN基于内容的点击率(CTR)预测模型,输入:一条候选新闻和一个用户的点击历史,输出:用户点击新闻的概率
preliminaries
知识基础
KGE(Knowledge Graph Embedding): translation-based knowledge graph embedding methods(TransE、TransH、TransR、TransD),using margin-based ranking loss
kim-CNN:Convolutional Neural Networks for Sentence Classification
Problem Formulation
给定一个用户user i,他过去的点击历史记为{t1,t2,t3, …, tN},tN表示新闻的标题,N代表过去用户点击过的新闻总数。
每个标题都是一个词序列t = {w1,w2,w3, …, wn},标题中的单词有对应的知识图谱中的一个实体。
本文要解决的是给定用户的点击历史,以及标题单词和知识图谱中实体的关系,需要预测:一个用户是否会点击某一个特定的新闻tj。
DKN Framework
DKN将一条候选新闻和一条用户点击的新闻作为输入。对于每条新闻,都使用专门设计的KCNN来处理其标题并生成嵌入向量。通过KCNN,我们获得了一组用户点击历史的嵌入向量。为了获得用户对当前候选新闻的最终嵌入,我们使用了一种基于注意力的方法来自动将候选新闻与他点击的每条新闻进行匹配,并用不同的权重聚合用户的历史兴趣。
Knowledge distillation 知识提炼
4个步骤
从新闻内容提取实体,并进行实体链接(通过将新闻中的知识实体与知识图谱中的预定义实体相关联来取消文本歧义)
用文中包含的实体构建出一个子图,再对每一个实体从图谱中提取邻居实体(一跳范围)进行扩充
对子图做graph embedding, 可用方法有transE,transH等等
由于即使graph embedding已经基本保留了知识图谱的结构信息,但是效果还是不够好,所以这里引入“上下文”信息做辅助。所谓“上下文”指节点的邻居节点集。
4.4:基于注意力的用户兴趣提取细节