CN107895038B - 一种链路预测关系推荐方法及装置 - Google Patents

一种链路预测关系推荐方法及装置 Download PDF

Info

Publication number
CN107895038B
CN107895038B CN201711227663.7A CN201711227663A CN107895038B CN 107895038 B CN107895038 B CN 107895038B CN 201711227663 A CN201711227663 A CN 201711227663A CN 107895038 B CN107895038 B CN 107895038B
Authority
CN
China
Prior art keywords
node
vector space
attribute
nodes
relationship
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711227663.7A
Other languages
English (en)
Other versions
CN107895038A (zh
Inventor
邹晓波
刘亮
陈航
龚艺
张磊
方勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Silence Information Technology Co ltd
Sichuan University
Original Assignee
Sichuan Silence Information Technology Co ltd
Sichuan University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan Silence Information Technology Co ltd, Sichuan University filed Critical Sichuan Silence Information Technology Co ltd
Priority to CN201711227663.7A priority Critical patent/CN107895038B/zh
Publication of CN107895038A publication Critical patent/CN107895038A/zh
Application granted granted Critical
Publication of CN107895038B publication Critical patent/CN107895038B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Abstract

本发明提供一种链路预测关系推荐方法及装置,该方法包括:获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据;根据各所述节点的关系数据建立包括多个节点的关系网络图;根据各所述节点的个人数据建立各所述节点的属性向量空间;根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度;利用存在连边的两个节点之间的属性相似度对所述关系网络图中的该两个节点之间的连边进行加权处理;根据加权处理后的关系网络图进行链路预测,得到链路预测结果。本发明提供的链路预测关系推荐方案,将节点的自身属性数据以及节点之间的关系数据纳入考虑,提高了链路预测的准确性。

Description

一种链路预测关系推荐方法及装置
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种链路预测关系推荐方法及装置。
背景技术
关系推荐是社交网络领域的热点,现在较好的解决方法是把社交网络中的用户和关系用图论的思想来建模,核心算法是利用链路预测的方法来计算节点间尚未链接的边发生链接的可能性,即计算社交网络中尚未结交的用户成为好友的可能性,由此结果作依据,为用户推荐与其成为好友可能性高的用户,也就是链接关系的挖掘和预测。
传统链路预测的方法主要包括基于节点相似的算法、基于路径拓扑相似性的算法和基于概率统计模型的算法。基于节点相似性的算法是局部型的算法,它假设两个节点之间相似性(或者相近性)越大,它们之间存在链接的可能性就越大。基于路径拓扑相似性的算法,是全局型的算法,它完全基于网络的结构信息,称之为结构相似性。概率模型算法的思想是建立含有可调参数的模型,通过优化参数来尽可能模拟真实网络的特征性质和拓扑结构。基于节点相似性和基于路径拓扑相似性的算法统称为基于相似性的算法,目前基于相似性的链路预测方法是较为流行的方法,其预测准确度较高且代价相对较小,被广泛应用于工程实践中。但是,传统的基于相似度的链路预测方法在建立相似度时,考虑因素较少,导致最终的预测结果准确性不高。
发明内容
有鉴于此,本发明的目的在于提供一种链路预测关系推荐方法及装置,以解决上述问题。
本发明的较佳实施例提供一种链路预测关系推荐方法,所述方法包括:
获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据;
根据各所述节点的关系数据建立包括多个节点的关系网络图;
根据各所述节点的个人数据建立各所述节点的属性向量空间;
根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度;
利用存在连边的两个节点之间的属性相似度对所述关系网络图中的该两个节点之间的连边进行加权处理;
根据加权处理后的关系网络图进行链路预测,得到链路预测结果。
进一步地,所述根据加权处理后的关系网络图进行链路预测,得到链路预测结果的步骤包括:
获得加权处理后的关系网络图中的连边集合,并将所述连边集合划分为训练集合和测试集合;
根据所述训练集合进行链路预测,得到预测结果;
基于预设指标,根据所述测试集合中的连边关系及所述预测结果表征的连边关系得到预设指标值,获得链路预测结果。
进一步地,所述个人数据包括多维属性信息,所述根据所述个人数据建立各所述节点的属性向量空间的步骤,包括:
根据各所述节点的多维属性信息,建立各所述节点的属性向量空间,将所述属性向量空间表示为A'={a1,a2,a3,...,an},其中A’为属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息;
设置所述节点中的各属性信息所占权值;
根据各属性信息的权值对所述属性向量空间进行加权更新,得到加权后的属性向量空间,将加权后的属性向量空间表示为A={a1,w1,a2,w2,a3,w3,....,an,wn},其中A为加权后的属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,w1,w2,w3,…wn分别各属性信息对应的加权值。
进一步地,所述根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度的步骤,包括:
利用余弦相似度计算每任意两个节点之间的属性相似度,所述余弦相似度表示如下:
Figure GDA0002422418100000031
其中,X、Y分别表示节点X和节点Y的属性向量空间,Xi表示节点X属性向量空间中的第i个元素,Yi表示节点Y属性向量空间中的第i个元素,n表示属性向量空间中的属性信息的数量。
进一步地,所述获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据的步骤之前,所述方法还包括:
利用Python爬虫技术从指定社交平台上获得用户数据,所述用户数据包括个人数据及关系数据;
对所述用户数据进行预处理,并将预处理后的用户数据保存至数据库中。
本发明的另一较佳实施例还提供一种链路预测关系推荐装置,所述装置包括:
数据集合获取模块,用于获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据;
网络图建立模块,用于根据各所述节点的关系数据建立包括多个节点的关系网络图;
向量空间建立模块,用于根据各所述节点的个人数据建立各所述节点的属性向量空间;
计算模块,用于根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度;
加权处理模块,用于利用存在连边的两个节点之间的属性相似度对所述关系网络图中的该两个节点之间的连边进行加权处理;
链路预测模块,用于根据加权处理后的关系网络图进行链路预测,得到链路预测结果。
进一步地,所述链路预测模块包括划分单元、预测单元以及链路预测单元;
划分单元,用于获得加权处理后的关系网络图中的连边集合,并将所述连边集合划分为训练集合和测试集合;
预测单元,用于根据所述训练集合进行链路预测,得到预测结果;
链路预测单元,用于基于预设指标,根据所述测试集合中的连边关系及所述预测结果表征的连边关系得到预设指标值,获得链路预测结果。
进一步地,所述个人数据包括多维属性信息,所述向量空间建立模块包括属性向量空间建立单元、权值设置单元以及更新单元;
属性向量空间建立单元,用于根据各所述节点的多维属性信息,建立各所述节点的属性向量空间,将所述属性向量空间表示为A'={a1,a2,a3,...,an},其中A’为属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息;
权值设置单元,用于设置所述节点中的各属性信息所占权值;
更新单元,用于根据各属性信息的权值对所述属性向量空间进行加权更新,得到加权后的属性向量空间,将加权后的属性向量空间表示为A={a1,w1,a2,w2,a3,w3,....,an,wn},其中A为加权后的属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,w1,w2,w3,…wn分别各属性信息对应的加权值。
进一步地,所述计算模块还用于利用余弦相似度计算任意两个节点之间的属性相似度,所述余弦相似度表示如下:
Figure GDA0002422418100000061
其中,X、Y分别表示节点X和节点Y的属性向量空间,Xi表示节点X属性向量空间中的第i个元素,Yi表示节点Y属性向量空间中的第i个元素,n表示属性向量空间中的属性信息的数量。
进一步地,所述装置还包括用户数据获取模块以及预处理模块;
所述用户数据获取模块,用于利用Python爬虫技术从指定社交平台上获得用户数据,所述用户数据包括个人数据及关系数据;
所述预处理模块,用于对所述用户数据进行预处理,并将预处理后的用户数据保存至数据库中。
本发明实施例提供的链路预测关系推荐方法及装置,通过获得的节点所携带的关系数据建立包括多个节点的关系网络图,并根据各节点的个人数据建立节点的属性向量空间。根据节点的属性向量空间计算每两个节点之间的属性相似度,并利用存在连边的两个节点之间的属性相似度对该两个节点之间的连边进行加权处理,最后根据加权处理后的关系网络图进行链路预测,得到链路预测结果。本发明提供的链路预测关系推荐方案,将节点的自身属性数据以及节点之间的关系数据纳入考虑,提高了链路预测的准确性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明较佳实施例提供的一种电子设备的示意性结构框图。
图2为本发明较佳实施例提供的一种链路预测关系推荐方法的流程图。
图3为图2中步骤S105的子步骤的流程图。
图4为本发明较佳实施例提供的网络关系图的三维描述模型的示意图。
图5为属性相似度对于节点的连边加权后的结构图。
图6为图2中步骤S108的子步骤的流程图。
图7为将链路预测图形化表示的示意图。
图8为试验得到的部分关系推荐网络示意图。
图9为新浪微博数据集上的传统方法与NALP方法预测结果对比图。
图10为Twitter数据集上的传统方法与NALP方法预测结果对比图。
图11为本发明较佳实施例提供的链路预测关系推荐装置的功能模块框图。
图12为本发明较佳实施例提供的向量空间建立模块的功能模块框图。
图13为本发明较佳实施例提供的链路预测模块的功能模块框图。
图标:100-电子设备;110-链路预测关系推荐装置;111-用户数据获取模块;112-预处理模块;113-数据集合获取模块;114-网络图建立模块;115-向量空间建立模块;1151-属性向量空间建立单元;1152-权值设置单元;1153-更新单元;116-计算模块;117-加权处理模块;118-链路预测模块;1181-划分单元;1182-预测单元;1183-链路预测单元;120-处理器;130-存储器。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
请参阅图1,为本发明实施例提供的一种电子设备100的示意性结构框图。在本实施例中,所述电子设备100包括链路预测关系推荐装置110、处理器120及存储器130。其中,所述存储器130与所述处理器120之间直接或间接的电性连接,以实现数据的传输或交互。所述链路预测关系推荐装置110包括至少一个可以软件或固件的形式存储于所述存储器130中或固化在所述电子设备100的操作系统中的软件功能模块。所述处理器120用于执行所述存储器130中存储的可执行模块,例如所述链路预测关系推荐装置110包括的软件功能模块或计算机程序。
在本实施例中,所述电子设备100可以包括但不限于网络服务器、数据库服务器、计算机或笔记本电脑等。
请参阅图2,是本发明实施例提供的一种应用于上述电子设备100的链路预测关系推荐方法的流程图。所应说明的是,本发明提供的方法不以图2及以下所述的具体顺序为限制。下面将对图2中示出的各步骤进行详细说明。
步骤S101,利用Python爬虫技术从指定社交平台上获得用户数据,所述用户数据包括个人数据及关系数据。
步骤S102,对所述用户数据进行预处理,并将预处理后的用户数据保存至数据库中。
在本实施例中,利用Python爬虫技术从网络中指定社交平台上获得用户数据,该指定社交平台可以是新浪微博、Twitter或其他社交平台。其中,获得的用户数据包括用户自身的个人数据以及用户之间的关系数据。用户的个人数据包括用户年龄、性别、所在地、博文数等等。用户的关系数据可以包括用户的好友信息、与各好友之间的粘度值等等。
可选地,对获得的用户数据以及关系数据进行预处理,例如对用户ID进行编号,以便后续处理时方便识别,以及筛选出对关系推荐比较重要的信息,例如用户毕业学校、用户所在公司等。当然,具体筛选出哪些信息以重点用于后续的链路预测推荐可根据用户的实际需求进行设置,在本实施例中不作具体限制。然后,将经过预处理后的用户数据及关系数据保存在数据库中。
步骤S103,获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据。
步骤S104,根据各所述节点的关系数据建立包括多个节点的关系网络图。
可选地,在本实施例中,可从数据库中提取出多个用户的用户数据,在本实施例中,将每个用户抽象为一个节点,则提取出的用户数据可以为一数据集合。该数据集合中则包括了多个节点,且各节点携带有所表征的用户的个人数据及关系数据。在本实施例中,节点携带的个人数据可以包括用户名、性别、生日、所在地、公司、毕业学校、联系邮箱、个人兴趣标签、关注数、粉丝数、微博数或推文数等。这些信息都是有助于后续的链路预测推荐。并且,可根据获得的节点之间的原始的关系数据以建立起包括多个节点的关系网络图。
步骤S105,根据各所述节点的个人数据建立各所述节点的属性向量空间。
在本实施例中,所述个人数据包括多维属性信息,请参阅图3,步骤S105可以包括步骤S1051、步骤S1052和步骤S1053三个子步骤。
步骤S1051,根据各所述节点的多维属性信息,建立各所述节点的属性向量空间,将所述属性向量空间表示为A'={a1,a2,a3,...,an},其中A’为属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息。
步骤S1052,设置所述节点中的各属性信息所占权值。
步骤S1053,根据各属性信息的权值对所述属性向量空间进行加权更新,得到加权后的属性向量空间,将加权后的属性向量空间表示为A={a1,w1,a2,w2,a3,w3,....,an,wn},其中A为加权后的属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,w1,w2,w3,…wn分别各属性信息对应的加权值。
在本实施例中,各节点均携带个人数据,而各个人数据由多维属性信息构成,其中,每一维属性信息则代表了一个类型的个人数据。根据各节点的多维属性信息建立节点的属性向量空间。
可选地,可从诸多属性信息中选取出较为重要的属性信息来建立节点的属性向量空间,例如选取用户的所在地、年龄、毕业学校、公司等作为节点的属性信息。对于选取哪些属性信息来建立属性向量空间可根据需求进行设置,在本实施例中不作具体限制。把节点所承载的用户个人数据模拟为属性向量空间模型,把每一种属性信息作为该属性向量空间中的每一维数据。
其中,将所述属性向量空间表示为A'={a1,a2,a3,...,an},其中A’为属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,即表征用户的所在地、年龄、毕业学校、公司等。
应当理解,在该属性向量空间中,有的维度的信息的重要性显然是高于其他的维度的信息的,即有的属性信息对链路预测推荐结果的准确性的影响更大。因此需要对建立的属性向量空间中的各维空间设置不同的权值。可选地,对于各属性所占的权值比例可根据需求进行设置,本实施例中不作具体限制。在本实施例中,各属性信息的权值设置可为:“所在地”权值设置为1,“年龄”权值设置为0.5,“性别”权值设置为0.5,“毕业学校”权值设置为5,“公司”权值设置为5,“博文数(活跃度)”权值设置为0.5。
根据所设置的各属性信息的权值对建立的属性向量空间进行加权更新,得到加权后的属性向量空间。将加权后的属性向量空间表示为:
A={a1,w1,a2,w2,a3,w3,....,an,wn}
其中,A为加权后的属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,w1,w2,w3,…wn分别各属性信息对应的加权值。
步骤S106,根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度。
经过上述设置,各节点都拥有各自独立的属性向量空间,而衡量两个节点的属性相似程度的方法可以用关系网络图中两个节点之间的距离来表示,距离越大,则代表相似度越小,距离越小,则代表相似度程度越大。本实施例中,可选用欧式距离来表示节点属性之间的距离,用余弦相似度表示节点属性的相似度。其中,余弦相似度表示如下:
Figure GDA0002422418100000131
其中,X、Y分别表示节点X和节点Y的属性向量空间,Xi表示节点X属性向量空间中的第i个元素,Yi表示节点Y属性向量空间中的第i个元素,n表示属性向量空间中的属性信息的数量。
步骤S107,利用存在连边的两个节点之间的属性相似度对所述关系网络图中的该两个节点之间的连边进行加权处理。
在本实施例中,建立的原始的关系网络图可表示为G(V,E),其中,V为关系网络图中的节点的集合,E为关系网络图中的节点之间的连边集合,在加入节点的属性向量空间之后,关系网络图可表示为G(V,E,A)其中,A为节点的属性向量空间。
在加入节点的属性向量空间之后,原来的网络结构图由二元信息G(V,E)变成了现在的G(V,E,A)三元信息表示,如图4所示。社会网络结构图中关系的描述和节点属性向量空间的描述是两个完全不同的描述角度,在基于网络拓扑结构算法中加入节点属性向量空间因素的考虑,本实施例采用的是加权计算的模式。通过对节点间属性相似度VectorSimilarity的计算,把结果用于对节点关系的加权。例如,如图5所示,节点1和节点2之间的属性相似度的计算结果为Attribute_Similarity(1,2),节点1和节点2之间的连边在默认的情况下权值为1(无权图中所有边的权重均为1),加入节点属性权值的考虑后,节点1和节点2之间的连边权值为1+Attribute_Similarity(1,2)。图5是节点属性相似度加权后的网络结构图,原来的仅有节点和边组成的网络图上,节点与节点之间连边的关系紧密程度得到了加权,加权值是原有权值1加上节点属性的相似度。图中由5个节点组成,已经建立的关系有(1,2)、(1,3)、(1,4)、(1,5)、(2,3)和(2,4),在此关系的基础上,通过节点属性的角度,关系(1,2)加权后的值变为了1+Attri_Sim(1,2),关系(1,3)加权后的值变成了1+Attri_Sim(1,3),同理依次类推。该加权变化对应到邻接矩阵中如下。
Figure GDA0002422418100000141
节点属性相似度加权后的邻接矩阵如下:
Figure GDA0002422418100000142
步骤S108,根据加权处理后的关系网络图进行链路预测,得到链路预测结果。
请参阅图6,在本实施例中,步骤S108可以包括步骤S1081、步骤S1082和步骤S1083三个子步骤。
步骤S1081,获得加权处理后的关系网络图中的连边集合,并将所述连边集合划分为训练集合和测试集合。
步骤S1082,根据所述训练集合进行链路预测,得到预测结果。
步骤S1083,基于预设指标,根据所述测试集合中的连边关系及所述预测结果表征的连边关系得到预设指标值,获得链路预测结果。
在本实施例中,对于关系网络图中的每一对节点,如果该两个节点之间没有一条边连接,则需要用链路预测方法计算出该两个节点的相似度,两个节点的相似度越大,表示两个节点的相似度越大,表示两个节点之间存在链路的可能性就越大。例如,如图7所示,由圆圈表示的节点代表着社交网络中的人,实线代表人与人之间已经存在关系,而虚线代表尚未存在的关系。这是一个由六个节点组成的简单关系小社区,链路预测的目的就是通过现在已经有的关系网络来预测可能发生的关系链接,即由实线和节点的信息来预测虚线。好的链路预测方法往往能较准确的预测出关系紧密的两个节点之间的虚线。这个虚线就代表可能会发生的链接。
在本实施例中,将获得的关系网络图中节点的连边集合划分为训练集和测试集,例如将连边集合的90%划分为训练集,另外10%划分为测试集。在本实施例中,根据所述训练集利用上述的链路预测计算方法进行链路预测,得到预测结果。在本实施例中,选用AUC(area under the receiver operating characteristic curve)指标作为预设指标,并结合测试集合中的连边关系来对得到的预测结果进行评价。
AUC是指在测试集合中随机选择边的分数值比随机选择的不存在边的分数值高的概率。例如在每次随机从测试集合中选取一条边与随机选择的不存在边进行比较。如果测试边的分数值大于不存在边的分数值,则加第一预设值,例如1,小于则不加分,等于则加第二预设值,例如0.5。在实验进行多次比较之后,可获得一个AUC值。AUC值的大小可衡量链路预测方法的准确程度,AUC值越大,则链路预测方法准确程度越高。
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体应用场景对本发明实施例提供的技术方案进行说明。
在本实施例中,利用基于节点相似性和基于路径拓扑相似性的算法来做预测链路,选用指标为:共同邻居(CN)、Jaccard、Admin-Adar(AA)、资源分配指标(RA)、局部路径算法(LP)和Katz来分别进行链路预测。评价链路预测准确度的指标采用的是AUC指标,而整个实验会独立测试100次,将100的平均AUC(Average AUC)作为最终评价的标准。在每次独立测试的过程中,AUC的评估会通过随机的10000次比较来产生。
表一实验所用到的链路预测算法和指标列表
Figure GDA0002422418100000161
将预测结果与本发明提供的链路预测关系推荐方法的预测结果作比较。其中,需要说明是,表一中所用到的算法及指标为现有技术,因此不再其具体公式进行一一赘述。实验对比了本发明提出的基于节点属性向量空间的链路预测关系推荐方法(NALP)和传统的链路预测(Link Prediction)方法的预测结果,链路预测的指标分别是共同邻居指标(CN)、Jaccard指标、Admin-Adar指标(AA)、资源分配指标(RA)、局部路径算法(LP)和Katz指标。其中,Katz的衰减系数β设置为0.01。LP算法的参数ε设置为0.0001。得到用户关系推荐结果见附图8,预测准确率结果Average AUC如下表所示:
表二新浪微博链路预测准确率结果(Average AUC,N=100)n=10000
Figure GDA0002422418100000171
表三Twitter链路预测准确率结果(Average AUC,N=100)n=10000
Figure GDA0002422418100000172
由上面数据以及图9和图10可知,无论是在新浪微博数据集上还是在Twitter数据集上,用本发明提供的基于节点属性向量空间的链路预测关系推荐方法(NALP)的预测结果均在原来的Link Prediction方法的基础上得到了提高。
本发明另一较佳实施例还提供一种应用于上述电子设备100的链路预测关系推荐装置110。请参阅图11,所述链路预测关系推荐装置110包括用户数据获取模块111、预处理模块112、数据集合获取模块113、网络图建立模块114、向量空间建立模块115、计算模块116、加权处理模块117以及链路预测模块118。
所述用户数据获取模块111用于利用Python爬虫技术从指定社交平台上获得用户数据,所述用户数据包括个人数据及关系数据。具体地,该用户数据获取模块111可用于执行图2中所示的步骤S101,具体的操作方法可参考步骤S101的详细描述。
所述预处理模块112用于对所述用户数据进行预处理,并将预处理后的用户数据保存至数据库中。具体地,该预处理模块112可用于执行图2中所示的步骤S102,具体的操作方法可参考步骤S102的详细描述。
所述数据集合获取模块113用于获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据。具体地,该数据集合获取模块113可用于执行图2中所示的步骤S103,具体的操作方法可参考步骤S103的详细描述。
所述网络图建立模块114用于根据各所述节点的关系数据建立包括多个节点的关系网络图。具体地,该网络图建立模块114可用于执行图2中所示的步骤S104,具体的操作方法可参考步骤S104的详细描述。
所述向量空间建立模块115用于根据各所述节点的个人数据建立各所述节点的属性向量空间。具体地,该向量空间建立模块115可用于执行图2中所示的步骤S105,具体的操作方法可参考步骤S105的详细描述。
所述计算模块116用于根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度。具体地,该计算模块116可用于执行图2中所示的步骤S106,具体的操作方法可参考步骤S106的详细描述。
所述加权处理模块117用于利用存在连边的两个节点之间的属性相似度对所述关系网络图中的该两个节点之间的连边进行加权处理。具体地,该加权处理模块117可用于执行图2中所示的步骤S107,具体的操作方法可参考步骤S107的详细描述。
所述链路预测模块118用于根据加权处理后的关系网络图进行链路预测,得到链路预测结果。具体地,该链路预测模块118可用于执行图2中所示的步骤S108,具体的操作方法可参考步骤S108的详细描述。
在本实施例中,所述个人数据包多维属性信息,请参阅图12,所述向量空间建立模块115包括属性向量空间建立单元1151、权值设置单元1152以及更新单元1153。
所述属性向量空间建立单元1151用于根据各所述节点的多维属性信息,建立各所述节点的属性向量空间,将所述属性向量空间表示为A'={a1,a2,a3,...,an},其中A’为属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息。具体地,该属性向量空间建立单元1151可用于执行图3中所示的步骤S1051,具体的操作方法可参考步骤S1051的详细描述。
所述权值设置单元1152用于设置所述节点中的各属性信息所占权值。具体地,该权值设置单元1152可用于执行图3中所示的步骤S1052,具体的操作方法可参考步骤S1052的详细描述。
所述更新单元1153用于根据各属性信息的权值对所述属性向量空间进行加权更新,得到加权后的属性向量空间,将加权后的属性向量空间表示为A={a1,w1,a2,w2,a3,w3,....,an,wn},其中A为加权后的属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,w1,w2,w3,…wn分别各属性信息对应的加权值。具体地,该更新单元1153可用于执行图3中所示的步骤S1053,具体的操作方法可参考步骤S1053的详细描述。
请参阅图13,在本实施例中,所述链路预测模块118包括划分单元1181、预测单元1182以及链路预测单元1183。
所述划分单元1181用于获得加权处理后的关系网络图中的连边集合,并将所述连边集合划分为训练集合和测试集合。具体地,该划分单元1181可用于执行图6中所示的步骤S1081,具体的操作方法可参考步骤S1081的详细描述。
所述预测单元1182用于根据所述训练集合进行链路预测,得到预测结果。具体地,该预测单元1182可用于执行图6中所示的步骤S1082,具体的操作方法可参考步骤S1082的详细描述。
所述链路预测单元1183用于基于预设指标,根据所述测试集合中的连边关系及所述预测结果表征的连边关系得到预设指标值,获得链路预测结果。具体地,该链路预测单元1183可用于执行图6中所示的步骤S1083,具体的操作方法可参考步骤S1083的详细描述。
综上所述,本发明提供一种链路预测关系推荐方法及装置,通过获得的节点所携带的关系数据建立包括多个节点的关系网络图,并根据各节点的个人数据建立节点的属性向量空间。根据节点的属性向量空间计算每两个节点之间的属性相似度,并利用存在连边的两个节点之间的属性相似度对该两个节点之间的连边进行加权处理,最后根据加权处理后的关系网络图进行链路预测,得到链路预测结果。本发明提供的链路预测关系推荐方案,将节点的自身属性数据以及节点之间的关系数据纳入考虑,提高了链路预测的准确性。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种链路预测关系推荐方法,其特征在于,所述方法包括:
获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据;
根据各所述节点的关系数据建立包括多个节点的关系网络图;
根据各所述节点的个人数据建立各所述节点的属性向量空间;
根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度;
利用存在连边的两个节点之间的属性相似度对所述关系网络图中的该两个节点之间的连边进行加权处理;
根据加权处理后的关系网络图进行链路预测,得到链路预测结果,其中,所述链路预测结果中包含所述关系网络图中任意两个不存在连边的节点之间建立链路的可能性,该可能性根据所述关系网络图中的连边信息和节点信息所建立。
2.根据权利要求1所述的链路预测关系推荐方法,其特征在于,所述根据加权处理后的关系网络图进行链路预测,得到链路预测结果的步骤包括:
获得加权处理后的关系网络图中的连边集合,并将所述连边集合划分为训练集合和测试集合;
根据所述训练集合进行链路预测,得到预测结果;
基于预设指标,根据所述测试集合中的连边关系及所述预测结果表征的连边关系得到预设指标值,获得链路预测结果。
3.根据权利要求1所述的链路预测关系推荐方法,其特征在于,所述个人数据包括多维属性信息,所述根据所述个人数据建立各所述节点的属性向量空间的步骤,包括:
根据各所述节点的多维属性信息,建立各所述节点的属性向量空间,将所述属性向量空间表示为A'={a1,a2,a3,...,an},其中A’为属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息;
设置所述节点中的各属性信息所占权值;
根据各属性信息的权值对所述属性向量空间进行加权更新,得到加权后的属性向量空间,将加权后的属性向量空间表示为A={a1,w1,a2,w2,a3,w3,....,an,wn},其中A为加权后的属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,w1,w2,w3,…wn分别各属性信息对应的加权值。
4.根据权利要求1所述的链路预测关系推荐方法,其特征在于,所述根据各所述节点的属性向量空间计算所述关系网络图中任意两个节点之间的属性相似度的步骤,包括:
利用余弦相似度计算任意两个节点之间的属性相似度,所述余弦相似度表示如下:
Figure FDA0002422418090000031
其中,X、Y分别表示节点X和节点Y的属性向量空间,Xi表示节点X属性向量空间中的第i个元素,Yi表示节点Y属性向量空间中的第i个元素,n表示属性向量空间中的属性信息的数量。
5.根据权利要求1所述的链路预测关系推荐方法,其特征在于,所述获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据的步骤之前,所述方法还包括:
利用Python爬虫技术从指定社交平台上获得用户数据,所述用户数据包括个人数据及关系数据;
对所述用户数据进行预处理,并将预处理后的用户数据保存至数据库中。
6.一种链路预测关系推荐装置,其特征在于,所述装置包括:
数据集合获取模块,用于获得包括多个节点的数据集合,各所述节点携带有个人数据及关系数据;
网络图建立模块,用于根据各所述节点的关系数据建立包括多个节点的关系网络图;
向量空间建立模块,用于根据各所述节点的个人数据建立各所述节点的属性向量空间;
计算模块,用于根据各所述节点的属性向量空间计算所述关系网络图中每任意两个节点之间的属性相似度;
加权处理模块,用于利用存在连边的两个节点之间的属性相似度对所述关系网络图中的该两个节点之间的连边进行加权处理;
链路预测模块,用于根据加权处理后的关系网络图进行链路预测,得到链路预测结果,其中,所述链路预测结果中包含所述关系网络图中任意两个不存在连边的节点之间建立链路的可能性,该可能性根据所述关系网络图中的连边信息和节点信息所建立。
7.根据权利要求6所述的链路预测关系推荐装置,其特征在于,所述链路预测模块包括划分单元、预测单元以及链路预测单元;
划分单元,用于获得加权处理后的关系网络图中的连边集合,并将所述连边集合划分为训练集合和测试集合;
预测单元,用于根据所述训练集合进行链路预测,得到预测结果;
链路预测单元,用于基于预设指标,根据所述测试集合中的连边关系及所述预测结果表征的连边关系得到预设指标值,获得链路预测结果。
8.根据权利要求6所述的链路预测关系推荐装置,其特征在于,所述个人数据包括多维属性信息,所述向量空间建立模块包括属性向量空间建立单元、权值设置单元以及更新单元;
属性向量空间建立单元,用于根据各所述节点的多维属性信息,建立各所述节点的属性向量空间,将所述属性向量空间表示为A'={a1,a2,a3,...,an},其中A’为属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息;
权值设置单元,用于设置所述节点中的各属性信息所占权值;
更新单元,用于根据各属性信息的权值对所述属性向量空间进行加权更新,得到加权后的属性向量空间,将加权后的属性向量空间表示为A={a1,w1,a2,w2,a3,w3,....,an,wn},其中A为加权后的属性向量空间,a1,a2,a3,…an分别为所述节点中的属性信息,w1,w2,w3,…wn分别各属性信息对应的加权值。
9.根据权利要求6所述的链路预测关系推荐装置,其特征在于,所述计算模块还用于利用余弦相似度计算任意两个节点之间的属性相似度,所述余弦相似度表示如下:
Figure FDA0002422418090000051
其中,X、Y分别表示节点X和节点Y的属性向量空间,Xi表示节点X属性向量空间中的第i个元素,Yi表示节点Y属性向量空间中的第i个元素,n表示属性向量空间中的属性信息的数量。
10.根据权利要求6所述的链路预测关系推荐装置,其特征在于,所述装置还包括用户数据获取模块以及预处理模块;
所述用户数据获取模块,用于利用Python爬虫技术从指定社交平台上获得用户数据,所述用户数据包括个人数据及关系数据;
所述预处理模块,用于对所述用户数据进行预处理,并将预处理后的用户数据保存至数据库中。
CN201711227663.7A 2017-11-29 2017-11-29 一种链路预测关系推荐方法及装置 Active CN107895038B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711227663.7A CN107895038B (zh) 2017-11-29 2017-11-29 一种链路预测关系推荐方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711227663.7A CN107895038B (zh) 2017-11-29 2017-11-29 一种链路预测关系推荐方法及装置

Publications (2)

Publication Number Publication Date
CN107895038A CN107895038A (zh) 2018-04-10
CN107895038B true CN107895038B (zh) 2020-05-12

Family

ID=61806685

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711227663.7A Active CN107895038B (zh) 2017-11-29 2017-11-29 一种链路预测关系推荐方法及装置

Country Status (1)

Country Link
CN (1) CN107895038B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108811028B (zh) * 2018-07-23 2021-07-16 南昌航空大学 一种机会网络链路的预测方法、装置及可读存储介质
CN110751284B (zh) * 2019-06-06 2020-12-25 北京嘀嘀无限科技发展有限公司 一种异构信息网络嵌入方法、装置、电子设备及存储介质
CN110263280B (zh) * 2019-06-11 2021-03-23 浙江工业大学 一种基于多视图的动态链路预测深度模型及应用
CN110263106B (zh) * 2019-06-25 2020-02-21 中国人民解放军国防科技大学 协同舆论欺诈检测方法和装置
CN110704725B (zh) * 2019-06-27 2023-03-21 重庆大学 一种基于专利的校企合作推荐算法
CN110335165B (zh) * 2019-06-28 2021-03-30 京东数字科技控股有限公司 一种链路预测方法和装置
CN112988371A (zh) * 2019-12-13 2021-06-18 天翼电子商务有限公司 基于大规模分布式运维系统的机房资源预测方法及装置
CN111026973B (zh) * 2019-12-27 2023-04-18 支付宝(杭州)信息技术有限公司 一种商品兴趣度预测方法、装置及电子设备
CN113344638B (zh) * 2021-06-29 2022-05-24 云南电网有限责任公司信息中心 一种基于超图的电网用户族群画像构建方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077247A (zh) * 2013-01-17 2013-05-01 清华大学 一种社交网络中的朋友关系传递树的建立方法
CN103309972A (zh) * 2013-06-08 2013-09-18 清华大学 基于链路预测的推荐方法和系统
CN104731962A (zh) * 2015-04-03 2015-06-24 重庆邮电大学 一种社交网络中基于相似社团的好友推荐方法及系统
CN106649659A (zh) * 2016-12-13 2017-05-10 重庆邮电大学 一种面向社交网络的链接预测系统及方法
CN107346333A (zh) * 2017-06-27 2017-11-14 浙江大学 一种基于链路预测的在线社交网络好友推荐方法与系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103077247A (zh) * 2013-01-17 2013-05-01 清华大学 一种社交网络中的朋友关系传递树的建立方法
CN103309972A (zh) * 2013-06-08 2013-09-18 清华大学 基于链路预测的推荐方法和系统
CN104731962A (zh) * 2015-04-03 2015-06-24 重庆邮电大学 一种社交网络中基于相似社团的好友推荐方法及系统
CN106649659A (zh) * 2016-12-13 2017-05-10 重庆邮电大学 一种面向社交网络的链接预测系统及方法
CN107346333A (zh) * 2017-06-27 2017-11-14 浙江大学 一种基于链路预测的在线社交网络好友推荐方法与系统

Also Published As

Publication number Publication date
CN107895038A (zh) 2018-04-10

Similar Documents

Publication Publication Date Title
CN107895038B (zh) 一种链路预测关系推荐方法及装置
US10846052B2 (en) Community discovery method, device, server and computer storage medium
Abdel-Basset et al. A group decision making framework based on neutrosophic VIKOR approach for e-government website evaluation
CN110168523B (zh) 改变监测跨图查询
Janssen et al. Model selection for social networks using graphlets
CN104750798B (zh) 一种应用程序的推荐方法和装置
CN106817251B (zh) 一种基于节点相似度的链路预测方法及装置
CN106844407B (zh) 基于数据集相关性的标签网络产生方法和系统
CN110162692B (zh) 用户标签确定方法、装置、计算机设备和存储介质
Zhang et al. A trust model stemmed from the diffusion theory for opinion evaluation
CN111159184A (zh) 元数据追溯方法、装置及服务器
CN109241442B (zh) 基于预测值填充的项目推荐方法、可读存储介质和终端
Naaman et al. Edge sign prediction based on a combination of network structural topology and sign propagation
KR101467707B1 (ko) 지식 베이스의 개체 매칭 방법 및 이를 위한 장치
CN113656699B (zh) 用户特征向量确定方法、相关设备及介质
CN110968802A (zh) 一种用户特征的分析方法、分析装置及可读存储介质
JP7092194B2 (ja) 情報処理装置、判定方法、及びプログラム
CN112506864B (zh) 文件检索的方法、装置、电子设备及可读存储介质
Freitas et al. Local partition in rich graphs
CN111611228A (zh) 一种基于分布式数据库的负载均衡调整方法及装置
Prilepok et al. Spam detection using data compression and signatures
CN114223012A (zh) 推送对象确定方法、装置、终端设备及存储介质
Missaoui et al. Social network restructuring after a node removal
Braun et al. A tree-based algorithm for mining diverse social entities
CN113807749B (zh) 一种对象评分方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant