当前位置: 首页 > 专利查询>安徽大学专利>正文

一种识别异质信息网络中有影响力的开发者的方法及装置制造方法及图纸

技术编号:24252430 阅读:40 留言:0更新日期:2020-05-23 00:01
本发明专利技术公开了一种识别异质信息网络中有影响力的开发者的方法及装置,所述方法包括:提取GitHub上的公开数据集中所有与开发者相关的信息;构造异质信息网络;分别计算开发者子网络下的开发者的影响力值、项目子网络下的项目之间相互影响力值、开发者‑公司子网络下某公司中某开发者的影响力值以及开发者‑项目子网络下某项目中某开发者的影响力值,然后将每个网络下计算的影响力值融合形成最终的开发者影响力值;根据最终的开发者影响力值的大小推荐开发者;本发明专利技术的优点在于:能够获取开发者的影响力值且使推荐信息准确全面。

A method and device for identifying influential developers in heterogeneous information networks

【技术实现步骤摘要】
一种识别异质信息网络中有影响力的开发者的方法及装置
本专利技术涉及异质信息网络领域,更具体涉及一种识别异质信息网络中有影响力的开发者的方法及装置。
技术介绍
随着异质信息网络的深入研究,作为网络中有影响力的节点越来越受到重视。尤其在与开发者相关的网络中,识别有影响力的开发人员在开发者子网络中具有重要意义。中国专利公开号CN107767058A,公开了一种众包软件开发者推荐方法。首先,该算法对数据集进行预处理,选取信息较为完善的任务,并进一步提取选取的任务特征信息(如任务开发时间、报酬、需求描述、所需技能、发布时间、发布平台等)构造任务的特征向量;然后对任务进行聚类,将相似的任务聚集一起;然后,对于新的众包任务同样提取任务的特征,并得出与之相似的聚类任务,进一步在相似的任务间通过机器学习分类算法将获胜率高的开发者作为初步推荐的开发者候选集;最后,在开发者候选集中计算开发者的可靠性,并剔除部分可靠性低的开发者,根据开发者参与历史任务情况分析开发者之间的关联关系,建立开发者竞争网络。但是该专利技术针对众包软件进行开发者推荐,从要完成的任务出发最终进行开发者推荐,没有考虑开发者与公司以及开发者与项目之间的联系,推荐信息存在不够准确不够全面的问题。
技术实现思路
本专利技术所要解决的技术问题在于如何提供一种识别异质信息网络中有影响力的开发者的方法及装置,以获取开发者的影响力值且使推荐信息准确全面。本专利技术通过以下技术手段实现解决上述技术问题的:一种识别异质信息网络中有影响力的开发者的方法,所述方法包括:提取GitHub上的公开数据集中所有与开发者相关的信息;通过开发者相关的信息构造开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络,开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络构成异质信息网络;分别计算开发者子网络下的开发者的影响力值、项目子网络下的项目之间相互影响力值、开发者-公司子网络下某公司中某开发者的影响力值以及开发者-项目子网络下某项目中某开发者的影响力值,然后将每个网络下计算的影响力值融合形成最终的开发者影响力值;根据最终的开发者影响力值的大小推荐开发者。本专利技术综合考虑开发者之间、项目之间、开发者与公司之间、开发者与项目之间的联系,构建异质信息网络,获取多个子网络并构建异质信息网络,异质信息网络的每个子网络融入了语义信息,计算每个子网络中项目、开发者以及公司的影响力,最终将所有影响力融合得到最终的开发者影响力,利用每个子网络更好的结合了开发者的社交关系和项目的自身特征进行推荐,提高了推荐的精准度,并且考虑开发者的社交关系,推荐信息全面。优选的,所述开发者子网络下的开发者的影响力值包括:对每一个开发者的影响力值赋予一个初始值n/ND,通过公式获取所述开发者子网络下的开发者的影响力值,在计算每一个开发者的影响力值时,与其共同合作的开发者的影响力值均是初始值,其中,W(Di)表示开发者子网络下的开发者Di的影响力值,ND表示开发者总的数量,d表示阻尼因子,Dj表示开发者Di的共同开发者,n表示开发者Dj的数量,S(Dj)表示与开发者Dj共同合作的开发者数量,W(Dj)表示开发者Dj影响力值。优选的,所述项目子网络下的项目之间相互影响力值包括:对每一个项目的影响力值赋予一个初始值m/Np,通过公式获取所述项目子网络下的项目之间相互影响力值,在计算每一个项目的影响力值时,与其有关的项目的影响力值均是初始值,其中,W(Pi)表示项目子网络下的项目Pi的影响力值,NP表示项目总的数量,Pj表示与项目Pi有关的项目,m表示项目Pj的数量,S(Pj)表示与项目Pj有关的所有项目的数量,W(Pj)表示项目Pj的影响力值。优选的,所述开发者-公司子网络下某公司中某开发者的影响力值包括:步骤401:利用公司Ci中的开发者Dj的影响力值的初始值,根据公式计算公司Ci当前的影响力值;其中,R'(Ci)为公司Ci当前的影响力值,NC为开发者-公司子网络下所有公司的数量,K为公司Ci中开发者的数量,R(Dj)为公司Ci中的开发者Dj的影响力值的初始值;步骤402:利用公司Ci的影响力值的初始值,根据公式计算公司Ci中的开发者Dj当前的影响力值;其中,每个公司的影响力值的初始值为1/NC,R'(Dj)为公司Ci中的开发者Dj当前的影响力值,t为开发者-公司子网络下与开发者Dj相关的公司数量;S(Ci)为公司Ci中的开发者数量;步骤403:将开发者Dj当前的影响力值作为开发者Dj的影响力值的初始值,将公司Ci当前的影响力值作为公司Ci的影响力值的初始值,返回执行步骤401至步骤402,直至相邻两次迭代中,所有开发者的影响力值之和的差小于0.00001。优选的,所述开发者-项目子网络下某项目中某开发者的影响力值包括:步骤501:利用与项目Pi有关的开发者Dj的影响力值的初始值,根据公式计算项目Pi当前的影响力值;其中,L'(Pi)为项目Pi当前的影响力值,v为项目Pi中开发者的数量,L(Dj)为与项目Pi相关的开发者Dj的影响力值的初始值,S(Dj)为开发者Dj所参与的所有项目的数量;步骤502:利用项目Pi的影响力值的初始值,根据公式计算与项目Pi相关的开发者Dj当前的影响力值;其中,L'(Dj)为与项目Pi相关的开发者Dj当前的影响力值,u为开发者-项目子网络下与开发者Dj相关的项目数量,S(Pi)为与项目Pi相关的开发者数量;步骤503:将项目Pi当前的影响力值作为项目Pi的影响力值的初始值,将与项目Pi相关的开发者Dj当前的影响力值作为与项目Pi有关的开发者Dj的影响力值的初始值,返回执行步骤501至步骤502,直至相邻两次迭代中,所有开发者的影响力值之和的差小于0.00001。优选的,所述将每个网络下计算的影响力值融合形成的开发者影响力值,包括:将开发者子网络下获取的开发者的影响力值作为初始开发者影响力值,初始开发者影响力值作为开发者-公司子网络下的开发者的影响力值的初始值获取次级开发者影响力值;将次级开发者影响力值作为开发者-项目子网络中开发者的影响力值的初始值,将项目子网络下的项目的影响力值作为开发者-项目子网络中项目的影响力值的初始值,计算获取最终的开发者影响力值。本专利技术还提供一种识别异质信息网络中有影响力的开发者的装置,所述装置包括:信息提取模块,用于提取GitHub上的公开数据集中所有与开发者相关的信息;网络构建模块,用于通过开发者相关的信息构造开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络,开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络构成异质信息网络;影响力获取模块,用于分别计算开发者子网络下的开发者的影响力值、项目子网络下的项目之间相互影响力值、开发者-公司子网络下某公司中某开发者的影响力值以及开发者-项目子网络下某项目中某开发者的影响力值,然后将每个网络下计算的影响力值融合形成最终的开发者影响力值;...

【技术保护点】
1.一种识别异质信息网络中有影响力的开发者的方法,其特征在于,所述方法包括:/n提取GitHub上的公开数据集中所有与开发者相关的信息;/n通过开发者相关的信息构造开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络,开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络构成异质信息网络;/n分别计算开发者子网络下的开发者的影响力值、项目子网络下的项目之间相互影响力值、开发者-公司子网络下某公司中某开发者的影响力值以及开发者-项目子网络下某项目中某开发者的影响力值,然后将每个网络下计算的影响力值融合形成最终的开发者影响力值;/n根据最终的开发者影响力值的大小推荐开发者。/n

【技术特征摘要】
1.一种识别异质信息网络中有影响力的开发者的方法,其特征在于,所述方法包括:
提取GitHub上的公开数据集中所有与开发者相关的信息;
通过开发者相关的信息构造开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络,开发者子网络、项目子网络、开发者-公司子网络以及开发者-项目子网络构成异质信息网络;
分别计算开发者子网络下的开发者的影响力值、项目子网络下的项目之间相互影响力值、开发者-公司子网络下某公司中某开发者的影响力值以及开发者-项目子网络下某项目中某开发者的影响力值,然后将每个网络下计算的影响力值融合形成最终的开发者影响力值;
根据最终的开发者影响力值的大小推荐开发者。


