首页> 中国专利> 问题生成模型训练方法、问题生成方法

问题生成模型训练方法、问题生成方法

摘要

本发明公开一种问题生成模型训练方法,包括:对样本数据集中的样本数据进行预处理,样本数据包括输入文本、问题和答案,预处理包括确定样本数据中问题的问题类型;采用ALBERT对输入文本和问题进行分词处理;将分词处理后的输入文本和问题类型输入至编码器,并获取编码器的输出隐层状态;将分词处理后的问题输入至解码器,并获得解码器的输出隐层状态;根据编码器的输出隐层状态、解码器的输出隐层状态和ALBERT的隐层状态确定预设字典中的每个字的生成概率。本发明通过对问题进行分类确定问题类型,并将问题类型和输入文本一并作为编码器的输入来进行模型训练,可以让生成的问题更加流畅且提问更有针对性。

著录项

  • 公开/公告号CN111782787B

    专利类型发明专利

  • 公开/公告日2022-07-08

    原文格式PDF

  • 申请/专利权人 思必驰科技股份有限公司;

    申请/专利号CN202010632697.X

  • 发明设计人 朱少华;俞凯;缪庆亮;

    申请日2020-07-02

  • 分类号G06F16/332(2019.01);G06F16/35(2019.01);G06F40/289(2020.01);G06F40/30(2020.01);G06N3/04(2006.01);G06N3/08(2006.01);

  • 代理机构北京商专永信知识产权代理事务所(普通合伙) 11400;北京商专永信知识产权代理事务所(普通合伙) 11400;

  • 代理人黄谦;车江华

  • 地址 215123 江苏省苏州市苏州工业园区新平街388号腾飞创新园14栋

  • 入库时间 2022-08-23 13:59:37

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-07-08

    授权

    发明专利权授予

说明书

技术领域

本发明涉及人工智能技术领域,尤其涉及一种问题生成模型训练方法、问题生成方法。

背景技术

问题生成在人类智能的发展和人工智能系统的发展中都起着重要作用。在许多应用领域中,对问题生成的需求正在迅速增长。问题生成系统旨在根据给定的文本生成各种问题。在教育领域,提出好的问题对于评估学生知识和激励自我学习至关重要;在对话系统中,问题生成是机器人的很重要的一项技能,比如可以帮助机器人冷启动或者得到用户的信息从而进行更好的沟通;在阅读理解中,问题生成可以帮助人们自动生成问题,从而节省大量人力物力财力去标注数据。

现有的问题生成任务的研究方法主要分为两类:基于规则的与基于神经网络的方法。基于规则的问题生成方法,需要大量的人力创建规则,生成的问题也具有固定形式,并且无法避免规则中的错误。与基于规则的方法比较而言,基于神经网络的问题生成方法更多的是数据驱动、支持端到端训练的形式,不依赖手工编写的规则。但是目前基于神经网络方法没有对问题进行分类,并且基本是以词为单位作为神经网络输入,会导致未登录词(OOV)现象,从而降低模型精度,而且没有用上目前流行的预训练模型,损失了语言模型信息。

发明内容

本发明实施例提供一种问题生成模型训练方法、问题生成方法,用于至少解决上述技术问题之一。

第一方面,本发明实施例提供一种问题生成模型训练方法,所述问题生成模型采用编码器-解码器结构,所述方法包括:

对样本数据集中的样本数据进行预处理,所述样本数据包括输入文本、问题和答案,所述预处理包括确定所述样本数据中问题的问题类型;

采用ALBERT对所述输入文本和所述问题进行分词处理;

将分词处理后的输入文本和所述问题类型输入至编码器,并获取所述编码器的输出隐层状态;

将分词处理后的问题输入至解码器,并获得所述解码器的输出隐层状态;

根据所述编码器的输出隐层状态、所述解码器的输出隐层状态和所述ALBERT的隐层状态确定预设字典中的每个字的生成概率。

在一些实施例中,所述将分词处理后的输入文本和所述问题类型输入至编码器包括:

确定分词处理后的输入文本中的每个字的字向量;

将所述问题类型映射为相应的问题向量;

将所述问题向量与分词处理后的输入文本中的每个字的字向量相结合并输入至所述编码器。

在一些实施例中,所述根据所述编码器的输出隐层状态、所述解码器的输出隐层状态和所述ALBERT的隐层状态确定预设字典中的每个字的生成概率包括:

将所述编码器的输出隐层状态、所述解码器的输出隐层状态和所述ALBERT的隐层状态拼接在一起;

对拼接结果进行线性变化,后进行分类处理以确定预设字典中的每个字的生成概率。

在一些实施例中,所述编码器为双向LSTM神经网络,所述编码器为单向LSTM神经网络。

