基于膜计算的Web服务混合进化聚类方法技术

技术编号:23050226 阅读:26 留言:0更新日期:2020-01-07 14:48
一种基于膜计算的Web服务混合进化聚类方法,包括以下步骤:第一步:形式化定义;第二步:服务相似度计算;第三步:服务聚类;第四步:数据细胞根据运转规则跟新全局最优对象;第五步:停机与输出,系统中的各个组织细胞作为单独的执行单元以并行的结构进化运行,故该系统是并行分布式的,在该系统中,定义一系列的计算步骤为一个计算,从包含初始数据细胞对象集的组织细胞开始,在每一个计算中,都意味着有一个或者多个进化规则被作用于当前的数据细胞对象集上,当达到系统的停机约束条件时,系统自动停机,计算结果呈现于系统的外环境中。本发明专利技术能更好的得到服务领域的特征性,可以更准确的计算相似度,得到更好的聚类结果。

Hybrid evolutionary clustering of Web services based on membrane computing

【技术实现步骤摘要】
基于膜计算的Web服务混合进化聚类方法
本专利技术涉及web服务的聚类问题,主要是REST数据服务中mashup服务聚类和SOAP服务的聚类方法。技术背景随着Web2.0技术的发展,互联网上的服务数量及其类型不断增加,这为以更容易、更快速的方式开发物联网应用提供了可能,使得如何准确有效地发现所需的原子服务或者服务组合成为一个问题。服务聚类技术可以有效地促进服务发现,近年来,已经提出了许多不同类型的服务聚类方法来聚类Mashup服务,WebAPI和Web服务。目前,大多数现有方法对于SOAP服务通过使用服务功能描述(WSDL文档)来计算Web服务之间的功能相似性来执行服务聚类操作,Liu等人从Web服务的WSDL描述文本中提取了Web服务的四个特性:内容、上下文、主机名和Web服务名,以进行Web服务聚类。Elgazzar等人分析了WSDL文档,并根据功能相似性将它们聚类,Yu和Rege还提出了一种利用服务社区学习算法改进服务发现的聚类方法,另外,本体技术也常用于Web服务之间的语义相似度计算和匹配,以促进服务的聚类和发现。例如Pop等人设计了一个度量标准来评估描述两个语义Web服务的本体概念之间的匹配程度,并使用ant-based方法对它们进行集群,以实现高效的服务发现。Nayak等人基于聚类层次聚类算法,提出了具有附加语义和聚类的Web服务发现。现有的Mashup服务聚类方法通常通过分析服务的描述文本来进行聚类,但是没有综合考虑描述文本信息中单词频率和相关性的相互影响,并且服务的描述文本信息有限,一些服务的其他信息如服务API、服务标签等,在服务的功能描述有着重要的体现。Gao等人提出了一种新的基于图论的服务和Mashup推荐方法,该方法从服务的功能描述中提取主题,并将用户、Mashup、服务和主题之间的关系建模为四边形图以提升推荐性能。Cao等人通过从WebAPI调用和标签中推断的Mashup服务之间的关系,开发了一个两层主题模型,将Mashup服务在网络层的主题分布合并到内容层原始Mashup服务的主题概率分布中。另外,PanW等人提出了一种基于结构相似性和遗传算法的新型Mashup服务聚类方法,通过双模图描述Mashups,WebAPIs之间的关系,应用SimRank算法量化每对Mashup服务之间的结构相似性,最终将Mashup服务有效地聚集成簇。
技术实现思路
为解决web环境下SOAP服务聚类的问题,本专利技术通过从WSDL文档提取隐藏的术语信息将服务信息分为两类,即服务自身信息和服务上下文信息,来计算术语特征值,并通过计算出的特征值生成特殊的Bigraph层次模型,通过Bigraph层次模型计算SOAP服务的相似度。对于Mashup服务,本专利技术采用一种基于域感知的服务特征选择方法获取处理的服务描述文本,基于结合处理的描述文本、服务API和标签设计一个多数据源LDA主题模型,LDA(LatentDirichletAllocation)是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构,通过模型推断服务的主题概率分布,并且计算服务的相似性。同时结合基于密度的k-means算法预处理数据集,利用组织P系统,结合基于层次划分Agnes算法、基于遗传算法(GA)、基于加权模糊聚类(FCM)算法,提出一种基于膜计算的Web服务混合进化聚类方法。为了解决上述技术问题,本专利技术提供如下的技术方案:一种基于膜计算的Web服务混合进化聚类方法,包括以下步骤:第一步:形式化定义,过程如下:1.1mashup服务定义1.1.1服务文档矢量模型:预处理的服务文档矢量模型是一个四元组,RSM=<RD,RT,RA,T>,其中:RD为域特征向量,代表服务域信息,定义一个服务有m个域,则RD={RD1,RD2,…,RDm};RT为服务描述文本特征向量,假设每个域中有n个服务描述文本,则m个域的描述文本表示为RT={RT11,RT12,…,RT1n,…,RTmn};RA为服务API特征向量;T为服务标签特征向量;每个服务描述文本RTij中的特征词表示为FWijk,其中i代表域变量,j代表描述文本变量,k代表特征词变量,则服务描述文本RTij也可以表示为RTij={FWij1,FWij2,…,FWijs},其中,1≤i≤m,1≤j≤n,s为特征词数量;1.1.2服务文档跨域集中度:该跨域集中度表示为Ddep,它代表包含服务域RDi中的特征词FWijk的服务描述文档RTij与该服务所有域中的特征词比例,计算公式下:其中,df(FWijk,RDi)代表服务域RDi中,包含特征词FWijk的描述文本RTij数量,而代表在所有域中包含特征词FWijk的描述文本RTij数量,跨域集中度越高则代表这个服务文档在该域中的集中度越大,故具备更强的领域表示;1.1.3特征词频跨域集中度:该跨域集中度表示为Dfre,它代表特征词FWijk在服务域RDi中和在所有服务域出现的不同次数比例,计算如下:其中,tf(FWijk,RDi)代表该服务域RDi中,特征词FWijk的数量,而代表该特征词在所有服务域中出现的数量,同理可知更高的特征词频跨域集中度意味这个特征词在该服务域中集中程度越高;1.1.4特征词的域表示度:代表一个特征词FWijk表示服务域RDi的程度,由服务文档跨域集中度和特征词频跨域集中度综合计算得来,计算如公式如下Dfinal(FWijk,RDi)=a*Ddep(FWijk,RDi)+β*Dfre(FWijk,RDi)α和β是权重系数,并且α+β=1,通过上述公式求得不同服务域中所有特征词的域表示度,特征词的域表示度越高代表其越能表示该服务域信息;一个服务域中会出现一系列典型特征词,这些词的域表示度很高但服务的聚类效果一般,设置一个特征词的域表示度的阈值,对超过该阈值的特征词进行过滤,提高特征词对服务域的表示效果;1.1.5域高效特征词集:代表在一个服务域中所有的特征词集合选取合适的特征词集合,通过特征词的域表示度降序排序,在一个服务域中选择前百分之P的特征词作为本专利技术需要的域高效特征词集合,如下所示HQ(RDi)={FWij1,FWij2,…,FWijp,}其中p=L*P/100,在特征词精简的过程中,如果一个描述文本RTij的特征词FWijk不属于HQ(RDi),则将其过滤,并更新服务描述文档RTij';1.2SOAP服务术语定义:令TL={T1,T2,…Tn}是服务语料库中的一组术语集合,n为术语的数量,A={a1,a2,…am}是组成术语TL的原子词汇,即该词汇已经不可再被细分,m对应所有的原子词汇数量,定义术语的频率即术语Ti出现的出现的次数,同于计算语料库TL中的全部术语出现次数的总和,对应的原子词汇频率计算所有词汇出现次数的总和,计算公式下所示:NumTL为T本文档来自技高网
...

