本申请实施例涉及图结构,尤其涉及一种基于图结构聚类的推荐方法、装置、设备及存储介质。
背景技术:
1、现有的项目(如图书推荐)推荐方法大多倾向于推荐同类项目,而对关联项目推荐不足,这主要是因为现有聚类方法将同一类型的项目划分在同一个簇中,当用户执行某项目时,根据现有方法只会推荐该项目所在簇的其他项目,而忽略簇外的其他项目,这就导致系统推荐的项目均为同一类型。
技术实现思路
1、以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
2、本发明实施例的主要目的在于提出一种基于图结构聚类的推荐方法,方法将各种项目的关系构建成一个图结构,其中顶点表示项目,若两项目之间有相同或相近关键词则用一条边连接这两项目所代表的顶点,然后是对上述图进行聚类,将项目划分为不同的簇,由于聚类时相似度采用h-邻居进行计算,判定两个顶点之间的结构相似性时不仅只考虑距离为1的传统邻居,而是考虑距离不大于h的所有邻居,称为h-邻居,所以同一簇中包含不同类型的项目,而且相互之间有较强关联性。
3、为实现上述目的,本发明实施例的第一方面提供一种基于图结构聚类的推荐方法,所述基于图结构聚类的推荐方法包括:
4、如果选定目标项目,从若干个簇中确定所述目标项目所在的目标簇;
5、从所述目标簇中选取其余项目进行推荐;
6、所述簇的选取过程包括:
7、根据所述目标项目在内的多件项目构建图结构,其中所述图结构中的顶点为项目;
8、计算每两顶点之间的结构相似性,并根据所述结构相似性将所述多件项目进行聚类分簇;其中,所述结构相似性通过顶点的结构邻域计算得到,且所述顶点的结构邻域包括多个邻居顶点。
9、在一些实施例中,所述图结构包括无向无权单部图或无向无权二分图。
10、在一些实施例中,所述图结构包括无向无权单部图;
11、所述计算每两顶点之间的结构相似性的公式包括:
12、
13、其中,nh[u]和nh[v]分别表示顶点u和v的结构邻域,dh[u]和dh[v]别表示顶点u和v结构邻域中的邻居顶点的数量,顶点u的结构邻域是由多个与顶点u之间的距离不大于h的顶点组成,顶点v的结构邻域是由多个与顶点v距离不大于h的顶点组成,h表示大于0的自然数。
14、在一些实施例中,在所述根据所述结构相似性将所述多件项目进行聚类分簇之前,所述方法还包括:
15、确定所述多件项目中的核心顶点和非核心顶点;其中,所述核心顶点是指结构邻域中所有与其结构相似的顶点的数量大于阈值的顶点,所述非核心顶点是除核心顶点的其它顶点;
16、所述根据所述结构相似性将所述多件项目进行聚类分簇,包括:
17、对于任意顶点u,将ed(u)初始化为dh[u],将sd(u)初始化0,将顶点u置于未访问状态;ed(u)是指dh[u]减去其结构邻域中与顶点u结构不相似的顶点的数量,sd(u)是指nh[u]中与顶点u结构相似的顶点的数量;
18、对多个顶点中处于未访问状态的顶点u按照如下顺序进行遍历:
19、优先的遍历核心顶点,再按ed(u)降序顺序进行遍历;
20、如果当前遍历到顶点u,根据顶点u与nh[u]中的每一个顶点的结构相似性更新顶点u与nh[u]中的每一个顶点之间的ed(u)和sd(u);
21、直至ed(u)≤μ,μ是阈值;
22、如果顶点u为核心顶点,则将顶点u的nh[u]中与顶点u之间的结构相似的核心顶点与顶点u划分为同一个簇中;
23、遍历每一个核心顶点,如果顶点u为核心顶点,则将顶点u的nh[u]中与顶点u结构相似的非核心顶点与顶点u划分为同一个簇中。
24、在一些实施例中,所述从所述目标簇中选取其余书籍进行推荐,包括:
25、先推荐与所述目标项目所表示的顶点直接相连的其他顶点所表示的项目;
26、再推荐所述目标簇中未与所述目标项目所表示的顶点直接相连的项目。
27、在一些实施例中,所述项目为书籍。
28、为实现上述目的,本发明实施例的第二方面提供了一种基于图结构聚类的推荐装置,所述基于图结构聚类的推荐装置,包括:
29、簇选定单元,用于如果选定目标项目,从若干个簇中确定所述目标项目所在的目标簇;
30、推荐单元,用于从所述目标簇中选取其余项目进行推荐;其中,所述其余项目与所述目标项目不同;
31、所述簇的选取过程包括:
32、根据所述目标项目在内的多件项目构建图结构,其中所述图结构中的顶点为项目;
33、计算每两顶点之间的结构相似性,并根据所述结构相似性将所述多件项目进行聚类分簇;其中,所述结构相似性通过顶点的结构邻域计算得到,且所述顶点的结构邻域包括多个邻居顶点。
34、在一些实施例中,所述推荐单元具体用于:
35、先推荐与所述目标项目所表示的顶点直接相连的其他顶点所表示的项目;
36、再推荐所述目标簇中未与所述目标项目所表示的顶点直接相连的项目。
37、为实现上述目的,本发明实施例的第三方面提供的电子设备,包括:至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行上述第一方面的基于图结构聚类的推荐方法。
38、为实现上述目的,本发明实施例的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述第一方面的基于图结构聚类的推荐方法。
39、本申请一个实施例提供了一种基于图结构聚类的推荐方法,本方法包括:如果选定目标项目,从若干个簇中确定目标项目所在的目标簇;从目标簇中选取其余项目进行推荐;其中,其余项目与目标项目不同;簇的选取过程包括:根据目标项目在内的多件项目构建图结构,其中图结构中的顶点为项目;计算每两顶点之间的结构相似性,并根据结构相似性将多件项目进行聚类分簇;其中,结构相似性通过顶点的结构邻域计算得到,且顶点的结构邻域包括多个邻居顶点。方法将各种项目的关系构建成一个图结构,其中顶点表示项目,若两项目之间有相同或相近关键词则用一条边连接这两项目所代表的顶点,然后是对上述图进行聚类,将项目划分为不同的簇,由于聚类时相似度采用多个邻居进行计算,判定两个顶点之间的结构相似性时不仅只考虑距离为1的传统邻居,而是考虑距离不大于阈值的所有邻居,所以同一簇中包含不同类型的项目,而且相互之间有较强关联性。
40、可以理解的是,上述第二方面至第四方面和相关技术相比存在的有益效果和上述第一方面和相关技术相比存在的有益效果相同,可以参见上述第一方面中的相关描述,在此不再赘述。
1.一种基于图结构聚类的推荐方法,其特征在于,所述基于图结构聚类的推荐方法包括:
2.根据权利要求1所述的基于图结构聚类的推荐方法,其特征在于,所述图结构包括无向无权单部图或无向无权二分图。
3.根据权利要求2所述的基于图结构聚类的推荐方法,其特征在于,所述图结构包括无向无权单部图;
4.根据权利要求3所述的基于图结构聚类的推荐方法,其特征在于,在所述根据所述结构相似性将所述多件项目进行聚类分簇之前,所述方法还包括:
5.根据权利要求1所述的基于图结构聚类的推荐方法,其特征在于,所述从所述目标簇中选取其余书籍进行推荐,包括:
6.根据权利要求1至5任一项所述的基于图结构聚类的推荐方法,其特征在于,所述项目为书籍。
7.一种基于图结构聚类的推荐装置,其特征在于,所述基于图结构聚类的推荐装置,包括:
8.根据权利要求7所述的基于图结构聚类的推荐装置,其特征在于,所述推荐单元具体用于:
9.一种电子设备,其特征在于,包括:至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行权利要求1至6任一项所述的基于图结构聚类的推荐方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行权利要求1至6任一项所述的基于图结构聚类的推荐方法。
