APP下载

基于异构信息网络多关系嵌入的层次化意图和偏好进行推荐

2021-07-09陈丽华

现代计算机 2021年14期
关键词:层次化异构类别

陈丽华

(四川大学计算机学院,成都 610065)

0 引言

推荐系统中的一个关键任务是帮助用户从大量的商品中找到用户感兴趣的商品,提升用户体验度。传统的推荐算法通常利用用户-商品交互二元关系学习用户偏好进行推荐,如协同过滤(Collaborative Filter⁃ing)[1,14]基于用户或商品相似度向用户推荐商品,矩阵分解(Matrix Factorization)[1,15]将评分矩阵分解为用户和商品的潜特征表达,然后向每个用户推荐其感兴趣的商品。但它们都具有矩阵稀疏、冷启动、扁平化意图和偏好等问题从而限制了模型的性能。实际用户购买行为存在一个自然交互过程[16]:首先用户具有购买某一类型的商品意图(例如用户想购买羽绒服),然后在这种意图驱动下,基于用户偏好再选择特定商品(某品牌或某种颜色的羽绒服)。传统的推荐算法利用用户-商品交互二元关系却难以建模这样的层次化意图和偏好。如何构建用户的层次化意图和偏好成为一个挑战。实际推荐系统中包含了丰富的不同类型的信息,这些信息组成了异构信息网络[2]。与同构信息网络不同的是,异构信息网络具有不同类型的节点和链接关系,不同类型的关系信息从不同语义角度体现了用户偏好。为了融合丰富的异构信息的语义,文献[3]引入元路径(Meta-Graph)的概念以解决异构信息网络中复杂语义信息融合问题,模型同时使用矩阵分解和因子分解机(Factorization Machine)[4]学习不同元路径中的用户和商品的特征表达。由于模型对不同的元路径的学习能力是不同的,所以该模型只能针对特定的元路径进行较好的学习。文献[5]构建了异构信息网络模式,如在Yelp 数据集上通过节点类型用户(User)、评论(Re⁃view)、单词(Word)、商户(Business)等来定义一个网络模式。然后提出PathSim 算法来定义不同元路径上两个节点之间语义信息关联性。文献[6]提出了一种深度异构网络嵌入方法,用于学习不同类型节点的特征表达。模型使用卷积神经网络和全连接层分别学习图像和文本的嵌入,然后将嵌入的图像和文本映射到一个共同的特征空间,从而可以直接计算不同类型节点之间的相似性进行分类检索等任务。上述方法存在两个不足:

(1)利用用户-商品交互二元关系建模用户偏好都假设用户对商品的偏好是扁平化的,而忽略了用户意图和用户偏好之间的层次关系,导致不能利用用户结构化的决策模式来准确学习用户偏好。

(2)在公共特征空间建模节点和关系时很难区分不同类型的节点和关系之间的语义异构性,没有细粒度地学习节点基于特定关系的特征表示。然而不同链接关系可能对应节点的不同方面特征。细粒度地学习节点的基于特定关系的特征表示是合理的。

所以本文提出基于异构信息网络多关系嵌入的层次化意图和偏好进行推荐的模型。我们通过将异构信息网络中每一种关系及对应节点投影到关系特定的语义空间中,而不是在公共空间中,可以使实际持有关系的节点彼此靠近,而弱持有或不持有关系的节点远离。为了融合异构信息,我们引入一个关系感知的注意力层个性化融合不同关系对节点特征学习的不同影响程度。我们希望基于异构信息网络中学习到的多关系节点嵌入对层次化的用户意图和偏好建模。本文利用类别-商品层次关系构建一棵层次树,首先在树中非叶节点的每一层对类别信息进行随机排序,属于同一个类别的商品随机顺序放在一起,如果一个商品属于多个类别,那么该商品会随机地被分配到其中的一个类别。非叶节点为粗粒度的类别概念,在树中作为商品的索引,叶节点为语料库中的商品。我们利用高层的用户-类别决策学习用户的类别意图偏好,再学习用户在意图下的特定商品偏好。模型根据学习到的特定商品偏好程度排序并推荐。我们的贡献主要有以下三个:

(1)我们通过将异构信息网络中每一种关系及对应节点投影到关系特定的语义空间中,细粒度地学习节点基于特定关系的特征表达。可以使实际持有关系的节点彼此靠近,而弱持有或不持有关系的节点远离。我们提出一个关系感知的注意力层来个性化融合异构信息,学习到不同关系对不同的节点特征表达的不同影响程度。

(2)我们利用多关系语义节点嵌入构建层次树来建模层次化用户意图和偏好。我们首先进行类别意图偏好预测,然后在该类别意图下进行特定商品偏好预测,充分利用用户的结构化决策模式进行用户偏好学习。

(3)我们的模型在真实的两个数据集上和广泛使用的和最新的方法进行对比实验,验证了我们提出的模型的有效性。

1 模型

1.1 问题定义

给定异构信息网络G=(V,E,R),其中V是节点集合,其中包括用户集合U,商品集合X,类别集合C。E是边集合,R是边类型集合,每条边e∈E定义为:

本文希望通过联合学习多个特定关系语义空间来学习每个节点的多关系语义混合特征表达。利用异构信息网络中的多关系节点嵌入层次化用户意图和偏好并为用户推荐可能感兴趣的商品。在本文中,我们定义异构信息网络中具有三种类型的节点:用户u∈U、商品x∈X、类别c∈C;和三种类型关系:用户-商品(u-x)、商品-类别(x-c)、用户-用户(u-u)关系。我们的模型如图1,接下来我们详细介绍模型。

图1 基于异构信息网络多关系嵌入的层次化意图和偏好进行推荐的模型框架

1.2 异构信息网络中基于特定关系的节点嵌入

首先我们将可观测的节点v∈V经过嵌入层Wv∈Rd×|V|得到低维嵌入v∈Rd。对于可观测的三元组eijr=(vi,vj,r),表示的是节点vi和节点vj存在边r连接,边r也可以称为关系。我们将其投影到对应的r关系语义空间中。在r关系语义空间中,节点vi和节点vj经过矩阵的映射后表示为:

其中dr表示在r关系语义空间中嵌入维度。两个节点的相关程度由欧几里德距离度量。欧几里德距离满足三角形不等式,所以自然保持了一阶和二阶的相关性,这种特定关系投影可以使有关系的节点彼此紧密地保持联系,也可以使无联系的节点远离。节点vi和节点vj在r关系空间的距离为:

1.3 关系感知的注意力层

因为不同关系具有不同的语义信息,即代表着节点的不同方面信息。在这一节我们希望捕捉不同关系对不同节点特征学习的不同影响程度。我们提出一个关系感知的注意力层来个性化融合节点在不同关系语义空间中的特征表达。节点v∈V经过注意力层融合得到:

其中ωr表示关系r对节点v∈V特征嵌入的注意力权重,为模型中可学习参数。最终,我们得到节点v基于多关系语义嵌入的个性化融合的最终特征表达h。具体的,用户类型节点u,商品类型节点x,类别类型节点c,分别对应hu、hx、hc。

1.4 层次化意图和偏好预测推荐

受文献[7-8]启发,我们根据推荐系统中类别-商品关系具有层次索引的这一特性来构建层次树。每层检索的过程我们称之为层次化用户意图和偏好。为了便于构建,在树中非叶节点的每一层,我们首先对类别信息随机排序,属于同一个类别的商品随机顺序地放在一起,如果一个商品属于多个类别,那么该商品会被随机地分配到其中一个类别。再利用我们学习到的节点嵌入向量重新聚类成一棵新树。其中非叶节点为粗粒度的类别概念,在树中作为商品的索引,叶节点为语料库中的商品,细粒度地表示用户在意图下的特定偏好。我们对用户的类别意图偏好预测为:

1.5 训练优化

我们使用贝叶斯个性化排序函数(Bayesian Person⁃alized Ranking Objective)[9]优化我们的模型,贝叶斯个性化排序优化的关键思想是使用户真正感兴趣的商品排在不感兴趣的商品的前面,即正样本概率大于负样本概率。所以我们为每一个正样本都采了一个负样本。在优化关系语义空间中的节点嵌入时,对于可观测的三元组,我们采了一个负样本,表示与vi不存在r关系。我们希望vi与正样本vj更靠近,与负样本更远离。我们的优化目标为:

其中λ1、λ2和λ3为正则化参数。我们采用Adam方式优化我们的模型。其中W*={Wv,Wr,Wa} 和q为我们模型中可学习参数。

2 实验

2.1 实验目的

在这一节中,我们主要介绍我们的实验设置和实验结果,我们的实验旨在回答以下问题:

(1)我们的方法是否比所有对比方法更好。

(2)我们提出的异构信息网络关系感知的嵌入模型是否优于非关系感知的嵌入模型。

(3)我们提出的层次化用户意图和偏好是否优于非层次化用户偏好的模型。

2.2 实验设置

为了验证我们提出的模型的有效性,我们在两个真实数据集上进行实验:

Douban Movie:这是一个从豆瓣网站上收集的电影领域的数据集,数据集中我们使用朋友关系、用户对电影的评分数据和电影类型信息,我们将电影类型信息作为类别信息。值得注意的是,虽然我们的模型只举例了三种类型节点,但是我们的模型可以扩展至更多类型节点及对应的更多类型关系。

Lastfm-2k:这是一个在线上音乐网站Last.fm 上用户收听音乐信息的数据集。数据集中包含朋友关系、用户收听艺术家信息、用户对艺术家的标签信息、艺术家标签信息。为了保持类别节点的统一性,我们将艺术家的标签信息作为类别信息。数据集的统计信息如表1 所示。

表1 数据集的统计信息

为了方便实验,我们首先过滤掉了交互数据小于5的用户和商品。对于每个用户而言,我们随机选取80%的交互数据作为训练集,剩余的20%的交互数据作为测试集。在训练集中,我们还随机选用了10%的交互数据作为验证集以调整我们的以及对比方法的模型参数,并对以下参数进行了以下调试设置:学习率α∈{0.1,0.01,0.001,0.0001},正则化参数λ*∈{0.1,0.01,0.001,0.0001},Dropout ∈{0.2,0.4,0.5},特征维度d=dr∈{60,80,100,120,140,150}。为了评估推荐模型的推荐性能,我们采用两种评估指标Recall 和MRR,Recall 衡量推荐的准确性。MRR 衡量推荐商品的排名,直观地,正样本xi的排名越高说明模型的推荐性能越好。计算公式如下:

其中pu,i表示正样本xi在模型为用户u推荐的前k个商品中的排名。Ι()∙表示如果正样本xi在前k个商品中,则返回1,否则返回0。

2.3 对比方法

我们将几种广泛使用和最新的推荐方法作为对比方法,如下所示:

(1)DCF(Deep Collaborative Filtering)[10]:DCF 通过边缘去噪堆叠自编码器(marginalized denoising stacked autoencoders)与矩阵分解相结合建模异构辅助信息学习节点嵌入并进行分类推荐。

(2)DHA(Deep Heterogeneous Autoencoders)[11]:作者提出深度异构自编码器建模异构辅助信息来解决协同过滤算法的数据稀疏性问题。

(3)BPRMF+TransE[12]:该方法结合了BPRMF 和TransE,其中TransE 建模异构信息网络学习节点的嵌入。

(4)PRP(PageRank with Priors)[13]:将用户-商品关系和其他异构辅助信息集成到一个统一的同构图中,然后以一个个性化的初始概率分布对每个用户进行PageRank。

(5)KA-MemNN[14]:本文利用用户-意图-商品三元关系提出键组记忆神经网络来层次化用户意图偏好进行序列推荐。

我们设置DCF 和DHA 的自编码器的隐藏层数L=4。我们也按照原文中的数据格式要求对DHA 的输入数据按照时间戳排序输入处理。输入数据包括用户、商品、类别及交互信息。因为我们不使用图片数据,所以在BPRMF+TransE 和PRP 中,我们移除了图片(Vi⁃sual Knowledge)处理模块。

2.4 实验结果

我们实验结果如表2 和表3 所示,可以看出:

表2 所有方法在两个数据集上的MRR@20 和MRR@50的实验结果

表3 所有方法在两个数据集上的Recall@20 和Recall@50的实验结果

