CN103678548B - 基于组合模式的失效服务替代推荐方法 - Google Patents

基于组合模式的失效服务替代推荐方法 Download PDF

Info

Publication number
CN103678548B
CN103678548B CN201310646591.5A CN201310646591A CN103678548B CN 103678548 B CN103678548 B CN 103678548B CN 201310646591 A CN201310646591 A CN 201310646591A CN 103678548 B CN103678548 B CN 103678548B
Authority
CN
China
Prior art keywords
service
tag
similarity
integrated mode
compared
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
CN201310646591.5A
Other languages
English (en)
Other versions
CN103678548A (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.)
Tsinghua University
Original Assignee
Tsinghua 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 Tsinghua University filed Critical Tsinghua University
Priority to CN201310646591.5A priority Critical patent/CN103678548B/zh
Publication of CN103678548A publication Critical patent/CN103678548A/zh
Application granted granted Critical
Publication of CN103678548B publication Critical patent/CN103678548B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/951Indexing; Web crawling techniques

Abstract

一种基于组合模式的失效服务替代推荐方法,其包括:利用网络从互联网上获取服务生态系统,获取服务生态系统的失效服务,及将与该失效服务进行比较的待比较服务集合;对所获取的服务生态系统中的服务、服务组合及服务的组合模式进行形式化建模;计算所述失效服务与所述待比较服务集合中每个待比较服务的基于文本的服务相似度;根据服务生态系统的形式化描述计算所述失效服务与所述待比较服务集合中每个待比较服务的基于组合模式的服务相似度;计算所述失效服务与所述待比较服务集合中每个待比较服务的服务总体相似度;对所述失效服务与每个待比较服务的服务总体相似度进行从高到低排序,并选出排名位于前预设位数的待比较服务推荐给用户。

Description

