CN113836395B - 一种基于异构信息网络的服务开发者按需推荐方法及*** - Google Patents

一种基于异构信息网络的服务开发者按需推荐方法及*** Download PDF

Info

Publication number
CN113836395B
CN113836395B CN202111004609.2A CN202111004609A CN113836395B CN 113836395 B CN113836395 B CN 113836395B CN 202111004609 A CN202111004609 A CN 202111004609A CN 113836395 B CN113836395 B CN 113836395B
Authority
CN
China
Prior art keywords
service
developer
similar
api
developers
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
CN202111004609.2A
Other languages
English (en)
Other versions
CN113836395A (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.)
Henan University
Original Assignee
Henan 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 Henan University filed Critical Henan University
Priority to CN202111004609.2A priority Critical patent/CN113836395B/zh
Publication of CN113836395A publication Critical patent/CN113836395A/zh
Application granted granted Critical
Publication of CN113836395B publication Critical patent/CN113836395B/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
    • 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/951Indexing; Web crawling techniques
    • 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/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开一种基于异构信息网络的服务开发者按需推荐方法及***,该方法包括:基于BERT对服务描述及用户需求服务描述进行向量化,并计算二者相似性,基于最相似服务所属类别判断用户需求服务所属类别;构建开发者评价模型,对需求所属类别内开发者进行评价,得到最强开发者;构建服务开发者异构信息网络,以最强开发者为路径起点,基于所抽取元路径进行遍历,计算开发者的相似得分并对所获取相似开发者进行筛选;基于用户需求服务属性对相似服务开发者计算属性匹配得分,结合服务开发者相似得分,通过加权计算得到相似服务开发者最终得分,排序得到服务开发者推荐列表。本发明提升了服务开发者推荐的准确度,有效解决了服务开发者按需推荐问题。

Description

一种基于异构信息网络的服务开发者按需推荐方法及***
技术领域
本发明属于服务开发者推荐技术领域,尤其涉及一种基于异构信息网络的服务开发者按需推荐方法及***。
背景技术
当前网络上服务数量逐渐增加,功能也逐渐复杂,传统的单一程序无法满足开发需求,因此面向服务的架构被提出,云计算等相关技术的迅速发展,使得服务资源的数量日益增大,服务资源也越来越多样化,比如服务遵循的协议不再单一化(REST、URI QueryString/CRUD、CSV等),服务描述方式也逐步多样化(WSDL、WADL、自然语言文本等)。海量的服务资源和服务资源的多样化,使得用户进行服务选择时面临信息过载的问题,因此研究人员提出了多种服务发现方法找到定位满足服务请求者需求的服务。但是,服务发现技术可能不会保证发现的服务是高质量的,也未能保证所发现服务尽可能的匹配用户的开发需求。而一个合适的服务开发者不仅能够保证服务开发质量,还能降低服务开发周期,但是当前环境下,如何处理海量的服务及开发者各自的信息是个问题,同时服务与服务、服务与开发者之间存在大量的错综复杂的关联信息,如何有效整合这些信息也是问题之一。因此,如何为不同领域、满足个性化服务属性特征的服务开发需求推荐合适的服务开发者是当前的难点所在。
目前关于服务开发者按需推荐的研究相对稀少,已有的方法仍存在以下问题:(1)如何基于用户需求进行切入,以用户需求描述为起点,合理且高效的实施服务开发者推荐;(2)开发者评价问题是服务开发者推荐***需要解决的难点之一,对于开发者评价的建模和评价标准至今没有一致的定义;(3)服务与服务、服务与开发者之间,蕴含着多元对象和对象间的相互联系,这些联系可有效促进开发者推荐,而当前的方法没有很好的利用这些关联关系。
因此,针对海量的服务资源和大量拥有不同技能经验的服务开发者,如何挖掘涉及服务与开发者之间的对象与连接类型,有效整合对象自身信息以及不同对象间的关联信息,为用户推荐满足其个性化需求的服务开发者仍然是一个挑战性难题。研究服务开发者按需推荐方法对提高服务开发效率、保证服务质量具有重要的科学意义。
发明内容
本发明针对现有关于服务开发者按需推荐方法存在的如下问题:没有基于用户需求进行切入,以用户需求描述为起点,合理且高效的实施服务开发者推荐的问题;对于开发者评价的建模和评价标准至今没有一致的定义的问题;没有很好的利用服务与开发者之间错综复杂的关联关系进行推荐的问题;提出一种基于异构信息网络的服务开发者按需推荐方法及***。
为了实现上述目的,本发明采用以下技术方案:
本发明一方面提出一种基于异构信息网络的服务开发者按需推荐方法,包括:
步骤1,爬取Programmable Web网站原始数据集,所述原始数据集包括API服务描述、API服务所属类别、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,分别得到用户需求服务描述向量、API服务描述向量,通过计算用户需求服务描述向量与API服务描述向量间的欧几里得距离来确定用户需求服务描述文本与现有API服务描述文本的相似性;基于最相似API服务所属的类别判断用户需求服务所属类别;
步骤2,根据服务开发者相关信息构建服务开发者评价模型,对步骤1得到的用户需求服务所属类别内的API服务开发者进行评价,得到最强服务开发者;
步骤3,基于Programmable Web网站原始数据集构建异构信息网络,该网络的节点类型包括服务开发者、API服务、Mashup应用服务,将三类实体间的关联关系作为网络中的边,构建服务开发者异构信息网络,然后进行相似服务开发者元路径抽取,进而以步骤2得到的最强服务开发者为路径起点,基于抽取的相似服务开发者元路径进行遍历,并对不同元路径分配不同权重,计算不同服务开发者的相似得分,得到相似服务开发者列表;
步骤4,基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表。
进一步地,所述步骤1包括:
步骤1.1,爬取Programmable Web网站原始数据集,包括API服务名称、API服务描述、API服务所属类别、API服务的架构风格和响应格式、Mashup应用服务名称、Mashup应用服务所调用API服务列表、服务开发者相关信息、API服务以及Mashup应用服务与服务开发者之间的关联关系、API服务与Mashup应用服务之间的调用关系;
步骤1.2,针对步骤1.1所爬取的数据,对每个API服务描述文本以及用户需求服务描述文本进行预处理操作,包括分词、去停词、词干化,利用BERT预训练模型将预处理的用户需求服务描述文本和API服务描述文本向量化,分别得到用户需求服务描述向量、API服务描述向量集;
步骤1.3,针对步骤1.2得到的用户需求服务描述向量与现有API服务描述向量集,基于欧几里得距离计算用户需求服务描述向量与每个API服务描述向量间的相似度,距离越小,相似度越大,基于最相似API服务所属类别确定用户需求服务所属类别。
进一步地,所述步骤2包括:
步骤2.1,将得到的服务开发者相关信息进行解析,根据服务开发者所开发API服务列表以及相应API服务的属性信息,得到每个服务开发者技能经验;对服务开发者所开发API服务数量、服务开发者基于特定类别内API服务所开发Mashup应用服务数量、服务开发者粉丝数、服务开发者技能经验四个维度分配不同权重,构建服务开发者评价模型;
步骤2.2,针对步骤1.3得到的用户需求服务所属类别,通过步骤2.1构建的服务开发者评价模型对类别内API服务对应开发者进行评价,得到评分最高的开发者作为该类别内的最强服务开发者。
进一步地,所述步骤2.1包括:
按照下式对服务开发者进行多维度能力评分计算:
Figure BDA0003236729870000031
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1234=1;NA表示服务开发者所开发的API服务数量,NA_Max表示用户需求服务所属类别内开发者所开发服务数量的最大值;NM表示开发者基于用户需求服务所属类别内API服务所开发的Mashup应用服务数量,表示该开发者开发特定类别服务的开发能力,NM_Max表示用户需求服务所属类别内开发者NM的最大值;Nbf表示服务开发者被关注数即粉丝数,Nbf_Max表示用户需求服务所属类别内粉丝最多的开发者的粉丝数,代表开发者的影响力;Ne表示服务开发者技能经验中的技能属性个数,Ne_Max表示用户需求服务所属类别内开发者技能经验中技能属性数量最大值。
进一步地,所述步骤3包括:
步骤3.1,根据步骤1.1得到的API服务以及Mashup应用服务与服务开发者之间关联关系、API服务与Mashup应用服务之间的调用关系挖掘服务开发者、API服务、Mashup应用服务三类实体间的关联关系,将三类实体作为网络中的节点、所述三类实体间的关联关系作为网络中的边,进行服务开发者异构信息网络构建;
步骤3.2,根据步骤1.2得到的预处理后的用户需求服务描述,进行相似服务开发者元路径抽取,针对得到的最强服务开发者,根据所抽取元路径进行基于异构信息网络的相似服务开发者发现;
步骤3.3,对不同元路径分配不同权重,计算不同服务开发者的相似得分,根据所述相似得分对相似开发者进行排序,得到top-K相似服务开发者列表。
进一步地,所述步骤3.3中,对不同元路径分配不同权重,计算不同服务开发者的相似得分,具体描述如下:
统计所抽取的相似服务开发者元路径遍历下的所有结果中各个服务开发者出现的频次,对频次最高的前十个服务开发者进行当前路径下得分SD计算:
Figure BDA0003236729870000041
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
Figure BDA0003236729870000051
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
Figure BDA0003236729870000052
j表示第j条元路径,m为元路径的条数,
Figure BDA0003236729870000053
为开发者k在元路径j下的得分,
Figure BDA0003236729870000054
表示元路径j的权重。
进一步地,所述步骤4包括:
步骤4.1,基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
步骤4.2,基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
步骤4.3,根据得到的服务开发者相似得分和步骤4.2得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表。
进一步地,所述步骤4.2中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
Figure BDA0003236729870000055
其中,Ri表示用户需求服务的属性集合,Aj表示相似服务开发者技能经验属性集合,Simtag(Ri,Aj)∈[0,1]表示用户需求服务属性集合与相似服务开发者技能经验属性集合间的相似匹配程度,Simtag(Ri,Aj)越大,表示属性匹配得分越高。
进一步地,所述步骤4.3中,相似服务开发者的最终得分按照下式得出:
Similarity(U,D)=α(Simtag(Utag,D))+β(ScoreD)
其中,U表示用户需求服务的需求,D表示相似服务开发者,α和β是权重因子,其中α+β=1,Utag表示用户需求服务的属性集合,Simtag(Utag,D)为用户需求服务的属性集合与相似服务开发者的技能经验属性集合的属性匹配得分,ScoreD是相似服务开发者的相似得分。
本发明另一方面提出一种基于异构信息网络的服务开发者按需推荐***,包括:
用户需求服务所属类别判断模块,用于爬取Programmable Web网站原始数据集,所述原始数据集包括API服务描述、API服务所属类别、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,分别得到用户需求服务描述向量、API服务描述向量,通过计算用户需求服务描述向量与API服务描述向量间的欧几里得距离来确定用户需求服务描述文本与现有API服务描述文本的相似性;基于最相似API服务所属的类别判断用户需求服务所属类别;
服务开发者评价模块,用于根据服务开发者相关信息构建服务开发者评价模型,对用户需求服务所属类别判断模块得到的用户需求服务所属类别内的API服务开发者进行评价,得到最强服务开发者;
相似服务开发者列表得出模块,用于基于Programmable Web网站原始数据集构建异构信息网络,该网络的节点类型包括服务开发者、API服务、Mashup应用服务,将三类实体间的关联关系作为网络中的边,构建服务开发者异构信息网络,然后进行相似服务开发者元路径抽取,进而以服务开发者评价模块得到的最强服务开发者为路径起点,基于抽取的相似服务开发者元路径进行遍历,并对不同元路径分配不同权重,计算不同服务开发者的相似得分,得到相似服务开发者列表;
服务开发者推荐列表得出模块,用于基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表。
与现有技术相比,本发明具有的有益效果:
(1)基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,并做相似度计算,得到用户需求服务所属类别,有效提高了用户需求服务所属类别定位的效率和准确度;
(2)基于元路径的相似服务开发者发现,充分考虑相似服务开发者元路径蕴含的语义信息,进行元路径抽取并对不同元路径分配权重,同时基于路径实例数量进行开发者相似得分计算,可以更有效的实现相似开发者发现;
(3)基于异构信息网络的服务开发者推荐,通过挖掘服务开发者相关信息,从多维度构建了服务开发者评价模型,实现了以特定类别内最强开发者为基础的相似服务开发者发现,同时融合需求关联和开发者技能经验进行服务开发者按需推荐,实现了利用服务与开发者相关信息的同时,有效整合服务与开发者之间的复杂关联,通过利用网络中丰富的语义信息,提升了服务开发者推荐的准确度,有效解决了服务开发者按需推荐问题。
附图说明
图1为本发明实施例一种基于异构信息网络的服务开发者按需推荐方法的基本流程图;
图2为本发明实施例一种基于异构信息网络的服务开发者按需推荐***的架构示意图。
具体实施方式
下面结合附图和具体的实施例对本发明做进一步的解释说明:
如图1所示,一种基于异构信息网络的服务开发者按需推荐方法,包括:
步骤1,爬取Programmable Web网站原始数据集,所述原始数据集包括API服务描述、API服务所属类别、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,分别得到用户需求服务描述向量、API服务描述向量,通过计算用户需求服务描述向量与API服务描述向量间的欧几里得距离来确定用户需求服务描述文本与现有API服务描述文本的相似性;基于最相似API服务所属的类别判断用户需求服务所属类别;
步骤2,根据服务开发者相关信息构建服务开发者评价模型,对步骤1得到的用户需求服务所属类别内的API服务开发者进行评价,得到最强服务开发者;
步骤3,基于Programmable Web网站原始数据集构建异构信息网络,该网络的节点类型包括服务开发者、API服务、Mashup应用服务,将三类实体间的关联关系作为网络中的边,构建服务开发者异构信息网络,然后进行相似服务开发者元路径抽取,进而以步骤2得到的最强服务开发者为路径起点,基于抽取的相似服务开发者元路径进行遍历,并对不同元路径分配不同权重,计算不同服务开发者的相似得分,得到相似服务开发者列表;
步骤4,基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表。
进一步地,所述步骤1的具体实现步骤为:
步骤1.1,爬取Programmable Web网站原始数据集,包括API服务名称、API服务描述、API服务所属类别、API服务架构风格和响应格式等属性信息、Mashup应用服务名称、Mashup应用服务所调用API服务列表、服务开发者相关信息、API服务以及Mashup应用服务与服务开发者之间的关联关系、API服务与Mashup应用服务之间的调用关系;
步骤1.2,针对步骤1.1所爬取的数据,对每个API服务描述文本以及用户需求服务描述文本进行预处理操作,包括分词、去停词、词干化,利用BERT预训练模型将预处理的用户需求服务描述文本和API服务描述文本向量化,分别得到用户需求服务描述向量、API服务描述向量集;
步骤1.3,针对步骤1.2得到的用户需求服务描述向量与现有API服务描述向量集,基于欧几里得距离计算用户需求服务描述向量与每个API服务描述向量间的相似度,距离越小,相似度越大,基于最相似API服务所属的类别确定用户需求服务所属类别。
进一步地,所述的步骤1.3中,用户需求服务描述向量与现有API服务描述向量进行基于欧几里得距离的相似度计算:
Figure BDA0003236729870000091
其中x表示用户需求服务描述向量,y表示API服务描述向量。
进一步地,所述步骤2包括:
步骤2.1,将得到的服务开发者相关信息进行解析,根据服务开发者所开发API服务列表以及相应API服务的属性信息,得到每个服务开发者技能经验;对服务开发者所开发API服务数量、服务开发者基于特定类别内API服务所开发Mashup应用服务数量、服务开发者粉丝数、服务开发者技能经验四个维度分配不同权重,构建服务开发者评价模型;
步骤2.2,针对步骤1.3得到的用户需求服务所属类别,通过步骤2.1构建的服务开发者评价模型对类别内API服务对应开发者进行评价,得到评分最高的开发者作为该类别内的最强服务开发者。
进一步地,所述步骤2.1包括:
按照下式对服务开发者进行多维度能力评分计算:
Figure BDA0003236729870000092
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1234=1;NA表示服务开发者所开发的API服务数量,NA_Max表示用户需求服务所属类别内开发者所开发服务数量的最大值;NM表示开发者基于用户需求服务所属类别内API服务所开发的Mashup应用服务数量,表示该开发者开发特定类别服务的开发能力,NM_Max表示用户需求服务所属类别内开发者NM的最大值;Nbf表示服务开发者被关注数即粉丝数,Nbf_Max表示用户需求服务所属类别内粉丝最多的开发者的粉丝数,代表开发者的影响力;Ne表示服务开发者技能经验中的技能属性个数,Ne_Max表示用户需求服务所属类别内开发者技能经验中技能属性数量最大值。
进一步地,所述步骤3包括:
步骤3.1,根据步骤1.1所获取的API服务以及Mashup应用服务与服务开发者之间的关联关系、API服务与Mashup应用服务之间的调用关系挖掘服务与开发者以及服务与服务之间的连接信息,以服务开发者,API服务,Mashup应用服务为网络中三类节点,对三类实体进行编号,将该三类实体间的关联关系作为网络中的边,对不同实体间的直接连接进行标记,基于实体列表和连接标记构建实体关联图从而通过迭代实现服务开发者网络的构建。
步骤3.2,根据步骤1.2得到的预处理后的用户需求服务描述,进行相似服务开发者元路径抽取,针对步骤2.2得到的最强服务开发者,根据所抽取元路径进行基于异构信息网络的相似服务开发者发现;
具体地,考虑到用户需求,为更准确地度量相似性,首先确定关键的元路径集合,所抽取的具体元路径及释义如下表1所示:
表1 抽取元路径及释义
Figure BDA0003236729870000101
将步骤2.2得到的最强服务开发者作为路径起点,根据所挑选相似服务开发者元路径基于构建的服务开发者异构信息网络进行遍历,根据元路径遍历结果,统计各元路径遍历结果中相似开发者出现频次,实现特定路径下对所发现开发者的挑选,对频次最高的前十个开发者进行当前路径下得分计算,得到不同元路径下的top-10相似开发者列表。
步骤3.3,对不同的相似服务开发者元路径分配不同的权重,计算不同开发者之间的相似得分,根据相似得分对相似服务开发者进行排序,得到top-K相似服务开发者列表;具体地,根据路径长度为不同元路径分配权重,综合考虑路径权重、元路径下开发者相似度得分,将不同相似服务开发者基于不同元路径的得分乘以当前路径权重得到该元路径下最终得分,将相同开发者不同元路径得分相加得到该开发者最终相似得分,排序后得到相似服务开发者列表。
进一步地,所述步骤3.3中,对不同元路径分配不同权重,计算不同服务开发者的相似得分,具体描述如下:
统计所抽取的相似服务开发者元路径遍历下的所有结果中各个服务开发者出现的频次,实现特定路径下所发现服务开发者的挑选,对频次最高的前十个服务开发者进行当前路径下得分SD计算:
Figure BDA0003236729870000111
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
Figure BDA0003236729870000112
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
Figure BDA0003236729870000113
j表示第j条元路径,m为元路径的条数,
Figure BDA0003236729870000114
为开发者k在元路径j下的得分,
Figure BDA0003236729870000115
表示元路径j的权重。
进一步地,所述步骤4包括:
步骤4.1,基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
步骤4.2,基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
步骤4.3,根据步骤3.3得到的服务开发者相似得分和步骤4.2得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表。
进一步地,所述步骤4.2中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
Figure BDA0003236729870000121
其中,Ri表示用户需求服务的属性集合,Aj表示相似服务开发者技能经验属性集合,Simtag(Ri,Aj)∈[0,1]表示用户需求服务属性集合和相似服务开发者技能经验属性集合间的相似匹配程度,Simtag(Ri,Aj)越大,表示属性匹配得分越高。
进一步地,所述步骤4.3中,相似服务开发者的最终得分按照下式得出:
Similarity(U,D)=α(Simtag(Utag,D))+β(ScoreD)
其中,U表示用户需求服务的需求,D表示相似服务开发者,α和β是权重因子,其中α+β=1,Utag表示用户需求服务的属性集合,Simtag(Utag,D)为用户需求服务的属性集合与相似服务开发者的技能经验属性集合的属性匹配得分,ScoreD是相似服务开发者的相似得分。
下面是应用本发明的方法进行服务开发者推荐的具体实例:
以Programmable Web服务注册网站上的真实服务和服务开发者数据进行基于异构信息网络的服务开发者推荐为实例,详细描述本发明的实施过程。
本实例所需的数据集来自于Programmable Web(简称为PWeb)网站,该网站提供大量的服务和服务开发者信息,是著名的API服务和Mashup应用服务注册目录网站。该网站目前拥有两万三千多个API服务和接近八千个Mashup应用服务以及大量的服务开发者。由于PWeb网站服务信息并不完善,比如有的服务开发者相关信息为空,有的服务缺少服务描述等情况,所以本实施例实验重点针对网站所提供的包含API服务数量较多的前5个类别,爬取相关数据。为了提高效率,解决部分数据稀疏造成的数据不平衡问题,挑选开发者数量大于10的API服务作为实验数据,将80%作为测试集,20%作为验证集,测试集中的数据用来实验,验证集中的数据将作为用户需求数据用来验证,实验所用到的数据集包含的内容如表2所示。
表2 实验所用到的数据集包含的内容
Figure BDA0003236729870000131
首先执行步骤1,利用爬虫技术从PWeb网站收集(Social,Financial,Data,Tools,eCommerce)5个领域(类别)内的相关数据,爬取包括API服务名称、API服务描述、API服务所属类别、API服务架构风格和响应格式等相关属性数据、Mashup应用服务名称、Mashup应用服务调用的API服务列表、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;
然后对收集的服务描述文本进行预处理,包括分词、去停词、词干化。同时将网站中Facebook API服务作为用户需求服务,对Facebook API服务的描述文本进行相同处理,利用BERT预训练模型将提取的API服务描述文本和Facebook API服务的服务描述文本向量化,将得到的Facebook API服务描述向量与现有服务描述向量进行基于欧几里得距离的相似度计算,得到最相似服务Twitter API,将Twitter API服务所属类别Social作为用户需求服务所属类别;
之后执行步骤2,针对获取的最相似API服务所属的类别,对Social类别内的API服务开发者进行评价,将服务开发者评价模型中的开发者所开发API服务数、调用Social类别内API服务所开发的Mashup应用服务数、粉丝数、技能经验四个维度权重分别设置为0.3、0.4、0.1、0.2,对Social类别内服务开发者进行评价并按能力评分从高到低进行排序,表3列出了Social类别内top-5开发者的能力评分,由此得到Social类别内最强开发者pwtempuser;
表3 Social类别中top-5开发者能力评分
开发者 pwtempuser frogcologne kentbrew roelandp bubbasmith
能力评分 1.000 0.155 0.129 0.121 0.112
之后执行步骤3,以最强服务开发者pwtempuser为起点,根据所挑选相似服务开发者元路径进行遍历得到相似服务开发者,基于不同元路径权重以及不同开发者出现频次,对路径长度分别为2、3、4的元路径权重设置为0.23、0.16、0.11,计算开发者相似得分,得到top-20相似服务开发者推荐列表如表4所示;
表4 满足用户需求服务的开发者相似得分
Figure BDA0003236729870000141
最后执行步骤4,将得到的相似服务开发者以及Social类别内的最强开发者pwtempuser的技能经验属性集合,与Facebook API服务的属性集合进行基于改进的Jaccard相似系数的属性匹配得分计算,得到服务开发者的属性匹配评分;之后将相似得分权重设为0.6,属性匹配得分权重设为0.4,通过加权计算得到相似服务开发者的最终得分,并按最终得分对相似服务开发者进行排序,表5所示为top-5服务开发者,将top-5服务开发者推荐给用户。
表5 按最终得分排序得到的top-5服务开发者
开发者 pwtempuser frogcologne bubbasmith JamesChevalier roelandp
最终得分 1 0.857 0.584 0.579 0.578
在上述实施例的基础上,如图2所示,本发明另一方面提出一种基于异构信息网络的服务开发者按需推荐***,包括:
用户需求服务所属类别判断模块,用于爬取Programmable Web网站原始数据集,所述原始数据集包括API服务描述、API服务所属类别、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,分别得到用户需求服务描述向量、API服务描述向量,通过计算用户需求服务描述向量与API服务描述向量间的欧几里得距离来确定用户需求服务描述文本与现有API服务描述文本的相似性;基于最相似API服务所属的类别判断用户需求服务所属类别;
服务开发者评价模块,用于根据服务开发者相关信息构建服务开发者评价模型,对用户需求服务所属类别判断模块得到的用户需求服务所属类别内的API服务开发者进行评价,得到最强服务开发者;
相似服务开发者列表得出模块,用于基于Programmable Web网站原始数据集构建异构信息网络,该网络的节点类型包括服务开发者、API服务、Mashup应用服务,将三类实体间的关联关系作为网络中的边,构建服务开发者异构信息网络,然后进行相似服务开发者元路径抽取,进而以服务开发者评价模块得到的最强服务开发者为路径起点,基于抽取的相似服务开发者元路径进行遍历,并对不同元路径分配不同权重,计算不同服务开发者的相似得分,得到相似服务开发者列表;
服务开发者推荐列表得出模块,用于基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表。
进一步地,所述用户需求服务所属类别判断模块包括:
数据爬取子模块,用于爬取Programmable Web网站原始数据集,包括API服务名称、API服务描述、API服务所属类别、API服务的架构风格和响应格式等属性信息、Mashup应用服务名称、Mashup应用服务所调用API服务列表、服务开发者相关信息、API服务以及Mashup应用服务与服务开发者之间的关联关系、API服务与Mashup应用服务之间的调用关系;
向量化子模块,用于针对数据爬取子模块所爬取数据,对每个API服务描述文本以及用户需求服务描述文本进行预处理操作,包括分词、去停词、词干化,利用BERT预训练模型将预处理的用户需求服务描述文本和API服务描述文本向量化,分别得到用户需求服务描述向量、API服务描述向量集;
相似度计算子模块,用于针对向量化模块得到的用户需求服务描述向量与现有API服务描述向量集,基于欧几里得距离计算用户需求服务描述向量与每个API服务描述向量间的相似度,距离越小,相似度越大,基于最相似API服务所属类别确定用户需求服务所属类别。
进一步地,所述服务开发者评价模块包括:
服务开发者评价模型构建子模块,用于将得到的服务开发者相关信息进行解析,根据服务开发者所开发API服务列表以及相应API服务的属性信息,得到每个服务开发者技能经验;对服务开发者所开发API服务数量、服务开发者基于特定类别内API服务所开发Mashup应用服务数量、服务开发者粉丝数、服务开发者技能经验四个维度分配不同权重,构建服务开发者评价模型;
最强服务开发者得出子模块,用于针对相似度计算子模块得到的用户需求服务所属类别,通过服务开发者评价模型构建子模块构建的服务开发者评价模型对类别内API服务对应开发者进行评价,得到评分最高的开发者作为该类别内的最强服务开发者。
进一步地,所述服务开发者评价模型构建子模块具体还用于:
按照下式对服务开发者进行多维度能力评分计算:
Figure BDA0003236729870000161
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1234=1;NA表示服务开发者所开发的API服务数量,NA_Max表示用户需求服务所属类别内开发者所开发服务数量的最大值;NM表示开发者基于用户需求服务所属类别内API服务所开发的Mashup应用服务数量,表示该开发者开发特定类别服务的开发能力,NM_Max表示用户需求服务所属类别内开发者NM的最大值;Nbf表示服务开发者被关注数即粉丝数,Nbf_Max表示用户需求服务所属类别内粉丝最多的开发者的粉丝数,代表开发者的影响力;Ne表示服务开发者技能经验中的技能属性个数,Ne_Max表示用户需求服务所属类别内开发者技能经验中技能属性数量最大值。
进一步地,所述相似服务开发者列表得出模块包括:
服务开发者异构信息网络构建子模块,用于根据数据爬取子模块得到的API服务以及Mashup应用服务与服务开发者之间关联关系、API服务与Mashup应用服务之间的调用关系挖掘服务开发者、API服务、Mashup应用服务三类实体间的关联关系,将三类实体作为网络中的节点、所述三类实体间的关联关系作为网络中的边,进行服务开发者异构信息网络构建;
相似服务开发者元路径抽取子模块,用于根据数据爬取子模块得到的预处理后的用户需求服务描述,进行相似服务开发者元路径抽取,针对最强服务开发者得出子模块得到的最强服务开发者,根据所抽取元路径进行基于异构信息网络的相似服务开发者发现;
相似服务开发者排序子模块,用于对不同元路径分配不同权重,计算不同服务开发者的相似得分,根据所述相似得分对相似开发者进行排序,得到top-K相似服务开发者列表。
进一步地,所述相似服务开发者排序子模块中,对不同元路径分配不同权重,计算不同服务开发者的相似得分,包括:
统计所抽取的相似服务开发者元路径遍历下的所有结果中各个服务开发者出现的频次,对频次最高的前十个服务开发者进行当前路径下得分SD计算:
Figure BDA0003236729870000171
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
Figure BDA0003236729870000172
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
Figure BDA0003236729870000181
j表示第j条元路径,m为元路径的条数,
Figure BDA0003236729870000182
为开发者k在元路径j下的得分,
Figure BDA0003236729870000183
表示元路径j的权重。
进一步地,所述服务开发者推荐列表得出模块包括:
服务开发者技能经验属性集合得出子模块,用于基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
属性匹配得分计算计算子模块,用于基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
加权筛选子模块,用于根据相似服务开发者排序子模块得到的服务开发者相似得分和属性匹配得分计算计算子模块得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表。
进一步地,所述属性匹配得分计算计算子模块中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
Figure BDA0003236729870000184
其中,Ri表示用户需求服务的属性集合,Aj表示相似服务开发者技能经验属性集合,Simtag(Ri,Aj)∈[0,1]表示用户需求服务属性集合与相似服务开发者技能经验属性集合间的相似匹配程度,Simtag(Ri,Aj)越大,表示属性匹配得分越高。
进一步地,所述加权筛选子模块中,相似服务开发者的最终得分按照下式得出:
Similarity(U,D)=α(Simtag(Utag,D))+β(ScoreD)
其中,U表示用户需求服务的需求,D表示相似服务开发者,α和β是权重因子,其中α+β=1,Utag表示用户需求服务的属性集合,Simtag(Utag,D)为用户需求服务的属性集合与相似服务开发者的技能经验属性集合的属性匹配得分,ScoreD是相似服务开发者的相似得分。
综上,本发明基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,并做相似度计算,得到用户需求服务所属类别,有效提高了用户需求服务所属类别定位的效率和准确度。本发明基于元路径的相似服务开发者发现,从元路径语义的考量出发,进行元路径抽取并对不同元路径分配权重,同时基于路径实例数量进行开发者相似得分计算,可以更有效的实现相似开发者发现。本发明基于异构信息网络的服务开发者按需推荐,通过挖掘服务开发者相关信息,从多维度构建了服务开发者评价模型,实现了以最强服务开发者为基础的相似服务开发者发现,并对用户需求服务属性集合与相似服务开发者属性集合进行了属性匹配得分计算,融合需求关联和开发者技能经验进行服务开发者按需推荐,实现了利用服务与开发者相关信息的同时,有效整合服务与开发者之间的复杂关联,通过利用网络中丰富的语义信息,提升了服务开发者推荐的准确度,有效解决了服务开发者按需推荐问题。
以上所示仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,包括:
步骤1,爬取Programmable Web网站原始数据集,所述原始数据集包括API服务描述、API服务所属类别、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,分别得到用户需求服务描述向量、API服务描述向量,通过计算用户需求服务描述向量与API服务描述向量间的欧几里得距离来确定用户需求服务描述文本与现有API服务描述文本的相似性;基于最相似API服务所属的类别判断用户需求服务所属类别;
步骤2,根据服务开发者相关信息构建服务开发者评价模型,对步骤1得到的用户需求服务所属类别内的API服务开发者进行评价,得到评分最高的服务开发者;
步骤3,基于Programmable Web网站原始数据集构建异构信息网络,该网络的节点类型包括服务开发者、API服务、Mashup应用服务,将三类实体间的关联关系作为网络中的边,构建服务开发者异构信息网络,然后进行相似服务开发者元路径抽取,进而以步骤2得到的评分最高的服务开发者为路径起点,基于抽取的相似服务开发者元路径进行遍历,并对不同元路径分配不同权重,计算不同服务开发者的相似得分,得到相似服务开发者列表;
步骤4,基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表;
所述步骤4包括:
步骤4.1,基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
步骤4.2,基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
步骤4.3,根据得到的服务开发者相似得分和步骤4.2得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表;
所述步骤4.2中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
Figure FDA0004171516290000021
其中,Ri表示用户需求服务的属性集合,Aj表示相似服务开发者技能经验属性集合,Simtag(Ri,Aj)∈[0,1]表示用户需求服务属性集合与相似服务开发者技能经验属性集合间的相似匹配程度,Simtag(Ri,Aj)越大,表示属性匹配得分越高。
2.根据权利要求1所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤1包括:
步骤1.1,爬取Programmable Web网站原始数据集,包括API服务名称、API服务描述、API服务所属类别、API服务的架构风格和响应格式、Mashup应用服务名称、Mashup应用服务所调用API服务列表、服务开发者相关信息、API服务以及Mashup应用服务与服务开发者之间的关联关系、API服务与Mashup应用服务之间的调用关系;
步骤1.2,针对步骤1.1所爬取的数据,对每个API服务描述文本以及用户需求服务描述文本进行预处理操作,包括分词、去停词、词干化,利用BERT预训练模型将预处理的用户需求服务描述文本和API服务描述文本向量化,分别得到用户需求服务描述向量、API服务描述向量集;
步骤1.3,针对步骤1.2得到的用户需求服务描述向量与现有API服务描述向量集,基于欧几里得距离计算用户需求服务描述向量与每个API服务描述向量间的相似度,距离越小,相似度越大,基于最相似API服务所属类别确定用户需求服务所属类别。
3.根据权利要求1所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤2包括:
步骤2.1,将得到的服务开发者相关信息进行解析,根据服务开发者所开发API服务列表以及相应API服务的属性信息,得到每个服务开发者技能经验;对服务开发者所开发API服务数量、服务开发者基于特定类别内API服务所开发Mashup应用服务数量、服务开发者粉丝数、服务开发者技能经验四个维度分配不同权重,构建服务开发者评价模型;
步骤2.2,针对步骤1.3得到的用户需求服务所属类别,通过步骤2.1构建的服务开发者评价模型对类别内API服务对应开发者进行评价,得到评分最高的服务开发者。
4.根据权利要求3所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤2.1包括:
按照下式对服务开发者进行多维度能力评分计算:
Figure FDA0004171516290000031
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1234=1;NA表示服务开发者所开发的API服务数量,NA_Max表示用户需求服务所属类别内开发者所开发服务数量的最大值;NM表示开发者基于用户需求服务所属类别内API服务所开发的Mashup应用服务数量,表示该开发者开发特定类别服务的开发能力,NM_Max表示用户需求服务所属类别内开发者NM的最大值;Nbf表示服务开发者被关注数即粉丝数,Nbf_Max表示用户需求服务所属类别内粉丝最多的开发者的粉丝数,代表开发者的影响力;Ne表示服务开发者技能经验中的技能属性个数,Ne_Max表示用户需求服务所属类别内开发者技能经验中技能属性数量最大值。
5.根据权利要求2所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤3包括:
步骤3.1,根据步骤1.1得到的API服务以及Mashup应用服务与服务开发者之间关联关系、API服务与Mashup应用服务之间的调用关系挖掘服务开发者、API服务、Mashup应用服务三类实体间的关联关系,将三类实体作为网络中的节点、所述三类实体间的关联关系作为网络中的边,进行服务开发者异构信息网络构建;
步骤3.2,根据步骤1.2得到的预处理后的用户需求服务描述,进行相似服务开发者元路径抽取,针对得到的评分最高的服务开发者,根据所抽取元路径进行基于异构信息网络的相似服务开发者发现;
步骤3.3,对不同元路径分配不同权重,计算不同服务开发者的相似得分,根据所述相似得分对相似开发者进行排序,得到top-K相似服务开发者列表。
6.根据权利要求5所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤3.3中,对不同元路径分配不同权重,计算不同服务开发者的相似得分,具体描述如下:
统计所抽取的相似服务开发者元路径遍历下的所有结果中各个服务开发者出现的频次,对频次最高的前十个服务开发者进行当前路径下得分SD计算:
Figure FDA0004171516290000041
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
Figure FDA0004171516290000042
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
Figure FDA0004171516290000043
j表示第j条元路径,m为元路径的条数,
Figure FDA0004171516290000044
为开发者k在元路径j下的得分,
Figure FDA0004171516290000045
表示元路径j的权重。
7.根据权利要求1所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤4.3中,相似服务开发者的最终得分按照下式得出:
Similarity(U,D)=α(Simtag(Utag,D))+β(ScoreD)
其中,U表示用户需求服务的需求,D表示相似服务开发者,α和β是权重因子,其中α+β=1,Utag表示用户需求服务的属性集合,Simtag(Utag,D)为用户需求服务的属性集合与相似服务开发者的技能经验属性集合的属性匹配得分,ScoreD是相似服务开发者的相似得分。
8.一种基于异构信息网络的服务开发者按需推荐***,其特征在于,包括:
用户需求服务所属类别判断模块,用于爬取Programmable Web网站原始数据集,所述原始数据集包括API服务描述、API服务所属类别、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,分别得到用户需求服务描述向量、API服务描述向量,通过计算用户需求服务描述向量与API服务描述向量间的欧几里得距离来确定用户需求服务描述文本与现有API服务描述文本的相似性;基于最相似API服务所属的类别判断用户需求服务所属类别;
服务开发者评价模块,用于根据服务开发者相关信息构建服务开发者评价模型,对用户需求服务所属类别判断模块得到的用户需求服务所属类别内的API服务开发者进行评价,得到评分最高的服务开发者;
相似服务开发者列表得出模块,用于基于Programmable Web网站原始数据集构建异构信息网络,该网络的节点类型包括服务开发者、API服务、Mashup应用服务,将三类实体间的关联关系作为网络中的边,构建服务开发者异构信息网络,然后进行相似服务开发者元路径抽取,进而以服务开发者评价模块得到的评分最高的服务开发者为路径起点,基于抽取的相似服务开发者元路径进行遍历,并对不同元路径分配不同权重,计算不同服务开发者的相似得分,得到相似服务开发者列表;
服务开发者推荐列表得出模块,用于基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表;
所述服务开发者推荐列表得出模块包括:
服务开发者技能经验属性集合得出子模块,用于基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
属性匹配得分计算计算子模块,用于基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
加权筛选子模块,用于根据相似服务开发者排序子模块得到的服务开发者相似得分和属性匹配得分计算计算子模块得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表;
所述属性匹配得分计算计算子模块中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
Figure FDA0004171516290000061
其中,Ri表示用户需求服务的属性集合,Aj表示相似服务开发者技能经验属性集合,Simtag(Ri,Aj)∈[0,1]表示用户需求服务属性集合与相似服务开发者技能经验属性集合间的相似匹配程度,Simtag(Ri,Aj)越大,表示属性匹配得分越高。
CN202111004609.2A 2021-08-30 2021-08-30 一种基于异构信息网络的服务开发者按需推荐方法及*** Active CN113836395B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111004609.2A CN113836395B (zh) 2021-08-30 2021-08-30 一种基于异构信息网络的服务开发者按需推荐方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111004609.2A CN113836395B (zh) 2021-08-30 2021-08-30 一种基于异构信息网络的服务开发者按需推荐方法及***

Publications (2)

Publication Number Publication Date
CN113836395A CN113836395A (zh) 2021-12-24
CN113836395B true CN113836395B (zh) 2023-05-16

Family

ID=78961644

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111004609.2A Active CN113836395B (zh) 2021-08-30 2021-08-30 一种基于异构信息网络的服务开发者按需推荐方法及***

Country Status (1)

Country Link
CN (1) CN113836395B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114896514B (zh) * 2022-07-14 2022-09-30 西安电子科技大学 一种基于图神经网络的Web API标签推荐方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106021366A (zh) * 2016-05-10 2016-10-12 浙江大学 一种基于异构信息的api标签推荐方法
CN112417063A (zh) * 2020-12-11 2021-02-26 哈尔滨工业大学 一种基于异构关系网络的相容功能项推荐方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003224673A1 (en) * 2002-03-08 2003-09-22 Enleague Systems, Inc Methods and systems for modeling and using computer resources over a heterogeneous distributed network using semantic ontologies
US9576048B2 (en) * 2014-06-26 2017-02-21 International Business Machines Corporation Complex service network ranking and clustering
CN104850632A (zh) * 2015-05-22 2015-08-19 东北师范大学 一种通用的基于异构信息网络的相似度计算方法与***
CN106354862A (zh) * 2016-09-06 2017-01-25 山东大学 一种异构网络中多维个性化推荐方法
CN106934071A (zh) * 2017-04-27 2017-07-07 北京大学 基于异构信息网络和贝叶斯个性化排序的推荐方法及装置
CN107577710B (zh) * 2017-08-01 2020-06-19 广州市香港科大***研究院 基于异构信息网络的推荐方法及装置
CN110727842B (zh) * 2019-08-27 2022-10-04 河南大学 基于辅助性知识的Web服务开发者按需推荐方法及***
CN112836119A (zh) * 2021-01-26 2021-05-25 西安理工大学 一种基于加权异构信息网络的景点推荐方法
CN113239264A (zh) * 2021-04-07 2021-08-10 中国人民解放军战略支援部队信息工程大学 基于元路径网络表示学习的个性化推荐方法及***

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106021366A (zh) * 2016-05-10 2016-10-12 浙江大学 一种基于异构信息的api标签推荐方法
CN112417063A (zh) * 2020-12-11 2021-02-26 哈尔滨工业大学 一种基于异构关系网络的相容功能项推荐方法

Also Published As

Publication number Publication date
CN113836395A (zh) 2021-12-24

Similar Documents

Publication Publication Date Title
CN104899273B (zh) 一种基于话题和相对熵的网页个性化推荐方法
CN103336766B (zh) 短文本垃圾识别以及建模方法和装置
CN110704743A (zh) 一种基于知识图谱的语义搜索方法及装置
CN106202211A (zh) 一种基于微博类型的集成微博谣言识别方法
CN102123172B (zh) 一种基于神经网络聚类优化的Web服务发现的实现方法
CN105404674B (zh) 一种知识依赖的网页信息抽取方法
US10387805B2 (en) System and method for ranking news feeds
CN111708774B (zh) 一种基于大数据的产业分析***
CN105426529A (zh) 基于用户搜索意图定位的图像检索方法及***
CN108763496A (zh) 一种基于网格和密度的动静态数据融合客户分类算法
CN108427756A (zh) 基于同类用户模型的个性化查询词补全推荐方法和装置
CN103761286B (zh) 一种基于用户兴趣的服务资源检索方法
CN105975584A (zh) 一种数学表达式相似距离测量方法
CN113254630A (zh) 一种面向全球综合观测成果的领域知识图谱推荐方法
CN106980639B (zh) 短文本数据聚合***及方法
CN113836395B (zh) 一种基于异构信息网络的服务开发者按需推荐方法及***
Wei et al. Online education recommendation model based on user behavior data analysis
CN103095849A (zh) 基于QoS属性预测和纠错的有监督Web服务发现方法及***
CN110727842B (zh) 基于辅助性知识的Web服务开发者按需推荐方法及***
CN104462552A (zh) 问答页面核心词提取方法和装置
CN112463974A (zh) 知识图谱建立的方法和装置
CN102999496A (zh) 建立需求分析模板的方法、搜索需求识别的方法及装置
CN104991920A (zh) 标签的生成方法及装置
Brefeld et al. Document assignment in multi-site search engines
CN115131058A (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