【技术保护点】
1.一种基于膜计算的Web服务混合进化聚类方法,其特征在于,所述方法包括以下步骤:/n第一步:形式化定义;/n第二步:服务相似度计算;/n第三步:服务聚类/n聚类中心点的选取需要对数据集中的点计算整体簇方差的值,但是数据集中存在许多非备选点,存在数据噪点和边缘的孤立点,而这些点不仅会影响簇中心的选取,而且会额外增加计算成本,同时需要人为的预先指定数据簇的数量;考虑到以上缺点,提出一种基于密度的K-means算法进行改进,通过计算各个点的密度数,提取高密度数的数据点作为簇中心,通过改进的K-means算法,对待聚类的初始数据集S进行预处理聚类,S由M个维度为d的数据点构成,基于密度的K-means算法的点密度计算如下所示:/n

【技术特征摘要】
1.一种基于膜计算的Web服务混合进化聚类方法,其特征在于,所述方法包括以下步骤:
第一步:形式化定义;
第二步:服务相似度计算;
第三步:服务聚类
聚类中心点的选取需要对数据集中的点计算整体簇方差的值,但是数据集中存在许多非备选点,存在数据噪点和边缘的孤立点,而这些点不仅会影响簇中心的选取,而且会额外增加计算成本,同时需要人为的预先指定数据簇的数量;考虑到以上缺点,提出一种基于密度的K-means算法进行改进,通过计算各个点的密度数,提取高密度数的数据点作为簇中心,通过改进的K-means算法,对待聚类的初始数据集S进行预处理聚类,S由M个维度为d的数据点构成,基于密度的K-means算法的点密度计算如下所示:



其中Density(Si)代表在Si的R的范围内点的总个数,距离计算sim(Si,Sj)采为服务Si和Sj的相似度;
第四步:数据细胞根据运转规则跟新全局最优对象
系统中的组织细胞的细胞膜间存在转运通道,不同的对象在不同的组织细胞之间进行共享与交换,都需要系统定义的转运规则支撑,在设计的组织P系统中定义了转运规则来指导组织细胞间交换信息,规则如下:
(x,T1,T2,…Tm,/T′1,T′2,…T′m,y),x≠y,x,y=1,2,3.
这条转运规则代表组织细胞x和组织细胞y双向进行对象转运,其中T1,T2,…Tm为组织细胞x的m个对象,同理T1’,T2’,…Tm’为组织细胞y的m个对象;通过该转运规则达到以下效果:
4.1)组织细胞x中的m个对象T1,T2,…Tm被转运到组织细胞y中;
4.2)组织细胞y中的m个对象T1’,T2’,…Tm’被转运到组织细胞x中;
(x,Txbest/Tbest,OEo),x≠y,x,y=1,2,3.
该条转运规则代表组织细胞x和系统环境进行转运,其中Txbest为当前计算组织细胞x中的局部最优对象,Tbest为当前环境中的全局最优对象,通过该条转运规则,组织细胞x中的最优对象被转运到环境中,并且同时更新该环境的全局最优对象;
第五步:停机与输出
系统中的各个组织细胞作为单独的执行单元以并行的结构进化运行,故该系统是并行分布式的,在该系统中,定义一系列的计算步骤为一个计算,从包含初始数据细胞对象集的组织细胞开始,在每一个计算中,都意味着有一个或者多个进化规则被作用于当前的数据细胞对象集上,当达到系统的停机约束条件时,系统自动停机,计算结果呈现于系统的外环境中。


2.如权利要求1所述的基于膜计算的Web服务混合进化聚类方法,其特征在于,所述第一步中,形式化定义的过程如下:
1.1mashup服务定义;
1.2SOAP服务术语定义:
令TL={T1,T2,…Tn}是服务语料库中的一组术语集合,n为术语的数量,A={a1,a2,…am}是组成术语TL的原子词汇,即该词汇已经不可再被细分,m对应所有的原子词汇数量,定义术语的频率即术语Ti出现的出现的次数,同于计算语料库TL中的全部术语出现次数的总和,对应的原子词汇频率计算所有词汇出现次数的总和,计算公式下所示:






NumTL为TL所有术语数量,NumA所有为原子词汇出现次数的总和;
1.3组织P系统(PSystem)定义:
一个度为3的即3个由数据细胞组织P系统形式化定义为以下八元组:
ω=(OB1,OB2,OB3,OR1,OR2,OR3,OR′,OEo)
其中:
OB1、OB2和OB3为各组织细胞的对象集,即数据细胞集合;
OR1、OR2和OR3为各组织细胞的进化规则,分别代表基于Agnes和k-means算法、基于加权FCM算法和基于GA算法的聚类规则;
OR'代表整个P系统中各组织细胞的转运规则,通过转运规则,细胞与细胞之间可以进行对象的共享与交换;
OEo=0为系统的输出区域,代表环境。


3.如权利要求2所述的基于膜计算的Web服务混合进化聚类方法,其特征在于,所述1.1的过程如下:
1.1.1服务文档矢量模型:预处理的服务文档矢量模型是一个四元组,RSM=<RD,RT,RA,T>,其中:
RD为域特征向量,代表服务域信息,定义一个服务有m个域,则
RD={RD1,RD2,…,RDm};
RT为服务描述文本特征向量,假设每个域中有n个服务描述文本,则m个域的描述文本表示为RT={RT11,RT12,…,RT1n,…,RTmn};
RA为服务API特征向量;
T为服务标签特征向量;
每个服务描述文本RTij中的特征词表示为FWijk,其中i代表域变量,j代表描述文本变量,k代表特征词变量,则服务描述文本RTij也可以表示为RTij={FWij1,FWij2,…,FWijs},其中,1≤i≤m,1≤j≤n,s为特征词数量;
1.1.2服务文档跨域集中度:该跨域集中度表示为Ddep,它代表包含服务域RDi中的特征词FWijk的服务描述文档RTij与该服务所有域中的特征词比例,计算公式下:



其中,df(FWijk,RDi)代表服务域RDi中,包含特征词FWijk的描述文本RTij数量,而代表在所有域中包含特征词FWijk的描述文本RTij数量,跨域集中度越高则代表这个服务文档在该域中的集中度越大,故具备更强的领域表示;
1.1.3特征词频跨域集中度:该跨域集中度表示为Dfre,它代表特征词FWijk在服务域RDi中和在所有服务域出现的不同次数比例,计算如下:



其中,tf(FWijk,RDi)代表该服务域RDi中,特征词FWijk的数量,而代表该特征词在所有服务域中出现的数量,同理可知更高的特征词频跨域集中度意味这个特征词在该服务域中集中程度越高;
1.1.4特征词的域表示度:代表一个特征词FWijk表示服务域RDi的程度,由服务文档跨域集中度和特征词频跨域集中度综合计算得来,计算如公式如下
Dfinal(FWijk,RDi)=α*Ddep(FWijk,RDi)+β*Dfre(FWijk,RDi)
α和β是权重系数,并且α+β=1,通过上述公式求得不同服务域中所有特征词的域表示度,特征词的域表示度越高代表其越能表示该服务域信息,需要注意的是,一个服务域中会出现一系列典型特征词,这些词的域表示度很高但服务的聚类效果一般,设置一个特征词的域表示度的阈值,对超过该阈值的特征词进行过滤,提高特征词对服务域的表示效果;
1.1.5域高效特征词集:代表在一个服务域中所有的特征词集合,选取合适的特征词集合,通过特征词的域表示度降序排序,在一个服务域中选择前百分之P的特征词作为需要的域高效特征词集合,如下所示
HQ(RDi)={FWij1,FWij2,…,FWijp,}
其中p=L*P/100,在特征词精简的过程中,如果一个描述文本RTij的特征词FWijk不属于HQ(RDi),则将其过滤,并更新服务描述文档RTij'。


4.如权利要求1~3之一所述的基于膜计算的Web服务混合进化聚类方法,其特征在于,所述第二步中,判断是否为SOAP服务,若为SOAP服务则跳转到步骤第2.2,若为mashup服务则进行步骤2.1;
2.1mashup服务相似度计算
2.1.1服务预处理
通过对爬取的服务信息即服务的域、描述文本、API、标签进行预处理,提取其中准确、有效的特征词,构建描述更精确的服务描述文档,提高服务聚类精度;
2.1.2服务特征精简处理
不同的服务都有其独特领域特征性,同一个域中的特征词的重要性与频率和域的相关性有关,在计算服务特征值权重时,传统的TF-IDF计算方法或者互信息方法只单独考虑其中的一个因素,通过综合考虑词频和相关性因素,对服务的描述文本进行特征精简处理
2.1.3主题聚类模型构建:
在完成对RSM的特征精简之后得到新的服务文档矢量模型RSM'=<RD',RT',RA',T'>,构造一个基于多个数据源的扩展LDA主题模型,记为MD-LDA,其中包括精简后的服务描述文本特征向量RT',WebAPI特征向量RA和标签特征向量T,MD-LDA模型基于隐含狄利克雷分布,隐含狄利克雷分布LDA是一种主题模型,它将文档集中每篇文档的主题按照概率分布的形式给出,融合服务的各项数据源特征,在MD-LDA模型中,在服务API和标签中相关的词选择方法和服务文档描述文档RT中一致,每个服务API或者服务标签对文档的主题分布都有其独特的贡献;
所以,有一个主题分布,狄利克雷的α超参数对应RSM'中的RA和T,狄利克雷的超参数β对应每个主题中的词语分布,然后根据中选择的RA或者T,从主题分布中提取一个主题,并且通过所选的主题生成特定的词语,从而生成融合服务描述文本、服务API和服务标签的MD-LDA模型;
2.1.4相似度计算
实际上,mashup服务文档主题分布映射的是文本向量空间,故通过相应的主题概率分布来计算两个服务文档RSM1'和RSM2'的相似性,本模型中主题是词向量的混合分布,故使用相对熵KL距离作为相似度度量标准,计算如下所示;



T代表两个服务文档中的所有共同主题,pj和qj分别代表在两个文档中的主题分布,当pj=qj时候,KL距离计算结果DKL(RSM′1,RSM′2)为0,由于KL距离并不是对称性质的,即DKL(RSM′1,RSM′2)≠DKL(RSM′2,RSM′1),所以通常使用其对称版本,计算公式如下:
DKL(RSM′1,RSM′2)=λDKL(RSM′1,λ*RSM′1+(1-λ)RSM′2)
+(1-λ)DKL(RSM′2,λ*RSM′1+(1-λ)RSM′2)
故取λ=0.5,则将上述公式转换为JS距离,JS距离又称JS散度(Jensen-Shannondivergence)是KL距离的一种变形,通过JS距离作为标准计算文本的相似度,作为服务的相似度,最终计算公式如下:



2.2SOAP相似度计算
2.2.1自身特征值计算
在服务语料库中发现一个术语Ti,通过信息论方法来计算其信息量I(Pi),在此基础上,将术语Ti的特征值Spe(Ti)赋值如下
Spe(Ti)=I(Pi)
通过计算联合概率分布P{pi,qj}来计算术语特征值,其中pi∈P并且qj∈Q,pi是从术语集TL中选择一个词,而qj是从原子词汇A中取得一个词,其中{p1,p2,…pn}和{q1,q2,…,qm}分别由随机变量P,Q表示,pi和qj的互信息计算由如下公式计算;



术语pi的特征值表示为I(pi,Q),表示pi术语和词汇库Q的关系,结合语料库中术语和词汇的频率计算pi特征值的公式如下:
Spe(Ti)≈I(pi,Q)
根据贝叶斯定理,



最终SOAP服务的自身信息特征值SelfSpe(Ti)计算如下



分析常规的WSDL文档中术语一般包括1到2个词汇,故代表术语中的词汇近似设置为1计算,θ代表加权值,基于信息论方法设定,取值范围为0到1;
2.2.2上下文信息特征值计算
根据信息论方法,服务的上下文信息特征是基于修饰的术语词概率分布的熵,为此,通过以下公式计算其熵值:



其中NT代表术语Ti的修饰数量,(modm,Ti)代表modm修饰术语Ti的概率,熵值由所有的(modm,Ti)对平均信息量计算,在一个特定的领域中,术语的修饰词分布较为紧密,故在一个特定领中的术语熵值更低,通过熵值计算出术语Ti的上下文信息特征值ContextSpe(Ti)如下:



其中1≤j≤K,K为所有相同定义的修饰词数量和,代表每一个修饰词;
2.2.3混合特征值计算
通过步骤2.2.1和2.2.2计算的自身特征值和上下文信息特征,覆盖描述词的特征以及词语自身所不能描述的信息,最终通以下公式求得混合的特征值如下:



混合系数α值在0和1之间,根据实验设置为0.65,经过归一化处理,服务的自身特征值、上下文特征值和混合特征值取值均在0和1之间;
2.2.4领域权重计算;
2.2.5生成术语的Bigraph层次结构
提出一种术语Bigraph层次构造算法,构建不同术语的Bigraph层次结构,类似于Bigraph的位置图,其中Bigraph的每一个节点代表一个术语对象,节点的值代表该术语对象的特征值,该Bigraph层次结构自上而下进行构造;
2.2.6构建相似度矩阵:
使用以下公式计算相似度:



其中,D代表术语构成的Bigraph层次结构的最大层数,dis(T1,T2)代表两个术语T1,T2在该Bigraph层次结构中的最短距离,即SOAP服务在某个特点上的相似度,计算SOAP服务每个特点的相似度,将特点相似度之和作为服务的相似度,将服务之间的...

【专利技术属性】
技术研发人员:陆佳炜赵伟周焕马超治王小定徐俊肖刚
申请(专利权)人:浙江工业大学
类型:发明
国别省市:浙江;33

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

1