基于组合模式的失效服务替代推荐方法
技术领域
本发明涉及计算机系统建模及数据分析领域,尤其涉及基于组合模式的失效服务替代推荐方法。
背景技术
近年来,随着网络技术和其他信息科学技术的迅猛发展,电信网络、互联网、有线电视网、物联网等信息网络不断相互融合,传统的商业环境、企业运营模式及软件工程模式发生着巨大的变化。在网格计算的基础上,云计算技术为用户提供了“按需使用、按需付费”的新型服务模式,带来了便捷、可靠、低廉的计算资源和存储服务;面向服务的体系结构(Service Oriented Architecture,SOA)及相关协议、规范的出现为企业内及企业间的业务集成提供了便捷的松耦合模式,进一步促进了企业业务模式和IT系统的功能细分,将服务作为企业价值传递和系统功能实现的基本模块,使得传统的企业开始向面向服务的企业(Service Oriented Enterprise,SOE)转型;基于互联网的软件即服务(Software as aservice,SaaS)和万物皆服务(Everything as a service,EaaS)模式为用户带来了极为便捷丰富的服务资源,Web服务改变着传统IT资源整合应用的模式,将软件资源以服务的方式简单便捷地提供给用户;业务服务成为企业价值增值的基本单元,大大提升了可重用性,不断满足着用户的海量、个性化需求。
在面向服务计算的领域中,服务是可以被描述、发布、发现并被松散组合实现个性化功能的个体,它们具有较强的自治性、自组织性和平台无关性,任何系统中的功能模块都可以被重用,并转化为服务架构体系中的可用服务。服务是原有的业务流程在功能上更细粒度的划分,因此,单一的服务个体难以满足复杂多样的个性化业务需求,服务的发现、组合、协同越来越成为一种业务常态。服务之间在功能上相互关联,行为上彼此协同,既有服务个体的合作也存在服务之间的竞争,服务、服务关系和服务所处的环境共同构成了错综复杂的服务生态系统(Service Ecosystem)。服务生态系统中的服务在环境的影响和彼此相互作用下自适应演化,相互依赖、相互协作、相互竞争,就像生物界中的生物体一样进行活动、交互、进化,表现出复杂的动态性和业务生态行为,并且在长期的竞争协作过程中形成错综复杂的关联关系,表现出复杂自适应系统的基本特征。
在服务科学逐渐普及、发展的今天,越来越多的服务生态系统也正在形成、成长、成熟。苹果以其对终端的掌控能力、强大的产品研发以及运营能力为基础,形成基于iOS开发平台的APP Store,截至2012年7月,APP Store中已经包含了超过65万个应用,到2013年1月为止,所有的应用下载总量超过400亿次,形成了以苹果iPad/iTouch/iPhone等用户终端为核心的服务生态系统。Google则以其强大的技术研发能力为基础,形成以Google相关产品和应用为核心的创新生态系统(Google’s Innovation Ecosystem),实现Google、第三方创新者、用户和广告商之间的积极互动和良性循环;而与APP Store类似的Google Play应用市场也在不断发展,据统计google play应用市场中的应用总数即将超过APP Store。IBM通过ProgrammableWeb.com为用户提供了一个发布开放API、使用API构建API Mashup的平台,构成了一个包含8826个API和7002个Mashup的开放API生态系统(截止至2013年3月25日)。以阿里巴巴为代表电子商务平台正在形成包含买家、卖家、第三方服务机构、物流、银行支付、SNS、应用开发者等主体的服务生态系统,并在长期运营过程中形成了互利共生、竞争、合作等复杂的关系。
在服务生态系统中,服务的失效已经成为了越来越严重的问题,据统计,ProgrammableWeb平台上的9646个服务中,失效服务的比例达到11.2%之多。而由于服务之间的紧密关联,服务的失效不仅会影响当前服务的使用用户,还会对调用该服务的服务组合,以及调用服务组合的用户产生影响。因此,需要及时预防服务的失效及对服务失效提出应对策略。
发明内容
鉴于以上内容,有必要提供一种基于组合模式的失效服务替代推荐方法,其能够针对服务生态系统中的失效服务,自动推荐出功能相似的替代服务来代替该失效服务的功能。
一种基于组合模式的失效服务替代推荐方法,其包括:获取步骤,利用网络从互联网上获取服务生态系统所包含的服务、服务组合和提供者等元素的信息,并获取服务生态系统的失效服务,及将与该失效服务进行比较的待比较服务集合;形式化建模步骤,对所获取的服务生态系统中的服务、服务组合及服务的组合模式进行形式化建模;计算步骤一,根据服务生态系统的形式化描述计算所述失效服务与所述待比较服务集合中每个待比较服务的基于文本的服务相似度;计算步骤二,根据服务生态系统的形式化描述计算所述失效服务与所述待比较服务集合中每个待比较服务的基于组合模式的服务相似度;计算步骤三,对所计算出的所述失效服务与所述待比较服务集合中每个待比较服务的基于组合模式的服务相似度及基于文本的服务相似度进行分别加权得到所述失效服务与所述待比较服务集合中每个待比较服务的服务总体相似度;推荐步骤,对所述失效服务与所述待比较服务集合中每个待比较服务的服务总体相似度进行从高到低排序,并选出排名位于前预设位数的待比较服务作为推荐服务集合推荐给用户。
相较于现有技术,所述基于组合模式的失效服务替代推荐方法,其能够根据服务生态系统中失效服务与待比较服务的特征计算出失效服务与每个待比较服务的服务总体相似度,并根据总体相似度选出推荐服务集合推荐给用户,方便用户选出替代服务来替代该失效服务。
附图说明
图1是本发明基于组合模式的失效服务替代推荐系统的应用环境图。
图2是服务生态系统示意图。
图3是本发明基于组合模式的失效服务替代推荐方法的较佳实施例的流程图。
图4是一个服务S1与一个服务S2的基于文本的服务相似度的计算过程流程图。
图5是失效服务与一个待比较服务的基于组合模式的服务相似度具体计算过程流程图。
主要元件符号说明
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
如图1所示,是本发明基于组合模式的失效服务替代推荐系统的应用环境图。所述基于组合模式的失效服务替代推荐系统30应用于计算装置1中来为服务生态系统中的失效服务推荐替代服务以替代该失效服务的功能。该计算装置1还包括存储器10及处理器20,该计算装置1还与多个客户端2相连。所述客户端2用于将替代失效服务的替代服务提供给用户,为用户提供失效服务的功能。
所述计算装置1可以是电脑、服务器等。所述客户端2可以是电脑、手机、PDA(Personal Digital Assistant,个人数字助理)等。
所述服务生态系统包括服务、服务组合和提供者等元素。服务可以与企业、软件功能单元等有关,与企业有关的服务被称为是生活服务或者业务服务,与软件功能单元有关的服务则被称为是IT服务。由于每一类服务提供的功能是趋于单一化的功能,因此将多个功能具有差异性的服务进行组合来作为服务组合,这样与单个服务相比,服务组合就可以完成更多的功能。每个服务都有对应的提供者和使用者,每个服务组合也有对应的提供者和使用者。
服务生态系统中各个元素之间通过关系相互影响,这些关系主要包括服务与服务组合之间的调用和被调用关系,提供者与服务组合、服务的提供和被提供关系,以及服务之间通过合作产生的协作关系等。例如图2所示,在服务生态系统中包括提供者“谷歌公司”、服务“谷歌地图”、服务“大众点评”以及服务组合“美食地图”等元素。谷歌公司等提供者分别提供了“谷歌地图”、“大众点评”等服务,或是调用“谷歌地图”、“大众点评”等服务生成了“美食地图”服务组合应用。因此,“美食地图”与“谷歌地图”、“大众点评”之间就形成了调用关系。
一个服务经常会与其功能相似的服务进行合作,例如地图类的服务(如百度地图、谷歌地图、高德地图)会与生活点评类的服务(如大众点评)合作,图表生成类的服务会与网站分析类的服务(谷歌图表google-charts)合作。抽取服务被一个服务组合调用的关系,并将该关系定义为服务的组合模式,作为基于服务组合特征的服务功能描述参数。
所述基于组合模式的失效服务替代推荐系统30由一个或者多个模块构成,所述模块还包括获取模块300、形式化建模模块301、计算模块302及推荐模块303,所述模块的功能将在后续中详述。
如图3所示,是本发明基于组合模式的失效服务替代推荐方法的较佳实施例的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S11,获取模块300利用网络从互联网上获取服务生态系统所包含的服务、服务组合和提供者等元素的信息,并获取服务生态系统的失效服务,及将与该失效服务进行比较的待比较服务集合。
在本实施例中,获取模块300所获取的信息包括服务生态系统的失效服务,及将与该失效服务进行比较的待比较服务集合,待比较服务集合中有多个待比较服务,后续将从待比较服务集合中选取与该失效服务相似度最高的一个待比较服务来替代该失效服务。
步骤S12,形式化建模模块301对所获取的服务生态系统中的服务、服务组合及服务的组合模式进行形式化建模。
在以下形式化建模中,用“:=”表示“定义为”。用“A.B”表示对象A的属性B。
定义1.1,形式化建模模块301将服务定义为一个三元组,表示为S:=(Name,[Tag],Des)。其中Name是服务的名称,Tag(标签)是一个用来描述服务基本功能的短语,Tag可能由用户或者服务提供者进行标注而产生,[Tag]是一系列的Tag所组成的集合,即标签集,并且[Tag]=[Tag1,Tag2…Tagn]。Des是对服务的功能性描述,这些描述一般由服务提供者直接提供。可以使用S.Name来表示服务S的名称。因此,服务S的特征包括服务S的名称、标签集和描述。
形式化建模模块301将服务组合可以表示为C:=(Name,[Tag],[S],Des)。Name是服务组合的名称,[Tag]是服务组合的标签集合,而Des是服务组合的功能性描述,[S]是服务组合所调用的服务集合。
定义1.2,形式化建模模块301将服务的组合模式表示为CP:=([S],C)。其中C是服务组合,而[S]是合作服务的集合。两个服务组合CP1和CP2相等,当且仅当M1=M2并且[S]1=[S]2
每个服务对应一个组合模式集合,对于一个服务而言,组合模式集合中的一个组合模式是描述该服务可以与哪些服务合作、并生成什么样的服务组合的变量。
组合模式是对服务的特征描述,因此,可将组合模式加入服务的描述中,得到扩展的服务定义。
定义1.3,形式化建模模块301将服务的扩展服务表示为[CP])。其中S是服务的基本定义(按照定义1.1),[C]是调用过服务S的服务组合,而[CP]是服务S的组合模式的集合。例如,服务组合C1调用服务S1,S3;服务组合C2调用服务S1,S4,S5,那么服务S1的组合模式集合为{([S3],C1),([S4,S5],C2)},其中([S3],C1)为服务S1的一个组合模式,([S4,S5],C2)为服务S1的另一个组合模式。
步骤S13,计算模块302根据服务生态系统的形式化描述计算所述失效服务与所述待比较服务集合中每个待比较服务的基于文本的服务相似度。
一个服务与另外一个服务的基于文本的服务相似度是根据该服务与所述另外一个服务的标签相似度及描述相似度加权得到的。因此,所述失效服务与一个待比较服务的基于文本的服务相似度是根据失效服务与所述待比较服务的标签相似度及描述相似度加权得到的。
下面介绍一个服务S1与另外一个服务S2的基于文本的服务相似度SimT_S(S1,S2)的计算过程。当要计算所述失效服务与一个待比较服务的基于文本的服务相似度时,只需要用S1表示失效服务,S2表示所述待比较服务即可得到所述失效服务与一个待比较服务的基于文本的服务相似度。如图4所示,具体计算过程如下:
步骤S130,计算模块302根据服务S1与服务S2的形式化描述中标签集来计算服务S1与服务S2的标签相似度SimTag。
标签是对服务或者服务组合的短语性描述,一个服务或者服务组合可以拥有多个标签,而一个标签也可能会被多个服务所使用,同时,因为在标签标注时,用户虽然可以使用自定义词语,但是系统会自动根据用户输入词语寻找匹配词语,用户通常使用同样词语表达相似的意思。
计算服务S1与服务S2的标签相似度的具体过程如下:
在本实施例中,使用余弦相似度对两个标签集[Tag]1和[Tag]2进行比较,其中[Tag]1表示服务S1的标签集,[Tag]2表示服务S2的标签集。
(130.1)当[Tag]1和[Tag]2的维度相同时,对于两个维度相同的向量,可以直接使用余弦相似度方法对相似度进行计算,计算公式如下:
Cossim ( A , B ) = A × B | A | · | B | = Σ i = 1 n A i × B i Σ i = 1 n ( A i ) 2 × Σ i = 1 n ( B i ) 2 ,
其中Cossim是余弦相似度,A和B是维度相等的向量,A=[A1,A2…An],而B=[B1,B2…Bn],其中A表示[Tag]1对应的向量,B表示[Tag]2对应的向量。
(130.2)一般来说余弦相似度用来对两个长度相等的向量进行比较,而[Tag]1与[Tag]2中的标签数可能是不同的。当[Tag]1和[Tag]2的维度不相同时,我们需要首先对标签集进行处理,使得[Tag]1与[Tag]2成为维度相等的两个向量,即把[Tag]1表示成向量A,[Tag]2表示成向量B,然后再用余弦相似度对A和B进行比较,具体过程如下:
(a1)根据标签集[Tag]1和[Tag]2生成一个包含[Tag]1和[Tag]2中所出现的所有标签的总体标签集[Tag]total
在本实施例中,[Tag]total=[Tag]1∪[Tag]2=[Tag1,Tag2,…Tagk]。
(a2)根据总体标签集[Tag]total中每个标签是否分别出现在标签集[Tag]1和[Tag]2中,来分别生成[Tag]1对应的向量A及[Tag]2对应的向量B。
其中总体标签集[Tag]total中每个标签在向量A或者向量B中所对应的值计算如下:
其中[Tag]表示标签集,即[Tag]1或者[Tag]2,而Tag代表待计算的标签。
则由TF([Tag],Tag)可知:
A=[TF([Tag]1,Tag1),TF([Tag]1,Tag2),…,TF([Tag]1,Tagk)],
B=[TF([Tag]2,Tag1),TF([Tag]2,Tag2),…,TF([Tag]2,Tagk)]。
例如服务S1的名称为S1.Name=“Openstreetmap”,服务S2的名称为S2.Name=“Google-maps”,服务S1的标签集[Tag]1为S1.[Tag]=[mapping,viewer,display,places],服务服务S2的标签集[Tag]2为S2.[Tag]=[mapping,openstreetmap,viewer,display,places]。因此,生成总体标签集[Tag]total等于S1.[Tag]∪S2.[Tag]=[map,openstreetmap,viewer,display,places]。根据总体标签集中的每一个标签在[Tag]1内是否出现,可以为每一个维度上的向量分量进行赋值,如果曾经出现,那么该维度分量等于1,否则等于0,因此S1对应的向量为A=(1,0,1,1,1),S2对应的向量为B=(1,1,1,1,1)。
(a3)计算总体标签集[Tag]total中所有标签在待比较服务集合中出现的频率,并根据所述所有标签的频率计算[Tag]total中每个标签的IDF值。
在本实施例中,引入了TF-IDF指标用来作为对标签在待比较服务集合中出现频率的评价指标,用tTag表示标签的IDF值,tTag计算公式如下
t Tag = IDF ( [ S ] , Tag ) = ln | [ S ] | Σ i = 1 | [ S ] | TF ( S i . [ Tag ] , Tag ) ,
其中[S]表示待比较服务集合,而|[S]|是待比较服务集合中的服务的数量。IDF指标是对标签出现频率的描述,越罕见的标签对应的IDF值将越高。
不同的标签在待比较服务集合中出现的几率不同,如果比较少见(即不常用)的标签同时出现在两个服务的标签集中,那么这两个服务可能是功能相似的服务。所以通过引入了TF-IDF指标使那些罕见的标签有更大的权值。
(a4)对所计算出的所有标签的IDF值进行归一化以计算总体标签集中每个标签的权重wTag
其中wTag=tTag/Sum,其中Sum=∑[tTag],即Sum表示总体标签集中所有标签的IDF值tTag的总和。
(a5)根据所生成的向量A、向量B及总体标签集中每个标签的权重wTag计算服务S1与服务S2的余弦相似度作为服务S1与服务S2的标签相似度SimTag。
SimTag = Σ i = 1 k A i · B i · w i | A | · | B | ,
上述(130.1)与(130.2)的计算过程也适用于计算任意两个服务的描述相似度,描述是服务/服务组合提供者对于服务/服务组合/功能的文字性的表述,在比较服务S1与服务S2描述相似度时,也可以直接将描述段落拆分成为一个个的词语,将拆分后的词语构成词语集合。则(130.1)与(130.2)中的[Tag]1表示服务S1的描述所对应的词语集合,[Tag]2表示服务S2的描述所对应的词语集合。
上述(130.1)与(130.2)的计算过程也适用于计算任意两个服务组合的标签相似度及描述相似度,只需要将(130.1)与(130.2)中的S1及S2使用服务组合进行替换。
步骤S131,计算模块302根据服务S1与服务S2的形式化描述中的描述来计算服务S1与服务S2的描述相似度SimDes。
步骤S132,计算模块302对所计算出的服务S1与服务S2的标签相似度及描述相似度进行加权以得到服务S1与服务S2的基于文本的服务相似度。
用SimT_S(S1,S2)表示服务S1与服务S2的基于文本的服务相似度,SimTag(S1.[Tag],S2.[Tag])表示服务S1与服务S2的标签相似度,SimDes(S1.Des,S2.Des)表示服务S1与服务S2的描述相似度。则SimT_S(S1,S2)计算如下:
SimT_S(S1,S2)=αSimTag(S1.[Tag],S2.[Tag])+(1-α)SimDes(S1.Des,S2.Des),
其中α是权重参数,α取值越大,则标签相似度在最终的文本相似度匹配中则发挥越重要的作用,0<α<1,α具体取值可以根据待比较服务集合的文本特征可靠性来确定,待比较服务集合的标签区分度越大,可以在计算时采用更大的α取值。
上述步骤S130与步骤S132的计算过程也适用于计算任意两个服务组合的基于文本的服务组合相似度,只是S130与S132中的S1及S2都表示的是服务组合。
步骤S14,计算模块302根据服务生态系统的形式化描述计算所述失效服务与所述待比较服务集合中每个待比较服务的基于组合模式的服务相似度。
图5所示,所述失效服务与一个待比较服务的基于组合模式的服务相似度具体计算过程如下:
步骤S140,计算所述失效服务的组合模式集合中每个组合模式与所述待比较服务的组合模式集合中每个组合模式的组合模式相似度。
在步骤S12中已经介绍,每个服务对应一个组合模式集合,一个服务的组合模式集合中有多个与该服务相关的组合模式,一个组合模式CP:=([S],C)。其中C是服务组合,而[S]是合作服务的集合。因此在计算所述失效服务的一个组合模式CP1与所述待比较服务的一个组合模式CP2的组合模式相似度时,需要计算CP1与CP2的合作服务集合相似度及服务组合相似度。因此,计算所述失效服务的一个组合模式CP1与所述待比较服务的一个组合模式CP2的组合模式相似度的具体过程如下:
(140.1)计算组合模式CP1中服务组合CP1.[C]与组合模式CP2中服务组合CP2.[C]的文本相似度作为CP1与CP2的服务组合相似度。
用SimT_C(CP1.C,CP2.C)表示所述CP1与CP2的服务组合相似度,其计算过程如步骤S130至步骤S132的计算过程类似,只是将S130与S132中的S1及S2都表示为服务组合。
(140.2)计算组合模式CP1中合作服务集合CP1.[S]与组合模式CP2中合作服务集合CP2.[S]的相似度作为CP1与CP2的合作服务集合相似度。
利用Simmax算法计算CP1.[S]与CP2.[S]的相似度,所述Simmax原理如下:U=[u1,u2,…,um],即为m维;V=[v1,v2,…,vn],即为n维;Sim(ui,vj)表示任意两个分量ui和vj的相似度值,对于U中的每一个分量ui来说,可以将ui与V中的每个分量进行相似度计算得到集合[Sim(ui,vj)],其中j=1…n,并从集合[Sim(ui,vj)]中取最大值作为分量ui的最大匹配相似度。在对U中每个分量完成最大相似度匹配后,可以将所有分量的最大匹配相似度进行平均,平均值就是U对V的相似度Simmax(U→V),“U→V”表示计算的是U对V的相似度。
在本实施例中,用U=[u1,u2,…,um]表示CP1.[S],即为m维;V=[v1,v2,…,vn]表示CP2.[S],即为n维。Sim(ui,vj)表示CP1.[S]中任意一个服务与CP2.[S]中任意一个服务的文本相似度,然后利用Simmax原理计算得到CP1.[S]与CP2.[S]的合作服务集合相似度:
Sim max ( CP 1 . [ S ] &RightArrow; CP 2 . [ S ] ) ( CP 1 . [ S ] , CP 2 . [ S ] , SimT _ S ) ,
(140.3)对所得到的CP1与CP2的服务组合相似度及CP1与CP2的合作服务集合相似度进行加权以得到CP1与CP2的组合模式相似度SimCP(CP1,CP2)。
SimCP ( CP 1 , CP 2 ) = &beta; Sim max ( CP 1 . [ S ] &RightArrow; CP 2 . [ S ] ) ( CP 1 . [ S ] , CP 2 . [ S ] , SimT _ S ) + ( 1 - &beta; ) SimT _ C ( CP 1 . C , CP 2 . C ) ,
其中β是权重参数,β的取值越大,则CP1与CP2的合作服务集合相似度在CP1与CP2的组合模式相似度中发挥的作用也越大,具体取值可以根据数据集的实际情况选取。
例如,计算CP1=([S3],C1)及CP2=([S3,S5],C4)的组合模式相似度。首先计算CP1.[S]与CP2.[S]的文本相似度即分别计算CP1中服务S3与CP2中S3的文本相似度SimT_S(S3,S3)=1,CP1中服务S3与CP2中S5的相似度SimT_S(S3,S5),因为SimT_S(S3,S3)=1,若SimT_S(S3,S5)=0.1,则根据Simmax原理,为1。若CP1与CP2的服务组合相似度SimT_C(C1,C2)=0.2,则CP1和CP2的组合模式相似度为SimCP(CP1,CP2)=β+0.2(1-β),如果β取0.5,则SimCP(CP1,CP2)=0.6.
步骤S141,根据所计算出的所述失效服务的组合模式集合中每个组合模式与所述待比较服务的组合模式集合中每个组合模式的组合模式相似度,并利用Simmax原理计算得到失效服务的组合模式集合与所述待比较服务的组合模式集合的基于组合模式的相似度。
在本实施例中,U=[u1,u2,…,um]表示S1.[CP],即为m维;V=[v1,v2,…,vn]表示S2.[CP],Sim(ui,vj)表示S1.[CP]中任意一个组合模式与S2.[CP]中任意一个组合模式的组合模式相似度,即SimCP(CP1,CP2),然后利用Simmax原理计算得到S1.[CP]与S2.[CP]的基于组合模式的服务相似度SimCP_S。
SimCP _ S = Sim max ( S 1 . [ CP ] &RightArrow; S 2 . [ CP ] ) ( S 1 . [ CP ] , S 2 . [ CP ] , SimCP ) ,
步骤S15,计算模块302对所计算出的所述失效服务与所述待比较服务集合中每个待比较服务的基于组合模式的服务相似度及基于文本的服务相似度进行分别加权得到所述失效服务与所述待比较服务集合中每个待比较服务的服务总体相似度Sim(S1,S2)。
Sim(S1,S2)=γSimCP_S(S1,S2)+(1-γ)SimT_S(S1,S2),0<γ<1,
其中Sim(S1,S2)为失效服务S1与一个待比较服务S2的总体相似度,γ为权重参数,γ取值越大,则S1与S2的基于于组合模式的服务相似度在总体相似度中发挥的作用越大。
步骤S16,推荐模块303对所述失效服务与所述待比较服务集合中每个待比较服务的服务总体相似度进行从高到低排序,并选出排名位于前预设位数(如前10位)的待比较服务作为推荐服务集合推荐给用户。
通过本发明,基于组合模式的失效服务替代推荐方法,能够根据服务生态系统中失效服务与待比较服务的特征计算出失效服务与每个待比较服务的服务总体相似度,并根据总体相似度选出推荐服务集合推荐给用户,方便用户选出替代服务来替代该失效服务。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (7)

