一种基于图结构的系统过滤和降噪的智能推荐方法与流程

未命名 10-08 阅读:82 评论:0


1.本发明涉及计算机技术领域,特别是涉及一种基于图结构的系统过滤和降噪的智能推荐方法。


背景技术:

2.在信息化时代,通过利用信息化、智能化、网络化等手段,可以提高工作效率和质量,并可以大大加快矛盾处理的速度,对已经发生的矛盾进行及时、公正、合理的处理,更好地恢复正常的社会秩序和关系。基于图的推荐系统使用邻域信息来推断用户/项目嵌入,其中邻接矩阵定义了邻域结构。高阶协同信号通常通过堆叠多层来聚合。然而,邻域信息的质量取决于邻接矩阵的定义。广泛采用的邻接矩阵建立在用户-项目交互矩阵上,但是基于pagerank算法的图结构推荐系统容易受到异常节点的干扰,从而影响推荐结果的准确性。


技术实现要素:

3.本发明提供了一种基于图结构的系统过滤和降噪的智能推荐方法,以解决现有技术中图结构推荐方法准确率低的问题。
4.本发明提供了一种基于图结构的系统过滤和降噪的智能推荐方法,所述方法包括:
5.基于原始数据中的用户和项目的特征来构建用户-项目交互图;
6.使用图嵌入算法将用户和项目的特征转化为特征向量;
7.使用图卷积神经网络对用户和项目的向量进行卷积操作,获得进一步的特征表达,并训练得到图结构模型,然后基于所述图结构模型来计算每个节点的权重,进而得到节点的推荐列表;
8.通过所述图结构模型对所述推荐列表进行过滤和降噪,以获得更准确的推荐结果,并将推荐结果进行推送。
9.可选地,基于原始数据中的用户和项目的特征来构建用户-项目交互图之前,所述方法还包括:对所述原始数据进行数据清洗、数据分割和特征提取处理。
10.可选地,对所述原始数据进行数据清洗,包括:从所述原始数据中去除异常数据、空值数据和重复数据;
11.对所述原始数据进行数据分割,包括:将所述原始数据的数据集分为训练集和测试集,其中,训练集用于训练图结构模型,测试集用于评估所述图结构模型的性能;
12.对所述原始数据进行特征提取,包括:根据所述原始数据的数据集的特点,提取出具有设定意义的特征,并构建特征向量。
13.可选地,所述使用图嵌入算法将用户和项目的特征转化为特征向量,包括:
14.在图结构模型中,将用户和项目作为节点,将用户和项目之间的交互作为边,并通过学习来得到节点嵌入和边嵌入表示;
15.其中,节点嵌入是将节点映射到低维空间,旨在保留节点之间的相似性,边嵌入是
通过用户和项目之间的交互得到的节点之间的相似性,即是将边映射到低维空间的过程,以表示边的重要性和相似性。
16.可选地,通过graphsage算法将每个节点的邻居节点的嵌入表示聚合起来,作为当前节点的嵌入表示。
17.可选地,所述方法还包括:通过共现矩阵来表示边的重要性和相似性,其中,在共现矩阵中,每个行和列代表一个节点,而矩阵中的每个元素则代表相应节点之间的边的权重,对于一个给定的用户,通过统计该用户与所有项目之间的交互次数,然后将这些次数作为权重填入共现矩阵中,同样地,对于一个给定的项目,通过统计所有用户与该项目之间的交互次数,并将这些次数作为权重填入共现矩阵中,以计算得到不同边的重要性和相似性。
18.可选地,所述图结构模型采用了diffnet++架构,所述diffnet++架构包括嵌入层、融合层、影响力和兴趣的扩散层以及评分预测层,并通过所述嵌入层输出用户和项目的自由嵌入,由所述融合层融合特征和自由嵌入,在所述扩散层中设置了多层次注意力结构,以通过所述多层次注意力结构有效扩散高阶社交和兴趣网络,并在所述扩散过程稳定后,通过所述评分预测层预测每个未观察到的用户-项目对的偏好得分。
19.可选地,所述嵌入层是利用相应的自由向量来对用户和项目进行编码,设p=rm×d表示d维的用户的自由潜嵌入矩阵,q=rn×d表示d维的项目的自由潜嵌入矩阵,给定用户a的一个热点表示,m为自由潜嵌入矩阵的行,n为自由潜嵌入矩阵的列,嵌入层执行索引选择并输出自由用户潜在嵌入pa或嵌入qi,即用户自由嵌入矩阵p的第a行转置相应地,嵌入qi是项目i自由嵌入矩阵q的第i行转置;
20.所述融合层是对于每个用户a,以pa和她的相关特征向量xa为输入,输出一个用户融合嵌入从不同类型的输入数据中捕捉用户的初始兴趣;
21.所述扩散层是通过将每个用户a的融合嵌入和每个项目i的融合嵌入的输出送入影响力兴趣扩散层,通过多个扩散层来递归地模拟该用户的潜在偏好和项目的潜在偏好在用户-项目兴趣图谱gi中的动态传播,进行层级卷积,并将社会影响强度和兴趣强度看作是节点级的权重,基于该权重模拟每个用户如何平衡每个图中的不同邻居节点。
22.可选地,所述diffnet++架构采用的算法矩阵为:
23.设定所述算法矩阵是将第k层的用户和项目嵌入更新到k+1层,设则所述算法矩阵为:h=mlp1(uk,vk),其中η表示第k+1层中项目i与用户a的矩阵值,r表示h为一个n行m列的矩阵,m为自由潜嵌入矩阵的行,n为自由潜嵌入矩阵的列,uk为第k层用户a的融合嵌入,vk为第k层项目i的融合嵌入,h
(k+1)
表示第k+1层的用户和项目嵌入,h表示多层感知机(multi-layerperceptron,mlp)对输入用户u和v的组合进行处理后得到的输出结果。
24.可选地,通过所述图结构模型对所述推荐列表进行过滤和降噪,包括:
25.通过预训练的增强管道框架graphda来对所述推荐列表进行过滤和降噪,其中,所述增强管道框架graphda设置在所述图结构模型内。
26.本发明有益效果如下:
27.相对于现有的基于内容和协同过滤的推荐系统只能考虑单一的关系,难以处理多种类型的数据和复杂的用户行为,从而造成图结构推荐方法准确率低的问题,本发明提供
的基于图结构的推荐系统由于可以同时考虑多种类型的节点和多种类型的关系,能够更全面地捕捉用户行为和项目特征,使用了图邻接矩阵,它包含了用户-用户和项目-项目的相关性,以及一个适当设计的用户-项目交互矩阵,以平衡所有用户之间的交互数量,从而提高推荐的准确性。同时,通过使用图卷积神经网络等深度学习技术,可以学习更丰富的特征表达,进一步提高推荐效果。此外,系统过滤和降噪可以减少推荐系统的干扰和噪声,提高推荐的质量和用户体验。所以本发明提供的基于图结构的系统过滤和降噪的智能推荐系统具有很高的实用价值和应用前景。
28.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
29.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
30.图1是本发明第一实施例提供的基于图结构的系统过滤和降噪的智能推荐系统总体过程流程示意图;
31.图2是本发明第一实施例提供的带有玩具示例的动机图;
32.图3是本发明第一实施例提供的graphda的工作流程图。
具体实施方式
33.本发明实施例针对现有图结构推荐方法准确率低的问题,通过设置使得本发明的图结构的推荐系统可以同时考虑多种类型的节点和多种类型的关系,因此使得本发明能够更全面地捕捉用户行为和项目特征,另外本发明使用了图邻接矩阵,它包含了用户-用户和项目-项目的相关性,以及一个适当设计的用户-项目交互矩阵,以平衡所有用户之间的交互数量,从而提高推荐的准确性。同时,通过使用图卷积神经网络等深度学习技术,可以学习更丰富的特征表达,进一步提高推荐效果。此外,系统过滤和降噪可以减少推荐系统的干扰和噪声,提高推荐的质量和用户体验。所以本发明提供的基于图结构的系统过滤和降噪的智能推荐系统具有很高的实用价值和应用前景。以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
34.具体来说,基于图的推荐系统使用邻域信息来推断用户/项目嵌入,其中邻接矩阵定义了邻域结构。高阶协同信号通常通过堆叠多层来聚合。然而,邻域信息的质量取决于邻接矩阵的定义。广泛采用的邻接矩阵建立在用户-项目交互矩阵上,可能会遇到噪声、稀疏性、偏差和长尾问题。还存在如下问题。一是效率问题:基于邻接表或邻接矩阵的图存储表示在大规模的图数据上会导致存储空间和计算复杂度的急剧增加,影响系统的效率。二是精度问题:基于pagerank算法的图结构推荐系统容易受到异常节点的干扰,从而影响推荐结果的准确性。三是稳定性问题:基于社区发现算法的图结构推荐系统容易受到数据波动和结构变化的影响,从而导致推荐结果的不稳定性。四是可扩展性问题:传统的图算法在处
理大规模图数据时存在可扩展性问题,无法支持实时性和高并发性的需求。
35.对此,本发明第一实施例提供了一种基于图结构的系统过滤和降噪的智能推荐方法,参见图1,该方法包括:
36.s101、基于原始数据中的用户和项目的特征来构建用户-项目交互图;
37.需要说明的是,在步骤s101之前,所述方法还包括:对所述原始数据进行数据清洗、数据分割和特征提取处理。
38.具体来说,本发明实施例中对所述原始数据进行数据清洗,包括:从所述原始数据中去除异常数据、空值数据和重复数据;
39.对所述原始数据进行数据分割,包括:将所述原始数据的数据集分为训练集和测试集,其中,训练集用于训练图结构模型,测试集用于评估所述图结构模型的性能;
40.对所述原始数据进行特征提取,包括:根据所述原始数据的数据集的特点,提取出具有设定意义的特征,并构建特征向量;
41.最后基于所提取出的特征来构建得到用户-项目交互图。
42.s102、使用图嵌入算法将用户和项目的特征转化为特征向量;
43.在图结构模型中,将用户和项目作为节点,将用户和项目之间的交互作为边,并通过学习来得到节点嵌入和边嵌入表示;其中,本发明实施例中的节点嵌入是将节点映射到低维空间,旨在保留节点之间的相似性,边嵌入是通过用户和项目之间的交互得到的节点之间的相似性,即是将边映射到低维空间的过程,以表示边的重要性和相似性。
44.具体实施时,本发明实施例中的节点嵌入表示学习,在基于图神经网络的推荐系统中,将用户和项目视为节点,将用户和项目之间的交互视为边。为了更好地表示节点和边的特征,需要对节点和边进行嵌入表示学习。
45.节点嵌入表示学习是将节点映射到低维空间的过程,旨在保留节点之间的相似性。在该推荐系统中,节点可以表示为用户或项目,节点之间的相似性可以通过用户和项目之间的交互得到。
46.本发明实施例采用图神经网络中的graphsage算法,将节点的嵌入表示学习为向量形式。具体来说,graphsage算法将每个节点的邻居节点的嵌入表示聚合起来,作为当前节点的嵌入表示。聚合过程可以采用平均池化、最大池化或lstm等方法。边嵌入表示学习是将边映射到低维空间的过程,旨在表示边的重要性和相似性。在该推荐系统中,边可以表示为用户和项目之间的交互,边的重要性可以通过用户和项目之间的交互次数算出边的重要性。边的重要性可以用不同的方法进行计算,其中一个常用的方法是基于共现矩阵的方法。
47.在共现矩阵中,每个行和列代表一个节点,而矩阵中的每个元素则代表相应节点之间的边的权重。对于一个给定的用户,本发明实施例可以统计他与所有项目之间的交互次数,然后将这些次数作为权重填入共现矩阵中相应的位置。同样地,对于一个给定的项目,本发明实施例可以统计所有用户与它之间的交互次数,并将这些次数作为权重填入共现矩阵中相应的位置。这样,本发明实施例就可以得到一个包含用户和项目之间交互信息的共现矩阵。
48.接下来,本发明实施例需要使用这个共现矩阵来计算每个节点之间的相似度。一种常用的计算方式是通过余弦相似度来度量节点之间的相似度。余弦相似度可以通过式1
进行计算:
49.其中,sum(i,j)表示节点i和节点j之间的相似度,ai和aj分别是节点i和节点j在共现矩阵中的向量表示,||ai||和||aj||则分别是向量ai和aj的模长。
50.通过计算节点之间的相似度,本发明实施例可以建立一个基于相似度的图结构,其中每个节点代表一个用户或一个项目,边的权重代表用户和项目之间的交互次数。在这个图结构中,本发明实施例可以使用基于图的推荐算法来进行推荐。具体来说,本发明实施例可以使用基于图的随机游走算法来计算每个节点的权重,并根据节点的权重来进行推荐。
51.基于图的随机游走算法可以通过以下步骤来实现:
52.(1)从起始节点开始,随机选择一个邻居节点进行访问;
53.(2)重复上述过程,直到达到预设的步数或者达到终止条件;
54.(3)根据访问的次数来计算节点的权重;
55.(4)根据节点的权重进行推荐。
56.通过使用基于图的随机游走算法,本发明实施例可以考虑到节点之间的高阶交互关系,从而提高推荐的准确性和覆盖率。
57.s103、使用图卷积神经网络对用户和项目的向量进行卷积操作,获得进一步的特征表达,并训练得到图结构模型,然后基于所述图结构模型来计算每个节点的权重,进而得到节点的推荐列表;
58.具体实施时,本发明实施例中的图卷积神经网络具体包括:
59.gnn与推荐系统:在基于图结构的系统过滤和降噪的智能推荐系统中,使用图卷积神经网络(gnn),即图神经网络可以有效地提高模型的推荐效果。下面本发明实施例将详细介绍如何使用图神经网络对用户和项目的向量进行卷积操作,以获得更丰富的特征表达。
60.首先,本发明实施例需要将用户和项目的向量表示作为图的节点输入。对于每个用户或项目,本发明实施例将其向量表示作为一个节点输入到图中,并通过建立用户和项目之间的边来表示它们之间的关联关系。这样,本发明实施例就可以将用户和项目之间的关系表示为一个图,其中节点表示用户或项目,边表示它们之间的交互行为或相似度等。
61.接下来,本发明实施例可以利用图神经网络对这个图进行卷积操作,以获得更丰富的特征表达。图神经网络的基本思想是将卷积操作推广到图上,将卷积操作的传递方式由局部传递改为全局传递,并根据图结构来调整卷积核的参数,以实现特征的聚合和传递。
62.具体地,本发明实施例可以使用基于邻居聚合的卷积操作,通过聚合每个节点的邻居节点来更新节点的特征表示。对于每个节点,本发明实施例首先将其邻居节点的特征进行聚合,然后将聚合后的特征作为该节点的新特征表示。聚合操作可以使用简单的加权平均或更复杂的邻居注意力机制来实现。
63.经过一定次数的卷积操作后,本发明实施例就可以得到每个节点的更丰富的特征表示,这些特征表示可以用于推荐任务中的分类、排序等任务。
64.在实际实现中,本发明实施例可以使用各种深度学习框架(如tensorflow、pytorch等)中提供的图神经网络库来实现图神经网络。同时,本发明实施例还需要对模型的各个超参数(如图卷积层数、邻居聚合方式、节点向量维度等)进行调优,以获得更好的推
荐效果。
65.本发明实施例中的社会化推荐使利用用户之间的社交关系来预测用户未知的偏好,本发明实施例通过对用户偏好的预测可进一步推测用户可能的矛盾点,可以缓解协同过滤推荐中的数据稀疏问题。早期的方法依赖于利用每个用户的一阶社交邻居兴趣来更好地建模用户,未能从全局社交网络结构来建模社交影响力扩散过程。
66.用于社会化推荐的神经影响扩散网diffnet对每个用户的递归社交扩散过程进行建模,从而在用户嵌入过程中捕获隐藏在高阶社交网络中的影响力扩散。尽管diffnet具有优越的性能,但由于用户在用户社交网络和用户-项目兴趣网络中都起着核心作用,仅对社交网络中的影响力扩散过程进行建模会忽略用户在用户-项目兴趣网络中潜在的协作兴趣。为此,本发明实施例采用了diffnet++,一种diffnet的改进算法,在统一框架中对神经影响扩散和兴趣扩散进行建模。diffnet++将社交推荐重构为一个以社交网络和兴趣网络为输入的异质图,通过同时注入用户-项目图中反映的高阶用户潜在兴趣和用户-用户图中反映的高阶用户影响力来进行用户嵌入学习。通过从3个方面迭代聚合每个用户的嵌入来实现:用户的前一次嵌入、来自社交网络的社交邻居的影响聚合、来自用户-项目兴趣网络的项目邻居的兴趣聚合。设计了一个多层次注意力网络,从这三个方面学习如何聚合用户嵌入。
67.本发明中的diffnet++的架构包含四个主要部分:嵌入层、融合层、影响力和兴趣扩散层以及评分预测层。具体来说,通过获取相关的输入,嵌入层输出用户和项目的自由嵌入,而融合层融合内容特征和自由嵌入。在影响力和兴趣扩散层中,精心设计了一种多层次注意力结构,可以有效地扩散高阶社交和兴趣网络。在扩散过程稳定后,输出层预测每个未观察到的用户-项目对的偏好得分。
68.嵌入层:它用相应的自由向量表示对用户和项目进行编码。设p=rm×d,q=rn×d表示d维的用户和项目的自由潜嵌入矩阵。给定用户a的一个热点表示,嵌入层执行索引选择并输出自由用户潜在嵌入pa,即用户自由嵌入矩阵p的第a行转置。类似地,项目i的嵌入qi是项目自由嵌入矩阵q的第i行转置。
69.融合层:对于每个用户a,融合层以pa和她的相关特征向量xa为输入,输出一个用户融合嵌入从不同类型的输入数据中捕捉用户的初始兴趣。本发明实施例将融合层建模为:
70.其中w1是变换矩阵,g(x)是变换函数。为了避免混淆,本发明实施例省略了偏差项。该融合层可以推广许多典型的融合操作,例如通过将w1设置为单位矩阵,将g(x)设置为单位函数的级联操作
71.类似地,对于每个项目i,融合层将项目嵌入建模为其自由潜在向量qi和特征向量yi之间的函数如式3:
72.影响力和兴趣的扩散层:通过将每个用户a的融合嵌入和每个项目i的融合嵌入的输出送入影响力兴趣扩散层,这些层递归地模拟该用户的潜在偏好和项目的潜在偏好在图g中的动态传播,并进行层级卷积。详细来说,在每一层k+1处,通过将用户a的嵌入和项目i的嵌入从上一层k作为输入,这些层递归地输出和的更新嵌入,并进行
扩散操作。这个迭代步骤从k=0开始,当递归过程达到预先定义的深度k时停止。由于每个项目只出现在用户-项目兴趣图谱gi中,在下文中,本发明实施例将首先介绍如何更新项目嵌入,然后是具有影响力和兴趣扩散的用户嵌入。
73.对于每个项目i,给定其第k层嵌入本发明实施例对gi的第(k+1)层上的更新项目建模为:
[0074][0075][0076]
其中,ri=[a|r
ia
=1]是对项目i进行评分的用户集。是用户a的第k层嵌入.是项目i在用户项目兴趣图gi中来自其邻居用户的聚合嵌入,表示聚合权重。在获得第k层的聚合嵌入后,每个项目的更新嵌入是对聚合的邻居嵌入和前一层k项嵌入的融合。事实上,本发明实施例尝试了不同种类的融合函数,包括拼接函数和添加函数,发现添加函数总是显示出最好的性能。因此,本发明实施例在公式(5)中使用添加函数作为融合函数。
[0077]
在项目邻居聚合函数中,公式(4)显示了用户a对项目i的权重。一个想法是用均值池操作聚合i的邻居用户的嵌入,即:然而,它忽略了用户的不同兴趣权重,因为不同用户的重要性值在项目表示中是不同的。因此,本发明实施例使用注意力网络来学习公式(4)中的注意力权重为:
[0078][0079]
其中,多层感知器(mlp)用于学习节点注意力权重,以及第k层的相关用户和项目嵌入。之后,本发明实施例用以下方法对注意力权重进行归一化:
[0080][0081]
具体来说,就是使用指数函数来确保每个注意力权重大于0。
[0082]
对于每个用户a,让表示她在第k层的潜在嵌入。由于用户在社交网络gs和兴趣网络gi中都扮演着核心角色,除了其自身的潜在嵌入外,其在第k+1层的更新嵌入受两个图的影响:社交网络gs中的影响扩散图和兴趣网络g i中的影响扩散图。表示来自社会邻居的影响扩散的聚合嵌入。
[0083]
表示来自k+1层感兴趣的项模邻居的聚合兴趣扩散的嵌入。然后,每个用户更新的嵌入被建模为:
[0084][0085][0086][0087]
其中,公式8显示了每个用户如何通过融合影响力扩散聚合和兴趣扩散聚合
以及用户自己在上一层的嵌入来更新她的潜在嵌入。由于每个用户同时出现在社交图和兴趣图中,公式9和公式10分别对来自两个图的影响扩散聚合和兴趣扩散聚合进行建模。
[0088]
具体来说,表示社交网络中第k+1层的用户b对a的社会影响力,表示兴趣网络中第k+1层的项目i对用户a的吸引力。
[0089]
除了用户和项目嵌入之外,上述三个方程中还有三组权重β、α、γ。这三组权重自然呈现出两层的多层次结构。具体来说,社会影响强度和兴趣强度可以被看作是节点级的权重,它模拟了每个用户如何平衡每个图中的不同邻居节点。是图层权重,通过将节点级注意力的聚合送入公式8,它可以学习融合和聚合来自不同图的信息。具体来说,图层权重很重要,因为它们模拟了每个用户如何平衡社会影响和历史记录来进行用户嵌入。不同的用户各不相同,有些用户更有可能被社会网络所左右,而其他用户的兴趣则相当稳定。因此,图注意层中的权重对于每个用户来说也需要进行个人调整。
[0090]
由于这三组权重代表了一个多层次的结构,因此本发明实施例使用一个多层次的注意网络来模拟注意权重。具体来说,图注意网络被设计为在更新a与不同图的嵌入时学习每个方面的贡献权重,即公式9、10中的和而节点注意网络被设计为分别学习每个社会图和每个兴趣图中的注意权重。具体来说,社会影响得分的计算方法如下:
[0091][0092]
在上式中,社会影响强度将第k层相关的两个用户的嵌入作为输入,并将这些特征送入mlp,学习特征之间的复杂关系,进行社会影响强度学习。为了避免混淆,本发明实施例在下文中省略了所有注意力模型的归一化步骤,因为它们都有类似的形式,如公式7所示。同样,本发明实施例通过将相关的用户嵌入和项目嵌入作为输入,计算出兴趣影响得分
[0093][0094]
在获得两组节点注意力权重后,将节点注意力权重的输出送入图注意力网络,本发明实施例可以将的图注意力权重建模为:
[0095][0096][0097]
预测层:经过k层的迭代扩散过程,当k=[0,1,2,

k]时,本发明实施例得到u、i、和的嵌入集。然后,将每个用户a的最终嵌入表示为:将用户在各层的嵌入连接起来。同理,每个项目i的最终嵌入为:将预测评分建模为最终用户与项目嵌入之间的内积:
[0098][0099]
如果本发明实施例使用k层嵌入,基于gcn的方法被证明会随着k的增加而出现过度平滑的问题。为了解决过度平滑的问题,本发明实施例采用预测层作为lr-gccf模型,该
模型在用户-项目二元图结构上性能表现最好。
[0100]
训练模型
[0101]
本发明实施例使用基于成对排序的损失函数进行优化,该函数广泛用于隐式反馈:
[0102][0103]
对于所有可训练参数,本发明实施例用均值为0、标准差为0.01的高斯分布对它们进行初始化。此外,本发明实施例没有刻意调整卷积层中每个嵌入大小的尺寸,所有嵌入都保持相同的尺寸。
[0104]
diffnet++的矩阵公式
[0105]
本发明实施例所采用的diffnet++模型的关键思想是精心设计影响力和兴趣扩散层。事实上,这部分可以以矩阵形式计算。下面,本发明实施例将展示如何使用矩阵操作将第k层的用户和项目嵌入更新到k+1层。设表示下式中注意项聚合权重的矩阵表示:
[0106]
h=mlp1(uk,vk)
ꢀꢀꢀ
(17)
[0107]
在用户端,给定公式8,让表示社交网络(公式9)和兴趣网络(公式10)的关注权重矩阵,即节点关注层的输出。本发明实施例用来表示公式13和公式14中多层次网络的注意权重矩阵。所有这三个注意矩阵的计算方法与上面所示类似。
[0108]
s104、通过所述图结构模型对所述推荐列表进行过滤和降噪,以获得更准确的推荐结果,并将推荐结果进行推送。
[0109]
具体来说,本发明实施例是使用图结构信息对推荐列表进行过滤和降噪,获得更准确的推荐结果。使用协同过滤技术进行过滤,graphda技术进行降噪。graphda包括以下两个步骤:1.预训练步骤推导出用户/项目的嵌入;2.利用嵌入来生成用户-项目组件、用户-用户组件和项目-项目组件的前k邻节点,增强的邻接矩阵被来重新训练图的编码器。
[0110]
要正确设计一个更好的邻接矩阵是很有挑战性的。一些相关的蒸馏方法为图建模学习了一个较小但有用的图数据。然而,与蒸馏方法的一个显著区别是,gcf利用用户和项目id作为输入,因此现有的图压缩工作并不适用于本发明实施例的gcf设置。此外,这些提炼方法假设特征是可用的,而用户的特征有时由于隐私限制而无法获得。
[0111]
由于推荐图中的关系可以是各种各样的,如果使用一个图来详细描述所有这些关系,这个图可能会太复杂而无法处理。为解决这个问题,本发明实施例引入预训练的思想来逐步处理复杂的图。基于分而治之的思想,将大图分解为3个子图:用户图、项目图和用户-项目交互图。然后,分别从用户和项目图中预训练用户和项目嵌入。为了进行预训练,根据属性分别构建多关系用户图和项目图。
[0112]
为此,本发明实施例使用一个预训练和增强管道框架graphda,用于去噪和增强用户-项目矩阵。在graphda中,本发明实施例在gcf的双侧邻接矩阵中捕捉用户-用户和项目的相关性。具体来说,本发明实施例首先预训练一个编码器,从现有的用户-项目互动中生成用户/项目嵌入。通过预训练的嵌入,本发明实施例采用top-k抽样过程来生成去噪和增
强的用户-项目矩阵,以及非零的用户-用户和项目-项目相关性。
[0113]
在图协同过滤(gcf)中,本发明实施例可以将用户集合表示为u,项目集合表示为i,其中用户和项目由u和i索引。对于隐式或显式反馈,用户-项目交互矩阵表示为,其中r∈r
|u|
×
|i|
表示用户u对项目i的反馈。例如,隐式反馈的取值为1或0。由于r是一个用户-项目二分图,因此邻接矩阵格式化为:
[0114]
其中a∈r
(|u|+|i|)
×
(|i|
×
|u|)
。这个问题也可以解释为用户和项目节点之间的链接预测问题。用户和项目的嵌入是随机初始化并使用现有的用户-项目交互进行优化的。具体来说,本发明实施例可以将用户和项目嵌入表表示为e∈r
(|u|+|i|)
×d,其中d表示嵌入的潜在维度。gcf通过在用户-项目邻接矩阵a上叠加多层图卷积来融合高阶协同信号。具体来说,使用n层图卷积的输出嵌入生成过程如下:
[0115]e(n)
=encoder(a,e)=(a,e)=(l)
n-1
e(0)
ꢀꢀꢀꢀꢀꢀꢀ
(18)
[0116]e(0)
=e,l为二部拉普拉斯矩阵,定义为归一化对称拉普拉斯矩阵
[0117]
d是度矩阵。代表性工作lightgcn将所有层上生成的嵌入平均作为最终输出嵌入。用户u与项i之间的用户偏好预测为:
[0118][0119]
式中σ(
·
)为sigmoid型激活函数,为用户u观察到的交互项集,eu和ei为用户和项输出嵌入e
(n)

[0120]
具体实施时,本发明实施例是使用框架graphda,该框架具有用户-项目交互矩阵、用户-用户和项目-项目相关性增强。该框架包括两个步骤,包括从图编码器中预先训练出来的用户/项目表示和用于增强的邻居生成过程。
[0121]
(1)预先培训的用户/项目嵌入
[0122]
利用原始邻接矩阵a中的不完全图拉普拉斯矩阵l,本发明实施例预训练一个图编码器以获得用户/项目表示,如图3左侧的预训练所示。具体来说,本发明实施例使用n个图卷积层来获得用户/项目嵌入e
(n)
如等式所述(1).利用bpr损失对训练数据进行训练前步骤的优化,结果如下:
[0123][0124]i+
表示用户u、i-的正交互项-是一个没有与用户u交互的采样负项目,eu和ei是用户和项目输出嵌入e
(n)

[0125]
需要说明的是,一些具有不同架构建模用户-项目交互的编码器可以作为替代选择,例如经典的矩阵分解。
[0126]
(2)增强的二部邻接关系
[0127]
经过预先训练的e
(n)
编码用户与用户项之间的协作信号。然而,它在gcf中的关键组成部分,即邻接矩阵a,对于用户/项目嵌入学习的效果并不太令人满意,原因在于观察到的长尾分布的偏差交互,活跃用户的噪声交互,以及忽略了用户-用户和项目-项目的直接关联。具体来说,本发明实施例在三个分量中增强邻接矩阵,如图(3)的中心分量所示。
[0128]
增强了用户项交互。经过预先训练的e
(k)
,本发明实施例可以为用户和项目生成前k个邻居。对于用户来说,前k个邻居定义了偏好,而项目的邻居表示正在营销的用户组的概
念。从用户方面,本发明实施例定义了一个超参数uk来控制被选择的邻居的数量。对于所有用户,邻居的数量都是相同的uk在邻居数量相同的情况下,对原始数据中具有丰富邻居的用户进行去噪,而对具有稀缺邻居的用户进行扩充。具体来说,通过从输出分数中选择数值最大的前uk元素生成前k个邻居,即:元素生成前k个邻居,即:
[0129]
在这里表示输出项嵌入。类似地,对于项端,还可以定义了超参数ik来生成具有类似过程的前k个邻居。采用用户和项目双方生成的用户-项目交互的联合来获得增强的效果。
[0130]
用户-用户和项目-项目相关性。对于具有未知用户-用户/项目-项目交互的推荐系统数据集,常规邻接矩阵a表示中对应的子矩阵将填充为零。建议使用w
uu
和w
ii
来补充这两个全零子矩阵,以进一步增强邻接矩阵。具体来说,对于用户u,本发明实施例提取前uuk个相似度最高的用户,如下:
[0131][0132]
其中,表示输出的用户嵌入向量,w
uu
[u,uk]=1表示当时。同样的过程也适用于w
ii
,其中iik用于控制所选择的相似项目的数量。需要注意的是,本发明实施例强制w
uu
和w
ii
是对称的。
[0133]
gcf以增强的二部邻接关系重新学习。利用增强的图邻接矩阵,本发明实施例重新学习了图编码器,生成用户-项交互预测的嵌入,如图3所示。为了更好地说明每个组件的贡献,本发明实施例提出了两个版本的增强功能,增强的ui和graphda。增强的ui只采用用户项增强的交互,即它的邻接性矩阵
[0134]
完整的版本graphda包括用户-用户和项目-项目之间的相关性,具有邻接矩阵
[0135]
也就是说,本发明实施例所提供的基于图结构的系统过滤和降噪的智能推荐系统的发明目的是为了提高推荐系统的准确性和效率。传统的基于内容和协同过滤的推荐系统只能考虑单一的关系,难以处理多种类型的数据和复杂的用户行为,而基于图结构的推荐系统可以同时考虑多种类型的节点和多种类型的关系,能够更全面地捕捉用户行为和项目特征,使用了一个新的图邻接矩阵,它包含了用户-用户和项目-项目的相关性,以及一个适当设计的用户-项目交互矩阵,以平衡所有用户之间的交互数量,从而提高推荐的准确性。同时,通过使用图卷积神经网络等深度学习技术,可以学习更丰富的特征表达,进一步提高推荐效果。此外,系统过滤和降噪可以减少推荐系统的干扰和噪声,提高推荐的质量和用户体验。因此,基于图结构的系统过滤和降噪的智能推荐系统具有很高的实用价值和应用前景。
[0136]
在图卷积神经网络这方面,它通过学习节点的嵌入表示来解决推荐问题。与传统的图嵌入方法不同,图卷积神经网络考虑了节点的局部邻域信息,通过一层层卷积来逐步聚合邻居节点的信息,从而得到更具有表征性的节点嵌入表示。这使得gcn在处理具有高度
关联性的数据,例如社交网络、推荐系统和生物信息学等方面表现出色。使用图卷积神经网络对用户和项目的向量进行卷积操作,获得更丰富的特征表达。
[0137]
此发明的目的就是通过挖掘用户和项目之间的关联关系,构建一个复杂的图结构模型,实现精准的推荐和过滤。其主要优势包括:
[0138]
1.提高推荐的准确性:通过对用户和项目之间的关系进行建模,能够更加准确地推荐符合用户兴趣的项目,从而提高推荐的准确性。
[0139]
2.降低噪音干扰:利用图结构的建模方式可以有效地降低噪音干扰,过滤掉一些不符合用户兴趣的噪音数据。
[0140]
3.提升用户满意度:通过准确的推荐和降低噪音干扰,可以提升用户满意度,增加用户粘性和信任度。
[0141]
4.适应性强:基于图结构的系统过滤和降噪的智能推荐系统具有很强的适应性,能够自适应地根据用户行为和反馈信息来调整模型和推荐结果。
[0142]
基于图结构的系统过滤和降噪的智能推荐系统对于提高用户体验和满意度有着重要的作用,是未来智能推荐系统发展的趋势。
[0143]
总体来说,本发明实施例是基于图结构的系统过滤和降噪的智能推荐系统是一种基于图形数据结构的推荐算法,它通过构建一个由用户、项目和其它相关节点组成的图形,然后基于这个图来进行推荐。在这种系统中,图的节点代表用户和项目,边代表用户和项目之间的关系,如购买、浏览、评分等。(1).图的构建:本发明实施例中的构建图是该系统的核心,需要考虑如何选择节点和边,以及如何确定节点和边的权重。这需要使用一些算法和技术,如社交网络分析、基于内容的过滤和协同过滤等。
[0144]
(2).图的存储和管理:由于图可能包含大量的节点和边,因此需要使用高效的存储和管理技术来处理。一些流行的技术包括图数据库、图计算引擎等。
[0145]
(3).图的分析和处理:对于大型图形,需要使用一些高效的算法和技术来分析和处理图形,以便推荐最佳的项目。一些流行的技术包括pagerank、随机游走等。
[0146]
(4).降噪技术:在实际应用中,由于噪声和异常值的存在,图可能会受到影响。因此,需要使用一些降噪技术来处理噪声和异常值,如局部敏感哈希、离群点检测等。
[0147]
(5).可扩展性:推荐系统需要处理大量的用户和项目,因此需要考虑系统的可扩展性。这需要使用一些分布式系统和并行计算技术来实现高性能的推荐。
[0148]
(6).隐私保护:在推荐系统中,用户和项目的数据往往包含一些敏感信息,因此需要考虑隐私保护问题。一些流行的隐私保护技术包括差分隐私、同态加密等。
[0149]
综上所述,基于图结构的系统过滤和降噪的智能推荐系统需要综合考虑图的构建、存储和管理、分析和处理、降噪技术、可扩展性以及隐私保护等多个方面的技术问题。
[0150]
通过上述可知,本发明实施例提供的基于图结构的系统过滤和降噪的智能推荐系统技术至少具有以下的有益效果:
[0151]
(1).提高推荐的准确性和效率:相比传统的推荐系统,基于图结构的推荐系统可以更准确地预测用户的偏好和推荐相关的项目。由于使用了图的结构,可以更好地捕捉用户和项目之间的复杂关系,从而提高了推荐的准确性和效率。
[0152]
(2).降低噪声和异常值的影响:基于图结构的推荐系统使用了一些降噪技术,如局部敏感哈希、离群点检测等,可以降低噪声和异常值的影响,提高了推荐的可靠性。
[0153]
(3).提高系统的可扩展性:由于基于图结构的推荐系统使用了一些分布式系统和并行计算技术,可以实现高性能的推荐,从而提高了系统的可扩展性。
[0154]
(4).提高隐私保护性能:在基于图结构的推荐系统中,用户和项目的数据往往包含一些敏感信息,采用了一些隐私保护技术,如差分隐私、同态加密等,可以提高系统的隐私保护性能。
[0155]
下面将通过一个具体的例子来对本发明实施例所述的方法进行详细的解释和说明:
[0156]
本发明所述方法包括数据预处理、图嵌入表示学习、图卷积神经网络、图系统过滤和降噪。总体过程流程图如图1所示。
[0157]
1.数据预处理:从原始数据中提取用户和项目的特征,构建用户-项目交互图。
[0158]
2.图嵌入表示学习:使用图嵌入算法将用户和项目的特征转化为低维稠密向量。
[0159]
3.图卷积神经网络:使用图卷积神经网络对用户和项目的向量进行卷积操作,获得更丰富的特征表达。
[0160]
4.系统过滤和降噪:使用图结构信息对推荐列表进行过滤和降噪,获得更准确的推荐结果。使用协同过滤技术进行过滤,graphda技术进行降噪。graphda包括以下两个步骤:1.预训练步骤推导出用户/项目的嵌入;2.利用嵌入来生成用户-项目组件、用户-用户组件和项目-项目组件的前k邻节点,增强的邻接矩阵来重新训练图的编码器。
[0161]
综上所述,通过本发明实施例的基于图结构的系统过滤和降噪的智能推荐系统技术,可以提高推荐的准确性和效率,降低噪声和异常值的影响,提高系统的可扩展性和隐私保护性能,为用户提供更好的推荐体验。
[0162]
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