(1)我们的方法优于DCF、DHA 和KA-MemNN。是因为我们不仅基于特定关系学习异构信息网络中的节点嵌入,我们还采用关系感知的注意力层融合多关系语义空间中节点特征表达。

(2)DHA 在两个数据集上都优于DCF。是因为DCF 将所有异构信息的特征向量进行拼接的方式得到的用户特征表达没有DHA 使用自编码器学习融合异构信息的方式更具有表达力。KA-MemNN 在两个数据集上都优于DCF 和DHA,说明层次化用户意图和偏好优于扁平化用户偏好的学习方式。

(3)BPRMF+TransE 和PRP 优于DCF、DHA 和KA-MemNN。说明异构信息网络嵌入可以更合理地捕获异构信息语义特征来提高推荐质量,而不是以特征工程的方式直接编码结构信息。

(4)我们的方法优于BPRMF+TransE。BPRMF+TransE 使用TransE 对节点进行嵌入,并结合BPRMF联合学习用户偏好,但是忽略了节点和链接关系的异构性。没有像我们的方法一样,我们基于特定关系语义建模异构信息网络中关系的异构性并个性化融合各语义空间中节点特征表达,另外我们按照用户自然的交互过程建模层次化用户意图和偏好。

2.5 消融实验

在这一小节,我们希望验证我们提出的基于关系感知的嵌入的模型优于在公共特征空间嵌入的模型。我们还希望验证我们层次化用户意图和偏好优于扁平化用户偏好的推荐性能。所以我们设置了以下对比实验:

HIP-HINMRE-1:我们移除了多关系语义嵌入空间模块,替换的操作是将异构关系和结构化知识集成到一个统一的同构图中。

HIP-HINMRE-2:我们移除了关系感知的注意力层模块,替换的操作是直接对各个关系语义嵌入空间中节点的特征表达逐点相加。

HIP-HINMRE-3:我们移除了层次树模块,替换的操作是直接对整个商品集计算sux并进行排序推荐。

消融实验结果如表4 和表5 所示,可以看出与HIP-HINMRE-1 相比,我们的方法在两个数据集上表现都好,因为我们考虑了关系的异构性进行节点嵌入,与HIP-HINMRE-2 相比,我们的方法在两个数据集上表现都好,因为我们的方法捕捉了不同关系对最终节点嵌入的影响程度。实验证明了我们多关系语义嵌入空间和关系感知注意力层的有效性。与HIPHINMRE-3 相比,我们的方法在两个数据集上表现都好,因为我们的方法层次化用户意图偏好,并基于特定意图偏好预测用户对商品的偏好。实验证明了层次化用户意图和偏好的有效性。

表4 所有消融实验方法在两个数据集上的MRR@20 和MRR@50 的实验结果

表5 所有消融实验方法在两个数据集上的Recall@20 和Recall@50 的实验结果

2.6 参数分析实验

我们对嵌入维度d 在验证集上做了超参数分析实验,结果如图2 所示,可以看出,模型的性能随着d的增大而逐渐提升。但在Lastfm-2k 数据集上,当d>140时模型性能出现了一点下降,最后趋于稳定。表明随着d的增大模型可以捕捉更复杂特征嵌入,但过度增大d可能会出现过拟合问题导致模型性能出现下降。

图2 当嵌入维度d 取不同值时,我们的方法在两个数据集上的MRR@20和Recall@20的实验结果变化

3 结语

本文提出基于异构信息网络多关系嵌入的层次化意图和偏好进行推荐的模型,细粒度地学习网络中节点基于特定关系的特征表达。利用一个关系感知的注意力层来个性化融合异构信息。利用层次树来层次化建模用户意图和偏好,充分利用用户的结构化决策模式进行用户偏好学习,从而提升模型的推荐性能。我们通过在真实的两个数据集上进行大量的实验来验证我们提出的算法的有效性。

猜你喜欢

层次化异构类别
离散异构线性多智能体系统的输出一致性
试论同课异构之“同”与“异”
一起去图书馆吧
凝聚与铺张——孙绍振教授《以丑、呆为美》两岸同课异构教学观摩后记
简析基于概率预测的网络数学模型建构
基础层建设对建立大学生社会主义核心价值观的影响
物理复习课堂中复习内容的设计*
语文有效作业的设计策略探研
选相纸 打照片