在一些实施例中,所述确定所述样本数据中问题的问题类型包括:

确定所述样本数据中问题所包含的预设关键词;

根据所述预设关键词确定所述样本数据中问题的问题类型。

在一些实施例中,所述根据所述预设关键词确定所述样本数据中问题的问题类型包括:

根据所述预设关键词查询预先建立的关键词-问题类型映射关系表,以确定对应于所述预设关键词的问题类型;

确定所述预设关键词的问题类型为所述样本数据中问题的问题类型。

第二方面,本发明实施例还提供一种问题生成方法,包括:

获取问题生成文本作为待输入文本;

将所述待输入文本和问题类型输入至前述实施例中任一项所述的问题生成模型,得到多个生成问题;

对所述多个生成问题按照置信度排序,并选出置信度大于预设阈值的生成问题作为目标生成问题。

在一些实施例中,所述问题类型包括第一至第九问题类型,所述将所述待输入文本和问题类型输入至前述实施例中任一项所述的问题生成模型,得到多个生成问题包括:

将所述待输入文本和第i问题类型输入至前述实施例中任一项所述的问题生成模型,得到第i个生成问题组,i依次取值1至9;

对所述多个生成问题按照置信度排序,并选出置信度大于预设阈值的生成问题作为目标生成问题包括:

对九个生成问题组中的问题分别在组内进行置信度排序得到九个组内排序结果;

从所述九个组内排序结果中选择大于预设阈值的生成问题作为目标生成问题。

第三方面,本发明实施例提供一种存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项问题生成方法。

第四方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明上述任一项问题生成方法。

第五方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项问题生成方法。

本发明实施例的有益效果在于:通过对问题进行分类确定问题类型,并将问题类型和输入文本一并作为编码器的输入来进行模型训练,可以让生成的问题更加流畅且提问更有针对性。此外,采用ALBERT对输入文本和问题进行分词处理得到使得神经网络的输入在字级别,有效解决了未登录词(OOV)现象,提升了模型精度。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的问题生成模型训练方法的一实施例的流程图;

图2为本发明的问题生成模型训练方法的另一实施例的流程图;

图3为本发明的问题生成模型训练方法的另一实施例的示意图;

图4为本发明的问题生成方法的一实施例的流程图;

图5为本发明的电子设备的一实施例的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

在本发明中,“模块”、“装置”、“系统”等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,元件可以、但不限于是运行于处理器的过程、处理器、对象、可执行元件、执行线程、程序和/ 或计算机。还有,运行于服务器上的应用程序或脚本程序、服务器都可以是元件。一个或多个元件可在执行的过程和/ 或线程中,并且元件可以在一台计算机上本地化和/ 或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。元件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地系统、分布式系统中另一元件交互的,和/ 或在因特网的网络通过信号与其它系统交互的数据的信号通过本地和/ 或远程过程来进行通信。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

如图1所示,本发明的实施例提供一种问题生成模型训练方法,所述问题生成模型采用编码器-解码器结构,所述方法包括:

S11、对样本数据集中的样本数据进行预处理,样本数据包括输入文本、问题和答案,预处理包括确定所述样本数据中问题的问题类型;

S12、采用ALBERT对输入文本和问题进行分词处理;

S13、将分词处理后的输入文本和问题类型输入至编码器,并获取编码器的输出隐层状态;示例性地,编码器为双向LSTM神经网络,

S14、将分词处理后的问题输入至解码器,并获得解码器的输出隐层状态;示例性地,编码器为单向LSTM神经网络。

S15、根据编码器的输出隐层状态、解码器的输出隐层状态和ALBERT的隐层状态确定预设字典中的每个字的生成概率。示例性地,将编码器的输出隐层状态、解码器的输出隐层状态和ALBERT的隐层状态拼接在一起;对拼接结果进行线性变化,后进行分类处理以确定预设字典中的每个字的生成概率。

本发明实施例中通过对问题进行分类确定问题类型,并将问题类型和输入文本一并作为编码器的输入来进行模型训练,可以让生成的问题更加流畅且提问更有针对性。此外,采用ALBERT对输入文本和问题进行分词处理得到使得神经网络的输入在字级别,有效解决了未登录词(OOV)现象,提升了模型精度。

在步骤S12中,将输入文本和问题用

如图2所示,为本发明的问题生成模型训练方法的另一实施例的流程图,该实施例中,所述将分词处理后的输入文本和所述问题类型输入至编码器包括:

S131、确定分词处理后的输入文本中的每个字的字向量;

S132、将所述问题类型映射为相应的问题向量;

S133、将所述问题向量与分词处理后的输入文本中的每个字的字向量相结合并输入至所述编码器。

如图3所示,为本发明的问题生成模型训练方法的另一实施例的示意图。示例性地,将输入文本以及得到的问题类型输入到编码器,输出隐层状态。例如输入文本为“平 板电 脑 一 般 都 内 置 无 线 模 块 也 就 是 无 线 网 卡 , 不 需 要 单 独 再 安装 了。 直 接 连 wifi 就 可 以 使 用 了。”,问题为“平 板 能 用 无 线 网 卡 吗”,且问题的类型为yes or no,如果文本中每个字的输入为300维,问题类型为10维,那么最终每个字的输入为300 + 10 = 310维。该编码器是一个2层双向

如图3所示,在步骤S14中,将问题输入到解码器,输出隐层状态,并将隐层状态和

在一些实施例中,所述确定所述样本数据中问题的问题类型包括:确定所述样本数据中问题所包含的预设关键词;根据所述预设关键词确定所述样本数据中问题的问题类型。示例性地,根据所述预设关键词查询预先建立的关键词-问题类型映射关系表,以确定对应于所述预设关键词的问题类型;确定所述预设关键词的问题类型为所述样本数据中问题的问题类型。

示例性地,本发明还提供一种问题生成方法,该问题生成方法采用前述实施例中的训练得到的问题生成模型。

如图4所示,为本发明的问题生成方法的一实施例的流程图,该实施例中包括:

S21、获取问题生成文本作为待输入文本;

S22、将所述待输入文本和问题类型输入至前述实施例中任一项所述的问题生成模型,得到多个生成问题;

S23、对所述多个生成问题按照置信度排序,并选出置信度大于预设阈值的生成问题作为目标生成问题。

本发明的问题生成方法可以让生成的问题更加流畅且提问更有针对性。并且有效解决了未登录词(OOV)现象,提升了模型精度。

在推理的时候,由于只有输入文本,没有问题类型,所以需要将每个问题类型和输入文本组合成编码器的输入,然后每个问题类型生成一个或者多个问题,但是由于有些问题类型并不一定适用于当前的输入文本,所以需要用分类器对输出的问题进行分类,然后根据置信度排序,高于预设的阈值的为合理的问题。

在一些实施例中,所述问题类型包括第一至第九问题类型,所述将所述待输入文本和问题类型输入至前述实施例中任一项所述的问题生成模型,得到多个生成问题包括:

将所述待输入文本和第i问题类型输入至前述实施例中任一项所述的问题生成模型,得到第i个生成问题组,i依次取值1至9;

对所述多个生成问题按照置信度排序,并选出置信度大于预设阈值的生成问题作为目标生成问题包括:

对九个生成问题组中的问题分别在组内进行置信度排序得到九个组内排序结果;

从所述九个组内排序结果中选择大于预设阈值的生成问题作为目标生成问题。

示例性地,要提出一个好的问题的前提是要知道针对输入文本的哪一方面来提问,即要先知道答案,但是由于神经网络模型需要大量的标注好的输入文本、问题和答案来训练出一个好的模型,但同时获取大量标注的问题的答案成本很高,所以本专利用基于规则的方法来对问题进行分类。根据问题中答案的类型,类别可分为以下9类:what, which,where, how, why, who, numeric, when和yes or no。对于每一条数据而言,在问题类型获取后,将该类型映射为一个向量,并且拼接到输入文本中的每个字向量上,该做法可以让生成的问题更加流畅且提问更有针对性。该规则通过对问题进行模板匹配,进而判断出该问题的类型。例如:当问题中匹配到“何处”这个词时,该规则就认为该问题属于where类别。当问题中匹配到“怎么办”这个词时,该规则就认为该问题属于how类别。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在一些实施例中,本发明实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项问题生成方法。

在一些实施例中,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项问题生成方法。

在一些实施例中,本发明实施例还提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行问题生成方法。

在一些实施例中,本发明实施例还提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现问题生成方法。

图5是本申请另一实施例提供的执行问题生成方法的电子设备的硬件结构示意图,如图5所示,该设备包括:

一个或多个处理器510以及存储器520,图5中以一个处理器510为例。

执行问题生成方法的设备还可以包括:输入装置530和输出装置540。

处理器510、存储器520、输入装置530和输出装置540可以通过总线或者其他方式连接,图5中以通过总线连接为例。

存储器520作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的问题生成方法对应的程序指令/模块。处理器510通过运行存储在存储器520中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例问题生成方法。

存储器520可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据问题生成装置的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器520可选包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至问题生成装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置530可接收输入的数字或字符信息,以及产生与问题生成装置的用户设置以及功能控制有关的信号。输出装置540可包括显示屏等显示设备。

所述一个或者多个模块存储在所述存储器520中,当被所述一个或者多个处理器510执行时,执行上述任意方法实施例中的问题生成方法。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

本申请实施例的电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号