CN112100335B - 问题生成方法、模型训练方法、装置、设备和存储介质 - Google Patents
问题生成方法、模型训练方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112100335B CN112100335B CN202011024969.4A CN202011024969A CN112100335B CN 112100335 B CN112100335 B CN 112100335B CN 202011024969 A CN202011024969 A CN 202011024969A CN 112100335 B CN112100335 B CN 112100335B
- Authority
- CN
- China
- Prior art keywords
- keyword
- probability
- word
- sample
- sentence
- 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 68
- 238000012549 training Methods 0.000 title claims abstract description 41
- 238000000605 extraction Methods 0.000 claims description 103
- 230000011218 segmentation Effects 0.000 claims description 66
- 239000013598 vector Substances 0.000 claims description 48
- 230000015654 memory Effects 0.000 claims description 21
- 230000002457 bidirectional effect Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 4
- 230000007787 long-term memory Effects 0.000 claims 2
- 230000006403 short-term memory Effects 0.000 claims 2
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 238000003058 natural language processing Methods 0.000 abstract description 3
- 238000013135 deep learning Methods 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 229910000078 germane Inorganic materials 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000004630 mental health Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- 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/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
-
- 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/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/374—Thesaurus
-
- 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
-
- 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/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种问题生成方法、模型训练方法、装置、设备和存储介质,涉及人工智能领域,尤其涉及深度学习、自然语言处理领域。具体实现方案为:根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率;根据文本内容、关键词和概率,分别获得与每个关键词对应的输入序列;分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题。本申请实施例能够针对文本内容获得更多不同方面的问题,丰富提问内容。
Description
技术领域
本申请涉及人工智能领域,尤其涉及深度学习、自然语言处理领域。
背景技术
随着机器阅读技术的发展,可以通过计算机算法阅读一段或者一句文字,实现对自然语言的处理。问题生成是指根据给定的文本段落生成相关问题,在自然语言处理技术中是一个重要的问题。早期的问题生成方法大都需要依赖人工制定的规则模板。这些方法的成功与否,关键在于是否存在精心设计的陈述句到疑问句的转换规则,而这些转换规则通常是基于深层的语言知识。
由于早期的问题生成方法强烈依赖人为设计的转换和生成规则,设计者的知识面往往专注于某一领域,因此所涉及的问题转换和生成规则也仅针对某一知识领域,很难适用于其它指示领域。因此,需要一种能够针对给定文本从尽可能多的角度进行提问,生成问题语句的方法。
发明内容
为了解决现有技术中至少一个问题,本申请实施例提供了一种问题生成方法、模型训练方法、装置、设备和存储介质。
第一方面,本申请实施例提供一种问题生成方法,包括:
根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率;
根据文本内容、关键词和概率,分别获得与每个关键词对应的输入序列;
分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题。
第二方面,本申请实施例提供一种模型训练方法,包括:
根据第一样本文本,获得第一样本文本中的第一样本关键词以及第一样本关键词的概率;
根据第一样本关键词、第一样本关键词的概率和第一样本文本,获得每个第一样本关键词对应的第一样本输入序列;
将第一样本文本输入序列输入待训练问题生成模型,获得输出结果;
根据输出结果和参考问题,获得问题生成损失;
根据问题生成损失,优化待训练问题生成模型,获得问题生成模型。
第三方面,本申请实施例提供一种模型训练方法,包括:
根据第二样本文本、样本问题和关键词提取规则,获得第二样本文本中的第二样本关键词;
利用第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型。
第四方面,本申请实施例提供一种问题生成装置,包括:
关键词模块,用于根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率;
输入序列模块,用于根据文本内容、关键词和概率,分别获得与每个关键词对应的输入序列;
问题模块,用于分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题。
第五方面,本申请实施例提供一种模型训练装置,包括:
第一样本模块,用于根据第一样本文本,获得第一样本文本中的第一样本关键词以及第一样本关键词的概率;
第一输入序列模块,用于根据第一样本关键词、第一样本关键词的概率和第一样本文本,获得每个第一样本关键词对应的第一样本输入序列;
输出结果模块,用于将第一样本文本输入序列输入待训练问题生成模型,获得输出结果;
问题生成损失模块,用于根据输出结果和参考问题,获得问题生成损失;
问题生成模型优化模块,用于根据问题生成损失,优化待训练问题生成模型,获得问题生成模型。
第六方面,本申请实施例提供一种模型训练装置,包括:
第二样本关键词模块,用于根据第二样本文本、样本问题和关键词提取规则,获得第二样本文本中的第二样本关键词;
训练模块,用于利用第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型。
第七方面,本申请实施例提供一种电子设备,其特征在于,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请任意一项实施例所提供的方法。
第八方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,计算机指令用于使计算机执行本申请任意一项实施例所提供的方法。
上述申请中的一个实施例具有如下优点或有益效果:根据文本内容获得至少一个关键词和关键词的概率,然后根据关键词、关键词的概率、文本内容的分词,生成针对每个关键词的输入序列,然后根据每个输入序列,生成针对每个关键词的问题,从而能够针对文本内容提出至少一个问题。当文本内容较为丰富的时候,能够从多个不同角度提取关键词,进而也能够针对多个关键词从多个角度对文本内容进行提问,从而丰富了问题的内容和提问方式。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请一实施例的问题生成方法的示意图;
图2是根据本申请另一实施例的模型训练方法的示意图;
图3是根据本申请另一实施例的模型训练方法的示意图;
图4是根据本申请一实施例的问题生成装置的示意图;
图5是根据本申请一实施例的问题生成装置的示意图;
图6是根据本申请另一实施例的问题生成装置的示意图;
图7是根据本申请另一实施例的问题生成装置的示意图;
图8是根据本申请另一实施例的模型生成装置的示意图;
图9是根据本申请另一实施例的模型生成装置的示意图;
图10是根据本申请另一实施例的模型生成装置的示意图;
图11是用来实现本申请实施例的问题生成的方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的,而并非要限制本公开的范围。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本申请实施例提供一种问题生成方法,流程如图1所示,包括:
步骤S11:根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率;
步骤S12:根据文本内容、关键词和概率,分别获得与每个关键词对应的输入序列;
步骤S13:分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题。
本实施例中,用于生成问题的文本内容,可以是一段文字或者一句文字。文本内容包括多个分词,每个分词可能是关键词或非关键词。比如,文本内容“今天天气好”,包括分词“今天”、“天气”和“好”。根据文本内容获得的至少一个关键词,可以是根据文本内容获得文本内容中比较有可能是关键词的分词,比如分词“今天”、“天气”和“好”这三个分词为关键词的概率分别为:
“今天”的概率=40%;
“天气”的概率=40%;
“好”的概率=80%;
那么,可以确定概率较高的分词“好”为关键词。关键词的概率可以是该分词在文本内容中为关键词的概率。
从文本内容中提取关键词,可以采用一些文本统计方法,比如,TF-IDF(TermFrequency–Inverse Document Frequency,信息检索数据挖掘的常用加权技术)关键词提取算法、TextRank(文本排序)关键词提取算法、词聚类的关键词提取算法和基于树模型的关键词提取算法等方法从文本内容中提取出关键词。也可根据自定义的关键词提取规则,从文本内容中提取出关键词。
在文本内容极为简单的情况下,文本内容中可能仅包含了一个有实际意义的分词,比如“这太热了”,仅包含“太热”这一个有实际意义的分词。对应每个文本内容,至少存在一个可以作为关键词的分词。在文本内容中存在一个或大于一个的关键词的情况下,根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率,可以是获得文本内容中的所有关键词。
在文本内容包含较多的关键词的情况下,根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率,可以是获得文本内容中的全部可能为关键词的分词,或者获得文本内容中部分可能为关键词的分词。
本实施例中,根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率,可以包括:根据文本内容,获得多个分词;获得每个分词为文本内容中的关键词的概率;将概率大于设定阈值的分词,作为关键词,得到至少一个关键词和每个关键词对应的概率。具体例如,获得文本内容中的多个分词,然后计算出每个分词为文本内容中的关键词的概率,然后将概率大于50%的分词作为关键词,得到至少一个关键词和每个关键词对应的概率。
本实施例中,每个关键词可以对应一个输入序列。具体的,分别将步骤S11中获得的关键词作为文本中唯一关键词,然后针对每个关键词,根据文本内容、关键词和关键词的概率获得一个输入序列。
比如,根据文本内容,获得关键词A、B、C,则:
针对A,得到包括A、A的概率的信息和文本内容的其它分词信息的输入序列1;
针对B,得到包括B、B的概率的信息和文本内容的其它分词信息的输入序列2;
针对C,得到包括C、C的概率的信息和文本内容的其它分词信息的输入序列3。这样,A、B和C每个关键词对应于一个输入序列。
分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题,可以包括:针对获得的关键词A、B、C,将三个输入序列输入问题生成模型,分别得到关于关键词A、B、C的三个问题。
具体例如,对于文本内容“今天天气好”,获得两个关键词,分别为“今天”和“天气”,然后执行:
将包含“今天”、“今天”的概率信息和文本内容中其它分词信息的输入序列输入问题生成模型,获得关于“今天”的问题:“什么时候天气好”;
将包含“天气”、“天气”的概率信息和文本内容中其它分词信息的输入序列输入问题生成模型,获得关于“天气”的问题“今天天气怎样”。
本实施例中,问题生成模型可以是包含编码器和解码器的模型,比如序列到序列模型。
具体而言,可将输入序列输入问题生成模型的编码器,获得编码序列,然后将编码序列输入解码器,获得解码序列,然后根据解码序列,获得针对关键词的问题。
本申请实施例中,文本内容可能包含多个不同的知识领域的信息,针对这种情况,根据文本内容获得至少一个关键词和关键词的概率,然后根据关键词、关键词的概率、文本内容的分词,生成针对每个关键词的输入序列,然后根据每个输入序列,生成针对每个关键词的问题,从而能够针对文本内容提出至少一个问题。通常,生成的问题与文章中的关键词有密切关系。当文本内容较为丰富的时候,能够从多个不同角度提取关键词,进而也能够针对多个关键词从多个角度对文本内容进行提问,从而丰富了问题的内容和提问方式。在训练阶段,可以对问题生成模型进行多个知识领域的问题生成训练,从而当文本内容涉及多个知识领域时,问题生成模型也能够跨知识领域生成一个以上的不同领域的问题,无需人工制定问题生成规则,更无需规则制定人员掌握多方面知识领域的知识,节省人力成本。
随着人工智能技术的发展,问题生成可以应用于多种领域。例如,在教育领域,自动教学系统可以根据阅读材料的文本内容生成合适的问题,测试用户对该阅读材料理解。在对话系统中,提出好的问题对对话系统至关重要,因为一个良好的对话系统可以促进与用户的沟通,并且,提出良好的问题可以推动对话越来越深入。在医学领域,问题生成系统也被用作评估或改善心理健康的临床工具。同时,作为问题回答的逆向任务,问题生成工具也被用于生成大规模问题和答案语料库。
本申请实施例提供的问题生成方法,能够针对文本内容的至少一个关键词生成关于该关键词的问题,对于教育领域,能够针对文本内容生成不同角度的问题,丰富了提问的方向。
在对话系统中,本申请实施例能够多方面提问,促进对话的深入。
在医学领域中,本申请实施例能够提出专业性较高的问题,提高实践应用效果。
在构建问答语料库时,通过本申请实施例提供的问题生成方法,能够为语料库的构建提供丰富的问题语料。
在一种实施方式中,根据文本内容、关键词和概率,分别获得与每个关键词对应的输入序列,包括:
根据文本内容,获得文本分词向量序列;文本分词向量序列包括文本内容中每个分词的分词向量,文本内容中的分词为关键词或非关键词;
针对每个关键词,在文本分词向量序列中,将关键词对应的概率拼接在关键词的分词向量之后,得到与关键词对应的输入序列。
本实施例中,文本分词向量序列可以是文本的分词向量排列形成的序列,分词向量可以为文本的分词的向量。对于关键词,在关键词的分词向量基础上拼接一个特征表示该单词属于关键词的概率如下:
其中,
xt为拼接后的关键词向量,
为关键词的分词向量,
为关键词的概率。
将关键词的概率拼接在关键词的分词向量之后,其余词语的分词向量不变。
具体例如,文本内容包括顺序排列的分词:DEFG,那么,
文本分词向量序列=【D的分词向量、E的分词向量、F的分词向量和G的分词向量】。
若在上述文本分词向量序列的基础上,关键词包括D和F,那么,得到的输入序列可以包括:D对应的输入序列和F对应的输入序列。其中,
D的输入序列=【D的分词向量、D的概率、E的分词向量、F的分词向量、G的分词向量】;
F的输入序列=【D的分词向量、E的分词向量、F的分词向量、F的概率、G的分词向量】。
在其它实施例中,也可以将关键词的概率拼接在关键词的分词向量之前,得到与关键词对应的输入序列。
本实施例中,针对每个关键词,在文本内容的分词向量构成的序列中,将关键词对应的概率拼接在关键词对应的分词向量之后,得到与每个关键词对应的输入序列,从而输入序列中包含了关键词和关键词的概率信息,问题生成模型能够围绕关键词的含义、结合关键词的概率生成问题,使得最终获得的每个问题都与关键词相关。
在一种实施方式中,分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题,包括:
针对各个关键词,将关键词对应的输入序列输入问题生成模型;
根据输入序列,采用问题生成模型针对固定词典中的每个词语进行计算,得到该词语在问题的语句中每个位置的第一概率;固定词典为根据词库构建的词典;
根据第一概率,采用问题生成模型确定问题的语句中每个位置的词语,得到关于关键词的问题。
根据输入序列,采用问题生成模型针对固定词典中的每个词语进行计算,得到该词语在问题的语句中每个位置的第一概率,可以包括,将输入序列输入问题生成模型的编码器,得到编码中间量;将编码中间量输入问题生成模型的解码器,得到上述第一概率。
本实施例中,固定词典可以包括问题结束符,比如EOS(End of Sentence,句尾)。在计算第一概率时,依次针对问题的语句中的第一个位置、第二个位置、第三个位置……最后一个位置,计算固定词典中每个词语的第一概率,第一概率表示固定词典中的每个词语在问题的语句依次每个位置的概率。
比如,针对问题的语句的第一个位置,固定词典中的一百个词语对应计算出一百个第一概率,从这一百个第一概率中,选择第一概率最大的词语,作为第一位置的词语;
然后,依次类推,直到问题的语句的结尾,得到问题的语句中每个位置的词语。
为了避免问题的语句过长,可以设定问题的语句的最大长度,例如:
设定问题的语句中包含10个词语,则输出至第10个词语时,也就是输出至问题的语句中的第10个位置时,若固定词典的所有词语中在该位置的第一概率最大的不是EOS(结束符),则强制结束问题的语句,不再计算下一位置(第11个位置);
设定问题的语句中包含50个词语,则输出至第50个词语时,也就是输出至问题的语句中的第50个位置时,若固定词典的所有词语中在该位置的第一概率最大的不是EOS(结束符),则强制结束问题的语句,不再计算下一位置(第51个位置);
设定问题的语句中包含100个词语,则输出至第100个词语时,也就是输出至问题的语句中的第100个位置时,若固定词典的所有词语中在该位置的第一概率最大的不是EOS(结束符),则强制结束问题的语句,不再计算下一位置(第101个位置)。
本实施例中,分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题,包括:
针对问题的语句中第i个位置,生成固定词典中每个词语的第一概率,i的初始值为1;
选择第一概率最大的词语,为第i个位置的词语;
判断第i个位置的词语是否为语句终了词语,若不是,令i的数值增加1后,返回针对问题的语句中第i个位置,生成固定词典中每个词语的第一概率的步骤;若是,则结束当前流程。
本实施例中,固定词典可以是根据词库构建的词典,固定词典中的词语全面,用于生成问题语句的所有词语,都可以从固定词典中找到,从而能够形成完整通顺的问题的语句。
在一种实施方式中,根据第一概率,采用问题生成模型确定问题的语句中每个位置的词语,得到关于关键词的问题,包括:
根据输入序列,采用问题生成模型针对动态词典中的每个词语,得到词语在问题的语句中每个位置的第二概率;动态词典为文本内容的分词构成的词典;
根据第一概率和第二概率,针对固定词典和动态词典构成的词典合集中的每个词语,计算词语在语句中每个位置的加权概率;
根据加权概率,确定语句中每个位置的词语,得到语句。
本实施例中,动态词典可以为文本内容的所有分词构成的词典,或者可以为文本内容中部分分词构成的词典。比如,文本内容中包括EDFG四个分词,这四个分词构成文本内容对应的动态词典,文本内容不同,相应的动态词典中包含的词语也不同。
第二概率可以为仅针对动态词典中存在的词语计算获得的概率,比如,文本内容中包括EDFG四个分词,则动态词典中包括的词语为EDFG。对于问题的语句中的第一个位置、第二个位置、第三个位置……最后一个位置,依次计算EDFG的概率。比如,对于问题的语句中的第一个位置,EDFG四个词语分别对应四个第二概率。
根据第一概率和第二概率,针对固定词典和动态词典构成的词典合集中的每个词语,计算词语在语句中每个位置的加权概率,具体可以是,对于既存在与固定词典和动态词典中的词语,根据第一概率和第二概率计算加权概率;对于只存在于固定词典或动态词典中的词语,根据第一概率或第二概率计算加权概率。这样,针对问题的语句中的每个位置,对于固定词典和动态词典的词典合集中的每个词语,均有一个加权概率,可选择加权概率排列前几名的词语,通过束搜索(Beam Search)的方法,确定问题的语句中每个位置对应的词语。
本实施例中,问题生成模型可采用双向LSTM的编码层和单向LSTM的解码器。首先采用双向LSTM对输入序列进行编码。在解码阶段,通过单向LSTM网络依次解码得到输出元素,最终得到输出序列。解码后的输出序列由两部分组成,一部分是从预定义的固定词典中生成词语的第一概率,另一部分是从由输入序列构成的动态词典中复制词语的第二概率,两部分概率的加权和表示输出元素的概率分布。
本实施例中,在确定问题的语句中每个位置的词语时,考虑固定词典中的每个词语的第一概率和动态词典中每个词语的第二概率,计算加权概率,从而获得的问题的语句构词更加准确、语法更加流畅。
在一种实施方式中,根据加权概率,确定语句中每个位置的词语,包括:
针对语句的各个位置,将位置对应的加权概率最大的词语确定为该位置的词语。
一般情况下,固定词典包含了问题的语句中所有可能出现的词语,根据词库的词语构建,进而针对多数文本内容,固定词典中的词语能够包含文本内容的动态词典中的所有词语。少数情况下,动态词典中可能包括固定词典中没有的词语。因此,针对问题的语句中的每个位置,计算词典合集中每个词语的加权概率。本实施例中,假设词典合集中存在120个词语,对于问题的语句中的第一个位置,词典合集中120个词语分别具有120个加权概率,从这120个加权概率中,选择最大的加权概率的词语,作为第一位置的词语,依次类推,直到问题到达设置的问题的语句最大长度,或者直到最大概率的词语为终止符。
本实施例中,将加权概率最大的词语确定为语句中相应位置的词语,从而能够选择出问题的语句中每个位置的最优词语,进而针对每个关键词能够确定出句法最优的问题的语句,提高提问的质量。
在一种实施方式中,计算词典合集中的一个词语在语句中的一个位置的加权概率的方式包括:
在词语同时存在于固定词典和动态词典的情况下,对词语在位置的第一概率和词语在位置的第二概率进行加权求和,将加权求和的结果作为词语在该位置的加权概率;
在词语仅存在于固定词典的情况下,将第一概率作为词语在该位置的加权概率;
在词语仅存在于动态词典的情况下,将第二概率作为词语在该位置的加权概率。
对词语在位置的第一概率和词语在位置的第二概率进行加权求和,具体可以是将该词语在语句的位置的第一概率和第一加权值的乘积、与该词语在语句的位置的第二概率和第二加权值的乘积相加,获得加权求和的结果。
在其它实施例中,在词语仅存在于固定词典的情况下,可以将第一概率与第一加权值的乘积作为词语在该位置的加权概率。在词语仅存在于动态词典的情况下,可以将第二概率与第二加权值的乘积作为词语在该位置的加权概率。
本实施例中,可以根据文本内容的具体内容,计算第一加权值和第二加权值。也可根据文本内容中的关键词数量和/或关键词的概率,确定第一加权值和第二加权值。
在其它实施例中,在词语不存在于固定词典或者动态词典的情况下,相应的第一概率或者第二概率可以视为0。
在其它实施例中,还可以设置特定的加权公式,将第一概率和第二概率代入加权公式计算获得加权概率。
本实施例中,在词语同时存在于固定词典和动态词典的情况下,根据第一概率和第二概率计算加权概率,在词语仅存在于固定词典或动态词典的情况下,可以仅根据第一概率或第二概率计算加权概率,从而,可以更有效的利用动态词典中的词语,使得问题的语句与文本内容能够更好地结合起来。
在一种实施方式中,问题生成模型包括双向LSTM编码层和单向LSTM解码层。
采用双向LSTM的编码层和单向LSTM解码层,能够实现对词典中的各词语为问题的语句中各位置的词语进行计算,从而获得词典中各词语在问题的语句中各位置的概率。
在一种实施方式中,根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率,包括:
将文本内容输入关键词提取模型;
采用关键词提取模型,获得至少一个关键词和每个关键词对应的概率。
本实施例中,关键词提取模型可以是树模型或者其它机器学习模型,或者可以是深度学习模型。关键词提取模型为采用一定的语料进行训练获得的模型,将文本内容输入关键词提取模型后,训练好的关键词提取模型能够输出至少一个关键词,和每个输出的关键词对应的概率。
本实施例中,利用关键词提取模型提取文本内容的关键词,从而提高关键词提取的效率和速度,减少人工操作成本。通过对待训练的关键词提取模型的训练,能够使得关键词提取模型针对文本内容提取出其所包含的多个不同的知识领域的关键词,从而相应生成的问题也可以涉及多个不同的知识领域,提高了问题的丰富多样性。
在一种实施方式中,关键词提取模型包括双向长短期记忆神经网络LSTM层、条件随机场CRF层和输出层;
采用关键词提取模型,获得至少一个关键词和关键词对应的概率,包括:
采用双向LSTM层,根据输入的文本内容获得文本内容的隐状态输出序列;
采用双向LSTM层,将隐状态输出序列映射到K维空间,得到文本内容的句子特征,K为正整数;
采用CRF层计算句子特征,得到文本内容中的每个分词为关键词的概率;
采用输出层,将大于概率阈值的分词作为关键词,获得至少一个关键词和关键词对应的概率。
首先用双向LSTM层自动提取句子的特征,得到隐状态输出序列,并将隐状态映射到K维空间得到句子特征。然后接入一个CRF层进行句子级别的序列标注,得到文本内容中的每个分词为关键词的概率。
本实施例中,针对最终问题生成模型输出的问题,可以对每个问题进行打分,将打分结果反馈给问题生成模型和/或关键词提取模型,从而对问题生成模型和/或关键词提取模型进行持续的优化。同时,采用双向LSTM和CRF结合的模型作为关键词提取模型能够提高关键词提取的准确性。
本实施例采用关键词提取模型提取关键词,可以利用多个领域的语料对模型进行训练,使得模型能够根据文本内容提取出多个不同领域的关键词,节省人力操作,增加问题的生成的侧重点,丰富问题的语句数量。
本申请实施例还提供一种模型训练方法,如图2所示,包括:
步骤S21:根据第一样本文本,获得第一样本文本中的至少一个第一样本关键词以及每个第一样本关键词的概率;
步骤S22:根据第一样本关键词、第一样本关键词的概率和第一样本文本,获得每个第一样本关键词对应的第一样本输入序列;
步骤S23:将第一样本文本输入序列输入待训练问题生成模型,获得输出结果;
步骤S24:根据输出结果和参考问题,获得问题生成损失;
步骤S25:根据问题生成损失,优化待训练问题生成模型,获得问题生成模型。
本实施例中,第一样本文本为样本语料的文本。每个第一样本关键词对应的第一样本输入序列,为针对每个第一样本关键词,在第一样本文本的分词向量构成的分词向量序列中,将对应的第一样本关键词的概率拼接在第一样本关键词对应的分词向量后获得第一样本输入序列。
将第一样本文本输入序列输入待训练问题生成模型,获得的输出结果可以为待训练问题生成模型生成的问题。参考问题可以为通过人工设定等其它方式,确定的标准问题。根据输出结果和参考问题,获得问题生成损失,具体可以为根据输出结果和参考问题的语义相似度,获得问题生成损失。问题损失还可以根据输出结果的语义通顺度确定。计算问题生成损失时,可采用交叉熵损失函数,用ADAM(亚当)优化方法更新待训练问题生成模型的参数梯度,获得训练完成的问题生成模型。
本实施例中,用第一样本文本和第一样本关键词训练待训练问题生成模型,获得问题生成模型,从而在基于大量语料的训练过程中,待训练问题生成模型能够学习到如何根据关键词和关键词的概率输出较为准确且通顺的问题。
在一种实施方式中,根据第一样本文本,获得第一样本文本中的至少一个第一样本关键词以及每个第一样本关键词的概率,包括:
将第一样本文本输入关键词提取模型,获得至少一个第一样本关键词和第一样本关键词的概率。
本实施例中,通过关键词提取模型提取用于训练待训练问题生成模型的第一样本关键词以及输出的第一样本关键词的概率,能够使得模型训练过程与模型预测过程接近,从而在实际应用中模型输出的问题生成模型准确性、通顺性更高。
本申请实施例还提供一种模型训练方法,如图3所示,包括:
步骤S31:根据第二样本文本、样本问题和关键词提取规则,获得第二样本文本中的第二样本关键词;
步骤S32:利用第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型。
本实施例中,关键词提取规则可以是人为设定的提取规则。具体操作可以包括:根据第二样本文本和样本问题构成的文本,依照关键词提取规则提取其中的关键词,获得第二样本关键词。
关键词提取规则比如可以是,将第二样本文本和样本问题中重复次数高于设定阈值的词语,作为第二样本关键词。关键词提取规则可以人为设定,比如,在对文章段落和对应问题研究分析后,发现文本内容和问题文本中共同出现的词串是关键内容,预示着生成问题的范围,可以设置关键词提取规则为基于文本内容和问题文本中共同出现的词串进行第二样本关键词的提取。
样本问题可以是与第二样本文本中的关键内容有关的一个或多个问题。
本实施例中,采用第二样本文本、样本问题和第二样本关键词,训练待训练的关键词提取模型,从而在训练过程中,模型能够学习到如何提取与样本问题有关的关键词,进而训练得到的关键词提取模型能够基于提问进行关键词提取,最终提高问题生成的效果。
在一种实施方式中,利用第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型,包括:
将第二样本文本、样本问题输入待训练关键词提取模型,得到输出关键词和每个输出关键词的概率;
根据第二样本关键词、输出关键词和每个输出关键词的概率,得到关键词提取损失;
根据关键词提取损失,优化待训练关键词提取模型,得到关键词提取模型。
在按照设定的关键词提取规则提取第二样本关键词时,可以确定第二样本关键词的概率。或者,由于第二样本关键词是根据设定的关键词提取规则获得的,具有较高的准确性,因此第二样本关键词的概率可以均设置为100%。
在关键词提取模型训练阶段,文本内容和问题都是已知的,可直接根据问题获取到关键词。但在预测阶段,关键词是未知的,需要先根据文本内容预测关键词。因为关键词来自于文章中,所以可以将关键词预测视作一个序列标注任务。关键词提取模型可采用双向LSTM层与CRF层相结合:
首先用双向LSTM层自动提取句子的特征,得到隐状态输出序列,并将隐状态映射到K维空间得到句子特征;
然后接入一个CRF层进行句子级别的序列标注。
本实施例中,利用待训练关键词提取模型对第二样本文本、样本问题进行处理,得到输出关键词和每个输出关键词的概率,然后再采用第二样本关键词获得关键词提取损失,最后根据关键词提取损失优化待训练关键词提取模型获得关键词提取模型。从而,能够训练待训练关键词提取模型提取与问题相关的关键词,进而在后续的关键词预测阶段,关键词提取模型也能够针对提问这一目的进行关键词提取,最终提高问题生成模型的问题输出效果。
本申请实施例还提供一种问题生成装置,如图4所示,包括:
关键词模块41,用于根据用于生成问题的文本内容,获得至少一个关键词和每个关键词对应的概率;
输入序列模块42,用于根据文本内容、关键词和概率,分别获得与每个关键词对应的输入序列;
问题模块43,用于分别将与每个关键词对应的输入序列输入问题生成模型,获得关于每个关键词的问题。
在一种实施方式中,如图5所示,输入序列模块包括:
分词单元51,用于根据文本内容,获得文本分词向量序列;文本分词向量序列包括文本内容中每个分词的分词向量,文本内容中的分词为关键词或非关键词;
概率添加单元52,用于针对每个关键词,在文本分词向量序列中,将关键词对应的概率拼接在关键词的分词向量之后,得到与关键词对应的输入序列。
在一种实施方式中,如图6所示,问题模块包括:
输入单元61,用于针对各个关键词,将关键词对应的输入序列输入问题生成模型;
第一概率单元62,用于根据输入序列,采用问题生成模型针对固定词典中的每个词语进行计算,得到该词语在问题的语句中每个位置的第一概率;固定词典为根据词库构建的词典;
第一概率处理单元63,用于根据第一概率,采用问题生成模型确定问题的语句中每个位置的词语,得到关于关键词的问题。
在一种实施方式中,第一概率处理单元还用于:
根据输入序列,采用问题生成模型针对动态词典中的每个词语,得到词语在问题的语句中每个位置的第二概率;动态词典为文本内容的分词构成的词典;
根据第一概率和第二概率,针对固定词典和动态词典构成的词典合集中的每个词语,计算词语在语句中每个位置的加权概率;
根据加权概率,确定语句中每个位置的词语,得到语句。
在一种实施方式中,第一概率处理单元还用于:
针对语句的各个位置,将在某个位置的加权概率最大的词语确定为该位置的词语。
在一种实施方式中,第一概率处理单元还用于:
在词语同时存在于固定词典和动态词典的情况下,对词语在位置的第一概率和词语在位置的第二概率进行加权求和,将加权求和的结果作为词语在位置的加权概率;
在词语仅存在于固定词典的情况下,将第一概率作为词语在语句中每个位置的加权概率;
在词语仅存在于动态词典的情况下,将第二概率作为词语在语句中每个位置的加权概率。
在一种实施方式中,如图7所示,关键词模块包括:
文本输入单元71,用于将文本内容输入关键词提取模型;
概率单元72,用于采用关键词提取模型,获得至少一个关键词和每个关键词对应的概率。
在一种实施方式中,关键词提取模型包括双向长短期记忆神经网络LSTM层、条件随机场CRF层和输出层;
概率单元还用于:
采用双向LSTM层,根据输入的文本内容获得文本内容的隐状态输出序列;
采用双向LSTM层,将隐状态输出序列映射到K维空间,得到文本内容的句子特征,K为正整数;
采用CRF层计算句子特征,得到文本内容中的每个分词为关键词的概率;
采用输出层,将大于概率阈值的分词作为关键词,获得至少一个关键词和关键词对应的概率。
本申请实施例还提供一种模型训练装置,如图8所示,包括:
第一样本模块81,用于根据第一样本文本,获得第一样本文本中的至少一个第一样本关键词以及每个第一样本关键词的概率;
第一输入序列模块82,用于根据第一样本关键词、第一样本关键词的概率和第一样本文本,获得每个第一样本关键词对应的第一样本输入序列;
输出结果模块83,用于将第一样本文本输入序列输入待训练问题生成模型,获得输出结果;
问题生成损失模块84,用于根据输出结果和参考问题,获得问题生成损失;
问题生成模型优化模块85,用于根据问题生成损失,优化待训练问题生成模型,获得问题生成模型。
在一种实施方式,第一样本模块还用于:
将第一样本文本输入关键词提取模型,获得至少一个第一样本关键词和第一样本关键词的概率。
本申请实施例还提供一种模型训练装置,如图9所示,包括:
第二样本关键词模块91,用于根据第二样本文本、样本问题和关键词提取规则,获得第二样本文本中的第二样本关键词;
训练模块92,用于利用第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型。
在一种实施方式中,如图10所示,训练模块包括:
输出单元101,用于将第二样本文本、样本问题输入待训练关键词提取模型,得到输出关键词和每个输出关键词的概率;
关键词提取损失单元102,用于根据第二样本关键词、输出关键词和每个输出关键词的概率,得到关键词提取损失;
关键词提取模型优化单元103,用于根据关键词提取损失,优化待训练关键词提取模型,得到关键词提取模型。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现,各实施例也可以相互组合、嵌套组合。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(Field Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable logic arrays,PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(Application Specific Integrated Circuits,ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,关键词模块41、输入序列模块42和问题模块43中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,关键词模块41、输入序列模块42和问题模块43中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,关键词模块41、输入序列模块42和问题模块43中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图11所示,是根据本申请实施例的问题生成方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图11所示,该电子设备包括:一个或多个处理器1101、存储器1102,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示图形用户界面(Graphical User Interface,GUI)的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图11中以一个处理器1101为例。
存储器1102即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的问题生成方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的问题生成方法。
存储器1102作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的问题生成方法对应的程序指令/模块(例如,附图4所示的关键词模块41、输入序列模块42和问题模块43)。处理器1101通过运行存储在存储器1102中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的问题生成方法。
存储器1102可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据问题生成方法的电子设备的使用所创建的数据等。此外,存储器1102可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器1102可选包括相对于处理器1101远程设置的存储器,这些远程存储器可以通过网络连接至上述电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述电子设备还可以包括:输入装置1103和输出装置1104。处理器1101、存储器1102、输入装置1103和输出装置1104可以通过总线或者其他方式连接,图11中以通过总线连接为例。
输入装置1103可接收输入的数字或字符信息,以及产生与上述电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置1104可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(Liquid Crystal Display,LCD)、发光二极管(Light Emitting Diode,LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用集成电路(Application Specific Integrated Circuits,ASIC)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(programmable logic device,PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(Cathode Ray Tube,阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(Local Area Network,LAN)、广域网(Wide Area Network,WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,针对同一个文本内容提取不同的关键词,分别对每个的关键词进行多个相关方面的提问,提高问题生成的多样性,进而提高问题生成的质量。本申请实施例可以用在教育等领域,从而自动教学系统可以根据阅读材料生成合适的问题,测试用户对该文本材料的理解。也可以用于完成问题回答的逆向任务,用来生成大规模问题和答案语料集。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (27)
1.一种问题生成方法,包括:
根据用于生成问题的文本内容,获得至少一个关键词和每个所述关键词对应的概率;
根据所述文本内容、所述关键词和所述概率,分别获得与每个关键词对应的输入序列;
分别将所述与每个关键词对应的输入序列输入问题生成模型,获得关于所述每个关键词的问题;
其中,所述分别将所述与每个关键词对应的输入序列输入问题生成模型,获得关于所述每个关键词的问题,包括:
针对各个关键词,将所述关键词对应的输入序列输入问题生成模型;
根据所述输入序列,采用所述问题生成模型针对固定词典中的每个词语进行计算,得到所述词语在所述问题的语句中每个位置的第一概率;所述固定词典为根据词库构建的词典;
根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题;
所述根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题,包括:针对所述问题的语句中第i个位置,选择第一概率最大的词语为该位置的词语,至语句终了词语,得到所述关键词的问题。
2.根据权利要求1所述的方法,其中,所述根据所述文本内容、所述关键词和所述概率,分别获得与每个关键词对应的输入序列,包括:
根据所述文本内容,获得文本分词向量序列;所述文本分词向量序列包括所述文本内容中每个分词的分词向量,所述文本内容中的分词为关键词或非关键词;
针对每个关键词,在所述文本分词向量序列中,将所述关键词对应的概率拼接在所述关键词的分词向量之后,得到与所述关键词对应的输入序列。
3.根据权利要求1所述的方法,其中,所述根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题,包括:
根据所述输入序列,采用所述问题生成模型针对动态词典中的每个词语,得到所述词语在所述问题的语句中每个位置的第二概率;所述动态词典为所述文本内容的分词构成的词典;
根据所述第一概率和所述第二概率,针对所述固定词典和所述动态词典构成的词典合集中的每个词语,计算所述词语在所述语句中每个位置的加权概率;
根据所述加权概率,确定所述语句中每个位置的词语,得到所述语句。
4.根据权利要求3所述的方法,其中,所述根据所述加权概率,确定所述语句中每个位置的词语,包括:
针对所述语句的各个位置,将在所述位置的加权概率最大的词语确定为所述位置的词语。
5.根据权利要求3所述的方法,其中,计算所述词典合集中的一个词语在所述语句中的一个位置的加权概率的方式包括:
在所述词语同时存在于所述固定词典和所述动态词典的情况下,对所述词语在所述位置的第一概率和所述词语在所述位置的第二概率进行加权求和,将加权求和的结果作为所述词语在所述位置的加权概率;
在所述词语仅存在于所述固定词典的情况下,将第一概率作为所述词语在所述语句中每个位置的加权概率;
在所述词语仅存在于所述动态词典的情况下,将第二概率作为所述词语在所述语句中每个位置的加权概率。
6.根据权利要求3-5中任意一项所述的方法,其中,所述问题生成模型包括双向LSTM编码层和单向LSTM解码层;所述双向LSTM编码层和单向LSTM解码层用于根据输入序列输出所述加权概率。
7.根据权利要求1或2所述的方法,其中,所述根据用于生成问题的文本内容,获得至少一个关键词和每个所述关键词对应的概率,包括:
将所述文本内容输入关键词提取模型;
采用所述关键词提取模型,获得所述至少一个关键词和每个所述关键词对应的概率。
8.根据权利要求7所述的方法,其中,所述关键词提取模型包括双向长短期记忆神经网络LSTM层、条件随机场CRF层和输出层;
所述采用所述关键词提取模型,获得所述至少一个关键词和所述关键词对应的概率,包括:
采用双向LSTM层,根据输入的文本内容获得所述文本内容的隐状态输出序列;
采用所述双向LSTM层,将所述隐状态输出序列映射到K维空间,得到所述文本内容的句子特征,所述K为正整数;
采用所述CRF层计算所述句子特征,得到所述文本内容中的每个分词为关键词的概率;
采用所述输出层,将大于概率阈值的分词作为关键词,获得至少一个关键词和所述关键词对应的概率。
9.一种模型训练方法,包括:
根据第一样本文本,获得所述第一样本文本中的至少一个第一样本关键词以及每个所述第一样本关键词的概率;
根据所述第一样本关键词、所述第一样本关键词的概率和第一样本文本,获得每个所述第一样本关键词对应的第一样本输入序列;
将所述第一样本输入序列输入待训练问题生成模型,获得输出结果;
根据所述输出结果和参考问题,获得问题生成损失;
根据所述问题生成损失,优化所述待训练问题生成模型,获得问题生成模型;
其中,所述将所述第一样本输入序列输入待训练问题生成模型,获得输出结果,包括:
针对各个第一样本关键词,将所述第一样本关键词对应的第一样本输入序列输入待训练问题生成模型;
根据所述第一样本输入序列,采用所述待训练问题生成模型针对固定词典中的每个词语进行计算,得到所述词语在所述输出结果的语句中每个位置的第三概率;所述固定词典为根据词库构建的词典;
根据所述第三概率,采用所述待训练问题生成模型确定所述输出结果的语句中每个位置的词语,得到所述输出结果;
所述根据所述第三概率,采用所述待训练问题生成模型确定所述输出结果的语句中每个位置的词语,得到所述输出结果,包括:针对所述输出结果的语句中第i个位置,选择第三概率最大的词语为该位置的词语,至语句终了词语,得到所述输出结果。
10.根据权利要求9所述的方法,其中,所述根据第一样本文本,获得所述第一样本文本中的至少一个第一样本关键词以及每个所述第一样本关键词的概率,包括:
将所述第一样本文本输入关键词提取模型,获得至少一个所述第一样本关键词和所述第一样本关键词的概率。
11.一种模型训练方法,包括:
根据第二样本文本、样本问题和关键词提取规则,获得第二样本文本中的第二样本关键词;
利用所述第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型;
根据用于生成问题的文本内容,利用所述关键词提取模型获得至少一个关键词和每个所述关键词对应的概率;
根据所述文本内容、所述关键词和所述概率,分别获得与每个关键词对应的输入序列;
分别将所述与每个关键词对应的输入序列输入问题生成模型,获得关于所述每个关键词的问题;
其中,所述分别将所述与每个关键词对应的输入序列输入问题生成模型,获得关于所述每个关键词的问题,包括:
针对各个关键词,将所述关键词对应的输入序列输入问题生成模型;
根据所述输入序列,采用所述问题生成模型针对固定词典中的每个词语进行计算,得到所述词语在所述问题的语句中每个位置的第一概率;所述固定词典为根据词库构建的词典;
根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题;
所述根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题,包括:针对所述问题的语句中第i个位置,选择第一概率最大的词语为该位置的词语,至语句终了词语,得到所述关键词的问题。
12.根据权利要求11所述的方法,其中,所述利用所述第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型,包括:
将所述第二样本文本、样本问题输入待训练关键词提取模型,得到输出关键词和每个输出关键词的概率;
根据所述第二样本关键词、所述输出关键词和所述每个输出关键词的概率,得到关键词提取损失;
根据所述关键词提取损失,优化所述待训练关键词提取模型,得到所述关键词提取模型。
13.一种问题生成装置,包括:
关键词模块,用于根据用于生成问题的文本内容,获得至少一个关键词和每个所述关键词对应的概率;
输入序列模块,用于根据所述文本内容、所述关键词和所述概率,分别获得与每个关键词对应的输入序列;
问题模块,用于分别将所述与每个关键词对应的输入序列输入问题生成模型,获得关于所述每个关键词的问题;
其中,所述问题模块包括:
输入单元,用于针对各个关键词,将所述关键词对应的输入序列输入问题生成模型;
第一概率单元,用于根据所述输入序列,采用所述问题生成模型针对固定词典中的每个词语进行计算,得到所述词语在所述问题的语句中每个位置的第一概率;所述固定词典为根据词库构建的词典;
第一概率处理单元,用于根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题;
所述第一概率处理单元,具体用于针对所述问题的语句中第i个位置,选择第一概率最大的词语为该位置的词语,至语句终了词语,得到所述关键词的问题。
14.根据权利要求13所述的装置,其中,所述输入序列模块包括:
分词单元,用于根据所述文本内容,获得文本分词向量序列;所述文本分词向量序列包括所述文本内容中每个分词的分词向量,所述文本内容中的分词为关键词或非关键词;
概率添加单元,用于针对每个关键词,在所述文本分词向量序列中,将所述关键词对应的概率拼接在所述关键词的分词向量之后,得到与所述关键词对应的输入序列。
15.根据权利要求13所述的装置,其中,所述第一概率处理单元还用于:
根据所述输入序列,采用所述问题生成模型针对动态词典中的每个词语,得到所述词语在所述问题的语句中每个位置的第二概率;所述动态词典为所述文本内容的分词构成的词典;
根据所述第一概率和所述第二概率,针对所述固定词典和所述动态词典构成的词典合集中的每个词语,计算所述词语在所述语句中每个位置的加权概率;
根据所述加权概率,确定所述语句中每个位置的词语,得到所述语句。
16.根据权利要求15所述的装置,其中,所述第一概率处理单元还用于:
针对所述语句的各个位置,将在所述位置的加权概率最大的词语确定为所述位置的词语。
17.根据权利要求15所述的装置,其中,所述第一概率处理单元还用于:
在所述词语同时存在于所述固定词典和所述动态词典的情况下,对所述词语在所述位置的第一概率和所述词语在所述位置的第二概率进行加权求和,将加权求和的结果作为所述词语在所述位置的加权概率;
在所述词语仅存在于所述固定词典的情况下,将第一概率作为所述词语在所述语句中每个位置的加权概率;
在所述词语仅存在于所述动态词典的情况下,将第二概率作为所述词语在所述语句中每个位置的加权概率。
18.关于权利要求15-17中任意一项所述的装置,其中,所述问题生成模型包括双向LSTM编码层和单向LSTM解码层;所述双向LSTM编码层和单向LSTM解码层用于根据输入序列输出所述加权概率。
19.根据权利要求13或14所述的装置,其中,所述关键词模块包括:
文本输入单元,用于将所述文本内容输入关键词提取模型;
概率单元,用于采用所述关键词提取模型,获得所述至少一个关键词和每个所述关键词对应的概率。
20.根据权利要求19所述的装置,其中,所述关键词提取模型包括双向长短期记忆神经网络LSTM层、条件随机场CRF层和输出层;
所述概率单元还用于:
采用双向LSTM层,根据输入的文本内容获得所述文本内容的隐状态输出序列;
采用所述双向LSTM层,将所述隐状态输出序列映射到K维空间,得到所述文本内容的句子特征,所述K为正整数;
采用所述CRF层计算所述句子特征,得到所述文本内容中的每个分词为关键词的概率;
采用所述输出层,将大于概率阈值的分词作为关键词,获得至少一个关键词和所述关键词对应的概率。
21.一种模型训练装置,包括:
第一样本模块,用于根据第一样本文本,获得所述第一样本文本中的至少一个第一样本关键词以及每个所述第一样本关键词的概率;
第一输入序列模块,用于根据所述第一样本关键词、所述第一样本关键词的概率和第一样本文本,获得每个所述第一样本关键词对应的第一样本输入序列;
输出结果模块,用于将所述第一样本文本输入序列输入待训练问题生成模型,获得输出结果;
问题生成损失模块,用于根据所述输出结果和参考问题,获得问题生成损失;
问题生成模型优化模块,用于根据所述问题生成损失,优化所述待训练问题生成模型,获得问题生成模型;
所述输出结果模块,还用于:
针对各个第一样本关键词,将所述第一样本关键词对应的第一样本输入序列输入待训练问题生成模型;
根据所述第一样本输入序列,采用所述待训练问题生成模型针对固定词典中的每个词语进行计算,得到所述词语在所述输出结果的语句中每个位置的第三概率;所述固定词典为根据词库构建的词典;
根据所述第三概率,采用所述待训练问题生成模型确定所述输出结果的语句中每个位置的词语,得到所述输出结果;
所述根据所述第三概率,采用所述待训练问题生成模型确定所述输出结果的语句中每个位置的词语,得到所述输出结果,包括:针对所述输出结果的语句中第i个位置,选择第三概率最大的词语为该位置的词语,至语句终了词语,得到所述输出结果。
22.根据权利要求21所述的装置,所述第一样本模块还用于:
将所述第一样本文本输入关键词提取模型,获得至少一个所述第一样本关键词和所述第一样本关键词的概率。
23.一种模型训练装置,包括:
第二样本关键词模块,用于根据第二样本文本、样本问题和关键词提取规则,获得第二样本文本中的第二样本关键词;
训练模块,用于利用所述第二样本文本、样本问题和第二样本关键词,训练待训练关键词提取模型,得到关键词提取模型;
问题生成模块,用于:
根据用于生成问题的文本内容,利用所述关键词提取模型获得至少一个关键词和每个所述关键词对应的概率;
根据所述文本内容、所述关键词和所述概率,分别获得与每个关键词对应的输入序列;
分别将所述与每个关键词对应的输入序列输入问题生成模型,获得关于所述每个关键词的问题;
其中,所述分别将所述与每个关键词对应的输入序列输入问题生成模型,获得关于所述每个关键词的问题,包括:
针对各个关键词,将所述关键词对应的输入序列输入问题生成模型;
根据所述输入序列,采用所述问题生成模型针对固定词典中的每个词语进行计算,得到所述词语在所述问题的语句中每个位置的第一概率;所述固定词典为根据词库构建的词典;
根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题;
所述根据所述第一概率,采用所述问题生成模型确定所述问题的语句中每个位置的词语,得到所述关键词的问题,包括:针对所述问题的语句中第i个位置,选择第一概率最大的词语为该位置的词语,至语句终了词语,得到所述关键词的问题。
24.根据权利要求23所述的装置,其中,所述训练模块包括:
输出单元,用于将所述第二样本文本、样本问题输入待训练关键词提取模型,得到输出关键词和每个输出关键词的概率;
关键词提取损失单元,用于根据所述第二样本关键词、所述输出关键词和所述每个输出关键词的概率,得到关键词提取损失;
关键词提取模型优化单元,用于根据所述关键词提取损失,优化所述待训练关键词提取模型,得到所述关键词提取模型。
25.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-12中任一项所述的方法。
26.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-12中任一项所述的方法。
27.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011024969.4A CN112100335B (zh) | 2020-09-25 | 2020-09-25 | 问题生成方法、模型训练方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011024969.4A CN112100335B (zh) | 2020-09-25 | 2020-09-25 | 问题生成方法、模型训练方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112100335A CN112100335A (zh) | 2020-12-18 |
CN112100335B true CN112100335B (zh) | 2024-05-03 |
Family
ID=73755508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011024969.4A Active CN112100335B (zh) | 2020-09-25 | 2020-09-25 | 问题生成方法、模型训练方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112100335B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114170856B (zh) * | 2021-12-06 | 2024-03-12 | 网易有道信息技术(北京)有限公司 | 用机器实施的听力训练方法、设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193865A (zh) * | 2017-04-06 | 2017-09-22 | 上海奔影网络科技有限公司 | 人机交互中自然语言意图理解方法及装置 |
WO2020082560A1 (zh) * | 2018-10-25 | 2020-04-30 | 平安科技(深圳)有限公司 | 文本关键词提取方法、装置、设备及计算机可读存储介质 |
CN111415740A (zh) * | 2020-02-12 | 2020-07-14 | 东北大学 | 问诊信息的处理方法、装置、存储介质及计算机设备 |
-
2020
- 2020-09-25 CN CN202011024969.4A patent/CN112100335B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193865A (zh) * | 2017-04-06 | 2017-09-22 | 上海奔影网络科技有限公司 | 人机交互中自然语言意图理解方法及装置 |
WO2020082560A1 (zh) * | 2018-10-25 | 2020-04-30 | 平安科技(深圳)有限公司 | 文本关键词提取方法、装置、设备及计算机可读存储介质 |
CN111415740A (zh) * | 2020-02-12 | 2020-07-14 | 东北大学 | 问诊信息的处理方法、装置、存储介质及计算机设备 |
Non-Patent Citations (1)
Title |
---|
基于关键词词向量特征扩展的健康问句分类研究;唐晓波;高和璇;;数据分析与知识发现;20200725(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112100335A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102577514B1 (ko) | 텍스트 창작 방법, 텍스트 창작 장치, 전자 기기 및 저장 매체 | |
JP7247441B2 (ja) | セマンティック表現モデルの処理方法、装置、電子機器、及び記憶媒体 | |
CN111832292B (zh) | 文本识别处理方法、装置、电子设备和存储介质 | |
CN110717327B (zh) | 标题生成方法、装置、电子设备和存储介质 | |
CN108363790B (zh) | 用于对评论进行评估的方法、装置、设备和存储介质 | |
CN111078865B (zh) | 文本标题生成方法和装置 | |
CN109840287A (zh) | 一种基于神经网络的跨模态信息检索方法和装置 | |
JP7312799B2 (ja) | 情報抽出方法、抽出モデル訓練方法、装置及び電子機器 | |
US11907671B2 (en) | Role labeling method, electronic device and storage medium | |
CN112560479A (zh) | 摘要抽取模型训练方法、摘要抽取方法、装置和电子设备 | |
JP7106802B2 (ja) | リソースソート方法、ソートモデルをトレーニングする方法及び対応する装置 | |
KR20210157342A (ko) | 언어 모델의 훈련 방법, 장치, 전자 기기 및 판독 가능 기록 매체 | |
CN112101010B (zh) | 一种基于bert的电信行业oa办公自动化文稿审核的方法 | |
CN110442880B (zh) | 一种机器翻译译文的翻译方法、装置及存储介质 | |
US20220129448A1 (en) | Intelligent dialogue method and apparatus, and storage medium | |
CN111832278B (zh) | 文档流畅度的检测方法、装置、电子设备及介质 | |
Todi et al. | Building a kannada pos tagger using machine learning and neural network models | |
CN112506949B (zh) | 结构化查询语言查询语句生成方法、装置及存储介质 | |
CN111414561B (zh) | 用于呈现信息的方法和装置 | |
CN112528001B (zh) | 一种信息查询方法、装置及电子设备 | |
CN111859953A (zh) | 训练数据的挖掘方法、装置、电子设备及存储介质 | |
CN114912450B (zh) | 信息生成方法与装置、训练方法、电子设备和存储介质 | |
CN114757184B (zh) | 实现航空领域知识问答的方法和系统 | |
CN112100335B (zh) | 问题生成方法、模型训练方法、装置、设备和存储介质 | |
JP7121791B2 (ja) | 言語生成方法、装置及び電子機器 |
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 |