CN113836395A - 一种基于异构信息网络的服务开发者按需推荐方法及系统 - Google Patents
一种基于异构信息网络的服务开发者按需推荐方法及系统 Download PDFInfo
- Publication number
- CN113836395A CN113836395A CN202111004609.2A CN202111004609A CN113836395A CN 113836395 A CN113836395 A CN 113836395A CN 202111004609 A CN202111004609 A CN 202111004609A CN 113836395 A CN113836395 A CN 113836395A
- Authority
- CN
- China
- Prior art keywords
- service
- developer
- developers
- similar
- api
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004364 calculation method Methods 0.000 claims abstract description 26
- 238000013210 evaluation model Methods 0.000 claims abstract description 21
- 238000012163 sequencing technique Methods 0.000 claims abstract description 15
- 238000012216 screening Methods 0.000 claims abstract description 6
- 239000013598 vector Substances 0.000 claims description 54
- 238000011161 development Methods 0.000 claims description 23
- 230000018109 developmental process Effects 0.000 claims description 23
- 230000009193 crawling Effects 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 13
- 238000011156 evaluation Methods 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000005065 mining Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 5
- 230000011218 segmentation Effects 0.000 claims description 5
- 238000012360 testing method Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- General Health & Medical Sciences (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Primary Health Care (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (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包括:
按照下式对服务开发者进行多维度能力评分计算:
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1+λ2+λ3+λ4=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计算:
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
进一步地,所述步骤4包括:
步骤4.1,基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
步骤4.2,基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
步骤4.3,根据得到的服务开发者相似得分和步骤4.2得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表。
进一步地,所述步骤4.2中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
其中,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服务描述向量进行基于欧几里得距离的相似度计算:
其中x表示用户需求服务描述向量,y表示API服务描述向量。
进一步地,所述步骤2包括:
步骤2.1,将得到的服务开发者相关信息进行解析,根据服务开发者所开发API服务列表以及相应API服务的属性信息,得到每个服务开发者技能经验;对服务开发者所开发API服务数量、服务开发者基于特定类别内API服务所开发Mashup应用服务数量、服务开发者粉丝数、服务开发者技能经验四个维度分配不同权重,构建服务开发者评价模型;
步骤2.2,针对步骤1.3得到的用户需求服务所属类别,通过步骤2.1构建的服务开发者评价模型对类别内API服务对应开发者进行评价,得到评分最高的开发者作为该类别内的最强服务开发者。
进一步地,所述步骤2.1包括:
按照下式对服务开发者进行多维度能力评分计算:
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1+λ2+λ3+λ4=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 抽取元路径及释义
将步骤2.2得到的最强服务开发者作为路径起点,根据所挑选相似服务开发者元路径基于构建的服务开发者异构信息网络进行遍历,根据元路径遍历结果,统计各元路径遍历结果中相似开发者出现频次,实现特定路径下对所发现开发者的挑选,对频次最高的前十个开发者进行当前路径下得分计算,得到不同元路径下的top-10相似开发者列表。
步骤3.3,对不同的相似服务开发者元路径分配不同的权重,计算不同开发者之间的相似得分,根据相似得分对相似服务开发者进行排序,得到top-K相似服务开发者列表;具体地,根据路径长度为不同元路径分配权重,综合考虑路径权重、元路径下开发者相似度得分,将不同相似服务开发者基于不同元路径的得分乘以当前路径权重得到该元路径下最终得分,将相同开发者不同元路径得分相加得到该开发者最终相似得分,排序后得到相似服务开发者列表。
进一步地,所述步骤3.3中,对不同元路径分配不同权重,计算不同服务开发者的相似得分,具体描述如下:
统计所抽取的相似服务开发者元路径遍历下的所有结果中各个服务开发者出现的频次,实现特定路径下所发现服务开发者的挑选,对频次最高的前十个服务开发者进行当前路径下得分SD计算:
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
进一步地,所述步骤4包括:
步骤4.1,基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
步骤4.2,基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
步骤4.3,根据步骤3.3得到的服务开发者相似得分和步骤4.2得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表。
进一步地,所述步骤4.2中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
其中,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 实验所用到的数据集包含的内容
首先执行步骤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 满足用户需求服务的开发者相似得分
最后执行步骤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服务对应开发者进行评价,得到评分最高的开发者作为该类别内的最强服务开发者。
进一步地,所述服务开发者评价模型构建子模块具体还用于:
按照下式对服务开发者进行多维度能力评分计算:
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1+λ2+λ3+λ4=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计算:
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
进一步地,所述服务开发者推荐列表得出模块包括:
服务开发者技能经验属性集合得出子模块,用于基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
属性匹配得分计算计算子模块,用于基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
加权筛选子模块,用于根据相似服务开发者排序子模块得到的服务开发者相似得分和属性匹配得分计算计算子模块得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表。
进一步地,所述属性匹配得分计算计算子模块中,计算用户需求服务的属性集合与服务开发者技能经验属性集合的匹配得分方法为:
其中,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 (10)
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,基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表。
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.根据权利要求1所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤2.1包括:
按照下式对服务开发者进行多维度能力评分计算:
其中λ1、λ2、λ3、λ4∈[0,1]为权重因子,且满足条件λ1+λ2+λ3+λ4=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计算:
PreD表示服务开发者D在当前元路径结果中出现的频次,PreMAX表示当前元路径下所有服务开发者中单个开发者出现的最高频次;
根据不同路径长度分配不同权重:
n表示元路径长度类别数,Lj表示第j类长度的元路径,Lenj表示第j类元路径长度;
对不同路径下筛选后的结果进行加权计算得到服务开发者相似得分,实现相似服务开发者筛选,计算公式如下所示:
7.根据权利要求1所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤4包括:
步骤4.1,基于原始数据集得到服务开发者历史开发列表及相关服务的属性集合,与获得的相似服务开发者所开发服务的属性集合进行合并,得到服务开发者技能经验中包含的技能属性集合;
步骤4.2,基于用户需求服务的属性集合,对获得的相似服务开发者进行基于改进的Jaccard相似系数的技能经验属性匹配得分计算,得到相似服务开发者属性匹配得分;
步骤4.3,根据得到的服务开发者相似得分和步骤4.2得到的相似服务开发者的属性匹配得分,通过分配不同权重对相似服务开发者计算最终得分并进行排序,得到最终的top-N服务开发者推荐列表。
9.根据权利要求7所述的一种基于异构信息网络的服务开发者按需推荐方法,其特征在于,所述步骤4.3中,相似服务开发者的最终得分按照下式得出:
Similarity(U,D)=α(Simtag(Utag,D))+β(ScoreD)
其中,U表示用户需求服务的需求,D表示相似服务开发者,α和β是权重因子,其中α+β=1,Utag表示用户需求服务的属性集合,Simtag(Utag,D)为用户需求服务的属性集合与相似服务开发者的技能经验属性集合的属性匹配得分,ScoreD是相似服务开发者的相似得分。
10.一种基于异构信息网络的服务开发者按需推荐系统,其特征在于,包括:
用户需求服务所属类别判断模块,用于爬取Programmable Web网站原始数据集,所述原始数据集包括API服务描述、API服务所属类别、服务开发者相关信息,所述服务开发者相关信息包括服务开发者名称、服务开发者所开发API服务、服务开发者基于特定类别内API服务所开发Mashup应用服务、服务开发者粉丝数;基于BERT预训练模型对用户需求服务描述文本和API服务描述文本进行向量化操作,分别得到用户需求服务描述向量、API服务描述向量,通过计算用户需求服务描述向量与API服务描述向量间的欧几里得距离来确定用户需求服务描述文本与现有API服务描述文本的相似性;基于最相似API服务所属的类别判断用户需求服务所属类别;
服务开发者评价模块,用于根据服务开发者相关信息构建服务开发者评价模型,对用户需求服务所属类别判断模块得到的用户需求服务所属类别内的API服务开发者进行评价,得到最强服务开发者;
相似服务开发者列表得出模块,用于基于Programmable Web网站原始数据集构建异构信息网络,该网络的节点类型包括服务开发者、API服务、Mashup应用服务,将三类实体间的关联关系作为网络中的边,构建服务开发者异构信息网络,然后进行相似服务开发者元路径抽取,进而以服务开发者评价模块得到的最强服务开发者为路径起点,基于抽取的相似服务开发者元路径进行遍历,并对不同元路径分配不同权重,计算不同服务开发者的相似得分,得到相似服务开发者列表;
服务开发者推荐列表得出模块,用于基于用户需求服务的属性集合对相似服务开发者进行属性匹配,并计算相似服务开发者属性匹配得分,然后对服务开发者相似得分和属性匹配得分分配不同权重,并计算相似服务开发者最终得分,排序得到最终服务开发者推荐列表。
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 true CN113836395A (zh) | 2021-12-24 |
CN113836395B 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) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114896514A (zh) * | 2022-07-14 | 2022-08-12 | 西安电子科技大学 | 一种基于图神经网络的Web API标签推荐方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040054690A1 (en) * | 2002-03-08 | 2004-03-18 | Hillerbrand Eric T. | Modeling and using computer resources over a heterogeneous distributed network using semantic ontologies |
CN104850632A (zh) * | 2015-05-22 | 2015-08-19 | 东北师范大学 | 一种通用的基于异构信息网络的相似度计算方法与系统 |
CN106021366A (zh) * | 2016-05-10 | 2016-10-12 | 浙江大学 | 一种基于异构信息的api标签推荐方法 |
CN106354862A (zh) * | 2016-09-06 | 2017-01-25 | 山东大学 | 一种异构网络中多维个性化推荐方法 |
US20170161815A1 (en) * | 2014-06-26 | 2017-06-08 | International Business Machines Corporation | Complex service network ranking and clustering |
CN106934071A (zh) * | 2017-04-27 | 2017-07-07 | 北京大学 | 基于异构信息网络和贝叶斯个性化排序的推荐方法及装置 |
CN107577710A (zh) * | 2017-08-01 | 2018-01-12 | 广州市香港科大霍英东研究院 | 基于异构信息网络的推荐方法及装置 |
CN110727842A (zh) * | 2019-08-27 | 2020-01-24 | 河南大学 | 基于辅助性知识的Web服务开发者按需推荐方法及系统 |
CN112417063A (zh) * | 2020-12-11 | 2021-02-26 | 哈尔滨工业大学 | 一种基于异构关系网络的相容功能项推荐方法 |
CN112836119A (zh) * | 2021-01-26 | 2021-05-25 | 西安理工大学 | 一种基于加权异构信息网络的景点推荐方法 |
CN113239264A (zh) * | 2021-04-07 | 2021-08-10 | 中国人民解放军战略支援部队信息工程大学 | 基于元路径网络表示学习的个性化推荐方法及系统 |
-
2021
- 2021-08-30 CN CN202111004609.2A patent/CN113836395B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040054690A1 (en) * | 2002-03-08 | 2004-03-18 | Hillerbrand Eric T. | Modeling and using computer resources over a heterogeneous distributed network using semantic ontologies |
US20170161815A1 (en) * | 2014-06-26 | 2017-06-08 | International Business Machines Corporation | Complex service network ranking and clustering |
CN104850632A (zh) * | 2015-05-22 | 2015-08-19 | 东北师范大学 | 一种通用的基于异构信息网络的相似度计算方法与系统 |
CN106021366A (zh) * | 2016-05-10 | 2016-10-12 | 浙江大学 | 一种基于异构信息的api标签推荐方法 |
CN106354862A (zh) * | 2016-09-06 | 2017-01-25 | 山东大学 | 一种异构网络中多维个性化推荐方法 |
CN106934071A (zh) * | 2017-04-27 | 2017-07-07 | 北京大学 | 基于异构信息网络和贝叶斯个性化排序的推荐方法及装置 |
CN107577710A (zh) * | 2017-08-01 | 2018-01-12 | 广州市香港科大霍英东研究院 | 基于异构信息网络的推荐方法及装置 |
CN110727842A (zh) * | 2019-08-27 | 2020-01-24 | 河南大学 | 基于辅助性知识的Web服务开发者按需推荐方法及系统 |
CN112417063A (zh) * | 2020-12-11 | 2021-02-26 | 哈尔滨工业大学 | 一种基于异构关系网络的相容功能项推荐方法 |
CN112836119A (zh) * | 2021-01-26 | 2021-05-25 | 西安理工大学 | 一种基于加权异构信息网络的景点推荐方法 |
CN113239264A (zh) * | 2021-04-07 | 2021-08-10 | 中国人民解放军战略支援部队信息工程大学 | 基于元路径网络表示学习的个性化推荐方法及系统 |
Non-Patent Citations (3)
Title |
---|
CHANYOUNG PARK等: "Task-Guided Pair Embedding in Heterogeneous Network" * |
汪家磊: "基于描述信息的服务聚类及开发者推荐方法研究" * |
王佳秋: "基于多源异构个人服务数据的服务预测与推荐方法" * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114896514A (zh) * | 2022-07-14 | 2022-08-12 | 西安电子科技大学 | 一种基于图神经网络的Web API标签推荐方法 |
CN114896514B (zh) * | 2022-07-14 | 2022-09-30 | 西安电子科技大学 | 一种基于图神经网络的Web API标签推荐方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113836395B (zh) | 2023-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104899273B (zh) | 一种基于话题和相对熵的网页个性化推荐方法 | |
CN106250412B (zh) | 基于多源实体融合的知识图谱构建方法 | |
CN110704743B (zh) | 一种基于知识图谱的语义搜索方法及装置 | |
US10997370B2 (en) | Hybrid classifier for assigning natural language processing (NLP) inputs to domains in real-time | |
WO2020108608A1 (zh) | 搜索结果处理方法、装置、终端、电子设备及存储介质 | |
CN107135092B (zh) | 一种面向全局社交服务网的Web服务聚类方法 | |
CN105045875B (zh) | 个性化信息检索方法及装置 | |
CN106776881A (zh) | 一种基于微博平台的领域信息推荐系统及方法 | |
CN106776544A (zh) | 人物关系识别方法及装置和分词方法 | |
CN106204156A (zh) | 一种用于网络论坛的广告投放方法及装置 | |
CN110674407A (zh) | 基于图卷积神经网络的混合推荐方法 | |
CN105893609A (zh) | 一种基于加权混合的移动app推荐方法 | |
CN103729359A (zh) | 一种推荐搜索词的方法及系统 | |
CN105404674B (zh) | 一种知识依赖的网页信息抽取方法 | |
CN103838857B (zh) | 一种基于语义的自动服务组合系统及方法 | |
CN110457404A (zh) | 基于复杂异质网络的社交媒体账户分类方法 | |
CN102609433A (zh) | 基于用户日志进行查询推荐的方法及系统 | |
CN105426529A (zh) | 基于用户搜索意图定位的图像检索方法及系统 | |
WO2020258303A1 (zh) | 语义模型实例化方法、系统和装置 | |
CN103927339B (zh) | 知识重组系统和知识重组方法 | |
CN103761286B (zh) | 一种基于用户兴趣的服务资源检索方法 | |
CN103095849A (zh) | 基于QoS属性预测和纠错的有监督Web服务发现方法及系统 | |
CN114997288A (zh) | 一种设计资源关联方法 | |
CN103064907A (zh) | 基于无监督的实体关系抽取的主题元搜索系统及方法 | |
An et al. | A heuristic approach on metadata recommendation for search engine optimization |
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 |