1.一种基于组合模式的失效服务替代推荐方法,其特征在于,该方法包括:
获取步骤,利用网络从互联网上获取服务生态系统所包含的服务、服务组合和提供者等元素的信息,并获取服务生态系统的失效服务,及将与该失效服务进行比较的待比较服务集合;
形式化建模步骤,对所获取的服务生态系统中的服务、服务组合及服务的组合模式进行形式化建模;
计算步骤一,根据服务生态系统的形式化描述计算所述失效服务与所述待比较服务集合中每个待比较服务的基于文本的服务相似度;
计算步骤二,根据服务生态系统的形式化描述计算所述失效服务与所述待比较服务集合中每个待比较服务的基于组合模式的服务相似度;
计算步骤三,对所计算出的所述失效服务与所述待比较服务集合中每个待比较服务的基于组合模式的服务相似度及基于文本的服务相似度进行分别加权得到所述失效服务与所述待比较服务集合中每个待比较服务的服务总体相似度;
推荐步骤,对所述失效服务与所述待比较服务集合中每个待比较服务的服务总体相似度进行从高到低排序,并选出排名位于前预设位数的待比较服务作为推荐服务集合推荐给用户。
2.如权利要求1所述的基于组合模式的失效服务替代推荐方法,其特征在于,在所述形式化建模步骤中,将服务定义为一个三元组,表示为S:=(Name,[Tag],Des),其中Name是服务的名称,标签Tag是一个用来描述服务基本功能的短语,[Tag]是一系列的Tag所组成的集合,即标签集,并且[Tag]=[Tag1,Tag2 … Tagn],Des是对服务的功能性描述;
将服务组合表示为C:=(Name,[Tag],[S],Des),Name是服务组合的名称,[Tag]是服务组合的标签集合,Des是服务组合的功能性描述,[S]是服务组合所调用的服务集合;
将服务的组合模式表示为CP:=([S],C),其中C是服务组合,而[S]是合作服务的集合;
将服务的扩展服务表示为其中S是服务,[C]是调用过服务S的服务组合,而[CP]是服务S的组合模式的集合。
3.如权利要求1所述的基于组合模式的失效服务替代推荐方法,其特征在于,在计算步骤一中,计算所述失效服务与一个待比较服务的基于文本的服务相似度的计算过程与计算一个服务S1与一个服务S2的基于文本的服务相似度SimT_S(S1,S2)的计算过程相同,即用S1表示失效服务,S2表示一个待比较服务,SimT_S(S1,S2)的计算步骤包括:
根据服务S1与服务S2的形式化描述中标签集来计算服务S1与服务S2的标签相似度SimTag(S1.[Tag],S2.[Tag]);
根据服务S1与服务S2的形式化描述中的描述来计算服务S1与服务S2的描述相似度SimDes(S1.Des,S2.Des);
对所计算出的服务S1与服务S2的标签相似度及描述相似度进行加权以得到服务S1与服务S2的基于文本的服务相似度,用SimT_S(S1,S2)表示服务S1与服务S2的基于文本的服务相似度,SimT_S(S1,S2)=αSimTag(S1.[Tag],S2.[Tag])+(1-α)SimDes(S1.Des,S2.Des),
其中α是权重参数,0<α<1。
4.如权利要求3所述的基于组合模式的失效服务替代推荐方法,其特征在于,使用余弦相似度计算服务S1的标签集[Tag]1与服务S2的[Tag]2的标签相似度,具体过程包括:
(a)当[Tag]1与[Tag]2的维度相同时,直接使用余弦相似度方法对标签相似度进行计算,计算公式如下:
C o s s i m ( A , B ) = A &times; B | A | &CenterDot; | B | = &Sigma; i = 1 n A i &times; B i &Sigma; i = 1 n ( A i ) 2 &times; &Sigma; i = 1 n ( B i ) 2 ,
其中Cossim是余弦相似度,A和B是维度相等的向量,A=[A1,A2 … An],而B=[B1,B2 …Bn],其中A表示[Tag]1的向量,B表示[Tag]2的向量;
(b)当[Tag]1与[Tag]2的维度不相同时,首先对标签集进行处理,使得两个标签数[Tag]1与[Tag]2表示成为维度相等的向量,但包含不同的标签,即把[Tag]1表示成向量A,[Tag]2表示成向量B,然后再用余弦相似度对A和B进行比较,A和B具有相同的维度。
5.如权利要求4所述的基于组合模式的失效服务替代推荐方法,其特征在于,在步骤b的具体过程包括:
(b1)根据标签集[Tag]1和[Tag]2生成一个包含[Tag]1和[Tag]2中所出现的所有标签的总体标签集[Tag]total
[Tag]total=[Tag]1∪[Tag]2=[Tag1,Tag2,… Tagk];
(b2)根据总体标签集[Tag]total中每个标签是否分别出现在标签集[Tag]1和[Tag]2中,来分别生成[Tag]1对应的向量A及[Tag]2对应的向量B;
其中总体标签集[Tag]total中每个标签在向量A或者向量B中所对应的值计算如下:
其中[Tag]表示标签集,即[Tag]1或者[Tag]2,而Tag代表待计算的标签;
则由TF([Tag],Tag)可知:
A=[TF([Tag]1,Tag1),TF([Tag]1,Tag2),…,TF([Tag]1,Tagk)],
B=[TF([Tag]2,Tag1),TF([Tag]2,Tag2),…,TF([Tag]2,Tagk)];
(b3)计算总体标签集[Tag]total中所有标签在待比较服务集合中出现的频率,并根据所述所有标签的频率计算[Tag]total中每个标签的IDF值,引入了TF-IDF指标用来作为对标签在待比较服务集合中出现频率的评价指标,用tTag表示标签的IDF值,tTag计算公式如下:
t T a g = I D F ( &lsqb; S &rsqb; , T a g ) = l n | &lsqb; S &rsqb; | &Sigma; i = 1 | &lsqb; S &rsqb; | T F ( S i . &lsqb; T a g &rsqb; , T a g ) ,
其中[S]表示待比较服务集合,而|[S]|是待比较服务集合中的服务数量,IDF指标是对标签出现频率的描述,越罕见的标签对应的IDF值将越高;
(b4)对所计算出的所有标签的IDF值进行归一化以计算总体标签集中每个标签的权重wTag
其中wTag=tTag/Sum,Sum=Σ[tTag],即Sum表示总体标签集中所有标签的IDF值的总和;
(b5)根据所生成的向量A、向量B及总体标签集中每个标签的权重wTag计算服务S1与服务S2的余弦相似度作为服务S1与服务S2的标签相似度SimTag,
S i m T a g = &Sigma; i = 1 k A i &CenterDot; B i &CenterDot; w i | A | &CenterDot; | B | .
6.如权利要求1所述的基于组合模式的失效服务替代推荐方法,其特征在于,所述计算步骤二包括:
计算所述失效服务的组合模式集合中每个组合模式与所述待比较服务的组合模式集合中每个组合模式的组合模式相似度;
根据所计算出的所述失效服务的组合模式集合中每个组合模式与所述待比较服务的组合模式集合中每个组合模式的组合模式相似度,并利用Simmax算法计算得到失效服务的组合模式集合与所述待比较服务的组合模式集合的基于组合模式的相似度,所述Simmax算法的原理如下:U=[u1,u2,…,um],即为m维;V=[v1,v2,…,vn],即为n维;Sim(ui,vj)表示任意两个分量ui和vj的相似度值,对于U中的每一个分量ui来说,可以将ui与V中的每个分量进行相似度计算得到集合[Sim(ui,vj)],其中j=1…n,并从集合[Sim(ui,vj)]中取最大值作为分量ui的最大匹配相似度,在对U中每个分量完成最大相似度匹配后,可以将所有分量的最大匹配相似度进行平均,平均值就是U对V的相似度Simmax(U→V),“U→V”表示计算的是U对V的相似度。
7.如权利要求6所述的基于组合模式的失效服务替代推荐方法,其特征在于,计算所述失效服务的一个组合模式CP1与所述待比较服务的一个组合模式CP2的组合模式相似度的具体过程如下:
(c1)计算组合模式CP1中服务组合CP1.[C]与组合模式CP2中服务组合CP2.[C]的文本相似度作为CP1与CP2的服务组合相似度,SimT_C(CP1.C,CP2.C);
(c2)利用Simmax算法计算组合模式CP1中合作服务集合CP1.[S]与组合模式CP2中合作服务集合CP2.[S]的相似度作为CP1与CP2的合作服务集合相似度其中SimT_S表示CP1.[S]中任意一个服务与CP2.[S]中任意一个服务的文本相似度;
(c3)对所得到的CP1与CP2的服务组合相似度及CP1与CP2的合作服务集合相似度进行加权以得到CP1与CP2的组合模式相似度SimCP(CP1,CP2),
其中β是权重参数。
CN201310646591.5A 2013-12-04 2013-12-04 基于组合模式的失效服务替代推荐方法 Active CN103678548B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310646591.5A CN103678548B (zh) 2013-12-04 2013-12-04 基于组合模式的失效服务替代推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310646591.5A CN103678548B (zh) 2013-12-04 2013-12-04 基于组合模式的失效服务替代推荐方法

