本发明专利技术公开了一种基于知识图谱的服务发现方法,所述服务发现方法包括以下步骤:步骤一:对用户输入的自然语言进行处理;步骤二:根据用户问题使用朴素贝叶斯法对用户请求的意图进行分类;步骤三:基于LSTM的Graph LSTM神经网络架构进行服务实体识别;步骤四:构建查询模板;步骤五:通过两种相似度算法结合来确定最满足要求的服务。
【技术实现步骤摘要】
一种基于知识图谱的服务发现方法
本专利技术涉及web服务
,特别是涉及基于知识图谱的服务发现方法。
技术介绍
随着互联网的快速发展,Web服务数量出现爆炸性增长,类型也越来越繁多,同时web服务网络环境也越来越复杂,这使得Web服务发现所面临的挑战越来越严峻。服务,就是可以满足用户的特定需求的应用程序。服务发现是用户通过对目标服务的功能约束,采用服务发现方法自动从服务集合中搜索到满足用户需求和约束的服务。因此希望有一种基于知识图谱的服务发现方法能够解决现有技术中存在的问题。
技术实现思路
本专利技术公开了一种基于知识图谱的服务发现方法,所述服务发现方法包括以下步骤:步骤一:对用户输入的自然语言进行处理;步骤二:根据用户问题使用朴素贝叶斯法对用户请求的意图进行分类;步骤三:基于LSTM的GraphLSTM神经网络架构进行服务实体识别;步骤四:构建查询模板;步骤五:通过两种相似度算法结合来确定最满足要求的服务。优选地,所述步骤一采用jieba分词工具对所述用户输入的自然语言进行分词,利用word2vec工具训练维基语料完成将自然语言转换成词向量,生成的词向量为200维,根据上下5个词,采用skip-gram的方法生成向量。优选地,所述步骤二中朴素贝叶斯法对所述用户意图进行分类,设有样本数据集A={a1,a2,a3,...,an},对应样本数据集的特征属性集为X={x1,x2,x3,...,xn},类变量为Y={y1,y2,y3,...,ym},即A可以分为m个类别,公式(1)如下:其中,P(Y)为先验概率,P(Y|X)为后验概率;朴素贝叶斯各特征之间相互独立,在给定类别为的情况下,公式(1)进一步表示为公式(2):根据公式(1)和(2)计算出后验概率,如公式(3)所示:由此可得类别yk的朴素贝叶斯计算,如公式(4)所示:对于给出的待分类元素项,求解在此元素项出现的条件下各个类别出现概率,根据概率数值大小判断待分类项属于的类别,如公式(5)所示:P(yk|x)=max{P(y1|x),P(y2|x),...,P(ym|x)}(5)如果P(yk|x1,x2,...,xd)最大,则X属于yk类别。优选地,所述步骤五的两种相似度算法包括:欧几里得度量和字符串编辑距离;其中,欧几里得度量是由自然语言生成的向量相似度比较,字符串编辑距离是不经过任何处理的字符串相似度比较。优选地,所述欧几里得度量假设有点A(x1,y1),B(x2,y2),则A,B两点间的欧几里得距离计算如公式(6)所示:其中d为A,B两点的距离,属于二维空间中的距离;若有点A(x1,y1,z1),B(x2,y2,z2),则A,B两点间的欧几里得距离计算,如公式(7)所示:其中d为A,B两点的距离,属于三维空间中的距离;根据公式(6)和公式(7)将欧氏距离拓展到n维空间,若有点A(x1,x2,...,xn),B(y1,y2,...,yn),则A,B两点间的欧几里得距离计算,如公式(8)所示:本专利技术提出了一种基于知识图谱的服务发现方法,本专利技术针对面向服务发现的知识图谱匹配的关键问题进行了深入的研究。根据知识图谱进行服务发现等方面展开论述,设计了基于知识图谱模板匹配的服务发现方案,经实验验证方案匹配效果良好,有效提高了服务发现的效率和准确率。附图说明图1为基于知识图谱的服务发现方法的步骤流程图。图2为GraphLSTM的抽象结构图。图3为GraphLSTM的扩展树结构图。图4为GraphLSTM前向传播过程结构图。图5为实施例2中用户意图类别图。具体实施方式为使本专利技术实施的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1:如图1所示,服务发现方法包括以下步骤:步骤一:对用户输入的自然语言进行处理;步骤二:根据用户问题使用朴素贝叶斯法对用户请求的意图进行分类;步骤三:基于LSTM的GraphLSTM神经网络架构进行服务实体识别;步骤四:构建查询模板;步骤五:通过两种相似度算法结合来确定最满足要求的服务。所述步骤一采用jieba分词工具对所述用户输入的自然语言进行分词,利用word2vec工具训练维基语料完成将自然语言转换成词向量,生成的词向量为200维,根据上下5个词,采用skip-gram的方法生成向量。所述步骤二中朴素贝叶斯法对所述用户意图进行分类,设有样本数据集A={a1,a2,a3,...,an},对应样本数据集的特征属性集为X={x1,x2,x3,...,xn},类变量为Y={y1,y2,y3,...,ym},即A可以分为m个类别,公式(1)如下:其中,P(Y)为先验概率,P(Y|X)为后验概率;朴素贝叶斯各特征之间相互独立,在给定类别为的情况下,公式(1)进一步表示为公式(2):根据公式(1)和(2)计算出后验概率,如公式(3)所示:由此可得类别yk的朴素贝叶斯计算,如公式(4)所示:对于给出的待分类元素项,求解在此元素项出现的条件下各个类别出现概率,根据概率数值大小判断待分类项属于的类别,如公式(5)所示:P(yk|x)=max{P(y1|x),P(y2|x),...,P(ym|x)}(5)如果P(yk|x1,x2,...,xd)最大,则X属于yk类别。通过该算法可以算出输入数据出现不同类别中的概率,哪个概率最大,该输入就属于哪个类别。如图2所示,所述步骤三给定一个图结构G(V,E),其中V表示顶点集合,E表示边集。假设每个顶点V都标记有特征向量g(v),边表示两个节点之间的关联。L(v)表示顶点v的类别标签。yv实体识别之后的标签,GraphLSTM的抽象结构,其中每个节点都存储与句子相关的特征向量且代表不同的词语。每个节点的邻域包含允许推理或预测的信息。如图3所示,识别实体v的类别标签,可以将图扩展为以v为根,邻域半径为D的树,定义为Tv。我们选择节点A为根节点选择邻域半径为2将图结构扩展为树,由于邻域设置为2,所以A-B-C-I和A-B-E-J这两条路径在图3中没有体现。节点A的深度为零,从下到上遍历,并且根据其子节点的特征计算每个父节点的标签。最后,生成根A的类别标签yA,将模型本文档来自技高网...
【技术保护点】
1.一种基于知识图谱的服务发现方法,其特征在于,所述服务发现方法包括以下步骤:/n步骤一:对用户输入的自然语言进行处理;/n步骤二:根据用户问题使用朴素贝叶斯法对用户请求的意图进行分类;/n步骤三:基于LSTM的Graph LSTM神经网络架构进行服务实体识别;/n步骤四:构建查询模板;/n步骤五:通过两种相似度算法结合来确定最满足要求的服务。/n
【技术特征摘要】
1.一种基于知识图谱的服务发现方法,其特征在于,所述服务发现方法包括以下步骤:
步骤一:对用户输入的自然语言进行处理;
步骤二:根据用户问题使用朴素贝叶斯法对用户请求的意图进行分类;
步骤三:基于LSTM的GraphLSTM神经网络架构进行服务实体识别;
步骤四:构建查询模板;
步骤五:通过两种相似度算法结合来确定最满足要求的服务。
2.根据权利要求1所述的基于知识图谱的服务发现方法,其特征在于:所述步骤一采用jieba分词工具对所述用户输入的自然语言进行分词,利用word2vec工具训练维基语料完成将自然语言转换成词向量,生成的词向量为200维,根据上下5个词,采用skip-gram的方法生成向量。
3.根据权利要求1所述的基于知识图谱的服务发现方法,其特征在于:所述步骤二中朴素贝叶斯法对所述用户意图进行分类,设有样本数据集A={a1,a2,a3,...,an},对应样本数据集的特征属性集为X={x1,x2,x3,...,xn},类变量为Y={y1,y2,y3,...,ym},即A可以分为m个类别,公式(1)如下:
其中,P(Y)为先验概率,P(Y|X)为后验概率;
朴素贝叶斯各特征之间相互独立,在给定类别为的情况下,公式(1)进一步表示为公式(2):
根据公式(1)和(2)计算出后验概率,如公式(3)所示:
【专利技术属性】
技术研发人员:李国栋,丁永恺,王哲,
申请(专利权)人:华北电力大学,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。