CN110647626A - 基于互联网服务域的rest数据服务聚类方法 - Google Patents
基于互联网服务域的rest数据服务聚类方法 Download PDFInfo
- Publication number
- CN110647626A CN110647626A CN201910692296.0A CN201910692296A CN110647626A CN 110647626 A CN110647626 A CN 110647626A CN 201910692296 A CN201910692296 A CN 201910692296A CN 110647626 A CN110647626 A CN 110647626A
- Authority
- CN
- China
- Prior art keywords
- service
- data
- domain
- word
- rsm
- 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
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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Algebra (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于互联网服务域的REST数据服务聚类方法,包括以下步骤:第一步形式化定义;第二步服务特征提取和精简;第三步主题聚类模型构建;第四步相似度计算;第五步服务聚类;第六步数据细胞根据运转规则跟新全局最优对象;第七步系统中的各个组织细胞作为单独的执行单元以并行的结构进化运行,故该系统是并行分布式的。在该系统中,定义一系列的计算步骤为一个计算,可以从包含初始数据细胞对象集的组织细胞开始,在每一个计算中,都意味着有一个或者多个进化规则被作用于当前的数据细胞对象集上,当达到系统的停机约束条件时,系统自动停机,计算结果呈现于系统的外环境中。本发明能更好的得到服务领域的特征性,得到更好的聚类结果。
Description
技术领域
本发明涉及web服务的聚类问题,尤其是REST数据服务中mashup服务聚类方法
背景技术
随着Web 2.0技术的发展,互联网上的服务数量及其类型不断增加,这为更容易、更快速的方式开发物联网应用提供了可能,使得如何准确有效地发现所需的原子服务或者服务组合成为一个问题。服务聚类技术可以有效地促进服务发现,近年来,已经提出了许多不同类型的服务聚类方法来聚类Mashup服务,Web API和Web服务。现有方法主要利用服务描述中的信息(Mashup描述,API描述,WSDL文档等),将服务描述的相似性作为服务的功能相似性进行服务聚类。
随着轻量级REST服务的日益流行,催生了一系列Mashup服务聚类,而REST Mashup服务只有一种自然语言的非正式文本描述,这使得Mashup服务的发现和聚类更具有挑战性。
现有的Mashup服务聚类方法通常通过分析服务的描述文本来进行聚类,但是没有综合考虑描述文本信息中单词频率和相关性的相互影响,并且服务的描述文本信息有限,一些服务的其他信息如服务API、服务标签等,在服务的功能描述有着重要的体现。
Gao等人提出了一种新的基于图论的服务和Mashup推荐方法,该方法从服务的功能描述中提取主题,并将用户、Mashup、服务和主题之间的关系建模为四边形图以提升推荐性能。Cao等人通过从Web API调用和标签中推断的Mashup服务之间的关系,开发了一个两层主题模型,将Mashup服务在网络层的主题分布合并到内容层原始Mashup服务的主题概率分布中。
Pan W等人提出了一种基于结构相似性和遗传算法的新型Mashup服务聚类方法,通过双模图描述Mashups,Web APIs之间的关系,应用SimRank算法量化每对Mashup服务之间的结构相似性,最终将Mashup服务有效地聚集成簇。
发明内容
基于Mashup聚类方式缺陷,本发明采用一种基于域感知的服务特征选择方法获取处理的服务描述文本,基于结合处理的描述文本、服务API和标签设计一个多数据源LDA主题模型,LDA(Latent Dirichlet Allocation)是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构,通过模型推断服务的主题概率分布,并且计算服务的相似性,同时结合基于密度的k-means算法预处理数据集,利用组织P系统,结合基于层次划分Agnes算法、基于遗传算法(GA)、基于加权模糊聚类(FCM)算法,提出一种基于互联网服务域的REST数据服务聚类方法。
为了解决上述技术问题,本发明提供如下的技术方案:
一种基于互联网服务域的REST数据服务聚类方法,包括以下步骤:
第一步形式化定义,过程如下:
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.2服务文档跨域集中度:该跨域集中度表示为Ddep,它代表包含服务域RDi中的特征词FWijk的服务描述文档RTij与该服务所有域中的特征词比例,计算公式下:
其中,df(FWijk,RDi)代表服务域RDi中,包含特征词FWijk的描述文本RTij数量,而代表在所有域中包含特征词FWijk的描述文本RTij数量,跨域集中度越高则代表这个服务文档在该域中的集中度越大,故具备更强的领域表示;
1.3特征词频跨域集中度:该跨域集中度表示为Dfre,它代表特征词FWijk在服务域RDi中和在所有服务域出现的不同次数比例,计算如下:
1.4特征词的域表示度:代表一个特征词FWijk表示服务域RDi的程度,由服务文档跨域集中度和特征词频跨域集中度综合计算得来,计算如公式如下
Dfinal(FWijk,RDi)=α*Ddep(FWijk,RDi)+β*Dfre(FWijk,RDi)
α和β是权重系数,并且α+β=1,通过上述公式可以求得不同服务域中所有特征词的域表示度,特征词的域表示度越高代表其越能表示该服务域信息,需要注意的是,一个服务域中会出现一系列典型特征词,这些词的域表示度很高但服务的聚类效果一般,设置一个特征词的域表示度的阈值,对超过该阈值的特征词进行过滤,提高特征词对服务域的表示效果;
1.5域高效特征词集:代表在一个服务域中所有的特征词集合选取合适的特征词集合,通过特征词的域表示度降序排序,在一个服务域中选择前百分之P的特征词作为域高效特征词集合,如下所示
HQ(RDi)={FWij1,FWij2,…,FWijp,}
其中p=L*P/100,在特征词精简的过程中,如果一个描述文本RTij的特征词FWijk不属于HQ(RDi),则将其过滤,并更新服务描述文档RTij';
1.6、组织对象定义
在数据聚类算法中,组织P系统功能是为需要进行聚类的数据集搜索最优的聚类中心,因此,可以将数据的聚类中心用一组对象来表示,定义P系统中的组织细胞对象T为一个N*d维度向量,如下:
T=(t11,t12,…,t1d,…,ti1,ti2,…,tid,…,tN1,tN2,…,tNd,)
其中N代表该数据细胞T有N个簇,这N个簇C1,C2,…,CN对应的簇中心为t1,t2,…,tN,类似于数据点,对象中的每一个簇中心都是一个d维度向量,则ti可以表示为ti1,ti2,…tid,i=1,2,…,N,tid代表第i个数据簇中心的d个分量;
OBi代表P系统中第i个进化膜中的对象集合,其内包含一组对象,这些对象通过不同组织细胞中的进化机制进行进化反应,定义每个进化膜中的初始对象数量均为m,组成其对象集Q,在P系统的进化过程实施中,系统需要一个度量机制评价当前对象的优劣,通过计算样本整体的簇方差作为聚类问题性能函数Jm,进行对象的优质判定,其中sj代表数据簇中的某个数据集,Jm值越小,说明对象越好,通过对象的判断排序,每个进化膜中都有一个其最优的对象,即局部最优对象OBibest,而系统的环境中保存有一个最优对象,即全局最优对象,记为Tbest,当整个系统达到停机状态的时候,环境中的全局最优对象即为所求的解,也是最优的聚类中心;
第二步服务特征提取和精简,过程如下:
2.1服务预处理
通过对爬取的服务信息即服务的域、描述文本、API、标签进行预处理,提取其中准确、有效的特征词,可以构建描述更精确的服务描述文档,提高服务聚类精度,预处理步骤如下:
2.1.1构造初始特征向量,通过使用自然语言处理包NLTK,将语句分割并提取有效词语;
2.1.2删除无效的词语,例如符号(+、-、_等)和介词(a、the、of、and等),这些词语在服务的特征描述中是无用,保留可以表征服务特性的名称、动词和形容词;
2.1.3合并处理词干,一些具有相同词干的词语往往具有类似的含义,例如use、used、using表达的特性相同,删除相同含义单词保留词根即可;
2.2服务特征精简处理
不同的服务都有其独特领域特征性,同一个域中的特征词的重要性与频率和域的相关性有关,在计算服务特征值权重时,传统的TF-IDF计算方法或者互信息方法只单独考虑其中的一个因素,通过综合考虑词频和相关性因素,对服务的描述文本进行特征精简处理,步骤如下:
2.2.1遍历每个服务域RDi中每个描述文本RTij的每个特征词FWijk,根据1.4中的公式计算特征词FWijk表示服务域RDi的程度Dfinal(FWijk,RDi),如果Dfinal(FWijk,RDi)<R,删除该特征值,R为特征值的域表示度的阈值;
2.2.2对所有服务域中特在此完成2.2.1步骤后,根据Dfinal(FWijk,RDi)的值,对RDi的特征词FWijk进行降序排序,根据步骤1.5选取前百分之P的特征词作为服务域RDi域高效特征词集HQ(RDi);
2.2.3重复步骤2.2.2,直到生成所有服务域的域高效特征词集HQ(RDi),每个服务域RDi根据HQ(RDi)删除所有不在HQ(RDi)的特征词;
第三步主题聚类模型构建,过程如下:
在完成对RSM的特征精简之后得到新的服务文档矢量模型RSM'=<RD',RT',RA',T'>,构造一个基于多个数据源的扩展LDA主题模型,记为MD-LDA,其中包括精简后的服务描述文本特征向量RT',Web API特征向量RA和标签特征向量T,MD-LDA模型基于隐含狄利克雷分布,隐含狄利克雷分布(Latent Dirichlet Allocation,LDA),是一种主题模型(topicmodel),它可以将文档集中每篇文档的主题按照概率分布的形式给出,融合服务的各项数据源特征,在MD-LDA模型中,服务API和标签中相关的词选择方法和服务文档描述文档RT中一致,每个服务API或者服务标签对文档的主题分布都有其独特的贡献;
所以,有一个主题分布,狄利克雷的α超参数对应RSM'中的RA和T,狄利克雷的超参数β对应每个主题中的词语分布,然后根据选择的RA或者T,从主题分布中提取一个主题,并且通过所选的主题生成特定的词语,从而生成融合服务描述文本、服务API和服务标签的MD-LDA模型,生成过程如下:
3.1对于RSM'中的RA或者T,定义为变量datd,其中datd=1,2,3,…,N,N为RSM'中RA和T的总数量,选择一个多项式θdat服从狄利克雷的α超参数分布;
3.2对于RSM'中的主题k,满足k=1,2,…,K,K是RSM'中的主题数量,选择一个多项式服从狄利克雷的β超参数分布;
3.3设变量d为精简服务文档RSM'中的文档标签,d=1,2,…,D,D是RSM'的总数量,定义变量datd代表每个RSM'中的RA或者T,对于d中的每一个单词wdi,i=1,2,3,…,M,M是d中词语的总数量;
提取一个Web API或者标签记为xdi,其中服从均匀分布记为Uniform(datd);
相应的MD-LDA概率模型中每个主题与上面的词分布有关,词的抽取独立于狄利克雷参数β,x表示从API、标签集合datd中选取给定单词相关的RA或者标签T,每一个RA或者T都和一个主题上θ分布,θ是从狄利克雷参数α中选择,通过结合RA、T的主题分布和主题的单词分布形成主题zdi,
并从所选择的主题中提取单词wdi;
如上述的描述过程可知,模型主题的后验分布取决于RSM′中的RT′、RA和T,设置MD-LDA模型的各个参数如下:
θdat|α~Dirichlet(α)
xdi|datd~Uniform(datd)
3.4通过吉布斯(Gibbs)采样方法对MD-LDA模型进行参数推理,该采样方法为潜在的变量估计提供了一种简单而又有效的方法,它属于一种通过多元概率分布得到随机样本序列的马尔科夫链蒙特卡洛算法,Gibbs采样方法每一步都服从如下公式分布;
其中z_di表示处理单词wdi之后为每个单词主题指派,x_di表示处理单词wdi之后为每个单词API或者标签指派,nzw表示分配给主题z的单词w总数量,mxz表示分配给主题z的Web API和标签中单词的总数,为主题zdi的α参数,为单词wdi的β参数,V为主题的数量,αv,βv为第v个主题的α参数和β参数,抽样的过程中,主题的单词分布和API、标签的主题分布θ需要通过以下公式求出;
zdi和xdi通过确定z_di和x_di来抽样决定,对于每个RSM′,总结所有的θx计算文档d的主题分布,其中χ∈datd,从而得到所有RSM′的最终主题概率分布;
第四步相似度计算:
实际上,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距离作为标准计算文本的相似度,作为服务的相似度,最终计算公式如下:
第五步服务聚类
聚类中心点的选取需要对数据集中的点计算整体簇方差的值,但是数据集中存在许多非备选点,存在数据噪点和边缘的孤立点,而这些点不仅会影响簇中心的选取,而且会额外增加计算成本,同时需要人为的预先指定数据簇的数量;考虑到以上缺点,提出一种基于密度的K-means算法进行改进,通过计算各个点的密度数,提取高密度数的数据点作为簇中心,通过改进的K-means算法,对待聚类的初始数据集S进行预处理聚类,S由M个维度为d的数据点构成,基于密度的K-means算法的点密度计算如下所示:
其中Density(Si)代表在Si的R的范围内点的总个数,距离计算sim(Si,Sj)采为服务Si和Sj的相似度;
为此,基于密度K-means算法的聚类过程如下:
5.1采用基于密度K-means算法对数据预处理,通过计算不同数据Si之间的距离,根据半径范围R,将数据划分到不同的簇中,选取密度最高,即Density(Si)最高的K个Si作为簇中心,最后通过相似度对数据聚类,过程如下
5.1.1计算每个数据Si在组织对象Q内每个数据簇中心的距离,确认Si在在每个数据簇中点的个数,基于密度对数据集合进行排序;
5.1.2选取前K个密度最高即R范围点内数量最多的Sk,作为新的数据簇中心Ck;
5.1.3根据划分的不同簇之间的距离,得到每个Si和Ck的相似度sim(Si,Ck),根据平均相似度Avesim,若sim(Ck,Si)>Avesim,则将Si划分到数据簇Ck,最终得到N个数据簇;
5.2组织细胞O1进化规则
O1采用Agnes算法作为进化规则,指导完成细胞内的对象进化,根据根据设置簇间相似度阈值Cs,通过Agnes算法对通过密度k-means算法得到的N个初始簇进行合并,具体流程如下:
5.2.1根据任意两个数据簇Ci,Cj内数据的平均相似度dis(Ci,Cj),构建相似度矩阵D
其中SX为数据簇Ci中的数据点,SY为数据簇Cj中的数据点,U,V分别为Ci,Cj中数据点的数量;
5.2.2挑选dis(Ci,Cj)最大的数据簇Ci,Cj,根据簇间相似度阈值Cs,若dis(Ci,Cj)>Cs则将数据簇Ci和Cj合并;
5.2.3重复步骤5.2.2直到所有数据簇之间满足相似度阈值要求.
5.3组织细胞O2进化规则
O2采用基于样本加权的FCM算法作为进化规则,指导完成细胞内对象进化,传统的FCM算法的目标函数和簇中心计算并没有考虑到样本的差异性,对所有样本进行一视同仁处理,但是存在容易扩大数据集中的孤立点或者噪声数据影响的缺陷,从而减少一些重要样本对聚类的贡献,导致聚类的精度下降,为减少样本差异性对聚类效果影响,提出一种基于样本加权的FCM聚类算法,通过合理的对目标函数和聚类中心函数进行加权处理,提高聚类效果;
对于数据集S={s1,s2,...,sn},
5.3.1根据以下公式计算FCM隶属度:
5.3.2计算权重和熵信息
热力学的熵代表信息的混乱程度,基于熵定义对数据隶属度进行有效分析,并对FCM目标函数进行样本加权,首先定义熵变量Ei代表隶属度uij的有效程度,并且通过计算权重wi衡量数据si对该次聚类的影响程度,它们计算公式下所示:
5.3.3根据Ei,wi计算新的目标函数
m为加权指数,为大于等于1的整数,为了求有约束条件下目标函数的极值,利用拉格朗日乘子法构造新目标函数如下的函数:
对目标函数求极值最优化条件如下:
计算新的聚类中心tj为:
更新隶属度uij,将第i个数据划分到隶属度最大的数据数据簇Cj
5.3.4若|F(S,t)i-1-F(S,t)i|大于设定的阈值,重复步骤5.3.3,反之结束算法,输出结果F(S,t)i表示第i次迭代得到的FCM目标函数值;
5.4组织细胞O3进化规则
O3采用遗传算法(GA)的选择、交叉、变异三种遗传操作作为进化规则,指导完成细胞内各对象的进化,进化步骤如下:
5.4.1 O3将自身细胞中的m个对象和由其他两个组织细胞转运过来的对象合并为新的对象进化池P;
5.4.2 O3对新的对象进化池P执行选择、交叉与变异操作,其中选择操作采用最优保存策略进行,交叉和变异操作采用整数形式的交叉与单点变异,方法如下:
5.4.2.1计算每个对象k的评估值pk,N为数据簇的数量,ti为第i个数据簇的中心,pm越小说明分类方法越合适,该对象越容易被遗传到下一代;
5.4.2.2定义每个对象k适应度函数fitnessk
fitnessk=α(1-α)index-1
其中α为设定的参数的取值范围为0到1,index为迭代次数;
5.4.2.3选择操作,根据对象适应度所占比
其中u为对象池中对象的总数,对于每个对象,循环随机产生一个随机数p,若p<Cifk则将该对象遗传到下一代;
5.4.2.4交叉操作中的交叉位置通过交叉概率Pc确定,随机从进化池中选择两个对象进行交叉操作,遍历对象的每个分量,循坏生成随机数p若p<Pc,则在该位置交换两个对象在该位置后的分量,结束遍历;
5.4.2.5定义变异概率Pm,对于每一个对象,设置随机概率p,如果概率p小于变异概率Pm,如果z是根据变异概率Pm所确定的对象的变异点(即某个分量),则变异后的值为zθ,变异后的对象表示为:
其中δ∈[0,1],为随机生成的随机数,+,-号依据概率出现;
5.4.3重复步骤5.4.1-5.4.2,为保持进化池中的对象规模稳定,O3对进化后的对象进行筛选,根据对象的适应度进行淘汰,保留适应度最高的m个对象重新构成对象进化池P′;
第六步数据细胞根据运转规则更新全局最优对象
系统中的组织细胞的细胞膜间存在转运通道,不同的对象在不同的组织细胞之间进行共享与交换,都需要系统定义的转运规则支撑,在设计的组织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个对象;通过该转运规则可以达到以下效果:
6.1)组织细胞x中的m个对象T1,T2,...Tm被转运到组织细胞y中;
6.2)组织细胞y中的m个对象T1,T2,...Tm被转运到组织细胞x中;
(x,Txbest/Tbest,OEo),x≠y,x,y=1,2,3.
该条转运规则代表组织细胞x和系统环境进行转运,其中Txbest为当前计算组织细胞x中的局部最优对象,Tbest为当前环境中的全局最优对象,通过该条转运规则,组织细胞x中的最优对象被转运到环境中,并且同时更新该环境的全局最优对象;
第七步停机与输出
系统中的各个组织细胞作为单独的执行单元以并行的结构进化运行,故该系统是并行分布式的,在该系统中,定义一系列的计算步骤为一个计算,可以从包含初始数据细胞对象集的组织细胞开始,在每一个计算中,都意味着有一个或者多个进化规则被作用于当前的数据细胞对象集上,当达到系统的停机约束条件时,系统自动停机,计算结果呈现于系统的外环境中。
为了减少系统的复杂度,采用简单的基于最大执行计算的停机条件,具体来说,当该组织P系统执行到设置的最大计算数时停机,并输出当前环境中的全局最优对象集。
本发明的有益效果为:采用一种基于域感知的服务特征选择方法获取处理的服务描述文本,通过服务特征精简算法提取方法所需要的高效信息组成服务描述文档,能够有效的去除描述文档中的无用信息,相对与传统的TF-IDF计算方法或者互信息方法在精简特征词时同时考虑到了同一个域中的特征词的重要性与频率和域的相关性,能更好的得到服务领域的特征性;
同时利用基于密度的k-means和基于采用组织P系统,将基于层次划分Agnes算法、基于遗传算法(GA)、基于加权模糊聚类(FCM)算法作为进化规则能有效的结合这三种聚类算法的优点,得到更好的聚类结果。
附图说明
图1是基于互联网服务域的REST服务相似度计算方法的流程图。
具体实施方式
下面结合附图对本发明做进一步说明。
参照图1,一种基于互联网服务域的REST服务相似度计算方法,包括以下步骤:
第一步形式化定义,过程如下:
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.2服务文档跨域集中度:该跨域集中度表示为Ddep,它代表包含服务域RDi中的特征词FWijk的服务描述文档RTij与该服务所有域中的特征词比例,计算公式下:
其中,df(FWijk,RDi)代表服务域RDi中,包含特征词FWijk的描述文本RTij数量,而代表在所有域中包含特征词FWijk的描述文本RTij数量,跨域集中度越高则代表这个服务文档在该域中的集中度越大,故具备更强的领域表示;
1.3特征词频跨域集中度:该跨域集中度表示为Dfre,它代表特征词FWijk在服务域RDi中和在所有服务域出现的不同次数比例,计算如下:
1.4特征词的域表示度:代表一个特征词FWijk表示服务域RDi的程度,由服务文档跨域集中度和特征词频跨域集中度综合计算得来,具体计算如公式如下
Dfinal(FWijk,RDi)=α*Ddep(FWijk,RDi)+β*Dfre(FWijk,RDi)
α和β是权重系数,并且α+β=1,通过上述公式可以求得不同服务域中所有特征词的域表示度,特征词的域表示度越高代表其越能表示该服务域信息,需要注意的是,一个服务域中会出现一系列典型特征词,例如weather域中的weather特征词、map域中的map特征词,这些词的域表示度很高但服务的聚类效果一般,设置一个特征词的域表示度阈值,对超过该阈值的特征词进行过滤,提高特征词对服务域的表示效果;
1.5域高效特征词集:代表在一个服务域中所有的特征词集合选取合适的特征词集合,通过特征词的域表示度降序排序,在一个服务域中选择前百分之P的特征词作为本发明需要的域高效特征词集合,如下所示
HQ(RDi)={FWij1,FWij2,...,FWijp,}
其中p=L*P/100,在特征词精简的过程中,如果一个描述文本RTij的特征词FWijk不属于HQ(RDi),则将其过滤,并更新服务描述文档RTij′;
第二步服务特征提取和精简,过程如下:
2.1服务预处理
如图1所示,本发明通过对爬取的服务信息即服务的域(domain)、描述文本(Description)、API、标签(Tag)进行预处理,提取其中准确、有效的特征词,可以构建描述更精确的服务描述文档(Service Document),提高服务聚类精度,预处理步骤如下:
2.1.1构造初始特征向量,通过使用自然语言处理包NLTK,将语句分割并提取有效词语;
2.1.2删除无效的词语,例如符号(+、-、_等)和介词(a、the、of、and等),这些词语在服务的特征描述中是无用,保留可以表征服务特性的名称、动词和形容词;
2.1.3合并处理词干,一些具有相同词干的词语往往具有类似的含义,例如use、used、using表达的特性相同,删除相同含义单词保留词根即可;
2.2服务特征精简处理
不同的服务都有其独特领域特征性,同一个域中的特征词的重要性与频率和域的相关性有关,在计算服务特征值权重时,传统的TF-IDF计算方法或者互信息方法只单独考虑其中的一个因素,通过综合考虑词频和相关性因素,对服务的描述文本进行特征精简处理,步骤如下:
2.2.1遍历每个服务域RDi中每个描述文本RTij的每个特征词FWijk,根据1.4中的公式计算特征词FWijk表示服务域RDi的程度Dfinal(FWijk,RDi),如果Dfinal(FWijk,RDi)<R,删除该特征值,R为特征值域表示度阈值;
2.2.2对所有服务域中特在此完成2.2.1步骤后,根据Dfinal(FWijk,RDi)的值,对RDi的特征词FWijk进行降序排序,根据步骤1.5选取前百分之P的特征词作为服务域RDi域高效特征词集HQ(RDi);
2.2.3重复步骤2.2.2,直到生成所有服务域的域高效特征词集HQ(RDi),每个服务域RDi根据HQ(RDi)删除所有不在HQ(RDi)的特征词;
最终得到精简后的描述文档(Reduced Description Text)和精简后的服务文档(Reduced Service Document);
第三步主题聚类模型构建
在完成对RSM的特征精简之后得到新的服务文档矢量模型RSM′=<RD′,RT′,RA′,T′>,构造一个基于多个数据源的扩展LDA主题模型,记为MD-LDA,其中包括精简后的服务描述文本特征向量RT′,Web API特征向量RA和标签特征向量T,MD-LDA模型基于隐含狄利克雷分布,融合服务的各项数据源特征,在MD-LDA模型中,服务API和标签中相关的词选择方法和服务文档描述文档RT中一致,每个服务API或者服务标签对文档的主题分布都有其独特的贡献;
所以,有一个主题分布,狄利克雷的α超参数对应RSM′中的RA和T,狄利克雷的超参数β对应每个主题中的词语分布,然后根据中选择的RA或者T,从主题分布中提取一个主题,并且通过所选的主题生成特定的词语,从而生成融合服务描述文本、服务API和服务标签的MD-LDA模型,生成过程如下:
3.1对于RSM′中的RA或者T,定义为变量datd,其中datd=1,2,3,...,N,N为RSM′中RA和T的总数量,选择一个多项式θdat服从狄利克雷的α超参数分布;
3.3设变量d为精简服务文档RSM′中的文档标签,d=1,2,...,D,D是RSM′的总数量,定义变量datd代表每个RSM′中的RA或者T,对于d中的每一个单词sdi,i=1,2,3,...,M,M是d中词语的总数量;
提取一个Web API或者标签记为xdi,其中服从均匀分布记为Uniform(datd);
提取一个单词记为wdi,其服从分布;
相应的MD-LDA概率模型中每个主题与上面的词分布有关,词的抽取独立于狄利克雷参数β,x表示从API、标签集合datd中选取给定单词相关的RA或者标签T,每一个RA或者T都和一个主题上θ分布,θ是从狄利克雷参数α中选择,通过结合RA、T的主题分布和主题的单词分布形成主题zdi;
并从所选择的主题中提取单词wdi;
如上述的描述过程可知,模型主题的后验分布取决于RSM′中的RT′、RA和T,设置MD-LDA模型的各个参数如下:
θdat|α~Dirichlet(α)
xdi|datd~Uniform(datd)
3.4通过吉布斯(Gibbs)采样方法对MD-LDA模型进行参数推理,该采样方法为潜在的变量估计提供了一种简单而又有效的方法,它属于一种通过多元概率分布得到随机样本序列的马尔科夫链蒙特卡洛算法,Gibbs采样方法每一步都服从如下公式分布;
其中z_di表示处理单词wdi之后为每个单词主题指派,x_di表示处理单词wdi之后为每个单词API或者标签指派,nzw表示分配给主题z的单词w总数量,mxz表示分配给主题z的Web API和标签中单词的总数,为主题zdi的α参数,为单词wdi的β参数,V为主题的数量,αv,βv为第v个主题的α参数和β参数,抽样的过程中,主题的单词分布和API、标签的主题分布θ需要通过以下公式求出;
zdi和xdi通过确定z_di和x_di来抽样决定,对于每个RSM′,本发明总结所有的θx计算文档d的主题分布,其中χ∈datd,从而得到所有RSM′的最终主题概率分布,例如得到图1所示的主题-文档矩阵和特征词-主题矩阵;
第四步相似度计算
实际上,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距离作为标准计算文本的相似度,作为服务的相似度,最终计算公式如下:
第五步服务聚类
聚类中心点的选取需要对数据集中的点计算整体簇方差的值,但是数据集中存在许多非备选点,存在数据噪点和边缘的孤立点,而这些点不仅会影响簇中心的选取,而且会额外增加计算成本,同时需要人为的预先指定数据簇的数量,考虑到以上缺点,提出一种基于密度的K-means算法进行改进,通过计算各个点的密度数,提取高密度数的数据点作为簇中心,通过改进的K-means算法,对待聚类的初始数据集S进行预处理聚类,S由M个维度为d的数据点构成,基于密度的K-means算法的点密度计算如下所示:
其中Density(Si)代表在Si的R的范围内点的总个数,距离计算sim(Si,Sj)采为服务Si和Sj的相似度;
为此,基于密度K-means算法的聚类过程如下:
5.1采用基于密度K-means算法对数据预处理,通过计算不同数据Si之间的距离,根据半径范围R,将数据划分到不同的簇中,选取密度最高,即Density(Si)最高的K个Si作为簇中心,最后通过相似度对数据聚类,过程如下
5.1.1计算每个数据Si在组织对象Q内每个数据簇中心的距离,确认Si在在每个数据簇中点的个数,基于密度对数据集合进行排序;
5.1.2选取前K个密度最高即R范围点内数量最多的Sk,作为新的数据簇中心Ck;
5.1.3根据划分的不同簇之间的距离,得到每个Si和Ck的相似度sim(Si,Ck),根据平均相似度Avesim,若sim(Ck,Si)>Avesim,则将Si划分到数据簇Ck,最终得到N个数据簇;
5.2组织细胞O1进化规则
O1采用Agnes作为进化规则,指导完成细胞内的对象进化,根据设置簇间相似度阈值Cs,通过Agnes算法对通过密度k-means算法得到的N个初始簇进行合并,流程如下:
5.2.1根据任意两个数据簇Ci,Cj内数据的平均相似度dis(Ci,Cj),构建相似度矩阵D
其中SX为数据簇Ci中的数据点,SY为数据簇Cj中的数据点,U,V分别为Ci,Cj中数据点的数量;
5.2.2挑选dis(Ci,Cj)最大的数据簇Ci,Cj,根据簇间相似度阈值Cs,若dis(Ci,Cj)>Cs则将数据簇Ci和Cj合并;
5.2.3重复步骤5.2.2直到所有数据簇之间满足相似度阈值要求;
5.3组织细胞O2进化规则
O2采用基于样本加权的FCM算法作为进化规则,指导完成细胞内对象进化,传统的FCM算法的目标函数和簇中心计算并没有考虑到样本的差异性,对所有样本进行一视同仁处理,但是存在容易扩大数据集中的孤立点或者噪声数据影响的缺陷,从而减少一些重要样本对聚类的贡献,导致聚类的精度下降,为减少样本差异性对聚类效果影响,提出一种基于样本加权的FCM聚类算法,通过合理的对目标函数和聚类中心函数进行加权处理,提高聚类效果;
对于数据集S={s1,s2,...,sn},
5.3.1根据以下公式计算FCM隶属度:
5.3.2计算权重和熵信息
热力学的熵代表信息的混乱程度,本发明基于熵定义对数据隶属度进行有效分析,并对FCM目标函数进行样本加权,首先定义熵变量Ei代表隶属度uij的有效程度,并且通过计算权重wi衡量数据si对该次聚类的影响程度,它们计算公式下所示:
5.3.3根据Ei,wi计算新的目标函数
m为加权指数,为大于等于1的整数,为了求有约束条件下目标函数的极值,利用拉格朗日乘子法构造新目标函数如下的函数:
对目标函数求极值最优化条件如下:
计算新的聚类中心tj为:
更新隶属度uij,将第i个数据划分到隶属度最大的数据数据簇Cj
5.3.4若|F(S,t)i-1-F(S,t)i|大于设定的阈值,重复步骤5.3.3,反之结束算法,输出结果F(S,t)i表示第i次迭代得到的FCM目标函数值;
5.4组织细胞O3进化规则
O3采用GA的选择、交叉、变异三种遗传操作作为进化规则,指导完成细胞内各对象的进化,进化步骤如下:
5.4.1 O3将自身细胞中的m个对象和由其他两个组织细胞转运过来的对象合并为新的对象进化池P;
5.4.2 O3对新的对象进化池P执行选择、交叉与变异操作,其中选择操作采用最优保存策略进行,交叉和变异操作采用整数形式的交叉与单点变异,具体方法如下:
5.4.2.1计算每个对象k的评估值pk,N为数据簇的数量,ti为第i个数据簇的中心,pm越小说明分类方法越合适,该对象越容易被遗传到下一代;
5.4.2.2定义每个对象k适应度函数fitnessk
fitnessk=α(1-α)index-1
其中α为设定的参数的取值范围为0到1,index为迭代次数;
5.4.2.3选择操作,根据对象适应度所占比
其中u为对象池中对象的总数,对于每个对象,循环随机产生一个随机数p,若p<Cifk则将该对象遗传到下一代;
5.4.2.4交叉操作中的交叉位置通过交叉概率Pc确定,随机从进化池中选择两个对象进行交叉操作,遍历对象的每个分量,循坏生成随机数p若p<Pc,则在该位置交换两个对象在该位置后的分量,结束遍历;
5.4.2.5定义变异概率Pm,对于每一个对象,设置随机概率p,如果概率p小于变异概率Pm,如果z是根据变异概率Pm所确定的对象的变异点(即某个分量),则变异后的值为zθ,变异后的对象表示为:
其中δ∈[0,1],为随机生成的随机数,+,-号依据概率出现;
5.4.3重复步骤5.4.1-5.4.2,为保持进化池中的对象规模稳定,O3对进化后的对象进行筛选,根据对象的适应度进行淘汰,保留适应度最高的m个对象重新构成对象进化池P′;
第六步数据细胞根据运转规则跟新全局最优对象
系统中的组织细胞的细胞膜间存在转运通道,不同的对象在不同的组织细胞之间进行共享与交换,都需要系统定义的转运规则支撑,本发明在设计的组织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个对象;通过该转运规则可以达到以下效果:
6.1)组织细胞x中的m个对象T1,T2,...Tm被转运到组织细胞y中,
6.2)组织细胞y中的m个对象T1,T2,...Tm被转运到组织细胞x中;
(x,Txbest/Tbest,OEo),x≠y,x,y=1,2,3.
该条转运规则代表组织细胞x和系统环境进行转运,其中Txbest为当前计算组织细胞x中的局部最优对象,Tbest为当前环境中的全局最优对象,通过该条转运规则,组织细胞x中的最优对象被转运到环境中,并且同时更新该环境的全局最优对象;
第七步停机与输出
系统中的各个组织细胞作为单独的执行单元以并行的结构进化运行,故该系统是并行分布式的,在该系统中,定义一系列的计算步骤为一个计算,可以从包含初始数据细胞对象集的组织细胞开始,在每一个计算中,都意味着有一个或者多个进化规则被作用于当前的数据细胞对象集上,当达到系统的停机约束条件时,系统自动停机,计算结果呈现于系统的外环境中。
为了减少系统的复杂度,采用简单的基于最大执行计算的停机条件,具体来说,当该组织P系统执行到设置的最大计算数时停机,并输出当前环境中的全局最优对象集,例如得到如图1所示的主题为book,film,food,medical等类型的数据簇。
Claims (10)
1.一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述方法包括以下步骤:
第一步形式化定义,过程如下:
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.2服务文档跨域集中度:该跨域集中度表示为Ddep,它代表包含服务域RDi中的特征词FWijk的服务描述文档RTij与该服务所有域中的特征词比例,计算公式下:
其中,df(FWijk,RDi)代表服务域RDi中,包含特征词FWijk的描述文本RTij数量,而代表在所有域中包含特征词FWijk的描述文本RTij数量,跨域集中度越高则代表这个服务文档在该域中的集中度越大,故具备更强的领域表示;
1.3特征词频跨域集中度:该跨域集中度表示为Dfre,它代表特征词FWijk在服务域RDi中和在所有服务域出现的不同次数比例,计算如下:
1.4特征词的域表示度:代表一个特征词FWijk表示服务域RDi的程度,由服务文档跨域集中度和特征词频跨域集中度综合计算得来,计算如公式如下
Dfinal(FWijk,RDi)=α*Ddep(FWijk,RDi)+β*Dfre(FWijk,RDi)
α和β是权重系数,并且α+β=1,通过上述公式可以求得不同服务域中所有特征词的域表示度,特征词的域表示度越高代表其越能表示该服务域信息,需要注意的是,一个服务域中会出现一系列典型特征词,这些词的域表示度很高但服务的聚类效果一般,设置一个特征词的域表示度的阈值,对超过该阈值的特征词进行过滤,提高特征词对服务域的表示效果;
1.5域高效特征词集:代表在一个服务域中所有的特征词集合,选取合适的特征词集合,通过特征词的域表示度降序排序,在一个服务域中选择前百分之P的特征词作为域高效特征词集合,如下所示
HQ(RDi)={FWij1,FWij2,...,FWijp,}
其中p=L*P/100,在特征词精简的过程中,如果一个描述文本RTij的特征词FWijk不属于HQ(RDi),则将其过滤,并更新服务描述文档RTij′;
1.6、组织对象定义
在数据聚类算法中,组织P系统功能是为需要进行聚类的数据集搜索最优的聚类中心,因此,可以将数据的聚类中心用一组对象来表示,P系统中的组织细胞对象T为一个N*d维度向量,如下:
T=(t11,t12,...,t1d,...,ti1,ti2,...,tid,...,tN1,tN2,...,tNd,)
其中N代表该数据细胞T有N个簇,这N个簇C1,C2,...,CN对应的簇中心为t1,t2...,tN,类似于数据点,对象中的每一个簇中心都是一个d维度向量,则ti可以表示为ti1,ti2,...tid,i=1,2,...,N,tid代表第i个数据簇中心的d个分量;
OBi代表P系统中第i个进化膜中的对象集合,其内包含一组对象,这些对象通过不同组织细胞中的进化机制进行进化反应,定义每个进化膜中的初始对象数量均为m,组成其对象集Q,在P系统的进化过程实施中,系统需要一个度量机制评价当前对象的优劣,通过计算样本整体的簇方差作为聚类问题性能函数Jm,进行对象的优质判定,其中sj代表数据簇中的某个数据集,Jm值越小,说明对象越好,通过对象的判断排序,每个进化膜中都有一个其最优的对象,即局部最优对象OBibest,而系统的环境中保存有一个最优对象,即全局最优对象,记为Tbest,当整个系统达到停机状态的时候,环境中的全局最优对象即为所求的解,也是最优的聚类中心;
第二步服务特征提取和精简,过程如下:
2.1服务预处理
通过对爬取的服务信息即服务的域、描述文本、API、标签进行预处理,提取其中准确、有效的特征词,可以构建描述更精确的服务描述文档,提高服务聚类精度;
2.2服务特征精简处理
不同的服务都有其独特领域特征性,同一个域中的特征词的重要性与频率和域的相关性有关,在计算服务特征值权重时,传统的TF-IDF计算方法或者互信息方法只单独考虑其中的一个因素,通过综合考虑词频和相关性因素,对服务的描述文本进行特征精简处理;
第三步主题聚类模型构建,过程如下:
在完成对RSM的特征精简之后得到新的服务文档矢量模型RSM′=<RD′,RT′,RA′,T′>,构造一个基于多个数据源的扩展LDA主题模型,记为MD-LDA,其中包括精简后的服务描述文本特征向量RT′,Web API特征向量RA和标签特征向量T,MD-LDA模型基于隐含狄利克雷分布,隐含狄利克雷分布LDA,是一种主题模型,它可以将文档集中每篇文档的主题按照概率分布的形式给出,融合服务的各项数据源特征;在MD-LDA模型中,服务API和标签中相关的词选择方法和服务文档描述文档RT中一致,每个服务API或者服务标签对文档的主题分布都有其独特的贡献;
所以,有一个主题分布,狄利克雷的α超参数对应RSM′中的RA和T,狄利克雷的超参数β对应每个主题中的词语分布,然后根据选择的RA或者T,从主题分布中提取一个主题,并且通过所选的主题生成特定的词语,从而生成融合服务描述文本、服务API和服务标签的MD-LDA模型;
第四步相似度计算:
实际上,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散度,是KL距离的一种变形,通过JS距离作为标准计算文本的相似度,作为服务的相似度,最终计算公式如下:
第五步服务聚类
聚类中心点的选取需要对数据集中的点计算整体簇方差的值,但是数据集中存在许多非备选点,存在数据噪点和边缘的孤立点,而这些点不仅会影响簇中心的选取,而且会额外增加计算成本,同时需要人为的预先指定数据簇的数量,考虑到以上缺点,提出一种基于密度的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个对象;通过该转运规则可以达到以下效果:
6.1)组织细胞x中的m个对象T1,T2,...Tm被转运到组织细胞y中;
6.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所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述2.1中,预处理步骤如下:
2.1.1构造初始特征向量,通过使用自然语言处理包NLTK,将语句分割并提取有效词语;
2.1.2删除无效的词语,例如符号(+、-、_等)和介词(a、the、of、and等),这些词语在服务的特征描述中是无用,保留可以表征服务特性的名称、动词和形容词;
2.1.3合并处理词干,一些具有相同词干的词语往往具有类似的含义,例如use、used、using表达的特性相同,删除相同含义单词保留词根即可。
3.如权利要求1或2所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述2.2的步骤如下:
2.2.1遍历每个服务域RDi中每个描述文本RTij的每个特征词FWijk,根据1.4中的公式计算特征词FWijk表示服务域RDi的程度Dfinal(FWijk,RDi),如果Dfinal(FWijk,RDi)<R,删除该特征值,R为特征值的域表示度的阈值;
2.2.2对所有服务域中特在此完成2.2.1步骤后,根据Dfinal(FWijk,RDi)的值,对RDi的特征词FWijk进行降序排序,根据步骤1.5选取前百分之P的特征词作为服务域RDi域高效特征词集HQ(RDi);
2.2.3重复步骤2.2.2,直到生成所有服务域的域高效特征词集HQ(RDi),每个服务域RDi根据HQ(RDi)删除所有不在HQ(RDi)的特征词。
4.如权利要求1或2所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述第三步中,生成过程如下:
3.1对于RSM′中的RA或者T,定义为变量datd,其中datd=1,2,3,...,N,N为RSM′中RA和T的总数量,选择一个多项式θdat服从狄利克雷的α超参数分布;
3.3设变量d为精简服务文档RSM′中的文档标签,d=1,2,...,D,D是RSM′的总数量,定义变量datd代表每个RSM′中的RA或者T,对于d中的每一个单词wdi,i=1,2,3,...,M,M是d中词语的总数量;
提取一个Web API或者标签记为xdi,其中服从均匀分布记为Uniform(datd);
相应的MD-LDA概率模型中每个主题与上面的词分布有关,词的抽取独立于狄利克雷参数β,x表示从API、标签集合datd中选取给定单词相关的RA或者标签T,每一个RA或者T都和一个主题上θ分布,θ是从狄利克雷参数α中选择,通过结合RA、T的主题分布和主题的单词分布形成主题zdi,
并从所选择的主题中提取单词wdi;
如上述的描述过程可知,模型主题的后验分布取决于RSM′中的RT′、RA和T,设置MD-LDA模型的各个参数如下:
θdat|α~Dirichlet(α)
xdi|datd~Uniform(datd)
3.4通过吉布斯(Gibbs)采样方法对MD-LDA模型进行参数推理,该采样方法为潜在的变量估计提供了一种简单而又有效的方法,它属于一种通过多元概率分布得到随机样本序列的马尔科夫链蒙特卡洛算法,Gibbs采样方法每一步都服从如下公式分布;
其中z_di表示处理单词wdi之后为每个单词主题指派,x_di表示处理单词wdi之后为每个单词API或者标签指派,nzw表示分配给主题z的单词w总数量,mxz表示分配给主题z的Web API和标签中单词的总数,为主题zdi的α参数,为单词wdi的β参数,V为主题的数量,αv,βv为第v个主题的α参数和β参数,抽样的过程中,主题的单词分布和API、标签的主题分布θ需要通过以下公式求出;
zdi和xdi通过确定z_di和x_di来抽样决定,对于每个RSM′,总结所有的θx计算文档d的主题分布,其中χ∈datd,从而得到所有RSM′的最终主题概率分布。
5.如权利要求1或2所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述步骤5中,基于密度K-means算法的聚类过程如下:
5.1采用基于密度K-means算法对数据预处理,通过计算不同数据Si之间的距离,根据半径范围R,将数据划分到不同的簇中,选取密度最高,即Density(Si)最高的K个Si作为簇中心,最后通过相似度对数据聚类;
5.2组织细胞O1进化规则
O1采用Agnes算法作为进化规则,指导完成细胞内的对象进化,根据设置簇间相似度阈值Cs,通过Agnes算法对通过密度k-means算法得到的N个初始簇进行合并;
5.3组织细胞O2进化规则
O2采用基于样本加权的FCM算法作为进化规则,指导完成细胞内对象进化,传统的FCM算法的目标函数和簇中心计算并没有考虑到样本的差异性,对所有样本进行一视同仁处理,但是存在容易扩大数据集中的孤立点或者噪声数据影响的缺陷,从而减少一些重要样本对聚类的贡献,导致聚类的精度下降,为减少样本差异性对聚类效果影响,提出一种基于样本加权的FCM聚类算法,通过合理的对目标函数和聚类中心函数进行加权处理,提高聚类效果;
5.4组织细胞O3进化规则
O3采用遗传算法GA的选择、交叉、变异三种遗传操作作为进化规则,指导完成细胞内各对象的进化。
6.如权利要求5所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述5.1的过程如下:
5.1.1计算每个数据Si在组织对象Q内每个数据簇中心的距离,确认Si在每个数据簇中点的个数,基于密度对数据集合进行排序;
5.1.2选取前K个密度最高即R范围点内数量最多的Sk,作为新的数据簇中心Ck;
5.1.3根据划分的不同簇之间的距离,得到每个Si和Ck的相似度sim(Si,Ck),根据平均相似度Avesim,若sim(Ck,Si)>Avesim,则将Si划分到数据簇Ck,最终得到N个数据簇;
8.如权利要求5所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述5.3中,对于数据集S={s1,s2,...,sn},
5.3.1根据以下公式计算FCM隶属度:
5.3.2计算权重和熵信息
热力学的熵代表信息的混乱程度,基于熵定义对数据隶属度进行有效分析,并对FCM目标函数进行样本加权,首先定义熵变量Ei代表隶属度uij的有效程度,并且通过计算权重wi衡量数据si对该次聚类的影响程度,它们计算公式下所示:
5.3.3根据Ei,wi计算新的目标函数
m为加权指数,为大于等于1的整数,为了求有约束条件下目标函数的极值,利用拉格朗日乘子法构造新目标函数如下的函数:
对目标函数求极值最优化条件如下:
计算新的聚类中心tj为:
更新隶属度uij,将第i个数据划分到隶属度最大的数据数据簇Cj
5.3.4若|F(S,t)i-1-F(S,t)i|大于设定的阈值,重复步骤5.3.3,反之结束算法,输出结果F(S,t)i表示第i次迭代得到的FCM目标函数值。
9.如权利要求5所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述5.4中,进化步骤如下:
5.4.1 O3将自身细胞中的m个对象和由其他两个组织细胞转运过来的对象合并为新的对象进化池P;
5.4.2 O3对新的对象进化池P执行选择、交叉与变异操作,其中选择操作采用最优保存策略进行,交叉和变异操作采用整数形式的交叉与单点变异;
5.4.3重复步骤5.4.1-5.4.2,为保持进化池中的对象规模稳定,O3对进化后的对象进行筛选,根据对象的适应度进行淘汰,保留适应度最高的m个对象重新构成对象进化池P′。
10.如权利要求9所述的一种基于互联网服务域的REST数据服务聚类方法,其特征在于,所述5.4.2中,方法如下:
5.4.2.1计算每个对象k的评估值pk,N为数据簇的数量,ti为第i个数据簇的中心,pm越小说明分类方法越合适,该对象越容易被遗传到下一代;
5.4.2.2定义每个对象k适应度函数fitnessk
fitnessk=α(1-α)index-1
其中α为设定的参数的取值范围为0到1,index为迭代次数;
5.4.2.3选择操作,根据对象适应度所占比
其中u为对象池中对象的总数,对于每个对象,循环随机产生一个随机数p,若p<Cifk则将该对象遗传到下一代;
5.4.2.4交叉操作中的交叉位置通过交叉概率Pc确定,随机从进化池中选择两个对象进行交叉操作,遍历对象的每个分量,循坏生成随机数p若p<Pc,则在该位置交换两个对象在该位置后的分量,结束遍历;
5.4.2.5定义变异概率Pm,对于每一个对象,设置随机概率p,如果概率p小于变异概率Pm,且z是根据变异概率Pm所确定的对象的变异点(即某个分量),则变异后的值为zθ,则变异后的对象表示为:
其中δ∈[0,1],为随机生成的随机数,+,-号依据概率出现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910692296.0A CN110647626B (zh) | 2019-07-30 | 2019-07-30 | 基于互联网服务域的rest数据服务聚类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910692296.0A CN110647626B (zh) | 2019-07-30 | 2019-07-30 | 基于互联网服务域的rest数据服务聚类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110647626A true CN110647626A (zh) | 2020-01-03 |
CN110647626B CN110647626B (zh) | 2022-05-03 |
Family
ID=68989917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910692296.0A Active CN110647626B (zh) | 2019-07-30 | 2019-07-30 | 基于互联网服务域的rest数据服务聚类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110647626B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110990498A (zh) * | 2020-03-04 | 2020-04-10 | 杭州信雅达数码科技有限公司 | 一种基于fcm算法的数据融合方法 |
CN111475607A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种基于Mashup服务功能特征表示与密度峰值检测的Web数据聚类方法 |
CN111475609A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种围绕主题建模的改进型K-means服务聚类方法 |
CN112115705A (zh) * | 2020-09-23 | 2020-12-22 | 普信恒业科技发展(北京)有限公司 | 一种电子简历的筛选方法及装置 |
CN113361270A (zh) * | 2021-05-25 | 2021-09-07 | 浙江工业大学 | 一种面向服务数据聚类的短文本优化主题模型方法 |
CN113378558A (zh) * | 2021-05-25 | 2021-09-10 | 浙江工业大学 | 基于代表词对的RESTful API文档主题分布提取方法 |
CN115542308A (zh) * | 2022-12-05 | 2022-12-30 | 德心智能科技(常州)有限公司 | 基于毫米波雷达的室内人员探测方法、装置、设备及介质 |
CN116821053A (zh) * | 2023-08-30 | 2023-09-29 | 之江实验室 | 数据上报方法、装置、计算机设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100145902A1 (en) * | 2008-12-09 | 2010-06-10 | Ita Software, Inc. | Methods and systems to train models to extract and integrate information from data sources |
KR20140030838A (ko) * | 2012-09-04 | 2014-03-12 | 에스케이플래닛 주식회사 | 군집 분석 지원 시스템 및 방법과, 이를 지원하는 장치 |
US20190197354A1 (en) * | 2017-12-22 | 2019-06-27 | Motorola Solutions, Inc | Method, device, and system for adaptive training of machine learning models via detected in-field contextual sensor events and associated located and retrieved digital audio and/or video imaging |
-
2019
- 2019-07-30 CN CN201910692296.0A patent/CN110647626B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100145902A1 (en) * | 2008-12-09 | 2010-06-10 | Ita Software, Inc. | Methods and systems to train models to extract and integrate information from data sources |
KR20140030838A (ko) * | 2012-09-04 | 2014-03-12 | 에스케이플래닛 주식회사 | 군집 분석 지원 시스템 및 방법과, 이를 지원하는 장치 |
US20190197354A1 (en) * | 2017-12-22 | 2019-06-27 | Motorola Solutions, Inc | Method, device, and system for adaptive training of machine learning models via detected in-field contextual sensor events and associated located and retrieved digital audio and/or video imaging |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475609B (zh) * | 2020-02-28 | 2022-04-05 | 浙江工业大学 | 一种围绕主题建模的改进型K-means服务聚类方法 |
CN111475607A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种基于Mashup服务功能特征表示与密度峰值检测的Web数据聚类方法 |
CN111475609A (zh) * | 2020-02-28 | 2020-07-31 | 浙江工业大学 | 一种围绕主题建模的改进型K-means服务聚类方法 |
CN111475607B (zh) * | 2020-02-28 | 2022-06-17 | 浙江工业大学 | 一种基于Mashup服务功能特征表示与密度峰值检测的Web数据聚类方法 |
CN110990498A (zh) * | 2020-03-04 | 2020-04-10 | 杭州信雅达数码科技有限公司 | 一种基于fcm算法的数据融合方法 |
CN112115705A (zh) * | 2020-09-23 | 2020-12-22 | 普信恒业科技发展(北京)有限公司 | 一种电子简历的筛选方法及装置 |
CN113378558A (zh) * | 2021-05-25 | 2021-09-10 | 浙江工业大学 | 基于代表词对的RESTful API文档主题分布提取方法 |
CN113361270A (zh) * | 2021-05-25 | 2021-09-07 | 浙江工业大学 | 一种面向服务数据聚类的短文本优化主题模型方法 |
CN113378558B (zh) * | 2021-05-25 | 2024-04-16 | 浙江工业大学 | 基于代表词对的RESTful API文档主题分布提取方法 |
CN113361270B (zh) * | 2021-05-25 | 2024-05-10 | 浙江工业大学 | 一种面向服务数据聚类的短文本优化主题模型方法 |
CN115542308A (zh) * | 2022-12-05 | 2022-12-30 | 德心智能科技(常州)有限公司 | 基于毫米波雷达的室内人员探测方法、装置、设备及介质 |
CN116821053A (zh) * | 2023-08-30 | 2023-09-29 | 之江实验室 | 数据上报方法、装置、计算机设备和存储介质 |
CN116821053B (zh) * | 2023-08-30 | 2023-11-21 | 之江实验室 | 数据上报方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110647626B (zh) | 2022-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110647626B (zh) | 基于互联网服务域的rest数据服务聚类方法 | |
Anastasopoulos et al. | Machine learning for public administration research, with application to organizational reputation | |
Lei et al. | Patent analytics based on feature vector space model: A case of IoT | |
CN110659363B (zh) | 基于膜计算的Web服务混合进化聚类方法 | |
CN114998602A (zh) | 基于低置信度样本对比损失的域适应学习方法及系统 | |
CN111709225A (zh) | 一种事件因果关系判别方法、装置和计算机可读存储介质 | |
Costa et al. | Demonstrating the evolution of GANs through t-SNE | |
CN111612519A (zh) | 一种识别金融产品潜在客户的方法、装置及存储介质 | |
Schulz et al. | Uncertainty quantification of surrogate explanations: an ordinal consensus approach | |
Sinha et al. | Neural architecture search using covariance matrix adaptation evolution strategy | |
Altinbas et al. | Improving the performance of statistical learning methods with a combined meta-heuristic for consumer credit risk assessment | |
Mawane et al. | Unsupervised deep collaborative filtering recommender system for e-learning platforms | |
Vamvourellis et al. | Learning Mutual Fund Categorization using Natural Language Processing | |
Chen et al. | Gaussian mixture embedding of multiple node roles in networks | |
Nikolaou et al. | Calibrating AdaBoost for asymmetric learning | |
CN111090995B (zh) | 短文本主题识别方法和系统 | |
Chen et al. | Evaluation of customer behaviour with machine learning for churn prediction: The case of bank customer churn in europe | |
Mahalakshmi et al. | Twitter sentiment analysis using conditional generative adversarial network | |
Correia et al. | Dataset morphing to analyze the performance of collaborative filtering | |
Dhanya et al. | Comparative performance of machine learning algorithms in detecting offensive speech in malayalam-english code-mixed data | |
Devi et al. | An innovative word embedded and optimization based hybrid artificial intelligence approach for aspect-based sentiment analysis of app and cellphone reviews | |
CN117648635B (zh) | 敏感信息分类分级方法及系统、电子设备 | |
CN114896987B (zh) | 基于半监督预训练模型的细粒度情感分析方法和装置 | |
CN111814016B (zh) | 一种混合粒度多视图新闻数据聚类方法 | |
Schmaltz et al. | Approximate Conditional Coverage via Neural Model Approximations |
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 |