首页> 中国专利> 一种面向用户查询意图的汉语句子相似度分层计算方法及装置

一种面向用户查询意图的汉语句子相似度分层计算方法及装置

摘要

本发明提供了一种面向用户查询意图的汉语句子相似度分层计算方法及装置,通过采用去除句末标点的编辑距离句子相似度算法对数据集进行相似度计算,确定一部分满足阈值的句子为相似句子,再采用基于关键词特征和语义特征的句子相似度算法,对数据集中的非相似句子进行相似度计算,从而再次确定一部分满足阈值的句子为相似句子,最后采用面向用户意图的句子相似度算法,对数据集中的非相似句子进行句子相似度计算,确定一部分满足阈值的句子为相似句子。至此,得到数据集中的所有相似句子。本发明计算简洁,效果良好,可以有效解决关键词差异大、长度长、句子结构复杂等问题。

著录项

  • 公开/公告号CN104133812A

    专利类型发明专利

  • 公开/公告日2014-11-05

    原文格式PDF

  • 申请/专利权人 北京信息科技大学;张仰森;

    申请/专利号CN201410341855.0

  • 发明设计人 张仰森;李景玉;

    申请日2014-07-17

  • 分类号G06F17/27(20060101);G06F17/30(20060101);

  • 代理机构北京科亿知识产权代理事务所(普通合伙);

  • 代理人汤东凤

  • 地址 100101 北京市海淀区清河小营东路12号

  • 入库时间 2023-12-17 01:54:18

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-03-08

    授权

    授权

  • 2014-12-31

    实质审查的生效 IPC(主分类):G06F17/27 申请日:20140717

    实质审查的生效

  • 2014-11-05

    公开

    公开

说明书

技术领域

本发明属于汉语句子相似度计算技术领域,尤其涉及一种面向用户查询意 图的汉语句子相似度分层计算方法及装置。

背景技术

相似度计算是自然语言处理领域的基础工作,应用背景广泛。根据处理对 象的不同,可以分为词相似度计算、句子相似度计算以及篇章相似度计算。其 中句子相似度计算在信息检索、机器翻译、问答系统以及自动文摘等应用领域 中的效能直接影响着应用系统的整体性能。因此,目前仍有众多学者热衷于不 断改进句子相似度的计算方法。

目前的句子相似度计算方法主要有基于编辑距离的句子相似度计算方法, 基于本体词典或知网语义的句子相似度计算方法,基于语义依存的句子相似度 计算方法等等。

编辑距离,也称Levenshtein distance,是常用的句子相似度计算方法之一。 通过计算一个句子转换成另一个句子的最小编辑操作数,来判定两个句子是否 相似。其中编辑操作包括“删除”、“插入”和“替换”。若两个句子的编辑 距离越小,则两个句子越相似。文献1(车万翔,刘挺,秦兵等.基于改进编辑 距离的中文相似句子检索[J].高级技术通讯,2004.7,14(7):15-19)基于编辑距离 思想,以及汉语中单个字往往不具备意义的特点,提出改进的编辑距离计算句 子相似度算法,以词为单位计算编辑距离,同时融入Hownet和《同义词词林》 两个语义资源。文献2(吕学强,任飞亮,黄志丹等.句子相似模型和最相似句 子查找算法[J].东北大学学报(自然科学版),2003.6,24(6):531-534)从词形、词序 两方面计算句子相似度,文献3(杨思春等.一种改进的句子相似度计算模型[J]. 电子科技大学学报,2006.12,35(6):956-959)在文献2的基础上对关键词的抽取 方法进行改进,考虑同义词的情况,准确率有所提高。

文献1提出的改进编辑距离计算句子相似度算法,虽然考虑了中文语言的 特点,并融入语义信息,但是,由于目前中文分词的效果并不理想,不同的语 境下一个词有时可以识别出来,有时却不能,分词的不准确势必会带来编辑距 离结果的误差。这势必会影响计算相似度的准确率。文献2和文献3提出的句 子相似度计算方法,虽然准确率有所提高,但是对于长度较长、结构较为复杂 的句子效果仍不理想。

发明内容

本发明的目的在于提供一种面向用户查询意图的汉语句子相似度分层计算 方法及装置,旨在克服中文分词效果不理想的问题,同时解决对于关键词差异 大、长度长、句子结构复杂的句子计算相似度效果不理想的问题,通过分层计 算的思想,提高相似度计算的准确性,提升本方案的实用价值。

本发明是这样实现的,一种面向用户查询意图的汉语句子相似度分层计算 方法,包括以下步骤:

S1、采用去除句末标点的编辑距离句子相似度算法对数据集进行相似度计 算,确定一部分满足阈值的句子为相似句子;

S2、采用基于关键词特征和语义特征的句子相似度算法,对数据集中的非 相似句子进行相似度计算,从而再次确定一部分满足阈值的句子为相似句子;

S3、采用面向用户意图的句子相似度算法,对数据集中的非相似句子进行 句子相似度计算,确定一部分满足阈值的句子为相似句子,至此得到数据集中 的所有相似句子。

优选地,在步骤S1中,所述去除句末标点的编辑距离句子相似度算法具 体包括:计算两个句子的相似度时,忽略其句末的标点符号,将去除句末标点 的句子按照基于字符的编辑距离句子相似度算法计算其句子的编辑距离,再根 据设定的阈值判定相似句子。

优选地,在步骤S2中,所述基于关键词特征和语义特征的句子相似度算 法具体包括:采用关键词特征,将句子转换成关键词列表形式,再兼顾同义词 特征、否定词特征,总结分析经过对比消解后的剩余关键词词数与已标注的相 似句子对之间呈现的规律,最后判定符合规律的句子是否句子相似。

优选地,在步骤S2中,所述剩余关键词是指一个句子经过分词、去除停 用词、修改错别字、大写字母转换成小写字母、中文数字转换成阿拉伯数字、 关键词对比消减、同义词对比消减和否定词对比消减后余留的关键词集合。

优选地,在步骤S2中,所述剩余关键词词数与已标注的相似句子对之间 的关系具体包括以下规则:

规则1:经过剩余关键词列表计算后,若用户提问句子与问题集中某一句 子的剩余关键词词数之和小于等于1,且剩余关键词中不包含否定词时,则用 户提问句子与问题集中的某一个句子是相似的;

规则2:经过剩余关键词列表计算后,若用户提问句子的剩余关键词词数 等于0,问题集中某一句子的剩余关键词词数等于2,且剩余关键词中不包含否 定词,则用户提问句子与问题集中某一句子是相似的;

规则3:经过剩余关键词列表计算后,若用户提问句子的剩余关键词词数 等于2,问题集中某一句子的剩余关键词词数等于0,且剩余关键词中不包含否 定词,则用户提问句子与问题集中某一句子是相似的;

规则4:经过剩余关键词列表计算后,若用户提问句子和问题集中某一句 子的剩余关键词中含有的否定词为奇数时,则用户提问句子与问题集中某一句 子是不相似的。

优选地,在步骤S3中,所述面向用户意图的句子相似度算法具体包括:

根据标点符号切分用户提问,利用用户提问中的标点符号,将用户提问转 换成用户提问子句集;

对用户提问子句集中每一个元素计算其与问题集中某问题的剩余列表,计 算子句集中每一个元素与计算机存储的问题集中问题的句子相似度;

使用子句集中元素与问题集中某个问题的最大相似度代替用户提问与这个 问题的句子相似度。

优选地,在步骤S3中,所述用户提问子句集的构建方法具体包括:初始 子句集为空,首先根据标点符号将用户提问拆分成若干个子句,将这些子句并 入子句集中;再将任意长度的连续的若干子句构成一个子句,并入子句集中; 最后将用户提问的整句并入子句集中,至此构建成一个完整的用户提问子句集。

