Collaborative Knowledge Base Embedding for Recommender Systems(译)

提出一种结合知识库信息的推荐系统框架CKE,利用结构化、文本及图像数据增强推荐效果,有效解决冷启动及新物品推荐问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址

http://www.kdd.org/kdd2016/subtopic/view/collaborative-knowledge-base-embedding-for-recommender-systems

该论文发表于16年KDD,主要贡献为在推荐系统中引入了结构信息,文本数据,图像数据等知识库中的信息来提升推荐系统的质量。其中,结构信息采用TransR来得到实体的向量特征,文本数据与图像数据分别使用栈式降噪自编码(Stacked Denoising Auto-encoders, SDAE)与栈式卷积自编码(Stacked Convolutional Auto-encoders)来提取出向量特征。

Item的向量表示是将最初的向量与来自知识库中的三个特征向量相结合。对于构建出的损失函数可以使用随机梯度下降来进行优化,从而实现基于异构数据的ranking推荐。

动机

目前最常用的矩阵分解方法的性能会因为矩阵过于稀疏而性能下降,同时也存在无法推荐新的item和冷启动等问题。基于内容的推荐无法很好的解决推荐结果的多样性问题。考虑到用户对于item的选择也会受到与item相关的其他信息的影响。因此,混合了协同过滤与其他信息的推荐系统通常可以更好地解决这些问题,从而得到更好的结果。

知识库中通常包含了大量的信息,因此有部分工作将知识库作为其他信息来与协同过滤进行融合。然而,这些工作目前存在以下问题:

1、仅仅使用单一的网络结构信息,没有充分利用其他信息。
2、从知识库中提取特征依赖于传统特征工程。为了解决这些问题,本文提出的CKE(Collaborative Knowledge Base Embedding) 推荐系统框架。

在讲解CKE网络结构之前,首先介绍相关概念:

1、在user-item矩阵中,数值为1则表示存在相关关系,0则表示不存在。

2、知识库中包含的知识可以分为以下三类。

​ 1)结构知识:通过头尾实体与实体之间的关系组成。

​ 2)文本知识:对于一个实体的一段文字性描述。

​ 3)图片知识:与当前实体有关的图片信息。如电影海报或书的封面。

3、当前需要解决的推荐系统的问题是:给定具有结构知识,文本及图片的知识库和用户的隐式反馈,返回每一个用户最有可能感兴趣的item列表。

知识库与user-item矩阵之间的关系如下图所示。

Illustration of a snippet of user implicit feedback data and knowledge base data

网络结构

总览

The flowchart of the proposed Collaborative Knowledge Base Embedding (CKE) framework for recommender systems

模型主要包含两步。1)针对于知识库中的知识进行向量化表示。2)协同联合训练。在进行知识库的embedding阶段,模型分别针对于结构知识(structural knowledge),文本知识(textual knowledge),图片知识(visual knowledge)进行向量化表示。embedding的方式分别为Bayesian TransR, Bayesian SDAE, Bayesian SCAE.

在协同联合训练部分,item的向量由从知识库中提取的三个向量与offset vector组成。训练过程通过优化不同item之间的ranking来学习user的隐向量与item的隐向量。

结构化数据的向量表示

与其他embedding的方式相比,TransR可以通过关系矩阵来链接不同语义空间。如下图所示,实体与关系存在在不同的空间空,而TransR通过矩阵M将实体从实体空间转到关系空间,并在关系空间中进行进行计算。

Illustration of TransR for structural embedding

其中目标函数为

fv(vh,vt)=||vrh+rvrt||22

其中 vrh=vhMr , vrr=vrMr , MrRk×d , rRd , vh,vtRk

在本文中,加入贝叶斯先验之后的TransR的生成过程如下所示

请查阅刘知远老师的论文 Learning entity and relation embeddings for knowledge graph completion(AAAI’15) 以获取更多关于TransR的信息

文本的向量表示

与CDL中的模型相似,CKE中采用的SDAE模型如下图所示:

其中左侧为添加噪声之后的文档,经过编码与解码之后使得输出的文档与未添加噪声的文档要尽可能的接近。噪声的添加方式为随机将一些数字置零。以当前图为例,X0至X3之间为编码过程,X3至X6之间为解码过程。而最终X3的输出为文档的向量表示。

加入贝叶斯先验之后的SDAE生成过程如下所示:

图片的向量化表示

与SDAE的结构类似,SCAE中特征的提取(即编码过程)采用卷积操作来进行。而解码过程则使用反卷积操作。因编码的输出为embedding之后的向量,因此向量与前后两层之间的链接为全连接。网络左侧输入的图片为添加噪声之后的图片。噪声添加方式为随机增加高斯噪声。具体网络结构如下图所示:

加入贝叶斯先验之后的SCAE生成过程如下所示:

网络的联合训练

根据以上分析, item隐向量的计算方式为:

ej=ηj+vj+XL22,j+ZLv2,j

其中 ηj , vj , XLt2,j , ZLv2,j ,分别为item的offset向量以及结构化知识,文本知识,图片知识的向量。对于每一个三元组 (i,j,j) ,需要优化的目标为 σ(uTiejuTiej) 。 三元组满足 Rij=1 以及 Rij=0 。 因此对于该目标函数,优化的方向应为最大值方向。

加入其他部分的目标函数以及正则项,最终的目标函数如下所示:

因为SDAE,SCAE以及正则项的目标为最小值而且目标函数要得到最大值,所以这些项前的符号为负号。当前目标函数可以使用随机梯度下降来进行学习过程。

实验

实验部分分别在CKE框架下融入了结构化信息(S),文本信息(T),图片信息(V)以及其他组合与其他方法如LibFM+STV, BPRMF+STV在数据集MovieLens-1m与IntentBook上进行比较,并最终得到CKE+STV信息可以得到最优的性能。

### 关于知识图谱的学术论文推荐 对于希望深入了解知识图谱及其相关技术的研究者来说,以下是几篇重要且具有代表性的学术论文: #### 综述类文章 一篇最新的综述性论文涵盖了知识图谱的核心领域以及其应用前景。这篇名为《A Survey on Knowledge Graphs: Representation, Acquisition and Applications》的文章提供了对知识图谱表示学习、知识获取与补全、时序知识图谱等方面的全面回顾,并指出了当前研究中的突破点和未来的探索方向[^1]。 #### 动态图谱与预训练模型 随着知识图谱规模的增长和技术需求的变化,大规模动态图谱的学习成为了一个新兴的研究热点。特别是在复杂知识结构下的表示方法上,这一领域的进展将会对未来几年的知识表示研究产生深远影响。此外,在提高知识表示可解释性的基础上,该方向仍然是学界的关注重点之一[^2]。 #### 基础理论与发展现状 针对具体实现层面的内容,《Collaborative knowledge base embedding for recommender systems》探讨了如何通过协同过滤机制来增强基于知识库嵌入的推荐系统效果[^4]。而另一项基础工作则围绕着传统三元组(h,r,t)构建起整个框架体系展开讨论,强调即使目前存在不完全性问题,但借助诸如TransE、ComplEx 或RotatE这样的算法可以有效缓解此类缺陷并提升整体表现水平[^3]。 以上提到的每一篇文章都从不同角度切入到知识图谱这个广阔而又充满挑战的技术范畴之内;无论是初学者还是资深研究人员都能从中找到适合自己兴趣点的部分深入探究下去。 ```python # 示例代码展示如何加载一个常见的知识图谱嵌入模型——TransE from pykeen.models import TransE model = TransE(triples_factory=triples_factory) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值