CN111553152B - 问题生成方法和装置及问题-文本对的生成方法和装置 - Google Patents
问题生成方法和装置及问题-文本对的生成方法和装置 Download PDFInfo
- Publication number
- CN111553152B CN111553152B CN202010267070.9A CN202010267070A CN111553152B CN 111553152 B CN111553152 B CN 111553152B CN 202010267070 A CN202010267070 A CN 202010267070A CN 111553152 B CN111553152 B CN 111553152B
- Authority
- CN
- China
- Prior art keywords
- word
- question
- generating
- vector
- source text
- 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
- 238000000034 method Methods 0.000 title claims abstract description 196
- 239000013598 vector Substances 0.000 claims abstract description 294
- 238000009826 distribution Methods 0.000 claims abstract description 107
- 230000011218 segmentation Effects 0.000 claims abstract description 59
- 238000005070 sampling Methods 0.000 claims abstract description 24
- 238000004422 calculation algorithm Methods 0.000 claims description 40
- 230000000875 corresponding effect Effects 0.000 claims description 40
- 238000012216 screening Methods 0.000 claims description 27
- 230000015654 memory Effects 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 7
- 230000002596 correlated effect Effects 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 40
- 238000012549 training Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 21
- 238000003062 neural network model Methods 0.000 description 15
- 238000013528 artificial neural network Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 11
- 230000001737 promoting effect Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 239000000243 solution Substances 0.000 description 7
- 230000004069 differentiation Effects 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- 238000002372 labelling Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 239000000203 mixture Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000002457 bidirectional effect Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012805 post-processing Methods 0.000 description 4
- 230000002238 attenuated effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 101100153591 Cricetulus griseus TOP1 gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011438 discrete method Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Machine Translation (AREA)
Abstract
本申请涉及人工智能领域中的机器问答技术,提供了一种问题生成方法:获得源文本的各分词的词向量,确定第一上下文向量;根据第一上下文向量获得作为内容选择器的隐变量的先验分布,并执行至少一次采样获得至少一个隐变量样本;针对每个隐变量样本执行每次问题的生成,包括:根据该隐变量样本和所述源文本的各分词的一向量信息获得源文本各分词的关注度;以及根据所述各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量,并生成问题。还提供了一种问题生成装置、问题‑文本对的生成方法和装置、计算设备及介质。本申请可以实现生成的问题更具多样性。
Description
技术领域
本申请涉及人工智能领域中的机器问答技术,特别是指一种问题生成方法和装置、问题-文本对的生成方法和装置、计算设备及介质。
背景技术
面对海量的文档信息,机器问答旨在提供一个自然语言式的查询入口,帮助用户快速准确地定位文档,获取信息。传统的信息检索系统基于关键词的匹配,缺乏对查询语言的语义理解,对用户而言很难搜索到预期的文本。于是,现有的问答系统往往涉及问题分类、意图识别、文档匹配等多个细化语义理解的步骤,经过多层分析给出目标文档。为了学习上述步骤中的语言表达规律,普遍的做法往往需要借助问题以及对应文本的标注信息(用于标注问题与文本的对应关系)。然而,问答系统中的问题、作为答案的文本,由于对应一个文本的问题较少,往往缺乏足够量的标注,导致数据驱动的方法并不能充分发挥作用。
这种情况下,一种常见的思路是根据已有的数据训练问题生成模型,再运用此模型到未标注数据产生问题文本对,也称问题-文本或问题-文本对,以用于扩充标注。现有的问题生成模型方案大多将文本、问题通过序列到序列模型(Seq2seqSequence toSequence)建模成一一映射,这并没有考虑到生成问题具有多样性的特点,问题的规模也无法进一步扩大。
因此,在此背景下,如何能生成更多样性的问题,使得所生成的问题内容本身的多样性,或/和所生成的问题类型的多样性,是有待解决的技术问题。
发明内容
有鉴于此,本申请的主要目的在于提供一种问题生成方法和装置、问题-文本对的生成方法和装置、计算设备及介质,以实现所生成的问题能够更具多样性。
本申请提供了一种问题生成方法,其中,包括:
获得源文本的各分词的词向量,根据所述词向量确定第一上下文向量;
根据所述第一上下文向量获得作为内容选择器的隐变量的先验分布,并执行至少一次采样获得至少一个隐变量样本;
根据每个隐变量样本执行每次问题的生成,包括:根据所述隐变量样本和所述源文本的各分词的向量信息获得源文本各分词的关注度;以及根据所述各分词的关注度和源文本的各分词的词向量生成构成所述问题的各分词的词向量,并生成所述问题。
由上,本申请引入了作为内容选择器的隐变量,隐变量本身具备建模和问题生成的多样化的能力。另一方面,将隐变量视为内容选择器,用于了解选择不同分词时的潜在问题的概率分布特征,并在推理阶段获得该隐变量的样本,去影响关注度的生成(以通过不同的关注度选取不同的分词,实现上述内容选择的功能),隐变量与问题的多样性起因直接相关,因此也具备更强的对隐变量的解释性(即可解释之一为:根据选择的不同分词生成包含不同分词的问题)。
可选的,所述隐变量为连续空间的隐变量。
由上,采用连续概率分布时理论上可以产生不限个数的隐变量,即可以进行任意次采样获得任意个隐变量的样本,从而获得任意次的不同的问题,从而生成更多样问题。
可选的,所述先验分布遵循多维分布的混合分布。
由上,这样执行一次采样时可以获得不同的多个隐变量样本,这种执行一次采样获得的多个样本(该多个样本也可称为子样本,即执行一次采样得到的整个样本中的子样本)的方式,可以避免这几个样本之间是相同的分布,因此这几个样本之间的差异度较大,故先验分布遵循多维分布的混合分布时,可以进一步提升问题生成的多样性。
可选的,所述源文本的各分词的向量信息包括:所述源文本的各分词的词向量或者所述源文本的各分词的隐态向量。
由上,直接采用各分词的词向量时,由于在先步骤中已经获得,因此相对可以减少运算量。而采用源文本的各分词的隐态向量时,由于隐态向量记载有其他分词的信息,因此基于隐态向量获得的该分词的关注度是考虑了其他分词的信息,计算出的关注度更为合理。
可选的,所述根据每个隐变量样本生成问题,还包括:
根据所述第一上下文向量和所述隐变量样本获得预测的问题类型;
所述生成构成所述问题的各分词的词向量时,还根据所述预测的问题类型生成。
由上,通过不同的问题类型,进一步可以使得所生成的问题类型得以多样化,从而使得问题的生成更加多样化。
可选的,所述预测的问题类型使用问题类型多样性提升算法来生成;
所述算法使得在所述执行每次问题的生成时,在先问题生成时已经预测过的问题类型被选取作为本次所述预测的问题类型的概率被抑制。
由上,通过该方式,使得在后的问题生成时所采用的问题类型与在问题生成时所采用的问题类型的差异化得以提升,从而提升了问题生成的差异化。
可选的,所述已经预测过的问题类型被选取的概率被抑制包括:对所述已经选取过的问题类型被选取的概率执行衰减。
可选的,所述衰减的程度与所述已经预测过的问题类型被选取过的次数正相关。
由上,通过该方式,使得对于在先次问题生成时有多次生成相同问题类型的问题时,该问题类型的衰减增加,进一步降低相同问题类型的问题的生成。
可选的,所述关注度还根据所述预测的问题类型来获得。
由上,其会使得所关注的分词与问题类型相关,使得所生成的问题(包含所选择的分词)逻辑上更佳。
可选的,所述根据所述各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量的步骤包括以下之一:
根据所述各分词的关注度和源文本各分词的词向量确定第二上下文向量,并根据所述第二上下文向量生成构成问题的各分词的词向量;或者
根据所述各分词的关注度和源文本各分词的词向量确定第三上下文向量,并根据所述第三上下文向量和所述各分词的关注度生成构成问题的各分词的词向量;或者
根据所述源文本各分词的词向量确定第四上下文向量,并根据所述第四上下文向量和所述各分词的关注度生成构成问题的各分词的词向量。
由上,可根据需要可以选择上述之一。
本申请还提供了一种问题生成装置,其中,包括:
第一上下文向量确定模块,用于获得源文本的各分词的词向量,根据所述词向量确定第一上下文向量;
隐变量获得模块,用于根据所述第一上下文向量获得作为内容选择器的隐变量的先验分布,并执行至少一次采样获得至少一个隐变量样本;
生成模块,用于根据每个隐变量样本执行每次问题生成,所述生成模块包括:关注度获得模块,用于根据所述隐变量样本和所述源文本的各分词的向量信息获得源文本各分词的关注度;问题生成模块,用于根据所述各分词的关注度和源文本的各分词的词向量生成构成所述问题的各分词的词向量,并生成所述问题。
由上,本申请通过引入作为内容选择器的隐变量,隐变量具备建模和问题生成的多样化的能力。将隐变量视为内容选择器,用于了解选择不同分词时的潜在问题的概率分布特征,并在推理阶段获得该隐变量的样本,去影响关注度的生成(以通过不同的关注度选取不同的分词,实现上述内容选择的功能),隐变量与问题的多样性起因直接相关,因此也具备更强的对隐变量的可解释性(即可解释之一为:根据选择的不同分词生成包含不同分词的问题)。
可选的,所述隐变量为连续空间的隐变量。
由上,采用连续概率分布时理论上可以产生不限个数的隐变量,即可以进行任意次采样获得任意个z的样本,从而获得任意次的不同的问题,从而生成更多样问题。
可选的,所述先验分布遵循多维分布的混合分布。
由上,这样执行一次采样时可以获得不同的多个隐变量z样本,这种执行一次采样获得的多个样本的方式,可以避免这几个样本之间是相同的分布,因此这几个样本之间的差异度较大,故先验分布遵循多维分布的混合分布时,可以进一步提升问题生成的多样性。
可选的,所述源文本的各分词的向量信息包括:所述源文本的各分词的词向量或者所述源文本的各分词的隐态向量。
由上,直接采用各分词的词向量时,由于在先步骤中已经获得,因此相对可以减少运算量。而采用源文本的各分词的隐态向量时,由于隐态向量记载有其他分词的信息,因此基于隐态向量获得的该分词的关注度是考虑了其他分词的信息,计算出的关注度更为合理。
可选的,所述生成模块还包括:问题类型预测模块,用于根据所述第一上下文向量和所述隐变量样本获得预测的问题类型;
所述问题生成模块用于所述生成构成所述问题的各分词的词向量时,还根据所述预测的问题类型生成。。
由上,通过不同的问题类型,进一步可以使得所生成的问题类型得以多样化,从而使得问题的生成更加多样化。
可选的,还包括问题类型多样性提升算法模块,用于对所述预测的问题类型使用问题类型多样性提升算法来生成;
所述算法使得在所述执行每次问题的生成时,在先问题生成时已经预测过的问题类型被选取作为本次所述预测的问题类型的概率被抑制。
由上,通过该方式,使得在后的问题生成时所采用的问题类型与在问题生成时所采用的问题类型的差异化得以提升,从而提升了问题生成的差异化。
可选的,所述问题类型多样性提升算法模块包括衰减执行模块,用于对所述已经选取过的问题类型被选取的概率执行衰减。
可选的,所述衰减执行模块执行所述衰减的程度与所述已经预测过的问题类型被选取过的次数正相关。
由上,通过该方式,使得对于在先次问题生成时有多次生成相同问题类型的问题时,该问题类型的衰减增加,进一步降低相同问题类型的问题的生成。
可选的,所述关注度获得模块获得的所述关注度还根据所述预测的问题类型来获得。
由上,其会使得所关注的分词与问题类型相关,使得所生成的问题(包含所选择的分词)逻辑上更佳。
可选的,所述问题生成模块用于根据所述各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量时,包括以下之一:
根据所述各分词的关注度和源文本各分词的词向量确定第二上下文向量,并根据所述第二上下文向量生成构成问题的各分词的词向量;或者
根据所述各分词的关注度和源文本各分词的词向量确定第三上下文向量,并根据所述第三上下文向量和所述各分词的关注度生成构成问题的各分词的词向量;或者
根据所述源文本各分词的词向量确定第四上下文向量,并根据所述第四上下文向量和所述各分词的关注度生成构成问题的各分词的词向量。
由上,可根据需要可以选择上述之一。
本申请还提供了一种问题-文本对的生成方法,其中,包括:
获取问题-文本对,所述问题-文本对中包括源文本和所述源文本对应的问题;
利用权利要求1至10任一所述的方法,生成至少一个问题;
根据所述生成的至少一个问题与所述源文本生成新的问题-文本对。
可选的,还包括:对生成的所述至少一个问题进行筛选;
所述根据所述生成的问题与所述源文本生成新的问题-文本对,包括:根据所述筛选得到的问题与所述源文本生成新的问题-文本对。
可选的,所述筛选包括通过预训练的文本-问题匹配模型进行筛选。
由上,在筛选自动生成的问题时,采用预训练的文本-问题匹配模型进行筛选,使得引入数据开销尽量少的情况下,引入数据产生的信息增益尽可能的大,以有利于问答系统的效果提升。
本申请还提供了一种问题-文本对的生成装置,其中,包括:
问题-文本对获取模块,用于获取问题-文本对,所述问题-文本对中包括源文本和所述源文本对应的问题;
如上述技术方案中任一所述的问题生成装置;用于根据所述源文本生成至少一个问题;以及
问题-文本对生成模块,用于根据所述问题生成装置生成的至少一个问题与所述源文本生成新的问题-文本对。
可选的,还包括:问题筛选模块,用于对生成的所述至少一个问题进行筛选;
所述问题-文本对生成模块用于根据所述筛选得到的问题与所述源文本生成所述新的问题-文本对。
可选的,还包括:所述问题筛选模块执行所述筛选时通过预训练的文本-问题匹配模型进行筛选。
本申请还提供了一种计算设备,其中,包括:
总线;
通信接口,其与所述总线连接;
至少一个处理器,其与所述总线连接;以及
至少一个存储器,其与所述总线连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理器执行上述问题生成方法、问题-文本对的生成方法中的任一所述的方法。
本申请还提供了一种计算机可读存储介质,其上存储有程序指令,其中,所述程序指令当被计算机执行时使得所述计算机执行上述问题生成方法、问题-文本对的生成方法中的任一所述的方法。
本申请还提供了一种计算机程序,其包括有程序指令,其中,所述程序指令当被计算机执行时使得所述计算机执行上述问题生成方法、问题-文本对的生成方法中的任一所述的方法。
针对背景技术、各现有技术相比,本申请的有益效果至少包括:
在问题生成过程中,本申请用连续隐变量建模内容选择器,具备建模和问题生成更多的多样化问题的能力。
本申请引入隐变量建模内容选择器,即将隐变量视为内容选择器,用于了解选择不同分词时的潜在问题的概率分布特征。并在推理阶段,通过采样不同的隐变量取值,去影响关注度的生成(以通过不同的关注度选取不同的分词,实现上述内容选择的功能),可见,本申请将隐变量视为内容选择器,这与问题的多样性起因直接相关,因此也具备更强的可解释性(即可解释之一为:根据选择的不同分词生成包含不同分词的问题)。
通过问题类型预测器以及多样化提升算法提升了不同问题生成时的问题类型的多样性,并且,也摆脱了后处理方法对时间开销的,提升了生成的效率。
进一步的,针对背景技术,本申请生成的多样性问题可用于显著增加已有的标注数据,并且因为其多样性强、生成问题可控的特点,使得新增的问题覆盖面广,实现了问题生成的多样性,可以丰富问题的表达,增强标注数据的覆盖面,应用与应答系统时,可以增进问答系统的鲁棒性,有利于构建更鲁棒的问答系统。
附图说明
图1为基于全局隐变量的多样化问题生成方法的示意图。
图2为基于混合内容选择器的多样化问题生成方法的示意图
图3为基于问题类型的多样化问题生成方法的示意图。
图4为问题生成方法第一实施例的流程图。
图5为问题生成方法第二实施例的流程图。
图6为问题生成方法第三实施例的流程图
图7为问题生成方法的具体实施方式的流程图。
图8为实现问题生成方法的神经网络构架的示意图。
图9为问题生成装置的示意图。
图10为问题-文本对的生成方法的流程图。
图11为问题-文本对的生成装置的示意图。
图12为以高斯混合分布为先验分布的示意图。
图13为具体实施本申请时一运行案例的结果的示意图。
图14为具体实施本申请时另一运行案例的结果的示意图。
图15为计算设备的结构性示意性图。
具体实施方式
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三等”或模块A、模块B、模块C等,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
在以下的描述中,所涉及的表示步骤的标号,如S110、S120......等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请具体实施方式进行进一步详细说明之前,对本申请实施例中涉及的名词和术语,以及其在本申请中相应的用途\作用\功能等进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1、问题生成,自然语言生成的一类任务,本申请中指利用源文本自动生成相关的问题。
2、问题类型,也称问题类别,问题类型定义对应问题的提问词,即按照问题的提问词划分问题类型,提问词即为问题的引导词,如英文里的what、which、who、where、why、when、how等,中文里的什么、谁、哪、怎么、为什么等。
问题类型预测,即预测问题生成过程中采用的问题类型。
问题类型多样性提升算法,本申请提供的使得在执行每次问题的生成时,对于在先次问题生成时已经选取过的问题类型,在当前次问题的生成过程中所生成的该问题类型被选取的概率被抑制的算法。
3、源文本(Source Context)、问题(Question):源文本指文本段落;问题指对应该文本的问题,两者构成问题-文本对。
4、编码器,也称为编码模型或者编码器模型,编码器能够实现将整个源序列读取为固定长度的编码。
5、解码器,也称为解码模型或者解码器模型,解码器将编码后得到的输入序列进行解码,以输出目标序列。
6、词向量、语义向量,词向量也称为词嵌入(word embedding)或词空间嵌入表示,词向量是自然语言分词在词空间中的表示,是指将词映射到一个语义空间而得到的向量。构成句子的所有各个分词向量构成该句子的语义向量,也可称为上下文向量(ContextVector)。
7、注意力(Attention)机制,根据解码器的当前输入序列与输出向量的匹配程度,来决定解码器输出解码的注意力的概率分布,匹配程度高也就是注意力集中点其相对的得分越高。注意力的得分以αt,i表示,即表示解码时间步t的分词时基于源文本第i个分词的注意力得分。
8、多层感知器(MLP),也称多层神经网络,除了输入输出层,之间至少有一个隐含层。
本申请中,当描述“输入MLP获得”等类似描述时,即可理解为该MLP已经在问题生成模型的训练中进行了训练,此处使用该训练过的MLP进行推理。
9、内容选择器:用于进行内容选择,内容选择是生成问题中的一个步骤,即决定生成的问题中包含源文本中的哪些分词。本申请引入隐变量建模内容选择器(参见对隐变量的解释),即将该隐变量视为内容选择器。
10、关注度(Oi),指对源文本中的各个分词在问题生成过程中的被关注的程度,进而来影响分词出现在所生成的问题中的概率。
11、隐变量(z),机器学习模型中的常见建模方式,也称为潜在变量、不可观察变量,用来解释产生观察变量的原因。不同的隐变量值会导致不同的观察变量值,是本申请用隐变量建模多样化生成的原因之一。
本申请引入连续空间的隐变量建模内容选择器,即将隐变量视为内容选择器,用于了解选择不同分词时的潜在问题的分布特征。并在推理阶段,通过采样不同的隐变量取值,去影响关注度的不同生成(以通过不同的关注度选取不同的分词,实现上述内容选择的功能)进行分词的不同选择(如图13中三次采样z对应的Foucs1、Foucs2、Foucs3的每次之间选择的分词不同),以实现问题的不同生成。可见,本申请将隐变量视为内容选择器,这与问题的多样性起因直接相关,因此也具备更强的可解释性(即可解释之一为:根据选择的分词生成包含该分词的问题)。
另一方面,本申请中还可使所述隐变量对问题类型的预测进行影响,从而在推理阶段实现采样不同的隐变量取值时,去影响问题类型的生成。
12、KL散度,是一种衡量两个概率分布的匹配程度的指标,两个概率分布约相近,KL散度越小。
13、模型的训练阶段、模型的推理阶段,分别指通过已有样本数据训练模型(或算法)的阶段,及在设备中执行训练好的模型(或算法)以处理数据的阶段。若无特别说明,本申请的问题生成方法对应于模型的推理阶段。
下面将结合附图,对本申请中的技术方案进行描述。
现有技术一:如图1所示,为现有的一种基于全局隐变量的多样化问题生成方法的示意图,其采用多层RNN的解码器结构的模型实现。
该方法的基本思路是,对于给定的源文本(Source Context)和答案(Answer),可能存在多个有效问题,故通过一隐变量对潜在问题的概率分布进行建模。即,该隐变量用于了解在给定的源文本和答案的情况下潜在问题(即可能的问题)的概率分布,由于即该隐变量仅依赖于源文本和答案,故被视为全局特性。
该隐变量作为解码器的初始隐状态或作为解码器的输入加入模型。在模型训练阶段通过模型训练,使隐变量能获取到全局特性,即潜在问题(可能的问题)的概率分布特性。在模型推理阶段,通过采样不同的隐变量取值,产生不同的全局特性,进而生成对应特性的问题。
现有技术一存在的缺陷:该方法将隐变量视为全局特征是比较模糊的概念,无法赋予隐变量实际的含义,也无法分析不同的生成受什么影响产生。这也决定了该方法与问题多样性弱相关,并且可解释性不强。
现有技术二:如图2所示,为现有的一种基于混合内容选择器的多样化问题生成方法的示意图。其通过混合模型建模内容选择器,利用内容选择器选择不同的文本内容实现多样化生成。
该方法将内容选择器视为离散隐变量,并作为可学习的参数在模型训练阶段优化得到。在模型推理阶段,通过遍历隐变量取值,去生成多样化问题。
现有技术二存在的缺陷:采用混合模型建模内容选择器的方法,只建模了有限个数的内容选择器。在模型训练阶段,有限的内容选择器不足以解释所有的多样性问题;在模型推理阶段,预先设定固定个数的内容选择器只允许模型生成固定个数的问题。
现有技术三:如图3所示,为现有的一种基于问题类型的多样化问题生成方法的示意图。该方法通过建模问题类型,以生成满足不同类型的多样化问题。在模型推理阶段,通过遍历所有的问题类型,生成所有类型的问题,再通过判别器或是重排序的方法得到得分靠前的多个问题作为输出。
现有技术三存在的缺陷:由于该方法在模型推理阶段需要遍历问题类型,再通过筛选器或重排序得到合理的多个问题的生成,该方法由于存在后处理过程(即筛选或重排序过程),加重了时间开销,降低了问题生成的效率。
基于现有技术所存在的缺陷,本申请提供了一种问题生成方法,采用空间连续隐变量建模内容选择器,具备建模和问题生成的多样化的能力。并且将隐变量建模内容选择器,即将隐变量视为内容选择器,用于了解选择不同分词时的潜在问题的概率分布特征。并在推理阶段,通过采样不同的隐变量取值,去影响关注度的生成(以通过不同的关注度选取不同的分词,实现上述内容选择的功能),可见,本申请将隐变量视为内容选择器,这与问题的多样性起因直接相关,因此也具备更强的可解释性(即可解释之一为:根据选择的不同分词生成包含不同分词的问题)。不仅如此,还提供了问题类型多样化提升算法,可以在推理阶段提升不同问题生成时的问题类型的多样性,并且,也摆脱了后处理方法对时间开销的,提升了生成的效率。下面对本申请进行介绍。
问题生成方法的第一实施例:
如图4所示,在该问题生成方法的第一实施例中,本申请提供的问题生成方法,包括:
S410、获得源文本的各分词的词向量,根据词向量确定第一上下文向量。
其中,所述源文本可以来源于数据集中的问题-文本对,问题-文本对中至少包含有源文本、问题。当需要针对问题-文本对的生成更多问题时,则可以将该问题-文本对选出作为样本用于本申请,该样本中的源文本作为本步骤所述的源文本。
其中,可以采用将源文本的各个分词通过独热编码(one-hot),再经词编码(wordembedding)的标准方式获得源文本的各分词的词向量。
其中,可以采用将各分词的词向量依顺序输入一编码器,由该编码器来输出所述第一上下文向量。该编码器可以基于神经网络模型构建,神经网络可以是循环神经网络(RNN)、卷积神经网络(CNN)、或基于RNN的变体,如长短期记忆神经网络(LSTM)等。并且,编码器可以是单向的神经网络模型,也可以是双向的神经网络模型。在图8示出的示意图中,该编码器以编码器B表示。
S420、根据所述第一上下文向量获得作为内容选择器的隐变量的先验分布,并执行至少一次采样获得至少一个隐变量样本。
本申请引入一隐变量作为内容选择器,用于了解选择不同分词时的潜在问题的分布特征。并且可以设定该隐变量遵循多维概率分布,所述概率分布可以为高斯分布、VonMises Fisher分布等。
其中,所述隐变量的先验分布的获取方式是将第一上下文向量采用多维概率分布进行处理获得该隐变量的多维概率分布,可以以Pθ(z|X)表示。所述概率分布对应隐变量的分布可以为高斯分布、Von Mises Fisher等分布等。
可选的,所述隐变量可以为连续空间分布的隐变量,采用连续概率分布时理论上可以产生不限个数的隐变量,即可以进行任意次采样获得任意个隐变量的样本,从而获得任意个的不同的问题,从而生成更多样问题。
并且,可选的,所述先验分布还遵循多维分布的混合分布,例如多维高斯混合分布,多维Von Mises Fisher混合分布等,如图12示出了以高斯混合分布为先验分布的示意图。这样执行一次采样时可以获得不同的多个隐变量样本,这种执行一次采样获得的多个样本(该多个样本也可称为子样本,即执行一次采样得到的整个样本中的子样本)的方式,可以避免这几个样本之间是相同的分布,因此这几个样本之间的差异度较大,故先验分布遵循多维分布的混合分布时,可以进一步提升问题生成的多样性。
S430、根据每个隐变量样本执行每次问题的生成,在每次问题生成时包括:
S4301、根据本次使用的隐变量样本和所述源文本的各分词的向量信息获得源文本各分词的关注度。
其中,对于每个分词的关注度的获得,可以将该隐变量样本和所述源文本的各分词的向量信息输入一编码器获得,该编码器可以是基于神经网络模型构建,神经网络可以是多层神经网络(MLP)、RNN、CNN、或基于RNN的变体,如LSTM等。并且,编码器可以是单向的神经网络模型,也可以是双向的神经网络模型。
其中,源文本的各分词的向量信息可以是所述源文本的各分词的词向量。直接采用各分词的词向量时,由于在步骤S410中已经获得,因此相对可以减少运算量。
可选的,所述源文本的各分词的向量可以是所述源文本的各分词的隐态向量,由于隐态向量记载有其他分词的信息,因此基于隐态向量获得的该分词的关注度考虑了其他分词的信息,故计算出的关注度更为合理。
S4302、根据所述源文本各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量,并生成问题。
其中,该步骤中,生成构成问题的各分词的词向量的方式可以为以下之一:
第一方式、根据所述各分词的关注度和源文本各分词的词向量确定第二上下文向量,并根据第二上下文向量生成构成问题的各分词的词向量。
其中,所述确定第二上下文向量的方式可以是将所述关注度与源文本各分词的词向量拼接后输入一编码器获得。该编码器可以是基于神经网络模型构建。
其中,所述生成构成问题的各分词的词向量的方式可以是将第二上下文向量输入一解码器生成。该编码器可以是基于神经网络模型构建。
第二方式、根据所述各分词的关注度和源文本各分词的词向量确定第三上下文向量,并根据第三上下文向量和所述各分词的关注度生成构成问题的各分词的词向量。
其中,确定第三上下文向量的方式可以参见第一方式中对第二上下文向量的对应描述,不再赘述。
其中,根据第三上下文向量和所述各分词的关注度生成构成问题的各分词的词向量的方式可以为:无论生成问题过程中是否采用注意力机制,均将第三上下文向量和所述各分词的关注度拼接后输入一解码器生成;或者,将第三上下文向量输入一解码器,并对生成问题过程中对所使用的构成问题的各分词的词向量所对应的第五上下文向量使用所述关注度进行调整(可参见问题生成方法的具体实施方式之二),且当该生成问题的过程中采样了注意力机制时,对所述第五上下文向量使用所述关注度进行调整的方式,可以是通过将用于生成第五上下文向量的注意力机制中注意力的值使用所述关注度进行调整的方式(可参见问题生成方法的具体实施方式之一)。该解码器可以是基于神经网络模型构建。
第三方式、根据源文本各分词的词向量确定第四上下文向量,并根据第四上下文向量和所述各分词的关注度生成构成问题的各分词的词向量。
其中,所述确定第四上下文向量的方式可以是将源文本各分词的词向量输入一编码器获得。
其中,所述生成构成问题的各分词的词向量的方式参见第二方式中的对应描述,不再赘述。
其中,所述注意力的值使用所述关注度进行调整的方式可以是:基于源文本各个分词的各个关注度计算一个权值对注意力值进行调整,权值计算方式不限,如下仅示出了注意力值调整的可选的两种方式:
其中,α′t,i是调整后的注意力得分,αt,i是原注意力得分,Oi是源文本第i个分词的关注度,n表示源文本分词的个数(例如图8所示的源文本分词个数为m个)。
当利用上述步骤生成问题后,还可以进行筛选,例如通过预训练的文本-问题匹配模型进行筛选,或人工筛选,筛选出高质量的问题,可以与源文本构成新的问题-文本对加入到S410中提到的数据集中。
问题生成方法的第二实施例:
如图5所示的第二实施例是基于第一实施例的改进,因此其具有第一实施例的各有益效果。在第二实施例中,相对于第一实施例,该实施例还包括:对问题类型进行预测,在问题生成中,结合所预测的问题类型来生成问题。通过不同的问题类型,进一步可以使得所生成的问题类型得以多样化,从而使得问题的生成更加多样化。为简化描述,下面仅描述对应于第一实施例的改进之处:
在上述步骤S430的根据每个隐变量样本执行每次问题的生成过程中,进一步包括:根据步骤S410确定出的第一上下文向量和本次的该隐变量样本获得预测的问题类型。
其中,可以将所述第一上下文向量和本次的该隐变量样本输入一编码器获得预测的问题类型,该编码器可以是基于神经网络模型构建,神经网络可以是多层神经网络(MLP)、RNN、CNN、或基于RNN的变体,如LSTM等。并且,编码器可以是单向的神经网络模型,也可以是双向的神经网络模型。
相应的,在步骤S4302中所述生成构成问题的各分词的词向量时,还可以结合所述预测的问题类型进行该生成。如果将S4302重新描述,可以描述为如下:
S4302’、根据所述源文本各分词的关注度、源文本的各分词的词向量,以及所述预测的问题类型生成构成问题的各分词的词向量,并生成问题。
其中,对应步骤S4302中生成构成问题的各分词的词向量的三种方式仍然适用,其区别在于当确定出第二、第三或第四上下文向量后,在生成构成问题的各分词的词向量过程中要结合所述问题类型。例如,该结合的方式可以是将问题类型拼接到解码器的输入的方式。
可选的,在根据步骤S410确定出的第一上下文向量和本次的该隐变量样本获得预测的问题类型时,还可以进一步结合一问题类型多样性提升算法来生成该问题类型。该算法使得在所述执行每次问题的生成时,对于在先次问题生成时已经选取过的问题类型,在当前次问题的生成过程中所生成的该问题类型被选取的概率被抑制。通过该方式,使得在后的问题生成时所采用的问题类型与在问题生成时所采用的问题类型的差异化得以提升,从而提升了问题生成的差异化。
其中,在当前次问题的生成过程中所生成的该问题类型被选取的概率被抑制的方式可以是:对当前次问题的生成过程中所生成的该问题类型的被选取的概率执行衰减,其中衰减可以固定的值衰减,也可以以某比例衰减,如衰减30%等。可选的,所述衰减的程度,例如所述固定值或所述比例,与在先次问题生成时所选取的该问题类型的次数正相关。通过该方式,使得对于在先次问题生成时有多次生成相同问题类型的问题时,该问题类型的衰减增加,进一步降低相同问题类型的问题的生成。
问题生成方法的第三实施例:
如图6示出的问题生成方法的第三实施例是基于第二实施例的改进,因此其具有第二实施例的各有益效果。在第三实施例中,相对于第二实施例,所述关注度的生成还结合所述预测的问题类型来获得,使得关注度的生成与问题类型相关,即分词的选择与问题类型相关,使得所生成的问题(包含所选择的分词)逻辑上更佳。为简化描述,下面仅描述对应于第二实施例的改进之处:
在上述步骤S4301中还可以结合所述预测的问题类型获得源文本各分词的关注度。如果将S4301重新描述,可以描述为如下:
S4301’、根据本次使用的隐变量样本、所述源文本的各分词的向量信息和预测的问题类型获得源文本各分词的关注度。
其中,对于每个分词的关注度的获得,可以将该隐变量样本、所述源文本的各分词的向量信息和预测的问题类型输入一编码器获得,该编码器可以是基于神经网络模型构建,神经网络可以是多层神经网络(MLP)、RNN、CNN、或基于RNN的变体,如LSTM等。并且,编码器可以是单向的神经网络模型,也可以是双向的神经网络模型。
问题生成方法的第三实施例的变体:
在问题生成方法的第三实施例的基础上,还可以如下改变,不采用步骤S4302’,而采用第一实施例中的原步骤S4302。该种变体具有第一实施例的效果外,由于所述关注度的生成还结合所述预测的问题类型来获得,使得关注度的生成与问题类型相关,即分词的选择与问题类型相关,使得所生成的问题(包含所选择的分词)逻辑上更佳。
问题生成方法的具体实施方式之一:
下面参见图7示出的流程图、结合图8示出的实现问题生成方法的神经网络构架的示意图对本申请的问题生成方法进行详细说明。其中,该图8示出的神经网络构架的示意图对应上述问题生成方法的第三实施例的技术方案。下述具体实施方式也主要参照上述问题生成方法的第三实施例进行描述,下述以执行一次问题生成为例进行说明。
本申请引入一空间连续的隐变量z视为内容选择器,用于了解选择不同分词时的潜在问题的分布特征。在推理阶段,通过采样不同的隐变量获得不同的隐变量的样本,去影响关注度的不同生成(以通过不同的关注度选取不同的分词,实现上述内容选择的功能)进行分词的不同选择(如图13中采样三次或得三个z的样本对应的Foucs1、Foucs2、Foucs3的每次之间选择的分词不同),以实现问题的不同生成。基于此,本申请的问题生成方法包括两个阶段,具体说明如下:
S710、第一阶段,各个分词对应的关注度Oi生成的阶段,以及问题类型I的预测的阶段。该阶段步骤包括:
获得源文本的各分词的词向量,根据词向量确定其上下文向量(即上述第一上下文向量)。将源文本的上下文向量(当对源文本进行编码的编码器B采用的RNN网络时,上下文向量即为最后一个时间步的隐态向量hm’)由先验网络采用多维概率分布进行处理,本具体实施方式中采用多维高斯分布进行处理(即将源文本的各分词映射到多维高斯分布中),获得隐变量z的先验分布Pθ(z|X)。Pθ(z|X)即可理解为在给定源文本X的情况下各个可能选择的分词的多维高斯概率分布。
从z的先验分布中对z采样获得z的样本,当先验分布Pθ(z|X)遵循高斯分布时,即从服从分布中采样一个向量z,(μ′,σ′2)是高斯分布的具体参数--均值和方差。实际采样时,往往采取所谓的重新参数化技巧(reparameterion trick),即采样由标准正态分布的变量变换而来,即从(z(i)=μ(i)+σ(i)⊙∈,且)里采样出一个向量z。其中⊙表示按位乘积运算,∈表示噪声变量。
采用图4对应的问题生成方法的第一实施例时,根据每个分词的信息、z的样本生成每个分词的关注度Oi。例如将每个分词的信息、z的样本相应输入MLP获得每个分词的关注度Oi。当对源文本进行编码的编码器B采用RNN网络时,各分词的向量信息以隐态向量hi表示,因此是将hi和z的样本输入MLP获得Oi。
采用图6对应的问题生成方法的第三实施例时,进一步结合所预测出的问题类型I获得每个分词的关注度Oi。例如将所预测出的问题类型I、每个分词的信息、z的样本相应输入MLP获得每个分词的关注度Oi。当对源文本进行编码的编码器B采用RNN网络时,各分词的向量信息以隐态向量hi表示,因此是将hi和z的样本、预测的问题类型I输入MLP获得Oi。
通过将问题类型I参与影响Oi的生成,可以使得使所选的分词与问题类型建立关联,具有以下效果:第一、由于问题类型生成时通过问题类型提升算法的作用,相当于将该作用传递至关注度的生成上,使得不同次问题生成时,不同次的关注度的生成在每次之间的差异性更大,从而增大了问题生成的多样性;第二、由于使所选的分词与问题类型建立联系,会使得所选的分词符合生成该问题类型的问题的可能性更大,例如问题类型对应Who时,所选分词选择与构成该who类型的问题的可能性更大,以使生成的问题更符合逻辑。
而问题类型的预测可根据源文本信息和z的样本来生成,例如将源文本信息和z的样本输入MLP来生成。当对源文本进行编码的编码器B采用RNN网络时,源文本信息即指源文本上下文向量,即最后一个时间步的隐态向量hm’,因此是将hm’和z的样本输入MLP生成该预测的问题类型I。预测的问题类型I的生成过程中,还可以进一步结合本申请上述的问题类型多样性提升算法进行生成。关于问题类型多样性提升算法,将在后文进行具体描述。
S720、第二阶段,基于源文本信息、每个分词的关注度Oi执行问题生成的第二阶段,并且,该阶段可以进一步结合所预测的问题类型I进行问题的生成。第二阶段通常采用基于编码器-解码器的神经网络框架实现,该第二阶段主要包括以下步骤:
S721、将源文本的各分词转化为连续的词向量表示(word embedding),并将各分词在问题生成的第一阶段生成的关注度O与词向量X拼接(可理解为将各分词的关注度Oi加入各词向量Xi中,可以使用[X;O]表示两者的拼接)后输入一编码器C。
S722、编码器C将输入编码器C的内容编码为一固定长度的上下文向量(即上述第二或第三上下文向量)输出。当编码器C采用RNN网络时,该编码器C的输出的上下文向量可为最后一个时间步的隐态向量hm。
S723、所述编码器C输出的上下文向量与一预测的问题类型I经拼接后作为解码器的输入。(此处说明的是,如果采用图4对应的问题生成方法的第一实施例时,则本步骤不拼接所述问题类型I)
当编码器C采用RNN网络时,即将编码器C的最后一个时间步的隐态向量hm和在问题生成的第一阶段生成的问题类型I(类型I以one-hot编码表示)拼接在一起作为解码器的输入,来初始化解码器的上下文向量(即初始化其隐态向量),即生成解码器的第一个隐态向量s0,以公式表示如下:
s0=tanh(W0[hm;I]+b0)
其中W0和b0是模型训练过程可学习到的参数。tanh是激活函数,此处也可以采用其他激活函数,如还可以采用Sigmoid、ReLU等,不再赘述。
S724、解码器将输入的内容进行解码生成各个分词向量输出。并且,在解码生成过程中采用注意力机制(attention)解码,并使用关注度Oi调整注意力的值。
解码器以LSTM为例进行说明,在解码阶段,该LSTM解码器对输入的信息进行解码,解码过程中,并引入问题生成的第一阶段生成的关注度,去调整原注意力得分。以在解码时间步t为例,该解码过程具体如下:
在解码时间步t,解码器读取前一时间步输出的分词向量yt-1、前一时间步的上下文向量Ct-1和前一时间步的隐态向量st-1,以计算新的(即当前时间步t)隐态向量st。
当前时间步t的上下文向量Ct(即上述第五上下文向量)是通过编码器C中每个隐态向量hi与调整后的注意力得分α′t,i计算的,调整后的注意力得分α′t,i由原注意力得分αt,i通过关注度得分Oi进行调整后得到。原注意力的得分αt,i(即解码时间步t的分词时基于源文本第i个词的注意力得分)基于解码器的前一时间步隐态向量st-1与编码器C中每个隐态向量hi进行匹配计算并归一化后得到。
上述过程以公式表示如下:
其中We,Ue和υT是模型训练过程可学习到的参数,n表示源文本分词的个数(例如图8所示的源文本分词个数为m个)。
最后,根据源文本所有分词向量、先前时间步生成的所有分词向量(即y<t)对当前生成的各个分词向量计算输出概率,其中概率最大的分词向量就作为当前时间步t输出的分词向量yt。输出概率的计算公式表示如下:
P(yt|X,y<t)=softmax(V′(V[st;Ct]+b)+b′)
公式里的[st;Ct]表示两个向量的拼接。其中V′、V、b′和b是模型训练过程可学习到的参数。
S725、通过上一步可以得到各个时间步的分词向量(y1,y2...yn),然后将这些分词向量转换为各个分词,即形成本次问题生成所生成的问题。
上述第一阶段和第二阶段构成本申请问题生成方法的整个阶段。上述描述的是基于一个z的样本生成问题的流程。
当对于给定的源文本进行多次对z采样时,就能获得不同的多个问题,或者当z的先验分布为混合分布时执行一次采样获得多个z的样本时,该多个z的样本分别通过该问题生成方法生成不同的多个问题。
问题生成方法的具体实施方式之二:
问题生成方法的具体实施方式之一是以采用注意力机制的解码器为例进行说明。本问题生成方法的具体实施方式之二是解码器未使用注意力机制的解码器,为简化描述,仅描述相对于问题生成方法的具体实施方式之一的区别之处,具体为,采用下述步骤替换上述步骤S724:
替换上述S724的步骤:解码器将输入的内容进行解码生成各个分词向量输出。并且,在解码生成过程中使用关注度Oi调整。
解码器以LSTM为例进行说明,在解码阶段,该LSTM解码器对输入的信息进行解码,解码过程中,并引入问题生成的第一阶段生成的关注度。以在解码时间步t为例,该解码过程具体如下:
在解码时间步t,解码器读取前一时间步输出的分词向量yt-1、前一时间步的上下文向量Ct-1和前一时间步的隐态向量st-1,以计算新的(即当前时间步t)隐态向量st。
当前时间步t的上下文向量Ct(即上述第五上下文向量)是通过编码器C中每个隐态向量hi与关注度Oi运算进行调整后得到。
上述过程以公式表示如下:
最后,根据源文本所有分词向量、先前时间步生成的所有分词向量(即y<t)对当前生成的各个分词向量计算输出概率,其中概率最大的分词向量就作为当前时间步t输出的分词向量yt。输出概率的计算公式表示如下:
P(yt|X,y<t)=softmax(V′(V[st;Ct]+b)+b′)
公式里的[st;Ct]表示两个向量的拼接。其中V′、V、b′和b是模型训练过程可学习到的参数。
问题类型多样性提升算法的介绍:
下面对问题类型多样性提升算法的具体实现进行介绍,该算法可以作为一即插即用的功能嵌入问题类型生成过程中。以对应第k次问题生成(问题生成模型每生成一个问题对应一次问题生成)为例,该算法执行的流程具体解释如下:
这里,假设可生成的问题类型共有N种,分别为what、how、when、which...等,以问题类型I=(i1,i2,i3,...,iN)来表示各个问题类型,以(Sk1,Sk2,Sk3,...,SkN)表示对应当前第k次问题生成时,问题类型预测输出前所生成的对应各个问题类型的输出概率。例如以MLP进行类型预测时,输出前是softmax层,该softmax层的输出对应各个问题类型的是上述(Sk1,Sk2,Sk3,...,SkN),当不存在所述问题类型多样性提升算法时,概率最大的Skm对应的问题类型im将被MLP选取为所预测的问题类型I输出。而本申请将(Sk1,Sk2,Sk3,...,SkN)经所述问题类型多样性提升算法进行处理,其步骤具体如下:
第一步、依次判断各个问题类型(i1,i2,i3,...,iN)对应的(Sk1,Sk2,Sk3,...,SkN)是否需要执行衰减,并当确定某Skn需要衰减时,按照一衰退值(如0.2或0.5等)或以某衰减比例(如20%或30%)衰减该Skn的值。以Skn为例,该具体步骤具体为:
判断该Skn对应的问题类型in在之前的生成(指由第1到第k-1次的生成)中是否被选取过,如果被选取过,则确定该问题类型in对应的Skn需要衰减,并且可以以被选取过的次数进行相应次的衰减。判断被选取过的方法可以为:
判断被选取过的方法一:判断该问题类型in被标记需有要衰减的标记时,则表示在之前的问题生成过程中该in被选取过,已经生成过该in类型的问题。且根据标记的次数确定本次需衰减的次数。或者,
判断被选取过的方法二:判断之前各次的生成中对应该问题类型in的各次输出概率(S1n,S2n,S3n,...,Skn-1)大于本次Skn时,则表示在之前的问题生成过程中该in被选取过,生成过该in类型的问题。且根据大于的个数确定本次需衰减的次数。
第二步、从第一步处理后的(Sk1,Sk2,Sk3,...,SkN)中,选择概率最大的Skm对应的问题类型im作为所选,被MLP选取为所预测的问题类型I输出。并且相应的执行如下步骤,以用于下次问题生成时的问题类型的计算:
对应第一步中的判断被选取过的方法一,在本步骤将该问题类型im进行标记。
对应第二步中的判断被选取过的方法二,在本步骤中将(Sk1,Sk2,Sk3,...,SkN)中非Skm赋值为最小值,如负无穷。
上述过程以算法表示可以看出,该问题类型多样性提升算法,可以实现当对一个样本z已经生成了某一类型的问题后,其他样本z产生该类型问题的概率被抑制,从而以更高的概率选择其它的问题类型,提升了问题类型生成的多样性。
下面对实现问题生成方法的神经网络构架的训练过程进行介绍:
上述问题生成方法、以及后述的问题生成装置的各个实施例,其所涉及的问题生成模型(即包括实施例中的编码器和解码器的神经网络),在执行问题生成方法之前均已经进行训练。下面对实现本申请问题生成方法的问题生成模型的训练阶段进行说明,并且以训练集中的一问题-文本对为例对训练阶段进行说明:该问题-文本对中包括源文本、给定的目标问题。
第一步、将源文本的上下文向量(当对源文本进行编码的编码器B采用的RNN网络时,上下文向量即为最后一个时间步的隐态向量hm’)、目标问题的上下文向量(当对目标问题进行编码的编码器A采用的RNN网络时,上下文向量即为最后一个时间步的隐态向量,如图8中所示例子中的h6)由后验网络(也可称为识别网络或近似网络,后验网络仅用于模型训练阶段)采用多维概率分布进行处理,例如可以采用多维高斯分布进行处理,获得隐变量z的后验分布Qφ(z|X,Y)。Qφ(z|X,Y)可以理解为在给定源文本X和目标问题Y的情况下可能选择的分词的真实概率分布。
将该源文本的上下文向量(当对源文本进行编码的编码器B采用的RNN网络时,上下文向量即为最后一个时间步的隐态向量hm’)由先验网络采用与后验网络同样的多维概率分布进行处理,如同样采用多维高斯分布进行处理,获得隐变量z的先验分布Pθ(z|X)。不同的是,先验分布可以采用混合分布进行建模。如前所述,Pθ(z|X)可以理解为在给定源文本X的情况下各个可能选择的分词的概率分布。
第二步、在问题生成模型的训练过程中,用KL散度去约束Pθ(z|X)和Qφ(z|X,Y)的距离,通过以KL散度为优化目标来不断修正Pθ(Y|z,X)的参数θ可以使先验概率和后验概率尽量逼近,这样先验网络就可以与后验网络生成较为相似的隐变量z。
其中问题生成模型的整体的损失函数Loss可描述如下:
log P(Y|X)为变分下届。其中,L(θ,φ;Y,X)表示为损失函数,即评价函数;θ为先验分布的参数(当先验分布遵循高斯分布时,该参数即为均值和方差(μ′,σ′2)),φ为后验分布的参数(当后验分布遵循高斯分布时,该参数即为均值和方差(μ,σ2)),θ和φ是模型训练过程可学习到的参数;KL表示散度函数;E表示重构损失,能够反映解码效果。Pθ(Y|z,X)表示在给定z的样本和给定的源文本X的上下文向量下的Y(即y1、y2...yn)的概率分布,因此Pθ(Y|z,X)即表示为问题的生成过程,本申请中即通过本申请的问题生成方法来拟合该Pθ(Y|z,X)。
基于上述问题生成模型的整体的损失函数Loss,则可以以损失函数最优化为目标,通过训练集采用标准的训练方式来训练本申请问题生成方法的问题生成模型,以学习到上述各个步骤中所提到的“可学习到的参数”。这里的标准的方式,例如采用梯度下降法等优化器的方法、引入一判别器采用对抗训练的方法等。
对应本申请的问题生成方法,本申请还相应的提供了问题生成装置,该问题生成装置所包含的各个模块的功能或用途的实现方式,以及有益效果,可参见问题生成方法的各个实施例,故在介绍该问题生成装置时不再赘述。为了简化描述,下述问题生成装置的各个实施例均以图9进行说明,可以理解,下述问题生成装置的各个实施例中未提及的图9中的模块,表示该实施例中没有该模块。
问题生成装置的第一实施例:
在该问题生成装置的第一实施例中,本申请提供的问题生成装置,包括:
第一上下文向量确定模块910,用于获得源文本的各分词的词向量,根据词向量确定第一上下文向量。其中,对于源文本的获得,可以采用问题-文本对获取模块,用于从数据集中获取问题-文本对,问题-文本对中包括已具有对应的问题和源文本,据此来获得源文本。
隐变量获得模块920,用于根据所述第一上下文向量获得作为内容选择器的隐变量的先验分布,并执行至少一次采样获得至少一个隐变量样本。可选的,所述隐变量可以为连续空间的隐变量,可选的,所述先验分布遵循多维分布的混合分布。
生成模块930,用于根据每个隐变量样本执行每次问题的生成,其包括:
关注度获得模块931,用于根据该隐变量样本和所述源文本的各分词的向量信息获得源文本各分词的关注度。
其中,所述源文本的各分词的向量信息包括:所述源文本的各分词的词向量,或所述源文本的各分词的隐态向量。
问题生成模块932,用于根据所述各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量,并生成所述问题。
其中,所述问题生成模块932用于根据所述各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量时,包括以下之一:
用于根据所述各分词的关注度和源文本各分词的词向量确定第二上下文向量,并根据第二上下文向量生成构成问题的各分词的词向量;
用于根据所述各分词的关注度和源文本各分词的词向量确定第三上下文向量,并根据第三上下文向量和所述各分词的关注度生成构成问题的各分词的词向量;
用于根据源文本各分词的词向量确定第四上下文向量,并根据第四上下文向量和所述各分词的关注度生成构成问题的各分词的词向量。
其中,针对上述数据集来说,还可以设置问题筛选模块,用于对所生成的问题进行筛选,该问题筛选模块执行所述筛选时通过预训练的文本-问题匹配模型或人工进行筛选。并设置问题-文本对生成模块,用于根据所生成的问题与所述源文本生成新的问题-文本对,以加入上述数据集中。
问题生成装置的第二施例:
在该问题生成装置的第二实施例中,包含了第一实施例的各模块,并且,进一步的:
生成模块930还包括:问题类型预测模块933,用于根据所述第一上下文向量和该隐变量样本获得预测的问题类型。
相应的,所述问题生成模块932还用于所述生成构成问题的各分词的词向量时,还根据所述预测的问题类型进行该生成。
其中,可选的,还可包括问题类型多样性提升算法模块934,用于所述预测的问题类型在生成时还根据一问题类型多样性提升算法来生成;该算法使得使得在执行每次问题的生成时,在先问题生成时已经预测过的问题类型被选取作为本次所述预测的问题类型的概率被抑制。
其中,所述问题类型多样性提升算法模块934包括衰减执行模块9341,用于执行在当前次问题的生成过程中所生成的该问题类型被选取的概率被抑制,且是通过将该问题类型被选取的概率被执行衰减的方式执行。可选的,所述衰减执行模块用于执行所述衰减时,所述衰减的程度与在先次问题生成时所选取的该问题类型的次数正相关。
问题生成装置的第三施例:
在该问题生成装置的第三实施例中,包含了第二实施例的各模块,并且,进一步的:所述关注度获得模块931用于获得所述关注度时还根据所述预测的问题类型来获得。
如图10示出的流程图,本申请还提供了一种问题-文本对的生成方法,包括:
S1010、获取问题-文本对,问题-文本对中包括源文本和该源文本对应的问题,该对应关系可以使用标注进行表示。具体包括:
直接获取已经具有标注的问题-文本对,该已经具有标注的问题-文本对可存储于一数据集中;或者
通过在大量问答数据中筛选出问题-文本对候选,通过人工标注的方式确定正确的对应关系。其中,问答项目中存在大量未标注的问题,通过高重合度的字面匹配可以得到所获取具有标注的问题-文本对。
S1020、利用上述问题生成方法的任一实施例,或问题生成装置的任一实施例,对其中的源文本,生成至少一个内容不同或/和类型不同的问题候选,即使生成的问题多样性,以使这些问题具备较广的覆盖面。
S1030、对所生成的问题进行筛选。其中,执行所述筛选时通过预训练的文本-问题匹配模型(分类器)进行或人工筛选的方式进行。在筛选自动生成的问题时,可以采用主动学习的技术,使得引入数据开销尽量少的情况下,引入数据产生的信息增益尽可能的大,以有利于问答系统的效果提升。
S1040、根据所生成的至少一个问题与所述源文本生成至少一个新的问题-文本对。
从而,将所选出的高质量的问题与所述源文本建立问题-文本对,即进行标注,并可加入到数据集中,并可用于进一步训练上述多样化问题生成模块。
上述过程可以不断迭代,直到产生规模符合预期数量的问题-文本对数据。这些数据可以用来训练机器问答系统中的对应模块。即本申请的应用场景可以是通过本申请实现问题的自动生成,来扩充自动问答系统标注数据,从而来训练机器问答系统中的对应模块,进而提升自动问答系统的覆盖面和鲁棒性。
如图11示出的示意图,本申请还提供了一种问题-文本对的生成装置,包括:
问题-文本对获取模块1110,用于获取问题-文本对,问题-文本对中包括源文本和该源文本对应的问题,该对应关系可以使用一标注进行表示。
上述技术方案中所述的问题生成装置1120,用于根据所述源文本生成至少一个内容不同或/和类型不同的问题作为候选。
问题-文本对生成模块1130,用于根据所生成的至少一个问题与所述源文本生成至少一个新的问题-文本对。
问题筛选模块1140,用于对所生成的问题进行筛选。所述问题筛选模块执行所述筛选时通过预训练的文本-问题匹配模型进行筛选。所述问题-文本对生成模块1130是根据所述筛选得到的问题与所述源文本生成所述新的问题-文本对。
本申请还提供了一种机器问答方法,其包括利用上述问题-文本对的生成方法,或问题-文本对的生成装置所生成的问题-文本对进行训练的步骤。
本申请还相应的提供了一种机器问答装置,其包括利用上述问题-文本对的生成方法,或问题-文本对的生成装置所生成的问题-文本对进行训练的模块。
本申请具体实施时一运行案例:
如图13示出了本申请具体实施时一运行案例的结果的示意图。其中,如图,包括输入的源文本和标准问题(Target Question)。
该例中,在推理阶段采样3个不同的内容选择器,每次之间选择的分词不同,体现在每次之间所关注(Foucs)的分词不尽相同,用方框标识了每次关注的分词;
根据3个内容选择器产生问题类型的概率并通过多样化提升算法生成不同的问题类型,体现在问题的引导词(第一个词)不尽相同;
根据内容选择器和问题类型生成最终的多样化问题,体现在最终的问题表达上不尽相同。
该例展示了实施本申请时同时考虑到内容选择以及问题类型的生成效果,在这种情况下不仅内容的生成具有多样性,且问题类型的上也提升了多样性,并且不存在后处理所带来的时间开销。
本申请具体实施时另一运行案例:
如图14示出了本申请具体实施时另一运行案例的结果的示意图。其中,包括输入的源文本和标准问题(Target Question)。
该例中采用模数为3的混合先验分布,故执行一次采样时可以从每个子分布采样出不同的内容选择器(即隐变量z)。图14中虚线分开的是混合分布中不同的子分布,各虚线内部是同一子分布采样不同内容选择器生成的不同问题。
通过该例可以看出,不同子分布采样生成的问题差异度较大,而相同子分布采样产生的问题差异度相对较小,故,本申请引入混合先验分布时,可以提升问题生成的多样性。该例同时也展示了本申请采用连续概率分布时理论上可以产生不限个数的内容选择器,从而生成更多样问题。
本申请的有益效果
本申请的技术方案能够提升问题生成结果的多样性,利于高效收集机器问答项目所需的标注数据。本申请利用连续空间内容选择器关注不同的文本内容,兼顾生成可解释性的同时生成的结果比离散的方法更具备多样性。本申请在建模问题类型的基础上,通过多样性提升算法生成更加丰富的问题类型。并且本申请的问题生成过程是一个自动化过程,并且仅用到词级别的少量特征,降低了人力成本。
下表为本申请多样性问题生成方法在公开数据集上的实验结果,从表中可以看出,在公开的数据集上从多样性角度有正向收益。
注:上表评测指标的含义如下:BLEU-4评价算法生成的TOP-1结果和标准答案的匹配度;Pairwise评价生成的各个结果之间的相似度;#Type表示生成问题类型的平均个数;%Type表示生成问题类型包含标准答案的比例。
其中,上表中的方法的实验结果,其中:5-M.Decoder对应的是他人的使用5个解码器实现多样性的方法,5-M.Selector对应的是他人的使用5个选择器实现多样性的方法,5-M.Prior是本申请中先验分布使用了5个混合分布执行一次采样时实现多样性的方法。从中可以看出,与上述两种方式相比,本申请Pairwise值更小,即内容的多样性更大;#Type值更大,类型越多,类型的多样性也更大。
图15是本申请实施例提供的一种计算设备1500的结构性示意性图。该计算设备1500包括:处理器1510、存储器1520、通信接口1530、总线1540。
应理解,图15所示的计算设备1500中的通信接口1530可以用于与其他设备之间进行通信。
其中,该处理器1510可以与存储器1520连接。该存储器1520可以用于存储该程序代码和数据。因此,该存储器1520可以是处理器1510内部的存储单元,也可以是与处理器1510独立的外部存储单元,还可以是包括处理器1510内部的存储单元和与处理器1510独立的外部存储单元的部件。
可选的,计算设备1500还可以包括总线1540。其中,存储器1520、通信接口1530可以通过总线1540与处理器1510连接。总线1540可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。所述总线1540可以分为地址总线、数据总线、控制总线等。为便于表示,图15中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,在本申请实施例中,该处理器1510可以采用中央处理单元(centralprocessing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器1510采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。
该存储器1520可以包括只读存储器和随机存取存储器,并向处理器1510提供指令和数据。处理器1510的一部分还可以包括非易失性随机存取存储器。例如,处理器1510还可以存储设备类型的信息。
在计算设备1500运行时,所述处理器1510执行所述存储器1520中的计算机执行指令执行上述方法的操作步骤。
应理解,根据本申请实施例的计算设备1500可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备1500中的各个模块的上述和其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行一种多样化问题生成方法,该方法包括上述各个实施例所描述的方案中的至少之一。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,均属于本申请保护范畴。
Claims (28)
1.一种问题生成方法,其特征在于,包括:
获得源文本的各分词的词向量,根据所述词向量确定第一上下文向量;
根据所述第一上下文向量获得作为内容选择器的隐变量的先验分布,并执行至少一次采样获得至少一个隐变量样本;
根据每个隐变量样本执行每次问题的生成,包括:根据所述隐变量样本和所述源文本的各分词的向量信息获得源文本各分词的关注度;以及根据所述各分词的关注度和源文本的各分词的词向量生成构成所述问题的各分词的词向量,并生成所述问题。
2.根据权利要求1所述的方法,其特征在于,所述隐变量为连续空间的隐变量。
3.根据权利要求2所述的方法,其特征在于,所述先验分布遵循多维分布的混合分布。
4.根据权利要求1、2或3所述的方法,其特征在于,所述源文本的各分词的向量信息包括:所述源文本的各分词的词向量或者所述源文本的各分词的隐态向量。
5.根据权利要求1所述的方法,其特征在于,所述根据每个隐变量样本生成问题,还包括:
根据所述第一上下文向量和所述隐变量样本获得预测的问题类型;
所述生成构成所述问题的各分词的词向量时,还根据所述预测的问题类型生成。
6.根据权利要求5所述的方法,其特征在于,所述预测的问题类型使用问题类型多样性提升算法来生成;
所述算法使得在所述执行每次问题的生成时,在先问题生成时已经预测过的问题类型被选取作为本次所述预测的问题类型的概率被抑制。
7.根据权利要求6所述的方法,其特征在于,所述已经预测过的问题类型被选取的概率被抑制包括:对所述已经选取过的问题类型被选取的概率执行衰减。
8.根据权利要求7所述的方法,其特征在于,所述衰减的程度与所述已经预测过的问题类型被选取过的次数正相关。
9.根据权利要求5至8任一所述的方法,其特征在于,所述关注度还根据所述预测的问题类型来获得。
10.根据权利要求1至3、5至8任一所述的方法,其特征在于,所述根据所述各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量的步骤包括以下之一:
根据所述各分词的关注度和源文本各分词的词向量确定第二上下文向量,并根据所述第二上下文向量生成构成问题的各分词的词向量;或者
根据所述各分词的关注度和源文本各分词的词向量确定第三上下文向量,并根据所述第三上下文向量和所述各分词的关注度生成构成问题的各分词的词向量;或者
根据所述源文本各分词的词向量确定第四上下文向量,并根据所述第四上下文向量和所述各分词的关注度生成构成问题的各分词的词向量。
11.一种问题生成装置,其特征在于,包括:
第一上下文向量确定模块,用于获得源文本的各分词的词向量,根据所述词向量确定第一上下文向量;
隐变量获得模块,用于根据所述第一上下文向量获得作为内容选择器的隐变量的先验分布,并执行至少一次采样获得至少一个隐变量样本;
生成模块,用于根据每个隐变量样本执行每次问题生成,所述生成模块包括:关注度获得模块,用于根据所述隐变量样本和所述源文本的各分词的向量信息获得源文本各分词的关注度;问题生成模块,用于根据所述各分词的关注度和源文本的各分词的词向量生成构成所述问题的各分词的词向量,并生成所述问题。
12.根据权利要求11所述的装置,其特征在于,所述隐变量为连续空间的隐变量。
13.根据权利要求12所述的装置,其特征在于,所述先验分布遵循多维分布的混合分布。
14.根据权利要求11、12或13所述的装置,其特征在于,所述源文本的各分词的向量信息包括:所述源文本的各分词的词向量或者所述源文本的各分词的隐态向量。
15.根据权利要求11所述的装置,其特征在于,所述生成模块还包括:
问题类型预测模块,用于根据所述第一上下文向量和所述隐变量样本获得预测的问题类型;
所述问题生成模块用于所述生成构成所述问题的各分词的词向量时,还根据所述预测的问题类型生成。
16.根据权利要求15所述的装置,其特征在于,
还包括问题类型多样性提升算法模块,用于对所述预测的问题类型使用问题类型多样性提升算法来生成;
所述算法使得在所述执行每次问题的生成时,在先问题生成时已经预测过的问题类型被选取作为本次所述预测的问题类型的概率被抑制。
17.根据权利要求16所述的装置,其特征在于,所述问题类型多样性提升算法模块包括衰减执行模块,用于对所述已经选取过的问题类型被选取的概率执行衰减。
18.根据权利要求17所述的装置,其特征在于,所述衰减执行模块执行所述衰减的程度与所述已经预测过的问题类型被选取过的次数正相关。
19.根据权利要求15至18任一所述的装置,其特征在于,所述关注度获得模块获得的所述关注度还根据所述预测的问题类型来获得。
20.根据权利要求11至13、15至18任一所述的装置,其特征在于,
所述问题生成模块用于根据所述各分词的关注度和源文本的各分词的词向量生成构成问题的各分词的词向量时,包括以下之一:
根据所述各分词的关注度和源文本各分词的词向量确定第二上下文向量,并根据所述第二上下文向量生成构成问题的各分词的词向量;或者
根据所述各分词的关注度和源文本各分词的词向量确定第三上下文向量,并根据所述第三上下文向量和所述各分词的关注度生成构成问题的各分词的词向量;或者
根据所述源文本各分词的词向量确定第四上下文向量,并根据所述第四上下文向量和所述各分词的关注度生成构成问题的各分词的词向量。
21.一种问题-文本对的生成方法,其特征在于,包括:
获取问题-文本对,所述问题-文本对中包括源文本和所述源文本对应的问题;
利用权利要求1至10任一所述的方法,生成至少一个问题;
根据所述生成的至少一个问题与所述源文本生成新的问题-文本对。
22.根据权利要求21所述的方法,其特征在于,还包括:对生成的所述至少一个问题进行筛选;
所述根据所述生成的问题与所述源文本生成新的问题-文本对,包括:
根据所述筛选得到的问题与所述源文本生成新的问题-文本对。
23.根据权利要求22所述的方法,其特征在于,所述筛选包括通过预训练的文本-问题匹配模型进行筛选。
24.一种问题-文本对的生成装置,其特征在于,包括:
问题-文本对获取模块,用于获取问题-文本对,所述问题-文本对中包括源文本和所述源文本对应的问题;
如权利要求11至20任一所述的问题生成装置;用于根据所述源文本生成至少一个问题;以及
问题-文本对生成模块,用于根据所述问题生成装置生成的至少一个问题与所述源文本生成新的问题-文本对。
25.根据权利要求24所述的装置,其特征在于,还包括:
问题筛选模块,用于对生成的所述至少一个问题进行筛选;
所述问题-文本对生成模块用于根据所述筛选得到的问题与所述源文本生成所述新的问题-文本对。
26.根据权利要求25所述的装置,其特征在于,还包括:
所述问题筛选模块执行所述筛选时通过预训练的文本-问题匹配模型进行筛选。
27.一种计算设备,其特征在于,包括:
总线;
通信接口,其与所述总线连接;
至少一个处理器,其与所述总线连接;以及
至少一个存储器,其与所述总线连接并存储有程序指令,所述程序指令当被所述至少一个处理器执行时使得所述至少一个处理器执行权利要求1至10、21至23任一所述的方法。
28.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令当被计算机执行时使得所述计算机执行权利要求1至10、21至23任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010267070.9A CN111553152B (zh) | 2020-04-03 | 2020-04-03 | 问题生成方法和装置及问题-文本对的生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010267070.9A CN111553152B (zh) | 2020-04-03 | 2020-04-03 | 问题生成方法和装置及问题-文本对的生成方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111553152A CN111553152A (zh) | 2020-08-18 |
CN111553152B true CN111553152B (zh) | 2023-05-12 |
Family
ID=72005670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010267070.9A Active CN111553152B (zh) | 2020-04-03 | 2020-04-03 | 问题生成方法和装置及问题-文本对的生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111553152B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112417106B (zh) * | 2020-10-22 | 2022-11-18 | 复旦大学 | 一种基于文本的问题生成方法及其装置 |
CN112184431A (zh) * | 2020-11-09 | 2021-01-05 | 上海优扬新媒信息技术有限公司 | 用户风险确定方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106503236A (zh) * | 2016-10-28 | 2017-03-15 | 北京百度网讯科技有限公司 | 基于人工智能的问题分类方法以及装置 |
CN109582952A (zh) * | 2018-10-31 | 2019-04-05 | 腾讯科技(深圳)有限公司 | 诗歌生成方法、装置、计算机设备和介质 |
CN109948166A (zh) * | 2019-03-25 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 文本翻译方法、装置、存储介质和计算机设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273487A (zh) * | 2017-06-13 | 2017-10-20 | 北京百度网讯科技有限公司 | 基于人工智能的聊天数据的生成方法、装置及计算机设备 |
-
2020
- 2020-04-03 CN CN202010267070.9A patent/CN111553152B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106503236A (zh) * | 2016-10-28 | 2017-03-15 | 北京百度网讯科技有限公司 | 基于人工智能的问题分类方法以及装置 |
CN109582952A (zh) * | 2018-10-31 | 2019-04-05 | 腾讯科技(深圳)有限公司 | 诗歌生成方法、装置、计算机设备和介质 |
CN109948166A (zh) * | 2019-03-25 | 2019-06-28 | 腾讯科技(深圳)有限公司 | 文本翻译方法、装置、存储介质和计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111553152A (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xie et al. | Differentiable top-k with optimal transport | |
CN108984724B (zh) | 利用高维表示提高特定属性情感分类准确率方法 | |
CN112084337B (zh) | 文本分类模型的训练方法、文本分类方法及设备 | |
US10706351B2 (en) | Recurrent encoder and decoder | |
CN111402257B (zh) | 一种基于多任务协同跨域迁移的医学图像自动分割方法 | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
US20200134455A1 (en) | Apparatus and method for training deep learning model | |
WO2020073700A1 (zh) | 图像描述模型的训练方法、装置及存储介质 | |
CN109189862A (zh) | 一种面向科技情报分析的知识库构建方法 | |
CN113065358B (zh) | 面向银行咨询服务基于多粒度对齐的文本对语义匹配方法 | |
JP7448562B2 (ja) | 人工知能のための希な訓練データへの対処 | |
CN111400548B (zh) | 一种基于深度学习与马尔科夫链的推荐方法及设备 | |
CN111553152B (zh) | 问题生成方法和装置及问题-文本对的生成方法和装置 | |
CN114998670B (zh) | 多模态信息预训练方法及系统 | |
CN110490304B (zh) | 一种数据处理方法及设备 | |
CN112668013B (zh) | 一种面向Java源码的语句级模式探索的漏洞检测方法 | |
CN116955699A (zh) | 一种视频跨模态搜索模型训练方法、搜索方法及装置 | |
CN117217368A (zh) | 预测模型的训练方法、装置、设备、介质及程序产品 | |
CN113886562A (zh) | 一种ai简历筛选方法、系统、设备和存储介质 | |
CN116663539A (zh) | 基于RoBERTa和指针网络的中文实体与关系联合抽取方法及系统 | |
CN115130591A (zh) | 一种基于交叉监督的多模态数据分类方法及装置 | |
CN115392357A (zh) | 分类模型训练、标注数据样本抽检方法、介质及电子设备 | |
CN117251545A (zh) | 一种多意图自然语言理解方法、系统、设备及存储介质 | |
CN113761845A (zh) | 一种文本生成方法、装置、存储介质及电子设备 | |
CN116644180A (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 |