掌桥专利:专业的专利平台
掌桥专利
首页

考虑节点局域链接紧密度的链路预测方法和装置

文献发布时间:2023-06-19 10:54:12


考虑节点局域链接紧密度的链路预测方法和装置

技术领域

本申请涉及计算机技术领域,特别是涉及一种考虑节点局域链接紧密度的链路预测方法和装置。

背景技术

在社交网络朋友推荐领域,链路预测可以根据用户当前的朋友圈链接关系结构来预测哪些尚未相识的用户“应该是朋友”,从而将预测结果推送给用户,如果一个网站推荐给用户的结果符合用户心中的期望,则可以有效提高用户对于该社交网站的粘性,从而为网站创造价值。

链路预测方法的关键在于如何量化网络中尚未产生连接的两个节点间的相似性。解决该问题可以从多个角度入手,其中最为简单有效的方法就是利用节点的属性信息来刻画节点间的相似性,如果两个人兴趣相似,年龄相仿,同一职业,就可以认为这两个人相似性很高。尽管通过节点的属性信息进行链路预测可以取得很好的效果,但由于信息的私密性,通常情况下要从在线系统中获取用户真实信息是十分困难的,甚至是完全不可行的。与节点属性信息相比,通过观察到的网络拓扑结构信息来定义节点间的相似性则更为可行。目前已有许多指标相继被提出,其中最简单直接的相似性指标是共同邻居指标CN(commonneighbors),CN指标认为如果两个节点间存在更多的共同邻居,则它们更有可能发生连接。对应到现实生活中的场景,如果两个陌生人存在多个共同的朋友,那么这两人结交的可能性就比较大。结合节点两端度的情况,在共同邻居的基础之上,又有多种相似性指标被提出。上述基于共同邻居的相似性指标计算复杂度低,但由于其利用的信息有限,在某些网络中预测精度并不理想。为进一步提高预测精度,多种基于路径的相似性指标被提出,Katz指标考虑了网络的所有路径并引入可调参数对高阶路径的影响进行调节,预测精度较高。Holme和Newman等基于一般等价思想提出了LHN-II指标,可看作是Katz指标的一种推广。此外还有平均通勤时间(Average Commute Time)等指标。尽管基于路径的指标通常情况下可以取得更好的预测精度,但由于其计算复杂度较高,因而在多数大规模复杂系统中并不适用。

发明内容

基于此,有必要针对上述技术问题,提供一种能够解决目前链路预测计算量大问题的考虑节点局域链接紧密度的链路预测方法和装置。

一种考虑节点局域链接紧密度的链路预测方法,所述方法包括:

获取包含第一用户和第二用户的社交网络;所述社交网络为无向无权网络;所述第一用户和第二用户均为社交网络中的节点;

根据第一用户的第一邻域节点和第二用户的第二邻域节点的交集,确定共同邻居节点;

根据第一邻域节点与所述共同邻居节点的交集,以及第二邻域节点与所述共同邻居节点的交集,取并集得到局域链接节点;

根据所述共同邻居节点的度和所述局域链接节点的度,计算得到第一用户和第二用户的相似度。

在其中一个实施例中,还包括:根据所述共同邻居节点的度和所述局域链接节点的度,计算得到第一用户和第二用户的相似度为:

其中,

一种考虑节点局域链接紧密度的链路预测装置,所述装置包括:

网络获取模块,用于获取包含第一用户和第二用户的社交网络;所述社交网络为无向无权网络;所述第一用户和第二用户均为社交网络中的节点;

共同邻居确定模块,用于根据第一用户的第一邻域节点和第二用户的第二邻域节点的交集,确定共同邻居节点;

局域链接确定模块,用于根据第一邻域节点与所述共同邻居节点的交集,以及第二邻域节点与所述共同邻居节点的交集,取并集得到局域链接节点;

相似度计算模块,用于根据所述共同邻居节点的度和所述局域链接节点的度,计算得到第一用户和第二用户的相似度。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取包含第一用户和第二用户的社交网络;所述社交网络为无向无权网络;所述第一用户和第二用户均为社交网络中的节点;

根据第一用户的第一邻域节点和第二用户的第二邻域节点的交集,确定共同邻居节点;

根据第一邻域节点与所述共同邻居节点的交集,以及第二邻域节点与所述共同邻居节点的交集,取并集得到局域链接节点;

根据所述共同邻居节点的度和所述局域链接节点的度,计算得到第一用户和第二用户的相似度。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取包含第一用户和第二用户的社交网络;所述社交网络为无向无权网络;所述第一用户和第二用户均为社交网络中的节点;

根据第一用户的第一邻域节点和第二用户的第二邻域节点的交集,确定共同邻居节点;

根据第一邻域节点与所述共同邻居节点的交集,以及第二邻域节点与所述共同邻居节点的交集,取并集得到局域链接节点;

根据所述共同邻居节点的度和所述局域链接节点的度,计算得到第一用户和第二用户的相似度。

上述考虑节点局域链接紧密度的链路预测方法、装置、计算机设备和存储介质,一方面通过共同邻居节点中节点的度,另一方面从局域链接节点中节点的度对第一用户和第二用户的相似度进行评价,无需考虑整个社交网络,从而计算量小,适应于大规模社交网络中用户相似度的预测。

附图说明

图1为一个实施例中考虑节点局域链接紧密度的链路预测方法的流程示意图;

图2为一个实施例中社交网络的示意图;

图3为另一个实施例中社交网络的示意图;

图4为一个实施例中考虑节点局域链接紧密度的链路预测装置的结构框图;

图5为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在一个实施例中,如图1所示,提供了一种考虑节点局域链接紧密度的链路预测方法,包括以下步骤:

步骤102,获取包含第一用户和第二用户的社交网络。

社交网络中的节点均表示用户,其中,第一用户和第二用户存在邻居节点。

步骤104,根据第一用户的第一邻域节点和第二用户的第二邻域节点的交集,确定共同邻居节点。

邻域节点指的是与用户直接相连节点的集合。

步骤106,根据第一邻域节点与共同邻居节点中每个节点对应的邻居节点集合的交集,以及第二邻域节点与共同邻居节点中每个节点对应的邻居节点集合的交集,取并集得到局域链接节点。。

步骤108,根据共同邻居节点的度和局域链接节点的度,计算得到第一用户和第二用户的相似度。

上述考虑节点局域链接紧密度的链路预测方法中,一方面通过共同邻居节点中节点的度,另一方面从局域链接节点中节点的度对第一用户和第二用户的相似度进行评价,无需考虑整个社交网络,从而计算量小,适应于大规模社交网络中用户相似度的预测。

社交网络中,互不相识的两个用户产生链接(成为朋友)可能性,不仅与用户间共同邻居数量及用户朋友数量(度大小)有关,两个用户彼此间的朋友圈链接紧密度也影响着二者成为朋友的可能性。

分别比较图2与图3中节点i和j产生链接的可能性,直观上可以看出图3中的节点i和j相比图2中的节点对i和j更有可能产生链接,因为图3中的节点i到j的可达性更好,节点i可以通过a或b认识节点j,即

其中,

以图2中的

进一步,可得

类似的可以计算得到图3中节点i和j的相似性值

应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图4所示,提供了一种考虑节点局域链接紧密度的链路预测装置,包括:网络获取模块402、共同邻居确定模块404、局域链接确定模块406和相似度计算模块408,其中:

网络获取模块402,用于获取包含第一用户和第二用户的社交网络;所述社交网络为无向无权网络;所述第一用户和第二用户均为社交网络中的节点;

共同邻居确定模块404,用于根据第一用户的第一邻域节点和第二用户的第二邻域节点的交集,确定共同邻居节点;

局域链接确定模块406,用于根据第一邻域节点与所述共同邻居节点中每个节点对应的邻居节点集合的交集,以及第二邻域节点与所述共同邻居节点中每个节点对应的邻居节点集合的交集,取并集得到局域链接节点;

相似度计算模块408,用于根据所述共同邻居节点的度和所述局域链接节点的度,计算得到第一用户和第二用户的相似度。

在其中一个实施例中,相似度计算模块408还用于根据所述共同邻居节点的度和所述局域链接节点的度,计算得到第一用户和第二用户的相似度为:

其中,

关于考虑节点局域链接紧密度的链路预测装置的具体限定可以参见上文中对于考虑节点局域链接紧密度的链路预测方法的限定,在此不再赘述。上述考虑节点局域链接紧密度的链路预测装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种考虑节点局域链接紧密度的链路预测方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述实施例中方法的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中方法的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

相关技术
  • 考虑节点局域链接紧密度的链路预测方法和装置
  • 考虑节点局域链接紧密度的链路预测方法和装置
技术分类

06120112722420