Publications (2)

Publication Number Publication Date
CN103678548A CN103678548A (zh) 2014-03-26
CN103678548B true CN103678548B (zh) 2016-09-21

Family

ID=50316093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310646591.5A Active CN103678548B (zh) 2013-12-04 2013-12-04 基于组合模式的失效服务替代推荐方法

Country Status (1)

Country Link
CN (1) CN103678548B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106407511B (zh) * 2016-08-30 2020-06-12 上海交通大学 基于设计元素特征的产品生态系统进化解决方法
CN109783640A (zh) * 2018-12-20 2019-05-21 广州恒巨信息科技有限公司 一种类案推荐方法、系统及装置
CN110674363B (zh) * 2019-08-30 2022-04-22 中国人民财产保险股份有限公司 接口服务之间的相似匹配方法、装置及电子设备
CN110661875B (zh) * 2019-09-29 2022-02-25 青岛科技大学 一种基于Word2Vec的云制造服务协作相似度计算方法
CN113781235A (zh) * 2021-09-01 2021-12-10 微民保险代理有限公司 一种数据处理方法、装置、计算机设备以及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217427A (zh) * 2008-01-11 2008-07-09 清华大学 不确定网络环境中网络服务评价和优选方法
CN101695082A (zh) * 2009-09-30 2010-04-14 北京航空航天大学 基于关系挖掘的服务组织方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101414296B (zh) * 2007-10-15 2012-07-25 日电(中国)有限公司 自适应服务推荐设备及方法、自适应服务推荐系统及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217427A (zh) * 2008-01-11 2008-07-09 清华大学 不确定网络环境中网络服务评价和优选方法
CN101695082A (zh) * 2009-09-30 2010-04-14 北京航空航天大学 基于关系挖掘的服务组织方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
method for predicting perishing services in a service ecosystem;Bofei Xia 等;《Service Sciences (ICSS), 2013 International Conference on》;20130413;13-17 *
Service Ecosystem Evolution and Controlling: A Research Framework for the Effects of Dynamic Services;Y Liu 等;《Journal of Applied Polymer Science》;20130413;28-33 *

