一种问句生成的方法、系统及存储介质与流程

文档序号:32661009发布日期:2022-12-23 23:32阅读:34来源:国知局
一种问句生成的方法、系统及存储介质与流程

1.本技术涉及计算机应用领域,特别涉及一种问句生成的方法、系统及存储介质。


背景技术:

2.由于机器阅读理解(machine reading comprehension,mrc)和智能问答系统的蓬勃发展,问句生成受到了越来越广泛的关注。问句生成(question generation)是文本生成中的重要子任务,旨在根据输入数据(文本、知识库、图像等类型)生成与输入相关且自然流畅的问句。由此问句生成模型应运而生,利用问句生成模型可以为问答系统提供更多的训练数据,降低人工标注成本,提升系统的性能。
3.在问答系统的训练阶段,训练数据越丰富质量越好,但是一般情况下数据不易获取,缺少有效数据。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种问句生成的方法、系统及存储介质,旨在实现生成一种问句,以用来作为问答系统模型的有效训练数据对问答系统进行训练。
5.第一方面,本技术实施例提供了一种问句生成的方法,所述方法包括:
6.基于知识信息,利用问句生成模型生成问句;
7.基于所述问句生成模型生成的问句,通过所述判别系统获得判别结果及问句知识信息对;
8.通过所述判别系统对所述判别结果运算,获得目标奖励;
9.所述判别系统将所述问句知识信息对和所述目标奖励返回给问句生成模型;
10.以返回给所述问句生成模型中的问句知识信息对中对应的目标奖励符合预设要求的问句知识信息对作为训练数据;
11.基于所述训练数据,通过强化学习的方式对问句生成模型进行训练,对问句生成模型进行更新;
12.以更新后的问句生成模型生成新的问句。
13.可选的,所述判别系统包括:
14.问答系统、知识库信息-问句相似度模型和语法正误判断模型;
15.所述基于所述问句生成模型生成的问句,通过所述判别系统获得判别结果,具体包括:
16.知识库信息-问句相似度模型通过判断输入所述问句生成模型的知识信息与所述基于问句生成模型生成的问句之间的相似度,获得第一奖励;
17.语法正误判断模型通过判断输入的问句的语法是否正确,获得第二奖励;
18.问答系统查询所述问句生成模型生成的问句对应的答案,通过判断所述答案与知识信息是否匹配,获得第三奖励;
19.所述通过所述判别系统对所述判别结果运算,获得目标奖励,具体包括:
20.根据所述第一奖励、所述第二奖励和所述第三奖励获得目标奖励。
21.可选的,所述根据所述第一奖励、所述第二奖励和所述第三奖励获得目标奖励包括:
22.根据所述第一奖励、所述第二奖励和所述第三奖励计算加权平均值,将所述加权平均值作为所述目标奖励。
23.可选的,所述知识信息存储于所述问答系统的知识库内,所述知识信息为具有头尾实体且实体间存在确定的联系的一组信息。
24.可选的,所述问句包括:
25.所述答案与所述知识信息匹配的问句,或,所述答案与所述知识信息不匹配的问句。
26.可选的,所述符合预设要求的问句知识信息对,包括:
27.对应的目标奖励为所述目标奖励的取值范围内的最大值。
28.第二方面,本技术实施例提供了一种问句生成的系统,所述系统包括:
29.问句生成模型和判别系统,其中判别系统包括问答系统,问答系统包括知识库;
30.所述问句生成模型,用于基于知识信息,利用问句生成模型生成问句:
31.所述问答系统,用于从所述问句生成模型获取问句,所述问答系统隶属于判别系统;
32.所述判别系统,用于基于问句生成模型生成的问句获得判别结果;对所述判别结果运算获得目标奖励,并生成问句知识信息对;将所述问句知识信息对和所述目标奖励返回给问句生成模型;其中,返回给所述问句生成模型中的问句知识信息对中对应的目标奖励符合预设要求的问句知识信息对作为训练数据;
33.所述问句生成模型,还用于基于所述训练数据,通过强化学习的方式训练并更新;以更新后的问句生成模型生成新的问句。
34.可选的,所述判别系统还包括:
35.知识库信息-问句相似度模型和语法正误判断模型;
36.所述知识库信息-问句相似度模型,用于通过判断输入所述问句生成模型的知识信息与所述基于问句生成模型生成的问句之间的相似度,获得第一奖励;
37.所述语法正误判断模型,用于通过判断输入的问句的语法是否正确,获得第二奖励;
38.所述问答系统,用于查询所述问句生成模型生成的问句对应的答案,通过判断所述答案与知识信息是否匹配,获得第三奖励;
39.所述判别系统,具体用于:
40.根据所述第一奖励、所述第二奖励和所述第三奖励获得目标奖励。
41.可选的,所述判别系统具体用于:
42.根据所述第一奖励、所述第二奖励和所述第三奖励的加权平均值,将所述加权平均值作为所述目标奖励。
43.第三方面,本技术实施例提供了一种计算机存储介质,所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现前述第一方面任一种实现方式介绍的问句生成的方法。
44.本技术提供了一种问句生成的方法、系统及存储介质,在执行所述方法时,首先基于问答系统中的知识库,获取知识库中的完整的知识信息,将知识信息作为答案输入问句生成模型生成问句。将所述问句输入到判别系统根据知识信息得到答案,同时判别系统根据判别结果输出奖励,并生成问句知识信息对。然后将所述问句知识信息对及所述奖励返回给问句生成模型作为训练数据,通过强化学习的方式实现问句生成模型的更新,以使问句生成模型不断生成一种特殊的问句。如此,通过判别系统的判别过程输出的奖励及问句知识信息对,利用强化学习的方式对问句生成模型进行训练,不断生成新的问句及问句知识信息对作为问句生成模型的训练数据,生成的问句与判别系统中查询的答案组成的问句答案对能够作为训练问答系统的有效数据对问答系统进行训练。
附图说明
45.为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1为更新模型生成问句的流程图;
47.图2为判断目标奖励是否符合预设要求的流程图;
48.图3为问答系统内部的判别的流程图;
49.图4为一种问句生成的系统结构示意图;
50.图5为判别系统生成目标奖励及问句知识信息对的示意图。
具体实施方式
51.在现有技术中,问答系统各个模型的训练阶段,训练数据越多质量越好,但是一般情况下数据不易获取,缺少有效数据。同时,问答系统落地后,测试系统有效性的方法可以分为人工构造一部分数据测试或落地使用测试,前者因为多样性和数据量的关系可靠性不高,后者一般会有潜在的问题,无法通过该方法测试,所以找到合适的方法对于问答系统的故障进行定位。
52.基于此,本技术中提出了一种问句生成的方法、系统及存储介质,通过进行强化学习训练的问句生成模型生成问句,最终以该问句及该问句对应的问句答案对作为问答系统的有效训练数据,同时该问句作为实现问答系统故障的定位数据。具体方法为:
53.首先基于问答系统中的知识库,获取知识库中的完整的知识信息,将知识信息作为答案输入问句生成模型生成问句,将所述问句输入到判别系统根据知识信息得到答案,并将问句及知识信息形成问句知识信息对,同时判别系统根据判别结果输出奖励,然后将所述问句知识信息对及所述奖励返回给问句生成模型作为训练数据,通过强化学习的方式实现问句生成模型的更新,以使问句生成模型不断生成一种特殊的问句。如此,通过判别系统的判别过程输出的奖励及问句知识信息对,利用强化学习的方式对问句生成模型进行训练,不断生成新的问句及问句知识信息对作为问句生成模型的训练数据,生成的问句与判别系统中查询的答案组成的问句答案对能够作为训练问答系统的有效数据对问答系统进行训练,同时该问句答案对能够实现定位问答系统中的模型故障位置。
54.参见图1所示,实现本发明包括以下步骤:
55.步骤101:基于知识信息,利用问句生成模型生成问句。
56.知识信息存储于问答系统的知识库内,所述知识信息为具有头尾实体且实体间存在确定的联系的一组信息,可以表示为实体-关系-实体这样的三元组结构形式,若两个实体间具有一个实体关系,则此关系称为一跳关系,若所述实体间具有至少两个实体关系,或所述实体具有至少一个实体关系,则此关系称为多跳关系,在本技术中应用的知识信息可以为具有一跳关系的知识信息,也可以为具有多跳关系的知识信息。
57.知识库(knowledge base,kb)是用于知识管理的一种特殊的数据库,用于相关领域知识的采集、整理及提取。知识库中的知识源于领域专家,是求解问题所需领域知识的集合,包括一些基本事实、规则和其他相关信息。知识库的表示形式是一个对象模型(object model),通常称为本体,包含一些类、子类和实体。是一种基于知识的系统,包含表示客观世界事实的一系列知识及一个推理机(inference engine),并依赖一定的规则和逻辑形式推理出一些新的事实,常见的知识库有freebase、dbpedia等。由于训练出的问题生成模型最终用于参与生成问答系统的训练样本,因此此处依赖的知识库应当与最终问答系统所涉及的知识库相对应。根据应用场景、题材的不同,本领域技术人员可以自主选择知识库,并进一步设计该知识库具体采用的数据结构以及读取方式,本说明书对此不作具体限定。在本技术中,主要以基于知识库的问答系统作为主体,也可以应用于其他类型的问答系统中。
58.问句生成模型,包括可以根据输入的知识信息,输出相应的问句的机器学习模型,具体可以采用用于问句生成的神经网络,如:引入注意力机制的seq2seq、transformer,大规模预训练模型bert、roberta等。本领域的技术人员可根据具体的应用需求进行选择,在此不做限定。
59.步骤102:基于所述问句生成模型生成的问句,通过所述判别系统获得判别结果及问句知识信息对。
60.问句生成模型利用知识信息生成问句,具体生成的方式包括:结构调整以及内容的增加。结构调整指的是对于问句进行结构上的调整,示例性的表述,原有的问句为:“学生的身高是1.7m吗?”,经过结构调整可以变换为“1.7m是学生的什么?”“身高是谁1.7m?”“谁的身高是1.7m”等。内容的增加指的是对于知识信息增加疑问词、连接词和一些干扰词汇。干扰词汇指的是与知识信息具有一定关系的词汇,干扰词汇可以由问句生成模型中的预训练模型提供,预训练模型可以为bert、roberta等,问句生成模型可以为基于深度学习的模型,如:seq2seq、transformer等,对于问句生成模型及预训练模型的具体类型可以由本领域的技术人员根据应用场景进行自主设定,在此不做限定。问句模型生成的问句可以示例性的表述为:“谁的身高是1.7m?”、“学生的什么是1.7m?”、“学生的身高是多少?”、“学生是男生,身高是多少?”等。
61.判别系统主要包括三个部分:知识库信息-问句相似度模型、语法正误判断模型和问答系统。在本技术中主要用到了这三部分模块,也可以在判别系统中增加语义重复模型等其他模型对于问句进行判别,不会对本技术产生负面影响,在此不作设定。
62.知识库信息-问句相似度模型主要用于判断输入所述问句生成模型的知识信息与所述基于问句生成模型生成的问句之间的相似度,示例性表述,输入的知识信息为“学生-身高-1.7m”,生成的问句可以为:“学生的身高是多少?”、“学生的体重是多少?”、“学生的高
度是多少?”,以这三个问句作为例子,它们输入知识库信息-问句相似度模型,与知识库信息对比,相似度及获取的奖励由高到低依次为:“学生的身高是多少?”、“学生的高度是多少?”、“学生的体重是多少?”;语法正误判断模型主要用于判断输入的问句的语法是否正确,示例性表述,输入的知识信息为“学生-身高-1.7m”,生成的问句可以为:“谁1.7m是身高?”、“身高是谁1.7m?”、“谁的身高是1.7m?”,以此三个问句作为例子,它们输入语法正误判断模型,可以得出“谁1.7m是身高?”及“身高是谁1.7m?”这两个问句的语法是错误的,相应得到的奖励低,“谁的身高是1.7m?”的语法是正确的,相应得到的奖励高;问答系统用于查询所述问句生成模型生成的问句对应的答案,判断所述答案与知识信息是否匹配,示例性表述,输入的知识信息为“学生-身高-1.7m”,对应问句生成模型生成的问句可以为“学生的身高是多少?”,在问答系统查询生成的问句对应的答案可以为“1.7m”、“50kg”,以这两个答案为例,判断出“1.7m”与知识信息是匹配的,“50kg”与知识信息是不匹配的。
63.对于问答系统的判别过程为:查询所述问句生成模型生成的问句对应的答案,判断所述答案与知识信息是否匹配。在匹配的过程中可能存在两类情况,第一类情况为:问答系统的知识库内存在两个及两个以上表意相近的答案均可以回答问句生成模型所生成的问句;第二类情况为:问答系统的知识库内仅存在唯一答案可以回答问句生成模型所生成的问句。对于上述的第二类情况,可以直接将答案与知识信息进行判断是否匹配。对于上述的第一类情况,答案与知识信息的具体匹配的方式可以为以下两种,第一种为:在构建知识图谱时将表达意思相近的词语记录下来,按照映射关系形成固定的词表,当查询答案时在词表中进行查询。第二种为:在问答系统中设置词语相似模型,用于判断问答系统查询到的答案与知识信息之间的相似度,当相似度符合阈值时,认为该答案与知识信息是匹配的。其中阈值可以由本领域技术人员根据应用场景及实际情况进行设定,在此不做限定。
64.现有的问答系统根据其问题答案的数据来源和回答的方式的不同,大体上可以分为以下3类:基于web信息检索的问答系统(web question answering,webqa)webqa系统以搜索引擎为支撑,理解分析用户的问题意图后,利用搜索引擎在全网范围内搜索相关答案反馈给用户。典型的系统有早期的ask jeeves和answerbus问答系统。
65.基于知识库的问答系统(knowledge based question answering,kbqa)kbqa系统通过结合一些已有的知识库或数据库资源(例如freebase、dbpedia、yago、zhishi.me等),以及利用如维基百科、百度百科等非结构化文本的信息,使用信息抽取的方法提取有价值的信息,并构建知识图谱作为问答系统的后台支撑,再结合知识推理等方法为用户提供更深层次语义理解的答案。
66.社区问答系统(community question answering,cqa)cqa系统也叫基于社交媒体的问答系统,大多数问题的答案由网友提供,问答系统会检索社交媒体中与用户提问语义相似的问题,并将答案返回给用户。
67.在本技术中是以基于知识库的问答系统作为主体,由此设计出一种生成问句的方法,生成的问句等数据信息可以应用于各种问答系统中,为它们提供训练数据样本,本技术的主体也可以为其他类型的问答系统,在此不作限定。
68.本技术中的问答系统可以包含问句类型判别、命名实体识别、实体链接、知识查询、答案排序等核心模块。示例性表述,若问答系统内部存在问句类型判别、命名实体识别、实体链接、知识查询及答案排序,此时问答系统获取答案的过程主要为:问句类型判别模块
提取问句的类型特征,命名实体识别模块提取问句中的指称(mention)后,由实体链接模块将指称对应到知识库中的实体(entity)上,知识查询模块在知识库中查询该实体得到以该实体节点为中心的知识库子图,并依据某些规则或模版从提取到的子图中抽取相应的节点或边。得到表征问题和候选知识信息的特征向量,通过答案排序模块进行排序,从而得出最终答案,问答系统根据此答案与知识信息进行匹配。
69.通过知识库信息-问句相似度模型、语法正误判断模型和问答系统这三个部分分别进行判断,根据各自奖励的取值范围,给出一个与判断相符的奖励,也就是判别结果。示例性表述,知识库信息-问句相似度模型的奖励取值范围为[0,1],则表示输入所述问句生成模型的知识信息与所述基于问句生成模型生成的问句之间的相似度最高时奖励为1,最低时奖励为0;语法正误判断模型的奖励取值范围为[0,1],则输入的问句的语法正确则对应的奖励为1,若错误则对应的奖励为0;问答系统查询所述问句生成模型生成的问句对应的答案,判断所述答案与知识信息是否匹配,若匹配则奖励为0,若不匹配则奖励为1。上述所说的取值范围均可以由本领域的技术人员根据实际情况进行设定,在此不作限定。判别系统生成问句知识信息对,其中的问句指的是问句生成模型基于问答系统知识库中的知识信息生成的问句,知识信息则是与该问句对应的知识信息。
[0070]
步骤103:通过所述判别系统对所述判别结果运算,获得目标奖励。
[0071]
目标奖励为对判别结果进行一系列的运算得出的奖励,运算过程可以采用数学运算,也可以采用程序算法的方式进行。对于数学运算可以采取将判别结果中对应的三个子奖励进行算数平均值的计算获得目标奖励,特别的,也可以根据三个模块的重要程度,给三个不同的子奖励赋予不同的权重,求和获得目标奖励,凡是可以体现子奖励的关系及得出目标奖励的运算方法均可以应用于本技术中用于计算目标奖励,在此不做限定。目标奖励还可以采用程序算法的方式获得,如:编写具有一定运算规则的程序应用于判别系统,判别系统将子奖励输入该程序,得出目标奖励,程序所应用的编写语言及编程软件在此不做限定。
[0072]
步骤104:所述判别系统将所述问句知识信息对和所述目标奖励返回给问句生成模型。
[0073]
问句知识信息对和目标奖励可以组合在一起成为问句-知识信息-奖励对,以问句-知识信息-奖励对的形式返回给问句生成模型。
[0074]
步骤105:以返回给所述问句生成模型中的问句知识信息对中对应的目标奖励符合预设要求的问句知识信息对作为训练数据。
[0075]
预设要求可以为本领域技术人员根据实际情况自主对于目标奖励所设定的阈值,示例性表述,若判别系统中包括:知识库信息-问句相似度模型、语法正误判断模型和问答系统这三个模块,知识库信息-问句相似度模型的奖励取值范围为[0,1],语法正误判断模型的奖励取值范围为[0,1],问答系统查询所述问句生成模型生成的问句对应的答案,判断所述答案与知识信息是否匹配,若匹配则奖励为0,若不匹配则奖励为1,同时对于计算目标奖励的运算方法设定为这三个模块对应子奖励的算数平均值。那么此时目标奖励的预设范围为[0,1],预设要求可以设定为1。即目标奖励为1时符合预设要求,目标奖励为1的问句知识信息对将作为训练数据;目标奖励不为1时不符合预设要求,对应的问句知识信息对不会作为更新问句生成模型的训练数据。
[0076]
问句生成模型存在奖励机制,对于目标奖励大的问句知识信息对会给予正向的奖励,并以此问句知识信息对作为更新问句生成模型的训练数据;对于目标奖励小的问句知识信息对会给予负向的奖励,也可以理解为是惩罚,对于此问句知识信息对不会作为更新问句生成模型的训练数据,但是此类问句知识信息对也可以让问句生成模型学习到生成问句的负面信息,让问句生成模型避免生成此类问句知识信息对中的问句。
[0077]
步骤106:基于所述训练数据,通过强化学习的方式对问句生成模型进行训练,对问句生成模型进行更新。
[0078]
在本技术应用强化学习的方式对问句生成模型进行训练,以更新问句生成模型生成新的问句。强化学习是智能体(agent)以“试错”的方式进行学习,通过与环境进行交互获得的奖励指导行为,目标是使智能体获得最大的奖励,强化学习中由环境提供的强化信号是对产生动作的好坏作一种评价(通常为标量信号),而不是告诉强化学习系统rls(reinforcement learning system)如何去产生正确的动作。由于外部环境提供的信息很少,rls必须靠自身的经历进行学习。通过这种方式,rls在行动-评价的环境中获得知识,改进行动方案以适应环境,在本技术中的“智能体”指的是问句生成模型,由环境提供的强化信号指的是返回给所述问句生成模型中的问句知识信息对中对应的目标奖励符合预设要求的问句知识信息对。
[0079]
步骤107:以更新后的问句生成模型生成新的问句。
[0080]
在本实施例中,基于问答系统中的知识库,获取知识库中的完整的知识信息,将知识信息作为答案输入问句生成模型生成问句,将所述问句输入到判别系统根据知识信息得到答案,并将问句及知识信息形成问句知识信息对,同时判别系统根据判别结果输出奖励,然后将所述问句知识信息对及所述奖励返回给问句生成模型作为训练数据,通过强化学习的方式实现问句生成模型的更新,以使问句生成模型不断生成新的问句,以此方式,实现了一种问句的生成,生成的问句与判别系统中查询的答案组成的问句答案对能够作为训练问答系统的有效数据对问答系统进行训练,同时本领域的技术人员可以根据生成的这种问答系统的知识库中存在答案,但是问答系统无法正确回答的问句,定位问答系统中出现故障的模型,以排除问答系统中存在的故障。问答系统中可以存在依次具有顺序关系的几个模型:问句意图模型、命名实体识别模型、查询模型和相似度模型。问句意图模型用于将用户意图划分为关系查询、属性查询、比较、判断等不同类别。设计句子模板,进行匹配判断,或通过实体链接和属性匹配来识别。比如直接匹配了实体和属性,那么返回属性值或关系名称;或者基于图计算方法对意图打标签。在本实施例中可以理解为通过输入语句表示学习,完成意图分类。命名实体识别模型用于从非结构化的输入文本中抽取出上述实体,并且可以按照业务需求识别出更多类别的实体。其中的命名实体一般指的是文本中具有特定意义或者指代性强的实体,如实体类,时间类,数字类三大类和人名、地名、组织机构名、时间、日期、货币、百分比七小类的实体。查询模型用于利用sparql声明式语言、cypher声明式语言、pgql声明式语言等查询语言进行知识库数据的检索,查找问句对应的答案。相似度模型用于将查询模型查询到的信息进行相似度计算,找到相似度最高的信息,输出作为问句的答案。问答系统中还可以存在除问句意图模型、命名实体识别模型、查询模型和相似度模型以外的其他模型,可以由本领域的技术人员根据应用场景及实际情况进行模型的设置,在此不做限定。
[0081]
示例性表述,以问答系统中存在问句意图模型、命名实体识别模型、查询模型和相似度模型为例,向问答系统输入基于问答系统的知识库中的知识信息生成的问句,问答系统在知识库中寻找并输出答案,但是答案与知识信息不符,在这种情况下,上述的问句就会被判定为问答系统内存在答案,但是无法正确回答的问句。本领域的技术人员根据这个问句及问答系统返回的答案,判断出问答系统出现故障,可以人为的查看问答系统内部各个模块的执行情况,如:首先查看问句意图模型对于问句意图判别是否正确,若不正确则证明问句意图模型出现故障,若正确,继续查看命名实体识别模型;判断命名实体识别模型抽取实体时是否抽取正确,若不正确则证明命名实体识别模型出现故障,若正确,则继续查看查询模型;判断查询模型对应查询到的信息是否正确,若不正确,则证明查询模型运用的查询语句出现错误,若正确,则继续查看相似度模型;判断相似度模型进行的相似度计算是否正确,若不正确,在排除代码层面上输入输出等错误后,证明相似度模型出现故障,故障排查完成。
[0082]
图2为判断目标奖励是否符合预设要求的流程图。如图2所示,前文实施例提供的方法中步骤105可以采用以下步骤实现:
[0083]
步骤201:判断返回给所述问句生成模型中的问句知识信息对中对应的目标奖励是否符合预设要求,若符合进入步骤202,若不符合进入步骤203;
[0084]
目标奖励符合预设要求则表示,所生成的问句知识信息对符合作为问句生成模型训练数据的要求,问句知识信息对符合要求,根据此问句知识信息对训练的问句生成模型对应生成的问句质量会越高,对应产生的奖励也会越高。
[0085]
步骤202:目标奖励符合预设要求,将与之对应的问句知识信息对输入问句生成系统;
[0086]
步骤203:目标奖励不符合预设要求,将与之对应的问句知识信息对进行删除,同时由问句生成模型对下一个知识信息继续生成问句。
[0087]
步骤203中提到若目标奖励不符合预设要求,会将与之对应的问句知识信息对进行删除,这步操作的原因在于,问句生成模型在强化学习的训练下,会产生数量庞大的问句,相应也会产生数量庞大的问句知识信息对,若不将不符合预设要求的问句知识信息对进行删除,会给系统造成资源的浪费,以及出现数据的冗余,导致模型训练时间较长。步骤203中还提到:由问句生成模型对下一个知识信息继续生成问句。这步操作的原因在于,若不进行这步操作,而是选择将与此问句知识信息对中的问句对应的知识信息发送给问句生成模型,由问句生成模型根据上述知识信息继续生成问句,会出现一种陷入死循环的情况,即,问句生成模型对于某个知识信息一直无法生成符合要求的问句,这种情况会导致资源的浪费,在对于问句生成模型的训练中需要对其进行多元化的训练,让它对于不同的知识信息均进行训练才能够达到较好的训练效果。目标奖励不符合预设要求,意味着知识信息对应生成的问句不符合要求。也可以选择需要针对此知识信息在设定的阈值次数内进行训练生成问句,可以理解的是,对于目标奖励符合预设要求的情况,也可以对于其对应的问句知识信息对中,问句对应的知识信息在设定的阈值次数内进行训练继续生成问句,所述的设定的阈值次数可以由本领域的技术人员根据应用场景和实际情况进行设定,在此不作设定,设定阈值次数的目的在于避免算力资源的浪费。
[0088]
在本实施例中,对前文实施例提供的方法中步骤105进行了进一步的优化,通过删
除目标奖励不符合预设要求的问句知识信息对,减少了造成系统资源的浪费,以及出现数据的冗余,导致模型训练速度变慢的情况的发生,同时,将目标奖励不符合预设要求的问句知识信息对中,问句对应的知识信息发送给问句生成模型,问句生成模型根据上述知识信息继续生成问句,使得问句生成模型可以训练得更加完善。除此之外还需进一步说明的是,本实施例的主体可以为一个封装好的判断模块或计算机程序等,具体实现方式可以根据本领域技术人员的需求自行设定,在此不做限定。
[0089]
在前文介绍的方案中,判别系统中包括:语法正误判断模型、知识库信息-问句相似度模型及问答系统,在此基础上为进一步优化方案,可以在问答系统内部存在增加语法正误判断模型和知识库信息-问句相似度模型,实现问答系统的内部判别,图3为问答系统内部的判别的流程图,如图3所示,关于问答系统中问答系统的判别还可以包括以下步骤实现:
[0090]
步骤301:问句输入问答系统;
[0091]
步骤302:问答系统内部的语法正误判断模型对所述问句进行判别;
[0092]
步骤303:问答系统内部的知识库信息-问句相似度模型对所述问句进行判别;
[0093]
步骤304:根据判别结果对于问句进行优化。
[0094]
对问句进行优化,可以是基于问答系统内部的语法正误判断模型的判别结果,对问句进行优化,也可以是基于问答系统内部的知识信息库-问句相似度模型的判别结果,对问句进行优化。示例性表述,知识信息为:“学生-身高-1.7m”,生成的问句为:“谁1.7m是身高?”,此时问答系统内部的语法正误判断模型会对这个问句进行判别,根据判别结果输出对应的奖励,此时的判别结果应为此问句的语法是错误的,对应的奖励低,问答系统获得问答系统内部的语法正误判断模型输出的判别结果,根据判别结果判断是否需要将问句输入问句校正模型进行校正,在上述例子的情况下,问句“谁1.7m是身高?”需要输入问句校正模型进行校正,具体的校正方式可以包括:语序调换、增加或减少一些词语、根据知识信息对问句进行补充等。
[0095]
需要说明的是,在本实施例中,在问答系统内部增加了语法正误判断模型及知识库信息-问句相似度模型,并不影响判别系统中语法正误判断模型、知识库信息-问句相似度模型及问答系统对于问句的判别过程,语法正误判断模型会对问句判断输入的问句的语法是否正确,并输出对应奖励;知识库信息-问句相似度模型会判断输入所述问句生成模型的知识信息与所述基于问句生成模型生成的问句之间的相似度,并输出对应奖励;问答系统查询所述问句生成模型生成的问句对应的答案,判断所述答案与知识信息是否匹配,并输出对应奖励。本实施例中在问答系统的内部增加语法正误模型和知识库信息-问句相似度模型,不会影响问答系统对于问句生成模型输入问句的判别及对应奖励的生成。
[0096]
本实施例中,通过对于不符合要求的问句进行优化的过程,实现了对于问答系统内部对于问句的判别及优化,可以根据问答系统的内部判别过程对问答系统本身进行训练,使得问答系统对于问句的判别更加准确,从而使得当问句从问句生成模型输入判别系统进行判别的准确度更高,对应输出的问句知识信息对的奖励更加准确,进而使得对于问句生成模型的训练更加准确高效,最终可以更好地生成问答系统中存在对应答案,但是无法正确回答的问句,通过此问句使技术人员定位到问答系统中出现故障的位置,还可以作为有效的训练数据对问答系统的子模型进行训练。
[0097]
图4为一种问句生成的系统结构示意图,如图4所示,本发明还提供了一种问句生成的系统,包括:
[0098]
问句生成模型100和判别系统300,其中判别系统包括问答系统200,问答系统200包括知识库201;
[0099]
所述问句生成模型100,用于基于知识信息,利用问句生成模型生成问句:
[0100]
所述问答系统200,用于从所述问句生成模型获取问句,所述问答系统隶属于判别系统;
[0101]
所述判别系统300,用于基于问句生成模型生成的问句获得判别结果;对所述判别结果运算,获得目标奖励;并生成问句知识信息对,将所述问句知识信息对和所述目标奖励返回给问句生成模型;其中,返回给所述问句生成模型中的问句知识信息对中对应的目标奖励符合预设要求的问句知识信息对作为训练数据;
[0102]
所述问句生成模型100,还用于基于所述训练数据,通过强化学习的方式训练并更新;以更新后的问句生成模型生成新的问句。
[0103]
本发明提供了一种问句生成的系统,该系统通过问句生成模型100基于知识信息生成问句,将问句输入判别系统300中进行判别得到判别结果。判别系统300对判别结果运算,获得目标奖励,并生成问句知识信息对,将所述问句知识信息对和所述目标奖励返回给问句生成模型100;其中,返回给所述问句生成模型100中的问句知识信息对中对应的目标奖励符合预设要求的问句知识信息对作为训练数据。问句生成模型100,还用于基于所述训练数据,通过强化学习的方式训练并更新;以更新后的问句生成模型100生成新的问句。
[0104]
在可选的实现方式中,图五为判别系统生成目标奖励及问句知识信息对的示意图,如图五所示,判别系统300包括:知识库信息-问句相似度模型302和语法正误判断模型301及问答系统200;基于所述问句生成模型100生成的问句,通过所述判别系统300获得判别结果,具体包括:知识库信息-问句相似度模型302通过判断输入所述问句生成模型的知识信息与所述基于问句生成模型生成的问句之间的相似度,获得第一奖励;语法正误判断模型301通过判断输入的问句的语法是否正确,获得第二奖励;问答系统200查询所述问句生成模型生成的问句对应的答案,通过判断所述答案与知识信息是否匹配,获得第三奖励;所述通过所述判别系统对所述判别结果运算,获得目标奖励,具体包括:根据所述第一奖励、所述第二奖励和所述第三奖励进行加权平均获得目标奖励,同时由判别系统生成问句知识信息对。
[0105]
通过上述提供的一种问句生成的系统,可以实现问句的生成,生成问答系统潜在的无法回答的问句,给本领域的技术人员分析定位故障原因、训练问答系统使用。
[0106]
本技术实施例还提供了对应的设备以及计算机可读存储介质,用于实现本技术实施例提供的方案。
[0107]
其中,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行本技术任一实施例所述的一种问句生成的方法。
[0108]
在实际应用中,所述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器
件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0109]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0110]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0111]
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0112]
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0113]
以上所述,仅为本技术的一种具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应该以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1