优选地,在步骤S3中,所述子句和问题集中问题的相似性的判断具体为:

规则5:将用户提问子句集中某一子句与问题集中某一问题进行剩余关键 词列表计算,若子句的剩余关键词词数等于0,问题的剩余关键词词数小于等 于1,则用户提问与问题集中该问题是相似的。

本发明进一步提供了一种面向用户查询意图的汉语句子相似度分层计算装 置,包括:

一级相似度确定模块,用于采用去除句末标点的编辑距离句子相似度算法 对数据集进行相似度计算,确定一部分满足阈值的句子为相似句子;

二级相似度确定模块,用于采用基于关键词特征和语义特征的句子相似度 算法,对数据集中的非相似句子进行相似度计算,从而再次确定一部分满足阈 值的句子为相似句子;

三级相似度确定模块,用于采用面向用户意图的句子相似度算法,对数据 集中的非相似句子进行句子相似度计算,确定一部分满足阈值的句子为相似句 子,至此得到数据集中的所有相似句子;其中,

所述一级相似度确定模块、二级相似度确定模块以及三级相似度确定模块 依次连接。

优选地,所述一级相似度确定模块包括一级算法模块,用于计算两个句子 的相似度时,忽略其句末的标点符号,将去除句末标点的句子按照基于字符的 编辑距离句子相似度算法计算其句子的编辑距离,再根据设定的阈值判定相似 句子。

优选地,所述二级相似度确定模块包括二级算法模块,用于采用关键词特 征,将句子转换成关键词列表形式,再兼顾同义词特征、否定词特征,总结分 析经过对比消解后的剩余关键词词数与已标注的相似句子对之间呈现的规律, 最后判定符合规律的句子是否句子相似。

优选地,所述二级相似度确定模块还包括剩余关键词集合模块,用于将一 个句子经过分词、去除停用词、修改错别字、大写字母转换成小写字母、中文 数字转换成阿拉伯数字、关键词对比消减、同义词对比消减和否定词对比消减 后余留的关键词集合;其中,

所述剩余关键词集合模块与二级算法模块连接。

优选地,所述二级相似度确定模块还包括用于对剩余关键词词数与已标注 的相似句子对之间的关系设定具体规则的关系规则设定模块,所述关系规则设 定模块设定规则具体包括:

规则1:用于经过剩余关键词列表计算后,若用户提问句子与问题集中某 一句子的剩余关键词词数之和小于等于1,且剩余关键词中不包含否定词时, 则用户提问句子与问题集中的某一个句子是相似的;

规则2:经过剩余关键词列表计算后,若用户提问句子的剩余关键词词数 等于0,问题集中某一句子的剩余关键词词数等于2,且剩余关键词中不包含否 定词,则用户提问句子与问题集中某一句子是相似的;

规则3模块:经过剩余关键词列表计算后,若用户提问句子的剩余关键词 词数等于2,问题集中某一句子的剩余关键词词数等于0,且剩余关键词中不包 含否定词,则用户提问句子与问题集中某一句子是相似的;

规则4模块:经过剩余关键词列表计算后,若用户提问句子和问题集中某 一句子的剩余关键词中含有的否定词为奇数时,则用户提问句子与问题集中某 一句子是不相似的;其中,

所述关系规则设定模块分别与剩余关键词集合模块和二级算法模块连接。

优选地,所述三级相似度确定模块包括三级算法模块,所述三级算法模块 包括:

提问子句集转换模块,用于根据标点符号切分用户提问,利用用户提问中 的标点符号,将用户提问转换成用户提问子句集;

子句集处理模块,用于对用户提问子句集中每一个元素计算其与问题集中 某问题的剩余列表,计算子句集中每一个元素与计算机存储的问题集中问题的 句子相似度;

替换模块,用于使用子句集中元素与问题集中某个问题的最大相似度代替 用户提问与这个问题的句子相似度;其中,

所述一级算法模块、二级算法模块以及三级算法模块中的提问子句集转换 模块、子句集处理模块、替换模块依次连接。

优选地,所述提问子句集转换模块包括:

拆分集中模块,用于在初始子句集为空时,根据标点符号将用户提问拆分 成若干个子句,将这些子句并入子句集中;

子句并入模块,用于将任意长度的连续的若干子句构成一个子句,并入子 句集中;

提问整句并入模块,用于将用户提问的整句并入子句集中,至此构建成一 个完整的用户提问子句集;其中,

所述拆分集中模块、子句并入模块、提问整句并入模块以及子句集处理模 块依次连接。

优选地,所述三级算法模块还包括相似性判断模块,用于将用户提问子句 集中某一子句与问题集中某一问题进行剩余关键词列表计算,若子句的剩余关 键词词数等于0,问题的剩余关键词词数小于等于1,则用户提问与问题集中该 问题是相似的;其中,所述相似性判断模块与子句集处理模块连接。

本发明克服现有技术的不足,提供一种面向用户查询意图的汉语句子相似 度分层计算方法及装置,采用Microsoft visual studio2010开发环境实现,语言 采用C#。本系统共分为3个模块,分别实现本方案设计的三个算法。具体的句 子相似度分层计算流程如图1所示。由图1可得,本方案包括三个模块,分别 采用三种算法:去除句末标点的编辑距离句子相似度算法、基于关键词特征和 语义特征的句子相似度算法、面向用户意图的句子相似度算法。通过三种不同 的算法,处理三种不同类型的数据,即构成句子的字符基本一致、构成句子的 关键词基本一致、构成句子的关键词相差较大三类数据,计算句子相似度,逐 步提升本方案的实用价值。具体做法为:首先采用去除句末标点的编辑距离句 子相似度算法对数据集进行相似度计算,确定一部分满足阈值的句子为相似句 子。其次采用基于关键词特征和语义特征的句子相似度算法,对数据集中的非 相似句子进行相似度计算,从而再次确定一部分满足阈值的句子为相似句子。 最后采用面向用户意图的句子相似度算法,对数据集中的非相似句子进行句子 相似度计算,确定一部分满足阈值的句子为相似句子。至此,得到数据集中的 所有相似句子。也就是说,3个模块之间是串行的,各个模块处理的数据都是 仍不确定是否是相似的句子,已经确定为相似的或者不相似的句子是不参与后 续计算的。

在本发明中,最主要的关键技术点在于:

(1)本发明采用分层计算的思想,将数据分成三大类,即构成句子的字符 基本一致、构成句子的关键词基本一致、构成句子的关键词相差较大三类数据, 针对不同类型的数据设计不同的算法,并且逐次使用不同算法计算句子相似性。

(2)本发明去除句末标点的编辑距离句子相似度算法主要针对字符基本一 致的句子,将句子去除句末标点,再按照编辑距离算法计算两个句子的编辑距 离,设定编辑距离小于等于2的句子为相似的。其中去除句末标点的操作和阈 值的设定,都使得该算法更符合人们的日常语言习惯,可以有效改善句子相似 度计算的准确率。

(3)本发明基于关键词特征和语义特征的句子相似度算法主要针对关键词 基本一致的句子,具体计算方法为:首先计算两个句子的剩余关键词列表,最 后根据统计分析得出的四条规则计算其句子相似性。其中,剩余关键词是指一 个句子经过分词、去除停用词、修改错别字、大写字母转换成小写字母、中文 数字转换成阿拉伯数字、关键词对比消减、同义词对比消减和否定词对比消减 后余留的关键词集合。

(4)本发明面向用户意图的句子相似度算法主要针对关键词相差较大的句 子,采用子句集中元素与问题集中某个问题的最大相似度代替用户提问与这个 问题的句子相似度。具体做法是:首先,根据标点符号切分用户提问,构建用 户提问子句集;其次对用户提问子句集中每一个元素计算其与问题集中某问题 的剩余列表;最后根据制定的规则计算用户提问和问题集中该问题的相似性。 算法利用了自然标注,也就是用户提问中的标点符号,考虑了查询意图,解决 传统办法计算一个长句与一个短句之间的相似度值不能反映语义层面相似度的 问题。

附图说明

图1是本发明中汉语句子相似度分层计算流程图;

图2是本发明实施例中面向用户查询意图的汉语句子相似度分层计算方法 的步骤流程图;

图3是本发明中去除句末标点的编辑距离句子相似度计算方法流程图;

图4是本发明中基于关键词特征和语义特征的句子相似度算法流程图;

图5是本发明中计算剩余关键词列表流程图;

图6是本发明中面向用户意图的句子相似度算法流程图;

图7是本发明实施例中面向用户查询意图的汉语句子相似度分层计算装置 的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。

一种面向用户查询意图的汉语句子相似度分层计算方法,如图1和图2所 示,包括以下步骤:

S1、采用去除句末标点的编辑距离句子相似度算法对数据集进行相似度计 算,确定一部分满足阈值的句子为相似句子

在步骤S1中,去除句末标点的编辑距离句子相似度计算方法流程如图3 所示,其中,去除句末标点的编辑距离句子相似度算法是指在计算两个句子的 相似度时,忽略其句末的标点符号,因为句末标点通常用于表达语气,对于判 别句子相似度是不具有意义的。具体方案为:将去除句末标点的句子按照基于 字符的编辑距离句子相似度算法计算其句子的编辑距离,再根据设定的阈值判 定哪些句子为相似的。本方案中阈值设置为2,这是考虑到人们在描述问题时 往往偏向使用一些无关真正需求的介词,或者对于同一事物存在不同表述,所 以将编辑距离小于等于2的句子对视为相似的,即允许有两次或两次以下的编 辑操作次数。

S2、采用基于关键词特征和语义特征的句子相似度算法,对数据集中的非 相似句子进行相似度计算,从而再次确定一部分满足阈值的句子为相似句子

在步骤S2中,基于关键词特征和语义特征的句子相似度算法流程如图4 所示,其中,基于关键词特征和语义特征的句子相似度算法是指采用关键词特 征,将句子转换成关键词列表形式,再兼顾同义词特征、否定词特征,总结分 析经过对比消解后的剩余关键词词数与已标注的相似句子对之间呈现的规律, 最后判定符合规律的句子是否句子相似。其中,剩余关键词是指一个句子经过 分词、去除停用词、修改错别字、大写字母转换成小写字母、中文数字转换成 阿拉伯数字、关键词对比消减、同义词对比消减和否定词对比消减后余留的关 键词集合。

本算法通过分析剩余关键词总词数与相似句子之间的关系,共制定了四条 规则,分别为:

规则1:经过剩余关键词列表计算后,若用户提问句子与问题集中某一句 子的剩余关键词词数之和小于等于1,且剩余关键词中不包含否定词时,则用 户提问句子与问题集中的某一个句子是相似的。

规则2:经过剩余关键词列表计算后,若用户提问句子的剩余关键词词数 等于0,问题集中某一句子的剩余关键词词数等于2,且剩余关键词中不包含否 定词,则用户提问句子与问题集中某一句子是相似的。

规则3:经过剩余关键词列表计算后,若用户提问句子的剩余关键词词数 等于2,问题集中某一句子的剩余关键词词数等于0,且剩余关键词中不包含否 定词,则用户提问句子与问题集中某一句子是相似的。

规则4:经过剩余关键词列表计算后,若用户提问句子和问题集中某一句 子的剩余关键词中含有的否定词为奇数时,则用户提问句子与问题集中某一句 子是不相似的。

本算法的具体做法为:首先计算两个句子的剩余关键词列表,再根据上述 四条规则计算其句子相似性。

在本发明实施例中,计算剩余关键词列表流程如图5所示。

S3、采用面向用户意图的句子相似度算法,对数据集中的非相似句子进行 句子相似度计算,确定一部分满足阈值的句子为相似句子,至此得到数据集中 的所有相似句子

在步骤S3中,面向用户意图的句子相似度算法流程如图6所示,其中, 面向用户意图的句子相似度算法是指利用用户提问中的标点符号,将用户提问 转换成用户提问子句集,计算子句集中每一个元素与计算机存储的问题集中问 题的句子相似度。使用子句集中元素与问题集中某个问题的最大相似度代替用 户提问与这个问题的句子相似度。

其中用户提问子句集的构建方法是:初始子句集为空,首先根据标点符号 将用户提问拆分成若干个子句,将这些子句并入子句集中;再将任意长度的连 续的若干子句构成一个子句,并入子句集中;最后将用户提问的整句并入子句 集中,至此构建成一个完整的用户提问子句集。

由于子句所包含的关键词个数相对完整问题句的关键词个数较少,所以提 出规则5来判断子句和问题集中问题的相似性。

规则5:将用户提问子句集中某一子句与问题集中某一问题进行剩余关键 词列表计算,若子句的剩余关键词词数等于0,问题的剩余关键词词数小于等 于1,则用户提问与问题集中该问题是相似的。

本算法的具体做法是:首先,根据标点符号切分用户提问,构建用户提问 子句集;其次对用户提问子句集中每一个元素计算其与问题集中某问题的剩余 列表;最后根据规则5计算用户提问和问题集中该问题的相似性。

本发明利用分层计算的思想,充分考虑了语句比较计算过程中待比较语句 之间的各种特征组成,从而使相似度的计算更加简洁,并且取得好的效果。此 外,本发明基于编辑距离算法,通过突出其考虑字符串与字符串之间的顺序的 特点,采用去除句末标点的编辑距离句子相似度算法,以字为处理单元快速识 别基本一致的句子,克服中文分词效果不理想的问题。最后,本发明提出的基 于关键词特征和语义特征的句子相似度算法和面向用户意图的句子相似度算 法,兼顾了同义词和否定词等语义特征,同时考虑了查询请求和查询意图之间 的关系,可以有效解决关键词差异大、长度长、句子结构复杂等问题。

本发明进一步提供了一种面向用户查询意图的汉语句子相似度分层计算装 置,如图6所示,包括:

一级相似度确定模块1,用于采用去除句末标点的编辑距离句子相似度算 法对数据集进行相似度计算,确定一部分满足阈值的句子为相似句子;

二级相似度确定模块2,用于采用基于关键词特征和语义特征的句子相似 度算法,对数据集中的非相似句子进行相似度计算,从而再次确定一部分满足 阈值的句子为相似句子;

三级相似度确定模块3,用于采用面向用户意图的句子相似度算法,对数 据集中的非相似句子进行句子相似度计算,确定一部分满足阈值的句子为相似 句子,至此得到数据集中的所有相似句子;其中,

所述一级相似度确定模块1、二级相似度确定模块2以及三级相似度确定 模块3依次连接。

在本发明实施例中,更具体的,所述一级相似度确定模块1包括一级算法 模块,用于计算两个句子的相似度时,忽略其句末的标点符号,将去除句末标 点的句子按照基于字符的编辑距离句子相似度算法计算其句子的编辑距离,再 根据设定的阈值判定相似句子;

所述二级相似度确定模块2包括二级算法模块,用于采用关键词特征,将 句子转换成关键词列表形式,再兼顾同义词特征、否定词特征,总结分析经过 对比消解后的剩余关键词词数与已标注的相似句子对之间呈现的规律,最后判 定符合规律的句子是否句子相似;

所述三级相似度确定模块3包括三级算法模块,所述三级算法模块包括:

提问子句集转换模块,用于根据标点符号切分用户提问,利用用户提问中 的标点符号,将用户提问转换成用户提问子句集;

子句集处理模块,用于对用户提问子句集中每一个元素计算其与问题集中 某问题的剩余列表,计算子句集中每一个元素与计算机存储的问题集中问题的 句子相似度;

