一种基于极限学习机的服务发现方法技术

技术编号:22166836 阅读:16 留言:0更新日期:2019-09-21 10:33
本发明专利技术提出了一种基于极限学习机的服务发现方法,结合神经网络和差分进化算法的优势特点,以找到最准确的目标服务。该方法首先构建一组训练样本,针对某一随机查询请求,对训练服务集中的每个服务应用余弦相似度、Jaccard相似度、欧式距离及曼哈顿距离这四种测量方法得到相似度匹配得分,并通过差分进化算法得到对应的适应度值,以此构成样本向量;然后,将样本的相似度得分作为极限学习机的输入,适应度值作为输出对网络模型进行训练;当用户提出新的查询请求时,对测试服务集中的各个样本进行简单相似度匹配,并通过训练好的神经网络模型来预测其对应的适应度值;最后根据样本的适应度值进行排序,从而找到合适的目标服务。

A Service Discovery Method Based on Extreme Learning Machine

【技术实现步骤摘要】
一种基于极限学习机的服务发现方法
本专利技术属于计算机科学与
,具体涉及一种基于极限学习机的服务发现方法。
技术介绍
服务发现过程中,最主要的任务是计算服务样本与查询请求之间的相似度。传统基于单一测量方法得到的结果,不能全面地反映出各个样本的匹配程度,从而导致返回的服务不能充分满足用户的实际需求。此外,对于每一个用户请求,如果对服务集中的样本重复进行迭代优化计算,会大大增加计算工作量,严重耗人耗时。由此,需要针对不同的问题设计出对应的解决方案。
技术实现思路
为了克服现有服务发现技术中所存在的不足,本专利技术提供了一种结合极限学习机与差分进化算法功能特性,在文本相似度计算的基础上能够为用户提供最优目标服务的发现方法。本专利技术实现上述目的所采用的技术方案为:一种基于极限学习机的服务发现方法,包括以下步骤:步骤1,从现有服务集中选取一组服务作为训练服务集,用于生成训练样本,剩余服务则作为测试服务集;针对某一随机查询请求,对训练服务集中每个服务,应用余弦相似度、Jaccard相似度、欧式距离及曼哈顿距离这四种测量方法,得到相似度匹配得分,并通过差分进化算法得到对应的适应度值,以此构成训练样本向量;步骤2,将步骤1所得训练样本向量的相似度匹配得分作为极限学习机的输入,每个服务的适应度值作为输出,对ELM神经网络模型进行训练;步骤3,当用户提出新的查询请求时,对步骤1所述测试服务集的各个样本进行相似度匹配,并通过步骤2训练好的ELM神经网络模型预测其对应的适应度值;步骤4,根据步骤3所得测试服务集各个样本即候选服务对应的适应度值,选取最小适应度值对应的服务集中的候选服务作为目标服务。步骤1中,现有服务集中的每个服务均由描述其功能的自然语言文本表示,并根据服务集中的服务样本随机给出一条查询信息。步骤1具体通过以下步骤实现:步骤11,对描述服务集中每个服务功能的自然语言文本进行预处理,包括去除停用词、词干提取以及分词,完成对文本的特征提取步骤12,应用余弦相似度、Jaccard相似度、欧式距离及曼哈顿距离这四种测量方法计算服务集中的服务样本与查询请求之间的相似度匹配得分;步骤13,采用差分进化算法得到服务集中每个服务样本的适应度值,作为衡量服务样本的匹配基准;步骤14,将服务集中的每个服务样本表示为一个五维向量,即s=(m1,m2,m3,m4,f);其中,s表示服务样本,m1,m2,m3,m4表示步骤12所述四种相似度得分,f表示差分进化所得每个服务样本的适应度值适应度值,得到训练样本向量。步骤14中提出的差分进化算法,是将每个服务的四种相似度得分作为输入进行迭代优化,通过模拟遗传学中的杂交、变异以及选择方法来设计遗传算子,在不断地进化过程中保留优良个体,并引导搜索向最优解逼近。步骤1中所指出的适应度值,是通过差分进化过程中的Rastrigr函数计算得出的,用于对样本个体进行评价。步骤2中中训练ELM神经网络模型时,将步骤1中得到的样本向量中的相似度匹配得分作为输入层的输入变量,随机确定输入层连接权值及隐含层神经元阈值,选择S型函数作为激活函数,样本向量中的适应度值为对应输出层的输出变量。步骤2中,ELM神经网络模型由输入层、隐含层及输出层三部分构成,不同功能结构之间通过神经元相互连接,输入层与隐含层神经元之间和隐含层与输出层神经元之间,均有相应的连接权值ω和β,隐含层神经元上包含其阈值b;极限学习机算法具体包括以下步骤:步骤21,确定隐含层神经元个数,随机设定输入层连接权值ω及隐含层阈值b;步骤22,选择合适的隐含层神经元激活函数,计算得出隐含层的输出矩阵H;步骤23,计算输出层权值β。步骤3中,当用户向服务集提出新的查询请求时,通过向步骤2训练好的ELM神经网络模型中输入每个服务样本的相似度向量,从而得到表征服务总体相似度的预测适应度值,并将其作为服务排序的基准。与现有的服务发现方法相比,本专利技术具有如下优点:本专利技术使用四种相似度得分计算方法,从多种角度对服务样本的相似度进行了测量,并应用差分进化算法得到的适应度值来表征服务的总体相似度;本专利技术利用极限学习机网络模型,可以快速学习相似度得分与适应度值之间复杂的非线性函数关系,从而预测每个服务样本对应的适应度值;本专利技术利用构建好的训练样本与网络模型的特点优势,对于用户的任意请求能通过对比样本适应度值来快速准确地找到目标服务;有效降低计算量。附图说明图1为基于极限学习机的服务发现方法结构图。图2为差分进化算法的实现流程图。图3为神经网络的训练模型图。图4为极限学习机的实现流程图。具体实施方式图1是本专利技术的整体结构图,现结合附图对本专利技术的技术方案作进一步说明。差分进化算法作为一种基于现代智能理论的优化算法,能够通过群体内个体之间的相互合作与竞争,产生群体智能来指导优化搜索的方向;基于这种理论特点,可以将搜索目标服务转化为求解多维空间中整体最优解问题,以此来提高服务发现的搜索性能。此外,单隐层前馈神经网络系统拥有较高的学习能力,可以拟合较为复杂的非线性函数关系。极限学习机(ELM)作为一种高效的前馈神经网络学习算法,能够提供更快的学习速率,具有更合理的泛化性能。应用此方法,只需要预先设定隐含层神经元个数,不需对隐含层结点参数进行调整,其余工作基于已有程序设定来完成。这种方式可杜绝人为因素干扰,产生独特最优解,从而实现预期目标。基于这两种方法的优势特点,本专利技术考虑将其结合起来,用于服务发现过程中,快速准确地找出符合用户请求的目标服务。本专利技术提出的基于极限学习机的服务发现方法主要包含模型构建及服务发现两大过程,具体步骤如下:步骤1,构建训练样本向量本专利技术选用两组独立的服务集,一组用于生成训练样本,另一组作为测试服务集;服务集中的每个服务均由描述其功能的自然语言文本表示,共500个,并根据服务集中的服务样本随机给出一条查询信息。由于本专利技术中采用前馈神经网络模型,只能接受向量值,因此需要对服务样本及查询信息进行相应的处理。具体如下:步骤11,服务描述及用户请求信息是以文本形式呈现出来的。首先需要对文本进行预处理,包括去除停用词、词干提取以及分词。与传统数值计算不同,对于文本信息处理的关键步骤是进行向量化操作,以此来得到每个词在各个文本中的词向量;作为一种信息检索与数据挖掘领域中的常用加权技术,TF-IDF可以衡量一个关键词对于文本所能提供的信息。故而在文本挖掘的预处理过程中,向量化一般会伴随着TF-IDF处理。本专利技术借助Python中强大的机器学习模块——Scikit-learn,通过调用CountVectorizer及TfidfTransformer类对服务文本进行TF-IDF处理并得到相应的权重向量,完成对文本的特征提取。步骤12,服务发现过程中最主要的任务是计算服务样本与查询请求之间的相似度,通过相似度的对比,找出符合用户请求的目标服务。由于文本中包含的词信息不易处理,所以通常会将文本相似度计算问题转化为计算向量之间的相似度;步骤11中已经得到了服务样本及查询请求的TF-IDF向量,现分别应用余弦相似度、Jaccard相似度、欧式距离及曼哈顿距离这四种测量方法计算各个服务的相似度匹配得分:其中,余弦相似度用向量空间中两个向量夹角的余弦值来衡量两个个体间差异的大小。计算本文档来自技高网...

【技术保护点】
1.一种基于极限学习机的服务发现方法,其特征在于,包括以下步骤:步骤1,从现有服务集中选取一组服务作为训练服务集,用于生成训练样本,剩余服务则用作测试服务集;针对某一随机查询请求,对训练服务集中每个服务,应用余弦相似度、Jaccard相似度、欧式距离及曼哈顿距离这四种测量方法,得到相似度匹配得分,并通过差分进化算法得到对应的适应度值,以此构成训练样本向量;步骤2,将步骤1所得训练样本向量的相似度匹配得分作为极限学习机的输入,每个服务的适应度值作为输出,对神经网络模型进行训练,得到训练完成的ELM神经网络模型;步骤3,当用户提出新的查询请求时,对步骤1所述测试服务集的各个样本与所述查询请求进行相似度匹配,并通过步骤2训练好的ELM神经网络模型预测各个样本对应的适应度值;步骤4,根据步骤3所得测试服务集各个样本即候选服务对应的适应度值,选取最小适应度值对应的服务集中的候选服务作为目标服务。

【技术特征摘要】
1.一种基于极限学习机的服务发现方法,其特征在于,包括以下步骤:步骤1,从现有服务集中选取一组服务作为训练服务集,用于生成训练样本,剩余服务则用作测试服务集;针对某一随机查询请求,对训练服务集中每个服务,应用余弦相似度、Jaccard相似度、欧式距离及曼哈顿距离这四种测量方法,得到相似度匹配得分,并通过差分进化算法得到对应的适应度值,以此构成训练样本向量;步骤2,将步骤1所得训练样本向量的相似度匹配得分作为极限学习机的输入,每个服务的适应度值作为输出,对神经网络模型进行训练,得到训练完成的ELM神经网络模型;步骤3,当用户提出新的查询请求时,对步骤1所述测试服务集的各个样本与所述查询请求进行相似度匹配,并通过步骤2训练好的ELM神经网络模型预测各个样本对应的适应度值;步骤4,根据步骤3所得测试服务集各个样本即候选服务对应的适应度值,选取最小适应度值对应的服务集中的候选服务作为目标服务。2.根据权利要求1所述的基于极限学习机的服务发现方法,其特征在于,步骤1中,现有服务集中的每个服务均由描述其功能的自然语言文本表示,并根据服务集中的服务样本随机给出一条查询信息。3.根据权利要求1所述的基于极限学习机的服务发现方法,其特征在于,步骤1具体通过以下步骤实现:步骤11,对描述服务集中每个服务功能的自然语言文本进行预处理,包括去除停用词、词干提取以及分词,完成对文本的特征提取;步骤12,应用余弦相似度、Jaccard相似度、欧式距离及曼哈顿距离这四种测量方法计算服务集中的服务样本与查询请求之间的相似度匹配得分;步骤13,采用差分进化算法得到服务集中每个服务样本的适应度值,作为衡量服务样本的匹配基准;步骤14,将服务集中的每个服务样本表示为一个五维向量,即s=(m1,m2,m3,m4,f);其中,s表示服务样本,m1...

【专利技术属性】
技术研发人员:黄昭赵薇
申请(专利权)人:陕西师范大学
类型:发明
国别省市:陕西,61

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

1