CN107423396A - 一种基于功能隐含关系及聚类的Mashup推荐方法 - Google Patents
一种基于功能隐含关系及聚类的Mashup推荐方法 Download PDFInfo
- Publication number
- CN107423396A CN107423396A CN201710618983.9A CN201710618983A CN107423396A CN 107423396 A CN107423396 A CN 107423396A CN 201710618983 A CN201710618983 A CN 201710618983A CN 107423396 A CN107423396 A CN 107423396A
- Authority
- CN
- China
- Prior art keywords
- api
- mashup
- cluster
- similarity
- clusters
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000011524 similarity measure Methods 0.000 claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 21
- 230000001174 ascending effect Effects 0.000 claims description 6
- 230000000295 complement effect Effects 0.000 claims description 5
- 238000005192 partition Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 abstract description 18
- 238000004364 calculation method Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000012010 growth Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000035699 permeability Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
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/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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- 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
-
- 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/50—Network services
- H04L67/55—Push-based network services
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)
- Probability & Statistics with Applications (AREA)
- Fuzzy Systems (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种基于功能隐含关系及聚类的Mashup推荐方法,步骤如下:S1、从Mashup在线平台爬取带有API和Mashup描述、标签及API调用信息的数据;S2、对步骤S1爬取到的描述信息进行预处理;S3、API及Mashup相似性计算;S4、API及Mashup聚类;S5、API推荐。本发明采用对Mashup及API聚类的方法,一方面减轻了数据集的稀疏性,另一方面从较粗粒度的类别来归类,然后再回到具体的API更容易发现适合Mashup功能完善的API。
Description
技术领域
本发明涉及Mashup优化的技术领域,尤其涉及到一种基于功能隐含关系及聚类的Mashup推荐方法。
背景技术
随着Web 2.0技术的发展,Mashup如雨后春笋一般快速增长。Mashup一词最早出现在流行音乐领域,表示将不同音轨、不同流派的音乐合成一首新歌,在网络应用方面,根据维基百科定义:它是一种网络聚合应用,把来自两个或多个外部资源的数据或功能整合起来创建一项新服务的网页或Web应用程序。Mashup从多个分散站点获取信息源,组合成一种新型网络应用模式,它利用的外部数据源格式多种多样,兼容性惊人。
Mashup大量运用Web2.0技术,简单的聚合原理和图形化界面的开发工具,产生了一种新的应用软件开发模式,这种模式简化了开发的难度,使得不具备精深专业知识的人员也可参与到他们感兴趣的服务创建中来,通过获取几个API的服务,比较轻松地组合成一个新的应用,并且也可以API的形式发布对外提供服务,如今每天都有大量Mashup涌现。一些在线的社会平台,如Yahoo Pipes,Microsoft Popfly,ProgramableWeb允许用户发布各种API,并允许对API、Mashup标注,Mashup已成为社会标注的Web资源。
大量API的产生在为人们提供便捷服务的同时也带来了巨大的选择问题,例如截至2014年10月ProgramableWeb上就已有8000多个API可供使用,11000多个Mashup应用。面对如此大量的API人们可能很难从中选择适合自己的应用功能的API。并且据统计发现大量的Mashup使用的API很少,并且大量的API也仅仅在极少数的Mashup中被使用,这一方面使得大量API本身的价值未能更好得利用,另一方面Mashup本身也有更多的改进空间可以挖掘以完善本身的功能。
面对数量庞大种类繁多的大量API,根据Mashup的功能定位找到合适的API成为一个急需解决的问题,而推荐系统是解决这一问题的有效手段。推荐系统大致分为两类,一类为基于记忆的推荐系统,一类为基于模型的推荐系统。基于记忆的推荐系统通常有两种做法:一种是基于用户推荐,即根据待推荐用户的相似用户的物品记录为其推荐物品;另一种是基于物品的推荐,即根据相似物品的记录推荐给可能需要的用户。这种方法的优点是算法简单易实现,并且对于给定推荐结果易做出解释;缺点是记录稀疏性较大难以获得较好的推荐结果,数据规模大时计算复杂度会很高。而基于模型的推荐系统认为记录本身符合某种数学规律,通过训练能与记录较好拟合的模型来预测用户可能需要的物品推荐。这种方法的优点是能够较好地处理数据稀疏的问题,做出的推荐相对准确;缺点是推荐一般是不可解释的,并且一旦有新的用户或物品加入就需要重新训练模型。
发明内容
本发明的目的在于克服现有技术的不足,提供一种能减轻数据集稀疏性、容易发现适合完善Mashup功能的API的基于功能隐含关系及聚类的Mashup推荐方法。
为实现上述目的,本发明所提供的技术方案如下:
对Mashup及API进行聚类,聚类采用功能相近的原则,通过融合描述信息、标签及调用信息计算API相似性,通过融合描述信息、标签信息计算Mashup相似性;其中,API相似度计算时加入调用的信息来表征功能互补的特征,以此作为相似度的补充,是考虑到有些API虽然功能上不相似但是有可能功能上相互为补充而经常被共同调用的情况;当得出各API、Mashup之间的不同特征相似性后,通过调整不同的权重获得最终的相似度,并依此等价为两个API或Mashup间的距离,相似度越大相当于距离越近;具体步骤如下:
S1、从Mashup在线平台爬取带有API和Mashup描述、标签及API调用信息的数据;
S2、对步骤S1爬取到的描述信息进行预处理;预处理包括1.分词(句子分成词);2.移除停用词(如am、is等);3.处理词干(如去前缀、后缀、复数转原型等);
S3、进行API及Mashup相似性计算:
S31、分别对各API之间的描述信息相似性、API标签相似性、API互补功能相似性以及Mashup之间描述信息相似性、Mashup标签相似性进行计算;其中,在计算API之间的描述信息相似性和Mashup之间描述信息相似性过程中,处理API和Mashup描述信息时考虑到需要把握文字语义,本方案采用LDA算法来处理描述信息的文档;
S32、将步骤S31得到的API和Mashup不同特征相似性对应进行加权结合获得API之间及Mashup之间的相似性;
S33、API之间及Mashup之间的相似性分别存入API、Mashup相似矩阵;
由于需要聚类的项目不是以坐标的方法表示的,常用的基于距离的聚类算法并不能很好地处理这一问题,因此本方案步骤S4中API及Mashup聚类时均使用平均相似度较大的点作为聚类中心,并为各聚类中心划分聚类范围,不断迭代产生指定个数的聚类中心;
API聚类过程如下:
S41-1、预先设定输出聚类数量k,相似度阈值t;
S41-2、通过计算得到API的相似度,构建相似度矩阵A;
S41-3、构建API平均相似度集合AVG,并对其进行升序排序;
S41-4、将中心点集合C及删除集合D初始化为φ;
S41-5、从AVG–C中选择k个值最大的API,从中随机选取一个作为当前中心点,并将其加入中心点集合C;
S41-6、从矩阵A中搜索API与当前中心点的相似度,如果大于阈值t,则在AVG中删除该API,并在删除集合D中加入该API;
S41-7、若AVG为空,并且尚未达到设定的聚类数量,则将删除集合D中的API再次加入AVG中;
S41-8、重复步骤S41-4至步骤S41-7直至达到设定聚类数量输出中心点集合C;
S41-9、搜索矩阵A将API分配到与中心点相似度最大的聚类中。
Mashup聚类包括以下步骤:
S42-1、预先设定输出聚类数量k',相似度阈值t';
S42-2、通过计算得到Mashup的相似度,构建相似度矩阵M;
S42-3、构建集合AVG',并对其进行升序排序;
S42-4、将中心点集合C'及删除集合D'初始化为φ;
S42-5、从AVG'–C'中选择k'个值最大的Mashup,从中随机选取一个作为当前中心点,并将其加入中心点集合C';
S42-6、从矩阵M中搜索Mashup与当前中心点的相似度,如果大于阈值t',则在AVG'中删除该Mashup,并在删除集合D'中加入该Mashup;
S42-7、如果AVG'为空,并且尚未达到设定的聚类数量,则将删除集合D'中的Mashup再次加入AVG'中;
S42-8、重复步骤S42-4至步骤S42-7直到达到设定聚类数量输出中心点集合C';
S42-9、搜索矩阵M将Mashup分配到与中心点相似度最大的聚类中。
本方案采用较粗粒度的方法来推荐API,为避免为开发者带来更多的筛选工作,推荐时采用km(相似Mashup聚类数量),ka(相似API聚类数量),n(每个API聚类数量上限)来从归类范围,定位推荐类别范围,以及类别范围内API推荐数量大小三个参数从不同角度来控制最终推荐API的数量,来适应不同的需求;
步骤S5API推荐的具体步骤如下:
S51、对于一个待推荐API的Mashup,预先设定相似Mashup聚类数量km,相似API聚类数量ka,每个API聚类数量上限n;
S52、初始化Mashup聚类集合Cm、API聚类集合Ca、推荐API集合R为φ;
S53、对待推荐Mashup描述信息文本进行预处理;
S54、根据LDA算法得到的文档向量及标签信息计算Mashup相似度与各聚类中心的相似度;
S55、找出最相似的km个Mashup聚类中心,将其标签放入Mashup聚类集合Cm;
S56、对每个Mashup聚类中心找出其覆盖的相似度最高的ka个API聚类中心,将其标签放入API聚类集合Ca;
S57、对每个API聚类中心选出与聚类中心相似度最大的n个API,放入推荐API集合R;
S58、得到Cm、Ca、R三个集合中的内容。
R中为最终得到的API推荐,用户可通过查看Cm中标签看到自己的Mashup大致被归为哪类,通过查看Ca中标签看到为自己推荐的API定位在哪些类别范围。
与现有技术相比,本方案原理和优点如下:
采用对Mashup及API聚类的方法,一方面减轻了数据集的稀疏性,另一方面从较粗粒度的类别来归类,然后再回到具体的API更容易发现适合Mashup功能完善的API。
附图说明
图1为本发明一种基于功能隐含关系及聚类的Mashup推荐方法的流程图。
具体实施方式
下面结合具体实施例对本发明作进一步说明:
参见附图1所示,本实施例所述的一种基于功能隐含关系及聚类的Mashup推荐方法,包括以下步骤:
S1、从Mashup在线平台爬取带有API和Mashup描述、标签及API调用信息的数据;
S2、对步骤S1爬取到的描述信息进行预处理;预处理包括1.分词(句子分成词);2.移除停用词(如am、is等);3.处理词干(如去前缀、后缀、复数转原型等);
S3、进行API及Mashup相似性计算:
分别对各API、Mashup之间的不同特征相似性进行计算,然后将相似性进行加权结合最终获得API之间及Mashup之间的相似性,最终存入API、Mashup相似矩阵,待下一步使用,分API相似性计算及Mashup相似性计算两部分,计算可并行执行不分先后;
其中,API不同特征相似性计算如下:
S3-1-1、API之间描述信息相似性计算:
S3-1-1-1、使用LDA算法得到文档向量;
S3-1-1-2、计算各API描述信息的相似性sim(ci,cj),计算公式如下:
其中,ci,cj分别表示API i和API j的描述信息的向量,n表示向量的维度,分别表示API i和API j描述信息向量的均值;
S3-1-2、API之间标签相似性计算:
计算公式如下:
其中,ti,tj分别表示API i和API j的标签特征,|ti∩tj|表示同时拥有API i和API j的标签的数量,|ti∪tj|表示API i和API j的标签的总数量;
S3-1-3、API之间互补功能相似性计算:
计算公式如下:
其中,fi,fj分别表示API i和API j的调用数量特征,|fi∩fj|表示同时调用了APIi和API j的Mashup数量,|fi∪fj|表示调用API i和API j的Mashup总数量;
S3-1-4、对API不同特征相似性进行加权结合获得API之间最终相似性sim(ai,aj):
计算公式如下:
sim(ai,aj)=αsim(ci,cj)+βsim(ti,tj)+γsim(fi,fj)
其中,sim(ci,cj)为API描述信息相似性,sim(ti,tj)为API标签相似性,sim(fi,fj)为API互补功能相似性,α、β、γ表示API不同特征相似的比重,根据实际场景进行调整,且α+β+γ=1;
S3-1-5、将计算结果存入API相似性矩阵;
Mashup不同特征相似性计算如下:
S3-2-1、Mashup之间描述信息相似性计算:
S3-2-1-1、使用LDA得到文档向量;
S3-2-1-2、计算各Mashup描述信息的相似性sim(ci,cj),计算公式如下:
其中,c’i,c’j分别表示Mashup i和Mashup j的描述信息的向量,n表示向量的维度,分别表示Mashup i和Mashup j描述信息向量的均值;
S3-2-2、Mashup之间标签相似性计算:
计算公式如下:
其中,t'i,t'j分别表示Mashup i和Mashup j的标签特征,|t’i∩t’j|表示同时拥有Mashup i和Mashup j的标签的数量,|t’i∪t’j|表示Mashup i和Mashup j的标签的总数量;
S3-2-3、对Mashup不同特征相似性进行加权结合获得Mashup之间最终相似性sim(mi,mj):
计算公式如下:
sim(mi,mj)=α'sim(c'i,c'j)+β'sim(t'i,t'j)
其中,sim(c'i,c'j)为Mashup描述信息相似性,sim(t'i,t'j)为Mashup标签相似性,α'、β'表示Mashup不同特征相似的比重,根据实际场景进行调整,且α'+β'=1;
S3-2-4、将计算结果存入Mashup相似性矩阵;
S4、API及Mashup聚类;
其中,API聚类包括以下步骤:
S41-1、预先设定输出聚类数量k,相似度阈值t;
S41-2、计算API的相似度,构建相似度矩阵A;
其中,aij为API i与j之间的相似度,n为API总量;
S41-3、构建API平均相似度集合AVG,并对其进行升序排序;
AVG={x1,x2,…,xn}
其中,xi为API i与其他API的平均相似度,即:
S41-4、将中心点集合C及删除集合D初始化为φ;
S41-5、从AVG–C中选择k个值最大的API,从中随机选取一个作为当前中心点,并将其加入中心点集合C;
S41-6、从矩阵A中搜索API与当前中心点的相似度,如果大于阈值t,则在AVG中删除该API,并在删除集合D中加入该API;
S41-7、若AVG为空,并且尚未达到设定的聚类数量,则将删除集合D中的API再次加入AVG中;
S41-8、重复步骤S41-4至步骤S41-7直至达到设定聚类数量输出中心点集合C;
S41-9、搜索矩阵A将API分配到与中心点相似度最大的聚类中。
Mashup聚类包括以下步骤:
S42-1、预先设定输出聚类数量k',相似度阈值t';
S42-2、计算Mashup的相似度,构建相似度矩阵M;
其中,mij为Mashup之间的相似度,q为Mashup总量;
S42-3、构建Mashup平均相似度集合AVG',并对其进行升序排序;
AVG'={x1',x'2,…,x'q}
其中x'i为Mashup i与其他Mashup的平均相似度,即:
S42-4、将中心点集合C'及删除集合D'初始化为φ;
S42-5、从AVG'–C'中选择k'个值最大的Mashup,从中随机选取一个作为当前中心点,并将其加入中心点集合C';
S42-6、从矩阵M中搜索Mashup与当前中心点的相似度,如果大于阈值t',则在AVG'中删除该Mashup,并在删除集合D'中加入该Mashup;
S42-7、如果AVG'为空,并且尚未达到设定的聚类数量,则将删除集合D'中的Mashup再次加入AVG'中;
S42-8、重复步骤S42-4至步骤S42-7直到达到设定聚类数量输出中心点集合C';
S42-9、搜索矩阵M将Mashup分配到与中心点相似度最大的聚类中。
S5、API推荐;具体步骤如下:
S51、对于一个待推荐API的Mashup,预先设定相似Mashup聚类数量km,相似API聚类数量ka,每个API聚类数量上限n;
S52、初始化Mashup聚类集合Cm、API聚类集合Ca、推荐API集合R为φ;
S53、对待推荐Mashup描述信息文本进行预处理;
S54、根据LDA算法得到的文档向量及标签信息计算Mashup相似度与各聚类中心的相似度;
S55、找出最相似的km个Mashup聚类中心,将其标签放入Mashup聚类集合Cm;
S56、对每个Mashup聚类中心找出其覆盖的相似度最高的ka个API聚类中心,将其标签放入API聚类集合Ca;
S57、对每个API聚类中心选出与聚类中心相似度最大的n个API,放入推荐API集合R;
S58、得到Cm、Ca、R三个集合中的内容。
R中为最终得到的API推荐,用户可通过查看Cm中标签看到自己的Mashup大致被归为哪类,通过查看Ca中标签看到为自己推荐的API定位在哪些类别范围,并可通过调节km(相似Mashup聚类数量),ka(相似API聚类数量),n(每个API聚类数量上限)来从归类范围,定位推荐类别范围,以及类别范围内API推荐数量大小三个参数来调整最终得到的API推荐数量。
本实施例采用对Mashup及API聚类的方法,一方面减轻了数据集的稀疏性,另一方面从较粗粒度的类别来归类,然后再回到具体的API更容易发现适合Mashup功能完善的API。
以上所述之实施例子只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (9)
1.一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:包括以下步骤:
S1、从Mashup在线平台爬取带有API和Mashup描述、标签及API调用信息的数据;
S2、对步骤S1爬取到的描述信息进行预处理;
S3、API及Mashup相似性计算;
S4、API及Mashup聚类;
S5、API推荐。
2.根据权利要求1所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:所述步骤S2描述信息预处理包括以下步骤:
S21、分词;
S22、移除停用词;
S23、处理词干。
3.根据权利要求1所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:所述步骤S3具体为:
S31、分别对各API、Mashup之间的不同特征相似性进行计算;
S32、将步骤S31得到的API和Mashup不同特征相似性对应进行加权结合获得API之间及Mashup之间的相似性;
S33、API之间及Mashup之间的相似性分别存入API、Mashup相似矩阵。
4.根据权利要求3所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:
所述API不同特征相似性计算包括API描述信息相似性计算、API标签相似性计算以及API互补功能相似性计算;
所述Mashup不同特征相似性计算包括Mashup描述信息相似性计算以及Mashup标签相似性计算。
5.根据权利要求1所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:所述步骤S4API及Mashup聚类时均使用平均相似度较大的点作为聚类中心,并为各聚类中心划分聚类范围,不断迭代产生指定个数的聚类中心。
6.根据权利要求5所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:所述步骤S4中API聚类包括以下步骤:
S41-1、预先设定输出聚类数量k,相似度阈值t;
S41-2、通过计算得到API的相似度,构建相似度矩阵A;
S41-3、构建API平均相似度集合AVG,并对其进行升序排序;
S41-4、将中心点集合C及删除集合D初始化为φ;
S41-5、从AVG–C中选择k个值最大的API,从中随机选取一个作为当前中心点,并将其加入中心点集合C;
S41-6、从矩阵A中搜索API与当前中心点的相似度,如果大于阈值t,则在AVG中删除该API,并在删除集合D中加入该API;
S41-7、若AVG为空,并且尚未达到设定的聚类数量,则将删除集合D中的API再次加入AVG中;
S41-8、重复步骤S41-4至步骤S41-7直至达到设定聚类数量输出中心点集合C;
S41-9、搜索矩阵A将API分配到与中心点相似度最大的聚类中。
7.根据权利要求5所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:所述步骤S4中Mashup聚类包括以下步骤:
S42-1、预先设定输出聚类数量k',相似度阈值t';
S42-2、通过计算得到Mashup的相似度,构建相似度矩阵M;
S42-3、构建集合AVG',并对其进行升序排序;
S42-4、将中心点集合C'及删除集合D'初始化为φ;
S42-5、从AVG'–C'中选择k'个值最大的Mashup,从中随机选取一个作为当前中心点,并将其加入中心点集合C';
S42-6、从矩阵M中搜索Mashup与当前中心点的相似度,如果大于阈值t',则在AVG'中删除该Mashup,并在删除集合D'中加入该Mashup;
S42-7、如果AVG'为空,并且尚未达到设定的聚类数量,则将删除集合D'中的Mashup再次加入AVG'中;
S42-8、重复步骤S42-4至步骤S42-7直到达到设定聚类数量输出中心点集合C';
S42-9、搜索矩阵M将Mashup分配到与中心点相似度最大的聚类中。
8.根据权利要求1所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:所述步骤S5采用较粗粒度的方法来推荐API,推荐时采用相似Mashup聚类数量km,相似API聚类数量ka,每个API聚类数量上限n来从归类范围,定位推荐类别范围,以及类别范围内API推荐数量大小三个参数从不同角度来控制最终推荐API的数量,来适应不同的需求。
9.根据权利要求1所述的一种基于功能隐含关系及聚类的Mashup推荐方法,其特征在于:所述步骤S5API推荐的具体步骤如下:
S51、对于一个待推荐API的Mashup,预先设定相似Mashup聚类数量km,相似API聚类数量ka,每个API聚类数量上限n;
S52、初始化Mashup聚类集合Cm、API聚类集合Ca、推荐API集合R为φ;
S53、对待推荐Mashup描述信息文本进行预处理;
S54、根据LDA算法得到的文档向量及标签信息计算Mashup相似度与各聚类中心的相似度;
S55、找出最相似的km个Mashup聚类中心,将其标签放入Mashup聚类集合Cm;
S56、对每个Mashup聚类中心找出其覆盖的相似度最高的ka个API聚类中心,将其标签放入API聚类集合Ca;
S57、对每个API聚类中心选出与聚类中心相似度最大的n个API,放入推荐API集合R;
S58、得到Cm、Ca、R三个集合中的内容。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710618983.9A CN107423396A (zh) | 2017-07-26 | 2017-07-26 | 一种基于功能隐含关系及聚类的Mashup推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710618983.9A CN107423396A (zh) | 2017-07-26 | 2017-07-26 | 一种基于功能隐含关系及聚类的Mashup推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107423396A true CN107423396A (zh) | 2017-12-01 |
Family
ID=60431242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710618983.9A Pending CN107423396A (zh) | 2017-07-26 | 2017-07-26 | 一种基于功能隐含关系及聚类的Mashup推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107423396A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446964A (zh) * | 2018-03-30 | 2018-08-24 | 中南大学 | 一种基于移动流量dpi数据的用户推荐方法 |
CN110222177A (zh) * | 2019-05-24 | 2019-09-10 | 雷恩友力数据科技南京有限公司 | 一种基于k-均值聚类算法的初始聚类中心确定方法及装置 |
CN111475607A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种基于Mashup服务功能特征表示与密度峰值检测的Web数据聚类方法 |
CN111475610A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种基于密度峰值检测的Mahsup服务聚类方法 |
CN111858901A (zh) * | 2019-04-30 | 2020-10-30 | 北京智慧星光信息技术有限公司 | 一种基于语义相似的文本推荐方法及系统 |
CN114356319A (zh) * | 2021-12-31 | 2022-04-15 | 山东浪潮科学研究院有限公司 | 一种根据自然语言描述推荐api的方法 |
CN114817745A (zh) * | 2022-05-19 | 2022-07-29 | 大连海事大学 | 一种图嵌入增强的Web API推荐方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120110073A1 (en) * | 2010-11-01 | 2012-05-03 | International Business Machines Corporation | Social network informed mashup creation |
CN103473128A (zh) * | 2013-09-12 | 2013-12-25 | 南京大学 | 一种用于mashup应用推荐的协同过滤方法 |
CN106021366A (zh) * | 2016-05-10 | 2016-10-12 | 浙江大学 | 一种基于异构信息的api标签推荐方法 |
-
2017
- 2017-07-26 CN CN201710618983.9A patent/CN107423396A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120110073A1 (en) * | 2010-11-01 | 2012-05-03 | International Business Machines Corporation | Social network informed mashup creation |
CN103473128A (zh) * | 2013-09-12 | 2013-12-25 | 南京大学 | 一种用于mashup应用推荐的协同过滤方法 |
CN106021366A (zh) * | 2016-05-10 | 2016-10-12 | 浙江大学 | 一种基于异构信息的api标签推荐方法 |
Non-Patent Citations (2)
Title |
---|
FENFANG XIE等: "Multi-relation Based Manifold Ranking Algorithm for API Recommendation", 《ASIA-PACIFIC SERVICES COMPUTING CONFERENCE. SPRINGER INTERNATIONAL PUBLISHING, 2016.》 * |
黄兴 等: "融合K-Means与Agnes的Mashup服务聚类方法", 《小型微型计算机系统》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446964A (zh) * | 2018-03-30 | 2018-08-24 | 中南大学 | 一种基于移动流量dpi数据的用户推荐方法 |
CN111858901A (zh) * | 2019-04-30 | 2020-10-30 | 北京智慧星光信息技术有限公司 | 一种基于语义相似的文本推荐方法及系统 |
CN110222177A (zh) * | 2019-05-24 | 2019-09-10 | 雷恩友力数据科技南京有限公司 | 一种基于k-均值聚类算法的初始聚类中心确定方法及装置 |
CN111475607A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种基于Mashup服务功能特征表示与密度峰值检测的Web数据聚类方法 |
CN111475610A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种基于密度峰值检测的Mahsup服务聚类方法 |
CN111475610B (zh) * | 2020-02-28 | 2022-06-17 | 浙江工业大学 | 一种基于密度峰值检测的Mashup服务聚类方法 |
CN111475607B (zh) * | 2020-02-28 | 2022-06-17 | 浙江工业大学 | 一种基于Mashup服务功能特征表示与密度峰值检测的Web数据聚类方法 |
CN114356319A (zh) * | 2021-12-31 | 2022-04-15 | 山东浪潮科学研究院有限公司 | 一种根据自然语言描述推荐api的方法 |
CN114817745A (zh) * | 2022-05-19 | 2022-07-29 | 大连海事大学 | 一种图嵌入增强的Web API推荐方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107423396A (zh) | 一种基于功能隐含关系及聚类的Mashup推荐方法 | |
US11074477B2 (en) | Multi-dimensional realization of visual content of an image collection | |
US11216503B1 (en) | Clustering search results | |
CN109902708A (zh) | 一种推荐模型训练方法及相关装置 | |
CN110532479A (zh) | 一种信息推荐方法、装置及设备 | |
CN103377258B (zh) | 用于对微博信息进行分类显示的方法和设备 | |
CN104424296B (zh) | 查询词分类方法和装置 | |
CN109933660B (zh) | 面向自然语言形式基于讲义和网站的api信息检索方法 | |
CN110955831B (zh) | 物品推荐方法、装置、计算机设备及存储介质 | |
CN110909182A (zh) | 多媒体资源搜索方法、装置、计算机设备及存储介质 | |
CN111177559B (zh) | 文旅服务推荐方法、装置、电子设备及存储介质 | |
CN110619050B (zh) | 意图识别方法及设备 | |
CN107003834B (zh) | 行人检测设备和方法 | |
CN106951527B (zh) | 一种歌曲推荐方法及装置 | |
CN107590232A (zh) | 一种基于网络学习环境的资源推荐系统及方法 | |
CN113254810B (zh) | 搜索结果输出方法、装置、计算机设备及可读存储介质 | |
CN103778206A (zh) | 一种网络服务资源的提供方法 | |
CN108353213A (zh) | 视频内容概括和类选择 | |
CN109643332A (zh) | 一种语句推荐方法及装置 | |
KR20170107868A (ko) | 사용자 맥락, 추천 음악, 이용 행태로 구성된 데이터베이스를 활용한 음악 콘텐츠 추천 방법 및 시스템 | |
CN111737473A (zh) | 文本分类方法、装置及设备 | |
CN110851622A (zh) | 文本生成方法和装置 | |
CN108959304A (zh) | 一种标签预测方法及装置 | |
CN114997288A (zh) | 一种设计资源关联方法 | |
CN104077408B (zh) | 大规模跨媒体数据分布式半监督内容识别分类方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171201 |