Also Published As

Publication number Publication date
CN103678548A (zh) 2014-03-26

Similar Documents

Publication Publication Date Title
CN110909176B (zh) 数据推荐方法、装置、计算机设备以及存储介质
CN104199896B (zh) 基于特征分类的视频相似度确定及视频推荐方法
CN109002488A (zh) 一种基于元路径上下文的推荐模型训练方法及装置
CN112313697A (zh) 用于生成描述角度增强的可解释的基于描述的推荐的系统和方法
CN103678548B (zh) 基于组合模式的失效服务替代推荐方法
CN107341679A (zh) 获取用户画像的方法及装置
CN110929138B (zh) 推荐信息生成方法、装置、设备及存储介质
CN111784455A (zh) 一种物品推荐方法及推荐设备
CN109933779A (zh) 用户意图识别方法及系统
CN108280098B (zh) 信息推荐方法及装置
CN109360020A (zh) 一种广告的生成方法及装置
CN108920665B (zh) 基于网络结构和评论文本的推荐评分方法及装置
CN109325179A (zh) 一种内容推广的方法及装置
CN109783539A (zh) 用户挖掘及其模型构建方法、装置及计算机设备
CN112559896B (zh) 信息推荐方法、装置、设备及计算机可读存储介质
CN104423945B (zh) 一种信息处理方法及电子设备
CN112989169B (zh) 目标对象识别方法、信息推荐方法、装置、设备及介质
CN112380453B (zh) 物品推荐方法、装置、存储介质及设备
CN103971256A (zh) 一种信息推送方法及设备
CN109447273A (zh) 模型训练方法、广告推荐方法、相关装置、设备及介质
CN111612588A (zh) 商品呈现方法及装置、计算设备、计算机可读存储介质
CN105931082A (zh) 一种商品类目关键词提取方法和装置
CN106411908A (zh) 一种推荐方法及装置
CN113781149A (zh) 信息推荐方法、装置、计算机可读存储介质及电子设备
CN106021428A (zh) 一种基于knn和三支决策的电影推荐方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant