本说明书涉及计算机,尤其涉及一种答案生成方法、装置、设备与存储介质。
背景技术:
1、随着自然语言处理(nlp)的快速发展,客户服务聊天机器人已经在行业中得到广泛应用,因为它们可以显著降低人类客户服务的成本。其中,检索式问答(faq)通常在聊天机器人系统中发挥着重要作用。但构建维护高质量的faq知识库需要很大的人力。
2、faq知识库中很重要的一部分知识来源是问题答案(qa)对。然而,现有的研究大多集中在基于文档的qa任务上,而缺乏对基于会话的qa和相关数据集的研究。基于对话的qa的挑战包括:1)答案可能分散在多个对话回合中;2)理解复杂的对话语境比文件更复杂。因此,亟待提出一种能够提高对话问题回答准确性的方法。
技术实现思路
1、本说明书的主要目的在于提供一种答案生成方法、装置、设备与存储介质,旨在解决对话场景下问题回答准确性低的问题。所述技术方案如下:
2、第一方面,本说明书实施例提供了一种答案生成方法,包括:
3、获取问题数据和所述问题数据对应的对话数据;
4、确认所述问题数据对应的问题特征编码数据和所述对话数据对应的对话特征编码数据;
5、基于所述问题特征编码数据和所述对话特征编码数据,确认所述问题数据的答案分类结果、单跨度答案预测结果和多跨度答案预测结果;所述答案分类结果包括无答案、单跨度答案或多跨度答案中的任一种;
6、基于所述答案分类结果、所述单跨度答案预测结果和所述多跨度答案预测结果,确认所述问题数据的答案。
7、第二方面,本说明书实施例提供了一种答案生成模型训练方法,包括:
8、构建训练样本数据集,所述训练样本数据集中各训练样本数据包括样本问题数据和样本对话数据,以及所述训练样本数据的标识数据,所述标识数据包括所述样本问题数据的标注答案数据和所述样本答案数据的标注答案类型;
9、将所述训练样本数据集中的各训练样本数据分别输入至预训练编码模型,得到各所述训练样本数据对应的样本特征向量数据;
10、将所述样本特征向量数据输入分类层,得到所述样本问题数据的样本答案分类结果;
11、将所述样本特征向量数据输入预测层,得到所述样本问题数据的样本单跨度答案预测结果和样本多跨度答案预测结果;
12、将所述样本特征向量数据输入关键对话选择模型,得到所述样本对话数据中每一轮次对话数据包含答案的第一概率;
13、基于预设损失函数、基于所述样本答案分类结果、所述样本单跨度答案预测结果、所述样本多跨度答案预测结果、所述第一概率以及所述标识数据对所述答案生成模型进行监督训练并迭代更新所述答案生成模型的模型参数,直至答案生成模型收敛,得到训练完成的答案生成模型。
14、第三方面,本说明书实施例提供一种答案生成装置,包括:
15、获取模块,用于获取问题数据和所述问题数据对应的对话数据;
16、编码模块,用于确认所述问题数据对应的问题特征编码数据和所述对话数据对应的对话特征编码数据;
17、分类预测模块,用于基于所述问题特征编码数据和所述对话特征编码数据,确认所述问题数据的答案分类结果、单跨度答案预测结果和多跨度答案预测结果;所述答案分类结果包括无答案、单跨度答案或多跨度答案中的任一种;
18、答案推理模块,用于基于所述答案分类结果、所述单跨度答案预测结果和所述多跨度答案预测结果,确认所述问题数据的答案。
19、第四方面,本说明书实施例提供一种答案生成装置,包括:
20、数据集构建模块,用于构建训练样本数据集,所述训练样本数据集中各训练样本数据包括样本问题数据和样本对话数据,以及所述训练样本数据的标识数据,所述标识数据包括所述样本问题数据的标注答案数据和所述样本答案数据的标注答案类型;
21、特征提取模块,用于将所述训练样本数据集中的各训练样本数据分别输入至预训练编码模型,得到各所述训练样本数据对应的样本特征向量数据;
22、分类模块,用于将所述样本特征向量数据输入分类层,得到所述样本问题数据的样本答案分类结果;
23、预测模块,用于将所述样本特征向量数据输入预测层,得到所述样本问题数据的样本单跨度答案预测结果和样本多跨度答案预测结果;
24、辅助训练模块,用于将所述样本特征向量数据输入关键对话选择模型,得到所述样本对话数据中每一轮次对话数据包含答案的第一概率;
25、参数更新模块,用于基于预设损失函数、基于所述样本答案分类结果、所述样本单跨度答案预测结果、所述样本多跨度答案预测结果、所述第一概率以及所述标识数据对所述答案生成模型进行监督训练并迭代更新所述答案生成模型的模型参数,直至答案生成模型收敛,得到训练完成的答案生成模型。
26、第五方面,本说明书实施例提供一种电子设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上述方法的步骤。
27、第六方面,本说明书实施例提供一种存储介质,所述存储介质上存储有计算机程序,所述答案生成程序被处理器执行时实现如上述方法的步骤。
28、第七方面,本说明书实施例提供了一种计算机程序产品,包括:计算机程序,当所述计算机程序被电子设备的处理器执行时,使所述处理器至少可以实现如第一方面至第二方面所述的方法。
29、在本说明书实施例中,通过获取问题数据和问题数据对应的对话数据,确认问题数据对应的问题特征编码数据和对话数据对应的对话特征编码数据,基于问题特征编码数据和对话特征编码数据,确认问题数据的答案分类结果、单跨度答案预测结果和多跨度答案预测结果,答案分类结果包括无答案、单跨度答案或多跨度答案中的任一种,基于答案分类结果、单跨度答案预测结果和多跨度答案预测结果,确认问题数据的答案。同时建模了单跨度、多跨度和无答案等多种类型答案的抽取,来解决知识信息分散在多轮中对话中的问题,并且通过增加无答案类别提高拒答能力,能够提高对话场景下的问题回答效果。
1.一种答案生成方法,所述方法包括:
2.如权利要求1所述的方法,所述确认所述问题数据对应的问题特征编码数据和所述对话数据对应的对话特征编码数据,包括:
3.如权利要求1所述的方法,所述基于所述问题特征编码数据和所述对话特征编码数据,确认所述问题数据的答案分类结果、单跨度答案预测结果和多跨度答案预测结果,包括:
4.如权利要求1所述的方法,所述基于所述答案分类结果、所述单跨度答案预测结果和所述多跨度答案预测结果,确认所述问题数据的答案,包括:
5.一种答案生成模型训练方法,所述答案生成模型包括预训练编码模型、分类层、预测层以及关键话语选择模型,所述方法包括:
6.如权利要求5所述的方法,所述构建训练样本数据集,包括:
7.如权利要求5所述的方法,所述将所述训练样本数据集中的各训练样本数据分别输入至预训练编码模型,得到各所述训练样本数据对应的样本特征向量数据之前,还包括:
8.如权利要求5所述的方法,所述分类层包括可答性分类层、多跨度分类层;
9.如权利要求5所述的方法,所述预测层包括单跨度答案预测层和多跨度答案预测层;
10.如权利要求5所述的方法,所述预设损失函数包括第一损失函数、第二损失函数、第三损失函数、和第四损失函数;
11.一种答案生成装置,包括:
12.一种答案生成装置,包括:
13.一种电子设备,包括:处理器和存储器;其中存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1至10中任一项所述方法的步骤。
14.一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述方法的步骤。
15.一种计算机程序产品,包括:计算机程序,当所述计算机程序被电子设备的处理器执行时,使所述处理器执行如权利要求1至10中任一项所述方法的步骤。