一种面向任务的非结构化信息智能问答系统构建方法技术方案

技术编号:21199981 阅读:23 留言:0更新日期:2019-05-25 01:17
本发明专利技术公开了一种面向任务的非结构化信息智能问答系统构建方法,该方法通过对用户请求进行自然语言处理,识别请求语句的关键词语和句式,匹配所属任务类型,生成查询请求表达式,根据不同的任务类型制定不同的搜索条件和排序条件。定义任务映射到三类期待答案形式:天气型,时间型,数字型,这三类问题可以直接对用户的问题进行精准的回答。系统在句子和段落索引中查询符合条件的候选结果。候选的句子或段落按照命名实体识别结果筛选符合任务期待答案类型的词语,筛选出包含目标类型短语的结果,标记为目标答案并将其高亮显示;不含目标类型短语的结果排名靠后。最后将此答案输出。

A Task-Oriented Method for Constructing an Intelligent Question Answering System for Unstructured Information

The invention discloses a construction method of task-oriented unstructured information intelligent question answering system. The method identifies the key words and sentence patterns of the request statement, matches the task type, generates the query request expression, and formulates different search conditions and ranking conditions according to different task types. Definition tasks are mapped to three types of expected answers: weather, time and number. These three types of questions can directly provide accurate answers to users'questions. The system queries qualified candidate results in sentence and paragraph indexes. Candidate sentences or paragraphs are selected according to the results of named entity recognition, and the results containing target type phrases are selected, marked and highlighted. The results without target type phrases rank low. Finally, output the answer.