2.根据权利要求1所述的一种识别异质信息网络中有影响力的开发者的方法,其特征在于,所述开发者子网络下的开发者的影响力值包括:对每一个开发者的影响力值赋予一个初始值n/ND,通过公式获取所述开发者子网络下的开发者的影响力值,在计算每一个开发者的影响力值时,与其共同合作的开发者的影响力值均是初始值,其中,W(Di)表示开发者子网络下的开发者Di的影响力值,ND表示开发者总的数量,d表示阻尼因子,Dj表示开发者Di的共同开发者,n表示开发者Dj的数量,S(Dj)表示与开发者Dj共同合作的开发者数量,W(Dj)表示开发者Dj影响力值。


3.根据权利要求2所述的一种识别异质信息网络中有影响力的开发者的方法,其特征在于,所述项目子网络下的项目之间相互影响力值包括:对每一个项目的影响力值赋予一个初始值m/Np,通过公式获取所述项目子网络下的项目之间相互影响力值,在计算每一个项目的影响力值时,与其有关的项目的影响力值均是初始值,其中,W(Pi)表示项目子网络下的项目Pi的影响力值,NP表示项目总的数量,Pj表示与项目Pi有关的项目,m表示项目Pj的数量,S(Pj)表示与项目Pj有关的所有项目的数量,W(Pj)表示项目Pj的影响力值。


4.根据权利要求3所述的一种识别异质信息网络中有影响力的开发者的方法,其特征在于,所述开发者-公司子网络下某公司中某开发者的影响力值包括:
步骤401:利用公司Ci中的开发者Dj的影响力值的初始值,根据公式计算公司Ci当前的影响力值;其中,R'(Ci)为公司Ci当前的影响力值,NC为开发者-公司子网络下所有公司的数量,K为公司Ci中开发者的数量,R(Dj)为公司Ci中的开发者Dj的影响力值的初始值;
步骤402:利用公司Ci的影响力值的初始值,根据公式计算公司Ci中的开发者Dj当前的影响力值;其中,每个公司的影响力值的初始值为1/NC,R'(Dj)为公司Ci中的开发者Dj当前的影响力值,t为开发者-公司子网络下与开发者Dj相关的公司数量;S(Ci)为公司Ci中的开发者数量;
步骤403:将开发者Dj当前的影响力值作为开发者Dj的影响力值的初始值,将公司Ci当前的影响力值作为公司Ci的影响力值的初始值,返回执行步骤401至步骤402,直至相邻两次迭代中,所有开发者的影响力值之和的差小于0.00001。


5.根据权利要求4所述的一种识别异质信息网络中有影响力的开发者的方法,其特征在于,所述开发者-项目子网络下某项目中某开发者的影响力值包括:
步骤501:利用与项目Pi有关的开发者Dj的影响力值的初始值,根据公式计算项目Pi当前的影响力值;其中,L'(Pi)为项目Pi当前的影响力值,v为项目Pi中开发者的数量,L(Dj)为与项目Pi相关的开发者Dj的影响力值的初始值,S(Dj)为开发者Dj所参与的所有项目的数量;
步骤502:利用项目Pi的影响力值的初始值,根据公式计算与项目Pi相关的开发者Dj当前的影响力值;其中,L'(Dj)为与项目Pi相关的开发者Dj当前的影响力值,u为开发者-项目子网络下与开发者Dj相关的项目数量,S(Pi)为与项目Pi相关的开发者数量;
步骤503:将项目Pi当前的影响力值作为项目Pi的影响力值的初始值,将与...

【专利技术属性】
技术研发人员:张以文邵振颜登程徐雪健
申请(专利权)人:安徽大学
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1