替换模块,用于使用子句集中元素与问题集中某个问题的最大相似度代替 用户提问与这个问题的句子相似度;其中,

所述一级算法模块、二级算法模块以及三级算法模块中的提问子句集转换 模块、子句集处理模块、替换模块依次连接。

在本发明实施例中,更具体的,所述二级相似度确定模块2还包括剩余关 键词集合模块,用于将一个句子经过分词、去除停用词、修改错别字、大写字 母转换成小写字母、中文数字转换成阿拉伯数字、关键词对比消减、同义词对 比消减和否定词对比消减后余留的关键词集合;其中,所述剩余关键词集合模 块与二级算法模块连接。

在本发明实施例中,更具体的,所述二级相似度确定模块2还包括用于对 剩余关键词词数与已标注的相似句子对之间的关系设定具体规则的关系规则设 定模块,所述关系规则设定模块23设定规则具体包括:

规则1:用于经过剩余关键词列表计算后,若用户提问句子与问题集中某 一句子的剩余关键词词数之和小于等于1,且剩余关键词中不包含否定词时, 则用户提问句子与问题集中的某一个句子是相似的;

规则2:经过剩余关键词列表计算后,若用户提问句子的剩余关键词词数 等于0,问题集中某一句子的剩余关键词词数等于2,且剩余关键词中不包含否 定词,则用户提问句子与问题集中某一句子是相似的;

规则3模块:经过剩余关键词列表计算后,若用户提问句子的剩余关键词 词数等于2,问题集中某一句子的剩余关键词词数等于0,且剩余关键词中不包 含否定词,则用户提问句子与问题集中某一句子是相似的;

规则4模块:经过剩余关键词列表计算后,若用户提问句子和问题集中某 一句子的剩余关键词中含有的否定词为奇数时,则用户提问句子与问题集中某 一句子是不相似的;其中,

所述关系规则设定模块分别与剩余关键词集合模块和二级算法模块连接。

在本发明实施例中,更具体的,所述提问子句集转换模块包括:

拆分集中模块,用于在初始子句集为空时,根据标点符号将用户提问拆分 成若干个子句,将这些子句并入子句集中;

子句并入模块,用于将任意长度的连续的若干子句构成一个子句,并入子 句集中;

提问整句并入模块,用于将用户提问的整句并入子句集中,至此构建成一 个完整的用户提问子句集;其中,

所述拆分集中模块、子句并入模块、提问整句并入模块以及子句集处理模 块依次连接。

在本发明实施例中,更具体的,所述三级算法模块还包括相似性判断模块, 用于将用户提问子句集中某一子句与问题集中某一问题进行剩余关键词列表计 算,若子句的剩余关键词词数等于0,问题的剩余关键词词数小于等于1,则用 户提问与问题集中该问题是相似的;其中,所述相似性判断模块与子句集处理 模块连接。

本发明实施例中的面向用户查询意图的汉语句子相似度分层计算装置与上 述面向用户查询意图的汉语句子相似度分层计算方法相对应,具有相同的原理 和有益效果,以上述方法解释本实施例装置,在此不再赘述。

相比于现有技术的缺点和不足,本发明具有以下有益效果:

(1)本发明利用分层计算的思想,充分考虑了语句比较计算过程中待比较 语句之间的各种特征组成,从而使相似度的计算更加简洁,并且取得好的效果。

(2)本发明基于编辑距离算法,通过突出其考虑字符串与字符串之间的顺 序的特点,采用去除句末标点的编辑距离句子相似度算法,以字为处理单元快 速识别基本一致的句子,克服中文分词效果不理想的问题。

(3)本发明提出的基于关键词特征和语义特征的句子相似度算法和面向用 户意图的句子相似度算法,兼顾了同义词和否定词等语义特征,同时考虑了查 询请求和查询意图之间的关系,可以有效解决关键词差异大、长度长、句子结 构复杂等问题。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发 明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明 的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号