【技术实现步骤摘要】
一种面向任务的非结构化信息智能问答系统构建方法
本专利技术涉及中文自然语言处理技术和信息搜索
,具体涉及一种面向任务的非结构化信息智能问答系统构建方法。
技术介绍
现在全球各类信息资源的自由共享使得多源异构信息源源不断的生成,其数量巨大、内容复杂多样,且信息质量良莠不齐。在这样复杂环境下信息空间呈现出诸多的不确定性,信息的查询还是通过传统的关键字查询信息,较为复杂的需求往往没有办法在一次查询中完成,需要经过几轮查询才能获取到关键信息。对能够准确理解自然语言问句的问答系统的需求越来越迫切,通用的问答系统所面临的问题远远没有解决,学术界和产业界都仍在探索阶段。基于布尔模型的搜索引擎技术在民用领域已经发展得非常成熟,例如百度、谷歌的通用搜索引擎已被广泛应用。得益于维基百科、百度百科等大规模的知识库,大型搜索引擎公司已经可以基于知识图谱或QA对直接回答一部分问题,完成了问答系统的部分功能,但是该技术需要事先构建领域内的知识图谱和问答语料才能发挥出作用。然而,绝大部分数据是非结构化的异构信息,碎片化的数据流整合到通用的知识库需要时间,如果可以直接针对某类问题从海量的语料中抽取出期望答案对于信息搜索具有实际意义。目前通过自然语言处理的技术从非结构化信息中提取期望答案的技术研究较少。已有的智能问答研究多数是基于知识图谱的结构化问题回答,将非结构化文本进行开放式信息抽取生成知识图谱,没有深入基于非结构化文本的问答系统研究。
技术实现思路
针对信息搜索领域所存在的问题和不足,本专利技术提供了一种面向任务的非结构化信息智能问答系统构建方法,包括如下步骤:步骤1、构建后台索引:对非结构化的文本按单句和段落进行切分,段落级索引的字段包括段落ID、段落内容、段落所在文章中的位置、段落所在文章ID;句子级索引的字段包括句子ID、句子内容、句子所在段落位置、句子所在段落ID、该段落在文章中的位置、句子所在文章ID;对句子和段落分别建立二级全文索引,为用户查询提供检索支持;步骤2、对用户问题请求的相关操作分别采用Hanlp和StanfordNLP工具包进行中文分词和词性标注,可以得到问题请求的词语集合以及各词的类型,例如是否为实体名词等。在系统构建之前,为了对用户的请求进行任务分类需提前构建提示词表,用于对用户问题请求进行基于词语规则的初归类,只要用户的请求中出现了词表中的词汇,同时句法分析结果符合此类别要求,则将问题请求归为该类问题。系统根据词表判断用户请求可能的任务类型后,再对用户的问题请求通过StanfordNLP工具包进行句法分析以获取句法特征,匹配期望答案类型,生成查询请求表达式,包含了查询的关键词以及期望答案的类型;步骤3、对于每一项任务,配置任务拓展词典以提高任务查询的查全率,词典包含了用户请求中常见词的同义词、近义词、领域相关词汇以及词权重配置。根据问句的任务类型、分词和词性标注结果,生成查询请求表达式,使用任务拓展词典对查询请求的关键词进行拓展与组合,分别转换成句子级和段落级索引查找条件和兜底查询条件,依据不同的任务调整查询关键词的权重和排序要求;步骤4、优先在句子级索引中查找,如果没有查询到结果或者结果数过少,则将查询请求在段落级索引中再次查找,如果还是没有足够的结果数,则使用兜底查询条件进行二次查找,最终生成候选结果集;步骤5、将候选结果集按照任务对应的排序策略进行个性化排序,默认按相关度得分进行排序,并归一化相关度得分值,得分在0至1之间。取相关度得分最高的三个结果作为下一步的候选答案;如果候选结果相关度差距小于设定的阈值(阈值取0.1),则按照时间排序,取距离当前时间最近的三个结果为下一步的候选答案;步骤6、将候选答案按标点符号进行短句切分,统计检索关键词所在位置,包括实体词和属性词,基于任务的期望答案进行命名实体识别,统计关键词与期望答案类型相符的短语之间距离,依据设定窗口大小过滤期望答案类型短语与检索关键词之间距离过大的结果,窗口大小默认可设为2;步骤7、找到距离属性词最近的且符合期望答案类型的位置标记为可能的问题答案,并输出结果。步骤2中,用户的请求期望答案类型定义为三类:天气型,时间型,数字型;每一类用户请求都有对应的提示词集合,例如,天气类对应的提示词有:天气、下雨、下雪、温度等;数字型对应的提示词有:多长、多高、多少、长度等。提示词表是根据用户请求中分词结果集合高频词统计得出,也可以手动对词表进行扩充。如果用户问题请求的分词和句法分析结果中包括了提示词表中的词则将该问题分入该类别,句法分析得到的句法特征包括句法构成树及句法依赖图,具体做法是设置实体名词之前或之后在特定窗口长度包含词的词性、实体类型作为中心词的特征标准,窗口长度可设置为2或3。识别问句中两个实体名词为中心词,中心词在句法构成树中最短路径包含的词性标签及其长度和在句法依赖图中的依赖路径及其长度,句法符合两个实体名词的中心词在句法构成树中最短路径包含的词性标签,即将此用户的问题请求进行归类处理。步骤3中,优先对句子级索引进行查询,如果查不到或者查询到结果个数不满三个再去查询段落级索引;句子级索引查询条件必须用逻辑表达式连接各查询关键词,步骤2中得到的分词结果需根据提示词表进行拓展,各查询关键词之间用与连接,提示词之间用或连接;对于兜底查询条件,各查询关键词之间用或连接,提示词之间也使用或连接,关键词设置两倍于普通词语的权重;排序策略必须根据任务的要求进行调整,能够设置两个以上排序字段,并设置优先级。步骤4中,首先根据句子查询条件去查询,必须包含所有的关键词,返回的查询结果数量多于三个则直接返回结果;如果查询的结果小于三个则需要从段落级索引中进行查询补齐结果数量;如果在句子级和段落级索引都没有查找到结果,则启用兜底查询条件进行查找。步骤5中,统计关键词e在步骤1原始的非结构化文本中出现的频次,记为tfe,N代表海量新闻语料中文档的数量,dfe代表包含实体e的文档个数,计算该关键词的词频-逆文本频率指数,记为TF-IDF,则e的TF-IDF值TFIDFe由以下公式计算得到:将TFIDFe归一化为0~1之间的数值作为该项特征;对于多关键词的查询语句,采用基于TF-IDF的复合评分计算方法计算其分值score(q,d),由以下公式计算得到该值:其中,coord(q,d)为查询语句q在文档d中出现的频率,查询语句q由多个查询词t组成;queryNorm(q)为归一化的参数,与文档的相关度无关;tf(tind)为词t在文档d中出现的频率,idf(t)为词t在整个文档集合(海量新闻语料)中的逆文档频率;t.getBoost为词t的加权值,默认值为1.0;norm(t,d)为长度相关的加权因子。步骤6中,对于步骤5已经查找到的候选答案,按答案中出现的逗号、句号、分号进行分割,对短句使用StanfordNLP工具包进行命名实体识别,识别出句中的人名、时间、数字、地名,并标注与答案类型相符的词语位置,如果没有与期望答案类型相符的词语则直接过滤这个短句,统计关键词与期望答案类型相符的短语之间距离,设定窗口大小,过滤期望答案类型短语与检索关键词之间距离过大的结果。窗口大小可设为2,过滤非名词动词的修饰词后进行窗口计算(属性关键词与期望答案类型相符的词本文档来自技高网...

【技术保护点】
1.一种面向任务的非结构化信息智能问答系统构建方法,其特征在于,包括如下步骤:步骤1、构建后台索引:对非结构化的文本按单句和段落进行切分,段落级索引的字段包括段落ID、段落内容、段落所在文章中的位置、段落所在文章ID;句子级索引的字段包括句子ID、句子内容、句子所在段落位置、句子所在段落ID、该段落在文章中的位置、句子所在文章ID;对句子和段落分别建立二级全文索引,为用户查询提供检索支持;步骤2、对用户问题请求的相关操作分别采用Hanlp和StanfordNLP工具包进行中文分词和词性标注,得到问题请求的词语集合以及各词的类型;在系统构建之前,构建提示词表,用于对用户问题请求进行基于词语规则的初归类,只要用户的请求中出现了词表中的词汇,同时句法分析结果符合此类别要求,则将问题请求归为该类问题,系统根据提示词表判断用户请求可能的任务类型后,再对用户的问题请求通过StanfordNLP工具包进行句法分析以获取句法特征,匹配期望答案类型,生成查询请求表达式,包含了查询的关键词以及期望答案的类型;步骤3、对于每一项任务,配置任务拓展词典,词典包含了用户请求中常见词的同义词、近义词、领域相关词汇以及词权重配置;根据问句的任务类型、分词和词性标注结果,生成查询请求表达式,使用任务拓展词典对查询请求的关键词进行拓展与组合,分别转换成句子级和段落级索引查找条件和兜底查询条件,依据不同的任务调整查询关键词的权重和排序要求;步骤4、优先在句子级索引中查找,如果没有查询到结果或者结果数过少,则将查询请求在段落级索引中再次查找,如果还是没有足够的结果数,则使用兜底查询条件进行二次查找,最终生成候选结果集;步骤5、将候选结果集按照任务对应的排序策略进行个性化排序,默认按相关度得分进行排序,并归一化相关度得分值,得分在0至1之间,取相关度得分最高的三个结果作为下一步的候选答案;如果候选结果相关度差距小于设定的阈值,则按照时间排序,取距离当前时间最近的三个结果为下一步的候选答案;步骤6、将候选答案按标点符号进行短句切分,统计检索关键词所在位置,包括实体词和属性词,基于任务的期望答案进行命名实体识别,统计关键词与期望答案类型相符的短语之间距离,依据设定窗口大小过滤期望答案类型短语与检索关键词之间距离过大的结果;步骤7、找到距离属性词最近的且符合期望答案类型的位置标记为可能的问题答案,并输出结果。...

【技术特征摘要】
1.一种面向任务的非结构化信息智能问答系统构建方法,其特征在于,包括如下步骤:步骤1、构建后台索引:对非结构化的文本按单句和段落进行切分,段落级索引的字段包括段落ID、段落内容、段落所在文章中的位置、段落所在文章ID;句子级索引的字段包括句子ID、句子内容、句子所在段落位置、句子所在段落ID、该段落在文章中的位置、句子所在文章ID;对句子和段落分别建立二级全文索引,为用户查询提供检索支持;步骤2、对用户问题请求的相关操作分别采用Hanlp和StanfordNLP工具包进行中文分词和词性标注,得到问题请求的词语集合以及各词的类型;在系统构建之前,构建提示词表,用于对用户问题请求进行基于词语规则的初归类,只要用户的请求中出现了词表中的词汇,同时句法分析结果符合此类别要求,则将问题请求归为该类问题,系统根据提示词表判断用户请求可能的任务类型后,再对用户的问题请求通过StanfordNLP工具包进行句法分析以获取句法特征,匹配期望答案类型,生成查询请求表达式,包含了查询的关键词以及期望答案的类型;步骤3、对于每一项任务,配置任务拓展词典,词典包含了用户请求中常见词的同义词、近义词、领域相关词汇以及词权重配置;根据问句的任务类型、分词和词性标注结果,生成查询请求表达式,使用任务拓展词典对查询请求的关键词进行拓展与组合,分别转换成句子级和段落级索引查找条件和兜底查询条件,依据不同的任务调整查询关键词的权重和排序要求;步骤4、优先在句子级索引中查找,如果没有查询到结果或者结果数过少,则将查询请求在段落级索引中再次查找,如果还是没有足够的结果数,则使用兜底查询条件进行二次查找,最终生成候选结果集;步骤5、将候选结果集按照任务对应的排序策略进行个性化排序,默认按相关度得分进行排序,并归一化相关度得分值,得分在0至1之间,取相关度得分最高的三个结果作为下一步的候选答案;如果候选结果相关度差距小于设定的阈值,则按照时间排序,取距离当前时间最近的三个结果为下一步的候选答案;步骤6、将候选答案按标点符号进行短句切分,统计检索关键词所在位置,包括实体词和属性词,基于任务的期望答案进行命名实体识别,统计关键词与期望答案类型相符的短语之间距离,依据设定窗口大小过滤期望答案类型短语与检索关键词之间距离过大的结果;步骤7、找到距离属性词最近的且符合期望答案类型的位置标记为可能的问题答案,并输出结果。2.根据权利要求1所述的方法,其特征在于,步骤2中,用户的请求期望答案类型定义为三类:天气型,时间型,数字型;每一类用户请求都有对应的提示词集合,提示词表是根据用户请求中分词结果集合高频词统计得出,或者手动对词表进行扩充;如果用户问题请求的分词和句法分析结果中包括了提示词表中的词则将该问题分入该类别,句...

【专利技术属性】
技术研发人员:丁蔚然姜晓夏葛唯益王羽王振宇
申请(专利权)人:中国电子科技集团公司第二十八研究所
类型:发明
国别省市:江苏,32

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

1