【技术实现步骤摘要】
一种用户感知的知识图谱推荐系统及方法
[0001]技术邻域
[0002]本专利技术涉及一种用户感知的知识图谱推荐系统及方法,属于计算机邻域。
技术介绍
[0003]随着互联网时代的来临,互联网上的信息数量以指数级上升,因而产生了“信息过载”现象,怎么满足用户迅速而准确的获取信息已经是摆在人们面前的一大困难。常用的搜索引擎因为无法针对偏好为用户提供个性化的搜索服务,导致其推荐能力尚有不足。实际上,由于年龄段、教育水平和生活环境等因素的不同,不同的用户具有不同的特点,因此希望系统可以提供个性化搜索服务给用户提供其迫切需求的信息。因此,推荐系统的出现解决了这个问题。作为一种信息过滤系统,推荐系统具有以下两个最显著的特性:
[0004]·
主动化。从用户角度考虑,门户网站和搜索引擎都是解决信息过载的有效方式,但它们都需要用户提供明确需求。而推荐系统不需要用户提供明确的需求,而是通过分析用户和物品的交互数据,对用户和物品进行建模,从而主动为用户推荐他们感兴趣的信息。
[0005]·
个性化。推荐系统能够更好的发掘长尾信息,即将冷门物品推荐给用户。热门物品通常代表绝大多数用户的兴趣,而冷门物品往往代表一小部分用户的个性化需求。在电商平台火热的时代,由冷门物品带来的营业额甚至超过热门物品,发掘长尾信息是推荐系统的重要研究方向。
[0006]推荐系统旨在解决信息超载问题和根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户。最流行的推荐技术之一是协同过滤,它简单来说是利用某兴趣相投和拥有共同 ...
【技术保护点】
【技术特征摘要】
1.一种用户感知的知识图谱推荐系统,其特征在于,包括数据预处理层、图构建层、物品嵌入层、用户嵌入层以及结果输出层,其中:将原始的用户与物品的交互数据记录Y={(u
i
,v
j
,b
k
)|u
i
∈U,v
j
∈V,b
k
∈B}输入数据预处理层;由数据预处理层将数据处理成三元组(物品1,关系,物品2)或者(物品,属性,属性值)的形式进行存储,同时,将数据处理成含有时间戳的用户行为数据(用户,物品,行为,交互时间),其中,u
i
为第i个用户的用户交互表示,v
j
为第j个物品的物品交互表示,b
k
为第i个用户对第j个物品做出的第k个行为;图构建层基于处理为(用户,物品,行为,交互时间)的数据为每个用户基于行为类型的数量l构建|B|个用户行为图,|B|=l+1,则为第i个用户构建的一组用户行为图表示为行为集合B中不同行为之间的顺序是基于语义空间中行为和行为购买之间的距离定义;并且,由图构建层基于三元组(物品1,关系,物品2)或者(物品,属性,属性值)为每个物品构建物品知识图谱,一个物品恰好对应知识图谱中一个实体的情况,即{(v,e)|v∈V,e∈E}},e表示知识图谱中的一个实体,v表示物品的节点嵌入表示;将用户行为图输入用户嵌入层,用户嵌入层先对用户的不同用户行为图使用图形编码器对用户的行为进行编码后,将当前用户行为图与前一个用户行为图进行对比,基于对比学习获得表示用户不同行为模式的嵌入表示后,对所有嵌入表示进行融合,获得一个统一的嵌入表示来表示用户的行为;最后,用户嵌入层将表示用户行为的嵌入表示和当前用户交互表示以不同方式聚合,获得用户的最终用户嵌入表示;将物品知识图谱输入物品嵌入层,物品嵌入层先利用图卷积网络层进行节点及其邻域信息的表示,图卷积网络层递归地传播来自节点的邻居的嵌入以更新某个节点的邻域信息,并采用用户与物品的交互数据来表示传播期间每个邻居的权重;随后,图卷积网络层输出的邻域信息输入到多头自注意力网络层,进行知识图谱节点信息的深度挖掘,挖掘节点与节点之间的深度关系,最后获得节点的表示,即为商品的最终物品嵌入表示;用户的最终用户嵌入表示以及商品的最终物品嵌入表示输入结果输出层,由结果输出层利用预测函数获得预测分数。2.如权利要求1所述的一种用户感知的知识图谱推荐系统,其特征在于,所述用户与物品的交互数据以及知识图谱数据通过数据库的常规数据进行获取。3.如权利要求1所述的一种用户感知的知识图谱推荐系统,其特征在于,所述结果输出层输出的预测分数是预测每个用户会点击某个商品的概率,基于概率向用户推荐对应的商品作为展示结果。4.一种用户感知的知识图谱推荐方法,其特征在于,包括以下步骤:S100、原始数据处理:获取原始的用户与物品的交互数据记录Y={(u
i
,v
j
,b
k
)|u
i
∈U,v
j
∈V,b
k
∈B},按照构建知识图谱及用户行为图需要的格式处理数据,u
i
为第i个用户的用户交互表示,v
j
为第j个物品的物品交互表示,b
k
为第i个用户对第j个物品做出的第k个行为,其中,为构建物品知识图谱,将交互数据记录Y处理成三元组(物品1,关系,物品2)或者(物品,属性,属性值)的形式进行存储;为构建用户行为图,将交互数据记录Y处理成含有时间戳的用户行为数据(用户,物品,行为,交互时间);
S200、构建用户行为图:在步骤S100处理好原始数据之后,根据不同的用户在不同时间的行为,基于行为类型的数量l为每一个用户构造|B|个用户行为图,|B|=l+1,其中,对于第i个用户而言,第t个行为图被定义为行为图被定义为其中,(b1,b2,
…
,b
c
)作为用户的行为序列是按照时间序列进行排序的,为第i个用户构建的一组用户行为图表示为S300、构建物品知识图谱:在步骤S100处理好原始数据之后,利用物品的信息三元组构建物品知识图谱,利用物品知识图谱对用户和物品的交互记录之外的物品的附加信息进行表达,一个物品对应物品知识图谱中一个实体的情况,即{(v,e)|v∈V,e∈E}},e表示物品知识图谱中的一个实体,v表示物品的节点嵌入表示;S400、分别对用户的不同用户行为图使用图形编码器进行编码后,将当前用户行为图与前一个用户行为图进行对比,利用对比学习获取差异;在获得表示用户不同行为模式的嵌入表示后,对表示用户不同行为模式的嵌入表示进行融合,获得统一的嵌入表示来表示用户的行为;最后,将统一的嵌入表示和用户交互表示以不同方式聚合,形成用户的最终用户嵌入表示,具体包括以下步骤:S401、对用户行为图进行编码:分别对用户的不同用户行为图使用图形编码器对用户的行为进行编码,对于第i个用户而言,其第t个行为图被编码表示为则有:其中,h表示用户行为的嵌入维度;g
t
(
·
)表示编码器;S402、获取不同行为模式:将当前用户行为图与前一个用户行为图进行对比获取差异,具体地,以InfoNCE作为学习目标,学习用户行为图之间的差异;对于第i个用户,取出两个相邻的用户行为图和分别指定g
t
‑1(
·
)和g
t
(
·
)作为和的编码器,得到两个行为图嵌入分别表示为:分别表示为:则是学习目标InfoNCE中的负样本;按照GCC中的对比学习设置,使用编码器g
t
‑1(
·
)对进行编码,得到行为图嵌入进行编码,得到行为图嵌入进行编码,得到行为图嵌入是学习目标InfoNCE中的正样本;S403、行为融合:在通过步骤S402获得表示用户不同行为模式的行为图嵌入后,对行为图嵌入进行融合,获得一个统一的嵌入b
i
来表示用户的行为;S404、聚合用户交互表示u
i
及其行为表示b
i
作为用户的最终用户嵌入表示,用户...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。