技术特征:
1.一种基于图结构的系统过滤和降噪的智能推荐方法,其特征在于,包括:基于原始数据中的用户和项目的特征来构建用户-项目交互图;使用图嵌入算法将用户和项目的特征转化为特征向量;使用图卷积神经网络对用户和项目的向量进行卷积操作,获得进一步的特征表达,并训练得到图结构模型,然后基于所述图结构模型来计算每个节点的权重,进而得到节点的推荐列表;通过所述图结构模型对所述推荐列表进行过滤和降噪,以获得更准确的推荐结果,并将推荐结果进行推送。2.根据权利要求1所述的方法,其特征在于,基于原始数据中的用户和项目的特征来构建用户-项目交互图之前,所述方法还包括:对所述原始数据进行数据清洗、数据分割和特征提取处理。3.根据权利要求2所述的方法,其特征在于,对所述原始数据进行数据清洗,包括:从所述原始数据中去除异常数据、空值数据和重复数据;对所述原始数据进行数据分割,包括:将所述原始数据的数据集分为训练集和测试集,其中,训练集用于训练图结构模型,测试集用于评估所述图结构模型的性能;对所述原始数据进行特征提取,包括:根据所述原始数据的数据集的特点,提取出具有设定意义的特征,并构建特征向量。4.根据权利要求2所述的方法,其特征在于,所述使用图嵌入算法将用户和项目的特征转化为特征向量,包括:在图结构模型中,将用户和项目作为节点,将用户和项目之间的交互作为边,并通过学习来得到节点嵌入和边嵌入表示;其中,节点嵌入是将节点映射到低维空间,旨在保留节点之间的相似性,边嵌入是通过用户和项目之间的交互得到的节点之间的相似性,即是将边映射到低维空间的过程,以表示边的重要性和相似性。5.根据权利要求4所述的方法,其特征在于,通过graphsage算法将每个节点的邻居节点的嵌入表示聚合起来,作为当前节点的嵌入表示。6.根据权利要求4所述的方法,其特征在于,所述方法还包括:通过共现矩阵来表示边的重要性和相似性,其中,在共现矩阵中,每个行和列代表一个节点,而矩阵中的每个元素则代表相应节点之间的边的权重,对于一个给定的用户,通过统计该用户与所有项目之间的交互次数,然后将这些次数作为权重填入共现矩阵中,同样地,对于一个给定的项目,通过统计所有用户与该项目之间的交互次数,并将这些次数作为权重填入共现矩阵中,以计算得到不同边的重要性和相似性。7.根据权利要求1-6中任意一项所述的方法,其特征在于,所述图结构模型采用了diffet++架构,所述diffnet++架构包括嵌入层、融合层、影响力和兴趣的扩散层以及评分预测层,并通过所述嵌入层输出用户和项目的自由嵌入,由所述融合层融合特征和自由嵌入,在所述扩散层中设置了多层次注意力结构,以通过所述多层次注意力结构有效扩散高阶社交和兴趣网络,并在所述扩散过程稳定后,通过所述评分
预测层预测每个未观察到的用户-项目对的偏好得分。8.根据权利要求7所述的方法,其特征在于,所述嵌入层是利用相应的自由向量来对用户和项目进行编码,设p=r
m
×
d
表示d维的用户的自由潜嵌入矩阵,q=r
n
×
d
表示d维的项目的自由潜嵌入矩阵,给定用户a的一个热点表示,m为自由潜嵌入矩阵的行,n为自由潜嵌入矩阵的列,嵌入层执行索引选择并输出自由用户潜在嵌入p
a
或嵌入q
i
,即用户自由嵌入矩阵p的第a行转置相应地,嵌入q
i
是项目i自由嵌入矩阵q的第i行转置;所述融合层是对于每个用户a,以p
a
和她的相关特征向量x
a
为输入,输出一个用户融合嵌入从不同类型的输入数据中捕捉用户的初始兴趣;所述扩散层是通过将每个用户a的融合嵌入和每个项目i的融合嵌入的输出送入影响力兴趣扩散层,通过多个扩散层来递归地模拟该用户的潜在偏好和项目的潜在偏好在用户-项目兴趣图谱g
i
中的动态传播,进行层级卷积,并将社会影响强度和兴趣强度看作是节点级的权重,基于该权重模拟每个用户如何平衡每个图中的不同邻居节点。9.根据权利要求8所述的方法,其特征在于,所述diffnet++架构采用的算法矩阵为:设定所述算法矩阵是将第k层的用户和项目嵌入更新到k+1层,设则所述算法矩阵为:h=mlp1(u
k
,v
k
),其中,η表示第k+1层中项目i与用户a的矩阵值,r表示h为一个n行m列的矩阵,m为自由潜嵌入矩阵的行,n为自由潜嵌入矩阵的列,u
k
为第k层用户a的融合嵌入,v
k
为第k层项目i的融合嵌入,h
(k+1)
表示第k+1层的用户和项目嵌入,h表示多层感知机mlp对输入用户u和v的组合进行处理后得到的输出结果。10.根据权利要求1-6中任意一项所述的方法,其特征在于,通过所述图结构模型对所述推荐列表进行过滤和降噪,包括:通过预训练的增强管道框架graphda来对所述推荐列表进行过滤和降噪,其中,所述增强管道框架graphda设置在所述图结构模型内。

技术总结
本发明公开了一种基于图结构的系统过滤和降噪的智能推荐方法,本发明通过设置使得图结构的推荐系统可以同时考虑多种类型的节点和多种类型的关系,因此使得本发明能够更全面地捕捉用户行为和项目特征,另外本发明使用了图邻接矩阵,它包含了用户-用户和项目-项目的相关性,以及一个适当设计的用户-项目交互矩阵,以平衡所有用户之间的交互数量,从而提高推荐的准确性。同时,通过使用图卷积神经网络等深度学习技术,可以学习更丰富的特征表达,进一步提高推荐效果。此外,系统过滤和降噪可以减少推荐系统的干扰和噪声,提高推荐的质量和用户体验。所以本发明提供的基于图结构的系统过滤和降噪的智能推荐系统具有很高的实用价值和应用前景。价值和应用前景。价值和应用前景。


技术研发人员:郭庆浪 林晖 梁生霖 廖勇 温雅琳 罗梓恒 李姗殷 张靖雅 胡校成
受保护的技术使用者:中国电子科技集团有限公司电子科学研究院
技术研发日:2023.06.16
技术公布日:2023/10/5
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