CN111737440B - 一种问题生成方法及装置 - Google Patents
一种问题生成方法及装置 Download PDFInfo
- Publication number
- CN111737440B CN111737440B CN202010759189.8A CN202010759189A CN111737440B CN 111737440 B CN111737440 B CN 111737440B CN 202010759189 A CN202010759189 A CN 202010759189A CN 111737440 B CN111737440 B CN 111737440B
- Authority
- CN
- China
- Prior art keywords
- question
- original
- generation model
- target
- characters
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Machine Translation (AREA)
Abstract
一种问题生成方法及装置,所述方法包括:基于预设的原始问题库与参考问题库中的问题样本,对问题生成模型进行模仿学习训练;其中,所述问题生成模型用于根据输入的原始问题,生成语义相似的目标问题;所述参考问题库用于在所述模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象;获取原始问题;将所述原始问题输入模仿学习训练完成的所述问题生成模型,生成与所述原始问题语义相似的目标问题。
Description
技术领域
本说明书涉及计算机应用领域,尤其涉及一种问题生成方法及装置。
背景技术
在机器问答领域,问答系统通常由问题-答案对作为训练样本训练得到;为了提高问答系统的鲁棒性,人们通常需要对训练样本进行数据增强,也即,生成与原有的问题语义相似,但表达方式存在不同的其他问题;如此,针对同一个答案,将会有更多的语义相似的问题与之对应,从而可以显著扩充问题-答案对的数量,使得训练出的问答系统能够适应更多的问题种类,从而进一步提升训练出的问答系统的鲁棒性。
在相关技术中,通常将问题的生成过程转化为一个问题生成模型的反复调用过程;上述问题生成模型可采用有监督学习的训练模式,以语义相似的原始问题-目标问题对作为训练样本进行训练,使得问题生成模型能够学习到从原始问题到与其语义相似的目标问题之间的映射关系,从而将其用于语义相似问题的生成任务。
然而,有监督学习的训练过程中,问题生成模型的输入状态通常仅限于训练样本中的状态,而实际使用时的输入状态则并不一定出现在训练样本中,因此容易出现过拟合问题,导致训练得到的问题生成模型无法有效生成与原有的问题语义相似的其他问题。
发明内容
有鉴于此,本说明书公开了一种问题生成方法和装置。
根据本说明书实施例的第一方面,公开了一种问题生成方法,包括:
基于预设的原始问题库与参考问题库中的问题样本,对问题生成模型进行模仿学习训练;其中,所述问题生成模型用于根据输入的原始问题,生成语义相似的目标问题;所述参考问题库用于在所述模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象;
获取原始问题;
将所述原始问题输入模仿学习训练完成的所述问题生成模型,生成与所述原始问题语义相似的目标问题。
根据本说明书实施例的第二方面,公开了一种问题生成装置,包括:
训练模块,基于预设的原始问题库与参考问题库中的问题样本,对问题生成模型进行模仿学习训练;其中,所述问题生成模型用于根据输入的原始问题,生成语义相似的目标问题;所述参考问题库用于在所述模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象;
获取模块,获取原始问题;
生成模块,将所述原始问题输入模仿学习训练完成的所述问题生成模型,生成与所述原始问题语义相似的目标问题。
以上技术方案中,一方面,由于将模仿学习应用到相似问题生成中,而参考问题库可以在所述模仿学习训练过程中,提供与原始问题语义相似的问题作为模仿对象,因此训练出的问题生成模型,能够学习到原始问题到与该原始问题语义相似的问题的映射关系,从而可以用于生成语义相似的目标问题。
另一方面,由于模仿学习的过程与传统的有监督学习不同,其输入状态不仅限于训练样本中的状态,更可以利用被训练的模型输出的中间状态进行迭代学习,因此,问题生成模型在训练阶段的输入状态更符合实际使用时的情况,所以训练不容易出现过拟合问题,从而使得训练得到的问题生成模型在实际使用中具有更好的性能。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本说明书的实施例,并与说明书文本一同用于解释原理。
图1是本说明书所述训练并使用问题生成模型的一示例图;
图2是本说明书所述问题生成方法的流程示意图;
图3是本说明书所述模仿学习训练中序列的变换示意图;
图4是本说明书所述问题生成装置的结构示例图;
图5是本说明书所述用于问题生成的计算机设备的结构示例图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的系统和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在机器问答领域,问答系统通常由问题-答案对作为训练样本训练得到;为了提高问答系统的鲁棒性,人们通常需要对训练样本进行数据增强,也即,生成与原有的问题语义相似,但表达方式存在不同的其他问题;如此,针对同一个答案,将会有更多的语义相似的问题与之对应,从而可以显著扩充问题-答案对的数量,使得训练出的问答系统能够适应更多的问题种类,从而进一步提升训练出的问答系统的鲁棒性。
在相关技术中,通常将问题的生成过程转化为一个问题生成模型的反复调用过程;上述问题生成模型可采用有监督学习的训练模式,以语义相似的原始问题-目标问题对作为训练样本进行训练,使得问题生成模型能够学习到从原始问题到与其语义相似的目标问题之间的映射关系,从而将其用于语义相似问题的生成任务。
具体而言,请参见图1,图1是训练并使用问题生成模型的一示例图;在该例中,可以将上述语义相似的原始问题-目标问题对视作状态-动作对,则可以用一个策略函数来表征上述从状态s到动作a的映射关系;只需通过有监督学习的方式训练该策略函数,即可将上述映射关系,归纳学习为一个生成模型;需要进行问题生成时,只需将原始问题作为原始序列输入该生成模型,即可从该生成模型输出的目标序列中获得与原始问题语义相似的目标问题。
可以理解的是,上述示例图也可以表征编码-解码架构下,解码部分的机器学习模型的训练以及调用过程;具体而言,如果采用编码-解码架构,那么该解码架构会根据编码阶段获得的语义向量(图中未示出),逐字(词)地输出整个序列;例如,该解码部分需要在特定语义向量作为输入的情况下,输出“地球有几个洲”这一问题,那么该例中的s1可以是“地球”,a1是“有”;s2是“地球有”,a2是“几个”;s3是“地球有几个”,a3是“洲”;以此作为训练样本进行训练,即可让策略函数学习到上述映射关系,从而只需重复调用该策略函数,其即可逐个字(词)地输出整个“地球有几个洲”这一问题。
然而,有监督学习的训练过程中,问题生成模型的输入状态通常仅限于训练样本,而实际使用时的输入状态则并不一定出现在训练样本中,因此容易出现过拟合问题,导致训练得到的问题生成模型无法有效生成与原有的问题语义相似的其他问题。
基于此,本说明书公开了一种问题生成技术方案,旨在通过模仿学习的方式训练问题生成模型,以避免有监督学习的训练方式容易导致模型过拟合的问题,改善训练得到的问题生成模型质量,从而可以改善生成的问题的质量。
在实现时,可以预设原始问题库,以及包含与原始问题库中的问题样本语义相似的问题样本的参考问题库,以在模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象;
上述生成问题的质量,可以包括生成的问题与对应的原始问题的语义相似度;例如,如果上述问题生成模型生成的问题与对应的原始问题的语义相似度较低,则可以认为上述生成的问题质量较差。
以上技术方案中,一方面,由于将模仿学习应用到相似问题生成中,而参考问题库可以在所述模仿学习训练过程中,提供与原始问题语义相似的问题作为模仿对象,因此训练出的问题生成模型,能够学习到原始问题到与该原始问题语义相似的问题的映射关系,从而可以用于生成语义相似的目标问题。
另一方面,由于模仿学习的过程与传统的有监督学习不同,其输入状态不仅限于训练样本中的状态,更可以利用被训练的模型输出的中间状态进行迭代学习,因此,问题生成模型在训练阶段的输入状态更符合实际使用时的情况,所以训练不容易出现过拟合问题,从而使得训练得到的问题生成模型在实际使用中具有更好的性能。
下面通过具体实施例并结合具体的应用场景对本说明书进行描述。
请参考图2,图2是本说明书一实施例提供的一种问题生成方法,该方法可以执行以下步骤:
S201,基于预设的原始问题库与参考问题库中的问题样本,对问题生成模型进行模仿学习训练;其中,所述问题生成模型用于根据输入的原始问题,生成语义相似的目标问题;所述参考问题库用于在所述模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象;
S202,获取原始问题;
S203,将所述原始问题输入模仿学习训练完成的所述问题生成模型,生成与所述原始问题语义相似的目标问题。
上述问题,包括文本形式的、能够从预设的知识库中找到对应答案的问题;由于上述问题以句子的形式存在,而句子又可以由字或者词组成,因此上述问题也可以视为序列(Sequence)。
上述问题生成模型,包括可以根据输入的问题,输出语义相似的其他问题的机器学习模型;通常情况下,具体实现的方式可以采用序列到序列(Seq2Seq)模型,通过先编码后解码的方式,将作为输入序列的原始问题的语义编码至一个语义向量中,再将这个语义向量解码,完成对应的目标问题的生成;
具体而言,上述问题生成模型从功能角度可以是一个被循环调用的策略函数,虽
然宏观上是输入上述问题生成模型一个原始序列,该模型就会输出一个新序列,实质上的
实现方式则可以是根据已经生成的新序列中的前个字符,和原始序列来生成新序列
中的第个字符,并在递增后迭代上述过程;其中,该策略函数基于输入和之前已经生成
的字符 来预测生成下一个字符 的概率可以记为下式:
根据上述生成字符的概率得到具体生成字符的方式,可以是选取对应概率最高的字符进行输出,例如,生成“我”的概率为0.2,生成“你”的概率为0.6,生成“他”的概率为0.1,即使其他字符概率未知,也容易知道,生成“你”的概率为0.6必然大于其他任何一个字符生成的概率,因此,生成的字符为“你”。
整理为公式,上述过程可以表示为:
可以理解的,上述字符可以包括严格意义上的字符,也可以包括具有独立词义的字或者词语乃至短语,具体则视策略函数可以生成的词库而定;例如,如果需要生成英文问题,那么每次生成的“字符”实际上用英文单词会较为高效,而单个英文字母生成则可能出现序列过长、梯度丢失的问题;又例如,在中文百科类的问题生成中,“多少”“距离”这类的词语可以一次生成,而不必局限于单字生成;因而,下文中出现的字符,不必局限于严格意义上的单个字符。
而从上述问题生成模型的结构角度而言,其可以采用一个循环神经网络(Recurrent Neural Network,RNN)完成上述编码过程,并使用另一个循环神经网络完成解码过程;其中,上述序列中的各个字符可以是逐个编码,逐个解码完成的;其中,可以直接采用上述用于编码的循环神经网络的最后一个输入的隐含状态作为语义向量,即编码结果,也可以将输入序列的所有隐含状态经过一定变换后得到语义向量。
可以理解的是,上述序列到序列模型在结构层面上的具体实现方式,本领域技术人员可以根据具体的需求,参照相关技术文献完成设计,以达成对应的效果,本说明书无需进行详细限定;
例如,在选择上述循环神经网络的具体种类时,使用长短期记忆网络(LongShort-Term Memory,LSTM),可以利用长短期记忆网络的记忆特性,解决基础的循环神经网络在应用中容易出现的梯度消失等问题。
在示出的一种实施方式中,上述问题生成模型可以包括指针生成网络(PointerGenerator Network)模型;使用该模型可以一定程度上解决基础的循环神经网络对于词汇不足(OOV,Out of vocabulary)的单词的处理问题,以及倾向于复制输入序列的问题。
请参见图3,图3是本说明书所述模仿学习训练中序列的变换示意图;该例中展示的是训练过程中,生成目标问题样本的一个字符的变换过程,而在此过程中可能需要参考问题样本的辅助;在该例中,参考问题样本特指上述参考问题库中,与当前使用的原始问题样本语义相似的问题;也就是说,参考问题样本在目标问题样本的逐字生成过程中起到了模仿对象的作用。
在示出的一种实施方式中,在模仿学习训练时,为了使输入状态不仅限于训练样
本中的状态,以避免过拟合问题,通常可以将被训练的模型输出的中间状态也作为可用的
输入状态,这种方式也被称为数据聚合(Dagger,Dataset Aggregation);对应到图3所示的
字符生成过程中,如果说,利用参考问题样本中对应的前个字符,替换已经生成的目
标问题样本的前个字符,是一种令被训练的策略函数学习参考问题样本中存在的状
态的过程,那么不执行上述替换步骤,即可以视为将被训练的策略函数输出的中间状态作
为可用的输入状态的训练过程;
例如,假设原始问题样本为“地球到月球有多远”,对应的参考问题样本为“地月距
离是多少”,当前已经生成的问题的前个字符是“地球”,则可以从以下两种方式中选
择下一步,一种方式是继续以已经生成的“地球”作为输入,另一种方式是以对应的参考问
题样本中对应的“地月”二字作为输入;
两者各有优势,一方面,如果完成上述替换,以对应的参考问题样本中的前
个字符为输入,则可以更有效地学习到参考问题样本与原始问题样本的联系,避免已经生
成的目标问题样本可能存在的偏差,而另一方面,如果不进行替换,那么可以充分利用策略
函数输出的中间状态,与实际应用时的输入状态更加相似,避免出现过拟合的情况。
而是否执行上述替换步骤,可以根据预设的第一概率决定;令两种选择均存在一定可能性,也就可以兼具两种选择的优势,而具体采用的概率数值,本说明书无需进行具体限定,本领域技术人员可以根据参考问题库、原始问题样本库的充裕程度自行权衡确定;
例如,在预设的第一概率为0.7的情况下,每次需要确定是否执行上述替换步骤时,均可调用用于生成0到1之间的随机数的rand()函数,如果生成的随机数小于上述预设的第一概率0.7,即执行上述替换步骤。
请继续参见图3,在将上述已经生成的目标问题样本的前个字符(无论是被
替换过的,还是没有被替换过的)与原始问题样本一并输入上述策略函数后,即可从上述策
略函数的输出中获取到第个字符;此后,还可以根据预设的第二概率,将生成的第个字符
替换为参考问题样本中对应的第个字符,并对进行递增计算;对进行递增计算后,则表
示进入了下一轮迭代。
具体而言,此一步实际上决定了第个字符具体为何,并进一步影响后续的迭代过
程中所使用的已生成的目标问题样本;以上述假设原始问题样本为“地球到月球有多远”,
对应的参考问题样本为“地月距离是多少”,当前已经生成的问题的前个字符是“地球”被
替换为了“地月”为例,假设下一个生成的字符是“长短”,那么可以根据预设的第二概率,确
定是否将“长短”替换为参考问题样本中的“距离”;可以理解的是,如果执行上述替换,则意
味着模型对该参考问题样本进行了模仿,有利于向预期的训练目标收敛;而不执行上述替
换,则意味着模型使用了自身生成的中间状态,有利于丰富下一次迭代中的输入状态,避免
过拟合问题。
与上述第一概率的具体实现类似,上述第二概率的具体实现也可以是将第二概率作为阈值,并结合生成的随机数确定是否执行对应的替换操作。
一般而言,强化学习训练的基本环节包括,根据状态和策略输出动作,再根据动作产生的回报调整策略两部分;而本说明书中,问题生成模型的模仿学习训练过程中,也可以采用类似强化学习的、利用回报进一步约束训练过程的设计。
在示出的一种实施方式中,输入的原问题可以作为状态(Status),上述循环神经网络可以提供策略(Policy),生成的问题可以作为动作(Action),而生成的问题的质量,则可以决定回报(Reward)的高低;因此对于上述问题生成模型的训练过程中,对于模型参数的调整优化,可以参考上述回报,也即,将上述回报作为计算目标函数的参数。
而迭代执行上述生成字符的步骤,直至目标问题样本被完整生成,即可产生回报,并进一步根据完整目标问题样本被生成的概率,与完整目标问题样本产生的回报计算目标函数。
在示出的一种实施方式中,上述回报可以包括生成的完整目标问题样本,与对应的参考问题样本之间的重合度;显然,完整目标问题样本与原始问题样本之间存在对应关系,而原始问题样本又与参考问题样本存在对应关系,因此上述对应关系显然存在;例如,上述原始问题样本为“地球到月球有多远”,对应的参考问题样本为“地月距离是多少”,而最终生成的完整目标问题样本是“地月距离是多远”,则产生的回报则可以是上述“地月距离是多远”与“地月距离是多少”之间的重合度。
在示出的一种实施方式中,上述重合度可以包括ROUGE-2指标;ROUGE-2指标是一种评价两个序列之间重合度的一种常用指标,可以理解的是,除了该指标以外,本领域技术人员还可以根据具体需求选用其他的重合度指标,本说明书无需进行进一步限定。
在示出的一种实施方式中,上述目标函数可以包括上述完整目标问题样本被生成的概率与该完整目标问题样本所产生的回报的乘积;具体而言,一种可行的目标函数形式如下所示:
其中,代表问题生成模型中的参数,代表在参数为的情况下进行模仿学习
的目标函数;代表最终生成的完整目标问题样本,代表对应的参考问题样本,则
代表该最终生成的完整目标问题样本结合对应的参考问题样本,计算出的回报;代表生
成的目标问题样本中的第t个字符,则代表生成第t个字符的隐藏层,则代表
策略函数在隐藏层为的情况下生成字符的条件概率,是的另一
表示,对其取对数再求和,则相当于求出了整个序列被生成的条件概率。
考察上述问题生成模型的优化目标,由于理论上语义相似的问题的重合度会较高,而与参考问题样本完全一致的问题(例如直接完全模仿了参考问题样本得到的目标问题样本)之间的重合度为最大值1,因此,在上述目标函数取得最大值时,意味着取得更高回报的序列的被生成概率最大化,因此符合预期的优化目标。
可以理解的是,上述目标函数仅为一可行示例,本领域技术人员还可以在上述优化目标的基础上,根据具体需求进行调整设计,例如使用各种比例参数和变换函数将上述函数重新映射至其他空间等等,本说明书不作具体限定;具体进行模型训练时,可以采取梯度下降法,或者其他可行的优化方法,调整问题生成模型中的参数,以期尽快达到上述优化目标;上述模仿学习训练过程中具体的目标函数形式,以及具体训练、优化的算法,本领域技术人员可以基于上述描述以及相关技术文献,针对具体情况完成具体设计,本说明书不作进一步限定。
在本说明书中,在完成上述问题生成模型的训练后,即可重新获取原始问题,并将获取到的原始问题输入模仿学习训练完成的问题生成模型,生成与获取到的原始问题语义相似的目标问题。
可以理解的是,上述重新获取的原始问题,可以是上述原始问题库中的问题,也可以是上述原始问题库以外的问题,本说明书不作具体限定。
在示出的一种实施方式中,上述重新获取原始问题,可以包括从预设的检验问题库中获取原始问题,其中,该检验问题库中包含与所述原始问题库中的问题语义相似的问题;采用此种方案,由于上述问题生成模型在经过训练后已经能够给出与原始问题库中问题的语义近似的问题,因此,与原始问题库中问题的语义近似的、来自检验问题库中的问题也可以作为上述问题生成模型的输入序列。
可以理解的是,上述检验问题库,可以直接采用上述的参考问题库,也可以另取其他的与原始问题库中的问题语义相似的问题组成,对此本说明书无需进行限定。
上述内容即为本说明书针对所述问题生成方法的全部实施例。本说明书还提供了对应的问题生成装置的实施例如下:
请参见图4,图4为本说明书提出一种问题生成装置的结构示例图,该装置包括:
训练模块401,基于预设的原始问题库与参考问题库中的问题样本,对问题生成模型进行模仿学习训练;其中,所述问题生成模型用于根据输入的原始问题,生成语义相似的目标问题;所述参考问题库用于在所述模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象;
获取模块402,获取原始问题;
生成模块403,将所述原始问题输入模仿训练完成的所述问题生成模型,生成与所述原始问题语义相似的目标问题。
上述问题生成模型,从功能角度可以是一个被循环调用的策略函数,虽然宏观上
是输入上述问题生成模型一个原始序列,该模型就会输出一个新序列,实质上的实现方式
则可以是根据已经生成的新序列中的前个字符,和原始序列来生成新序列中的第
个字符,并并在递增后迭代上述过程。
而从上述问题生成模型的结构角度而言,其可以采用一个循环神经网络(Recurrent Neural Network,RNN)完成上述编码过程,并使用另一个循环神经网络完成解码过程;其中,上述序列中的各个字符可以是逐个编码,逐个解码完成的;其中,可以直接采用上述用于编码的循环神经网络的最后一个输入的隐含状态作为语义向量,即编码结果,也可以将输入序列的所有隐含状态经过一定变换后得到语义向量。
可以理解的是,上述序列到序列模型在结构层面上的具体实现方式,本领域技术人员可以根据具体的需求,参照相关技术文献完成设计,以达成对应的效果,本说明书无需进行详细限定;
例如,在选择上述循环神经网络的具体种类时,使用长短期记忆网络(LongShort-Term Memory,LSTM),可以利用长短期记忆网络的记忆特性,解决基础的循环神经网络在应用中容易出现的梯度消失等问题。
在示出的一种实施方式中,上述问题生成模型可以包括指针生成网络(PointerGenerator Network)模型;使用该模型可以一定程度上解决基础的循环神经网络对于词汇不足(OOV,Out of vocabulary)的单词的处理问题,以及倾向于复制输入序列的问题。
在示出的一种实施方式中,在使用上述训练模块401进行模仿学习训练时,为了使输入状态不仅限于训练样本中的状态,以避免过拟合问题,通常可以将被训练的模型输出的中间状态也作为可用的输入状态,这种方式也被称为数据聚合(Dagger,DatasetAggregation);对应到图3所示的字符生成过程中,如果说,利用参考问题样本中对应的前t-1个字符,替换已经生成的目标问题样本的前t-1个字符,是一种令被训练的策略函数学习参考问题样本中存在的状态的过程,那么不执行上述替换步骤,即可以视为将被训练的策略函数输出的中间状态作为可用的输入状态的训练过程;
两者各有优势,一方面,如果完成上述替换,以对应的参考问题样本中的前t-1个字符为输入,则可以更有效地学习到参考问题样本与原始问题样本的联系,避免已经生成的目标问题样本可能存在的偏差,而另一方面,如果不进行替换,那么可以充分利用策略函数输出的中间状态,与实际应用时的输入状态更加相似,避免出现过拟合的情况。
而是否执行上述替换步骤,可以根据预设的第一概率决定;令两种选择均存在一定可能性,也就可以兼具两种选择的优势,而具体采用的概率数值,本说明书无需进行具体限定,本领域技术人员可以根据参考问题库、原始问题样本库的充裕程度自行权衡确定;
在将上述已经生成的目标问题样本的前t-1个字符(无论是被替换过的,还是没有被替换过的)与原始问题样本一并输入上述策略函数后,即可从上述策略函数的输出中获取到第t个字符;此后,还可以根据预设的第二概率,将生成的第t个字符替换为参考问题样本中对应的第t个字符,并对t进行递增计算;对t进行递增计算后,则表示进入了下一轮迭代。
与上述第一概率的具体实现类似,上述第二概率的具体实现也可以是将第二概率作为阈值,并结合生成的随机数确定是否执行对应的替换操作。
在示出的一种实施方式中,输入的原问题可以作为状态(Status),上述循环神经网络可以提供策略(Policy),生成的问题可以作为动作(Action),而生成的问题的质量,则可以决定回报(Reward)的高低;因此对于上述问题生成模型的训练过程中,对于模型参数的调整优化,可以参考上述回报,也即,将上述回报作为计算目标函数的参数。
而迭代执行上述生成字符的步骤,直至目标问题样本被完整生成,即可产生回报,并进一步根据完整目标问题样本被生成的概率,与完整目标问题样本产生的回报计算目标函数。
在示出的一种实施方式中,上述回报可以包括生成的完整目标问题样本,与对应的参考问题样本之间的重合度;显然,完整目标问题样本与原始问题样本之间存在对应关系,而原始问题样本又与参考问题样本存在对应关系,因此上述对应关系显然存在;例如,上述原始问题样本为“地球到月球有多远”,对应的参考问题样本为“地月距离是多少”,而最终生成的完整目标问题样本是“地月距离是多远”,则产生的回报则可以是上述“地月距离是多远”与“地月距离是多少”之间的重合度。
在示出的一种实施方式中,上述重合度可以包括ROUGE-2指标;ROUGE-2指标是一种评价两个序列之间重合度的一种常用指标,可以理解的是,除了该指标以外,本领域技术人员还可以根据具体需求选用其他的重合度指标,本说明书无需进行进一步限定。
在示出的一种实施方式中,上述目标函数可以包括上述完整目标问题样本被生成的概率与该完整目标问题样本所产生的回报的乘积;具体而言,一种可行的目标函数形式如下所示:
其中,代表问题生成模型中的参数,代表在参数为的情况下进行模仿学
习的目标函数;代表最终生成的完整目标问题样本,代表对应的参考问题样本,
则代表该最终生成的完整目标问题样本结合对应的参考问题样本,计算出的回报;代表
生成的目标问题样本中的第t个字符,则代表生成第t个字符的隐藏层,则代
表策略函数在隐藏层为的情况下生成字符的条件概率,是的另
一表示,对其取对数再求和,则相当于求出了整个序列被生成的条件概率。
考察上述问题生成模型的优化目标,由于理论上语义相似的问题的重合度会较高,而与参考问题样本完全一致的问题(例如直接完全模仿了参考问题样本得到的目标问题样本)之间的重合度为最大值1,因此,在上述目标函数取得最大值时,意味着取得更高回报的序列的被生成概率最大化,因此符合预期的优化目标。
可以理解的是,上述目标函数仅为一可行示例,本领域技术人员还可以在上述优化目标的基础上,根据具体需求进行调整设计,例如使用各种比例参数和变换函数将上述函数重新映射至其他空间等等,本说明书不作具体限定;具体进行模型训练时,可以采取梯度下降法,或者其他可行的优化方法,调整问题生成模型中的参数,以期尽快达到上述优化目标;上述模仿学习训练过程中具体的目标函数形式,以及具体训练、优化的算法,本领域技术人员可以基于上述描述以及相关技术文献,针对具体情况完成具体设计,本说明书不作进一步限定。
在本说明书中,在完成上述问题生成模型的训练后,即可重新获取原始问题,并将获取到的原始问题输入问题生成模型,生成与获取到的原始问题语义相似的目标问题。可以理解的是,上述重新获取的原始问题,可以是上述原始问题库中的问题,也可以是上述原始问题库以外的问题,本说明书不作具体限定。
在示出的一种实施方式中,上述重新获取原始问题,可以包括从预设的检验问题库中获取原始问题,其中,该检验问题库中包含与所述原始问题库中的问题语义相似的问题;采用此种方案,由于上述问题生成模型在经过训练后已经能够给出与原始问题库中问题的语义近似的问题,因此,与原始问题库中问题的语义近似的、来自检验问题库中的问题也可以作为上述问题生成模型的输入序列。
可以理解的是,上述检验问题库,可以直接采用上述的参考问题库,也可以另取其他的与原始问题库中的问题语义相似的问题组成,对此本说明书无需进行限定。
本说明书实施例还提供一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现前述的问题生成方法。
图5示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的问题生成方法。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。
Claims (15)
1.一种问题生成方法,包括:
基于预设的原始问题库与参考问题库中的问题样本,对问题生成模型进行模仿学习训练;其中,所述问题生成模型用于通过循环调用的方式,根据输入的原始问题,逐个生成目标问题中的字符,直至生成完整的语义相似的目标问题;所述参考问题库用于在所述模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象,替换作为所述问题生成模型的输入的目标问题中已生成的字符,或替换作为所述问题生成模型的输出的目标问题的新生成字符;
获取原始问题;
将所述原始问题输入模仿学习训练完成的所述问题生成模型,生成与所述原始问题语义相似的目标问题。
2.根据权利要求1所述的方法,
所述问题生成模型包括被循环调用的策略函数;所述策略函数用于根据输入的原始问题,以及已经生成的目标问题的前t-1个字符,输出第t个字符,其中,t为正整数循环变量。
3.根据权利要求2所述的方法,所述对问题生成模型进行模仿学习训练,包括迭代执行下列步骤,直至生成完整目标问题:
根据预设的第一概率,将已经生成的目标问题的前t-1个字符替换为参考问题中对应的前t-1个字符,并与所述原始问题一并输入所述策略函数,以从所述策略函数的输出结果中获取第t个字符;其中,所述参考问题包括所述参考问题库中,与所述原始问题语义相似的问题;
根据预设的第二概率,将所述第t个字符替换为参考问题中对应的第t个字符,并递增t;
所述对问题生成模型进行模仿学习训练还包括:
在生成完整目标问题后,根据所述完整目标问题与参考问题计算回报,并进一步根据所述回报计算目标函数,以调整所述问题生成模型的参数。
4.根据权利要求2所述的方法,
所述问题生成模型包括指针生成网络模型。
5.根据权利要求3所述的方法,所述目标函数包括:
所述问题生成模型生成完整目标问题对应的概率,与所述回报的乘积。
6.根据权利要求3所述的方法,所述回报包括:
所述完整目标问题,与所述参考问题之间的重合度。
7.根据权利要求6所述的方法,所述重合度包括ROUGE-2指标。
8.一种问题生成装置,包括:
训练模块,基于预设的原始问题库与参考问题库中的问题样本,对问题生成模型进行模仿学习训练;其中,所述问题生成模型用于通过循环调用的方式,根据输入的原始问题,逐个生成目标问题中的字符,直至生成完整的语义相似的目标问题;所述参考问题库用于在所述模仿学习训练过程中,提供与原始问题语义相似的问题样本作为模仿对象,替换作为所述问题生成模型的输入的目标问题中已生成的字符,或替换作为所述问题生成模型的输出的目标问题的新生成字符;
获取模块,获取原始问题;
生成模块,将所述原始问题输入模仿学习训练完成的所述问题生成模型,生成与所述原始问题语义相似的目标问题。
9.根据权利要求8所述的装置,
所述问题生成模型包括被循环调用的策略函数;所述策略函数用于根据输入的原始问题,以及已经生成的目标问题的前t-1个字符,输出第t个字符,其中,t为正整数循环变量。
10.根据权利要求9所述的装置,
所述训练模块进一步迭代执行下列步骤,直至生成完整目标问题:
根据预设的第一概率,将已经生成的目标问题的前t-1个字符替换为参考问题中对应的前t-1个字符,并与所述原始问题一并输入所述策略函数,以从所述策略函数的输出结果中获取第t个字符;其中,所述参考问题包括所述参考问题库中,与所述原始问题语义相似的问题;
根据预设的第二概率,将所述第t个字符替换为参考问题中对应的第t个字符,并递增t;
所述训练模块进一步:
在生成完整目标问题后,根据所述完整目标问题与参考问题计算回报,并进一步根据所述回报计算目标函数,以调整所述问题生成模型的参数。
11.根据权利要求9所述的装置,
所述问题生成模型包括指针生成网络模型。
12.根据权利要求10所述的装置,所述目标函数包括:
所述问题生成模型生成完整目标问题对应的概率,与所述回报的乘积。
13.根据权利要求10所述的装置,所述回报包括:
所述完整目标问题,与所述参考问题之间的重合度。
14.根据权利要求13所述的装置,所述重合度包括ROUGE-2指标。
15.一种计算机设备,其至少包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现权利要求1~7任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010759189.8A CN111737440B (zh) | 2020-07-31 | 2020-07-31 | 一种问题生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010759189.8A CN111737440B (zh) | 2020-07-31 | 2020-07-31 | 一种问题生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111737440A CN111737440A (zh) | 2020-10-02 |
CN111737440B true CN111737440B (zh) | 2021-03-05 |
Family
ID=72656756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010759189.8A Active CN111737440B (zh) | 2020-07-31 | 2020-07-31 | 一种问题生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111737440B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710915A (zh) * | 2017-10-26 | 2019-05-03 | 华为技术有限公司 | 复述语句生成方法及装置 |
CN110929085A (zh) * | 2019-11-14 | 2020-03-27 | 国家电网有限公司 | 基于元语义分解的电力客服留言生成模型样本处理系统及方法 |
CN111177348A (zh) * | 2019-12-20 | 2020-05-19 | 卓尔智联(武汉)研究院有限公司 | 问题生成模型的训练方法、装置、电子设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108734276B (zh) * | 2018-04-28 | 2021-12-31 | 同济大学 | 一种基于对抗生成网络的模仿学习对话生成方法 |
CN108829722B (zh) * | 2018-05-08 | 2020-10-02 | 国家计算机网络与信息安全管理中心 | 一种远程监督的Dual-Attention关系分类方法及系统 |
CN110377692B (zh) * | 2019-06-03 | 2021-10-08 | 广东幽澜机器人科技有限公司 | 一种训练机器人模仿学习人工客服方法及装置 |
CN111159370A (zh) * | 2019-12-20 | 2020-05-15 | 中国建设银行股份有限公司 | 一种短会话新问题生成方法、存储介质和人机交互装置 |
CN111241248A (zh) * | 2020-01-20 | 2020-06-05 | 苏州思必驰信息科技有限公司 | 同义问句生成模型训练方法及系统、同义问句生成方法 |
CN111309893A (zh) * | 2020-05-15 | 2020-06-19 | 支付宝(杭州)信息技术有限公司 | 基于源问题生成相似问题的方法和装置 |
-
2020
- 2020-07-31 CN CN202010759189.8A patent/CN111737440B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109710915A (zh) * | 2017-10-26 | 2019-05-03 | 华为技术有限公司 | 复述语句生成方法及装置 |
CN110929085A (zh) * | 2019-11-14 | 2020-03-27 | 国家电网有限公司 | 基于元语义分解的电力客服留言生成模型样本处理系统及方法 |
CN111177348A (zh) * | 2019-12-20 | 2020-05-19 | 卓尔智联(武汉)研究院有限公司 | 问题生成模型的训练方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111737440A (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Michelucci | Applied deep learning | |
US11120801B2 (en) | Generating dialogue responses utilizing an independent context-dependent additive recurrent neural network | |
US10504010B2 (en) | Systems and methods for fast novel visual concept learning from sentence descriptions of images | |
US10592607B2 (en) | Iterative alternating neural attention for machine reading | |
CN108959246A (zh) | 基于改进的注意力机制的答案选择方法、装置和电子设备 | |
CN111241287A (zh) | 用于生成对抗文本的生成模型的训练方法及装置 | |
CN108460028B (zh) | 将句子权重融入神经机器翻译的领域适应方法 | |
CN113837370A (zh) | 用于训练基于对比学习的模型的方法和装置 | |
CN111737439B (zh) | 一种问题生成方法及装置 | |
CN109978139B (zh) | 图片自动生成描述的方法、系统、电子装置及存储介质 | |
CN114860915A (zh) | 一种模型提示学习方法、装置、电子设备及存储介质 | |
JPWO2020240709A1 (ja) | 対話処理装置、学習装置、対話処理方法、学習方法及びプログラム | |
CN111160000A (zh) | 作文自动评分方法、装置终端设备及存储介质 | |
CN110929532B (zh) | 数据处理方法、装置、设备及存储介质 | |
CN113987196A (zh) | 一种基于知识图谱蒸馏的知识图谱嵌入压缩方法 | |
CN116308551A (zh) | 基于数字金融ai平台的内容推荐方法及系统 | |
CN117709435B (zh) | 大语言模型的训练方法、代码生成方法、设备及存储介质 | |
CN117453898B (zh) | 基于思维链的跨模态问答的处理方法和装置 | |
CN111737440B (zh) | 一种问题生成方法及装置 | |
CN114707518B (zh) | 面向语义片段的目标情感分析方法、装置、设备及介质 | |
US20230168989A1 (en) | BUSINESS LANGUAGE PROCESSING USING LoQoS AND rb-LSTM | |
CN110442706B (zh) | 一种文本摘要生成的方法、系统、设备及存储介质 | |
CN114357138A (zh) | 一种问答识别的方法、装置、电子设备及可读存储介质 | |
CN112765936A (zh) | 一种基于语言模型进行运算的训练方法及装置 | |
CN115374884B (zh) | 基于对比学习的摘要生成模型的训练方法和摘要生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |