首页> 中国专利> 基于对抗网络的知识库扩展方法、装置及计算机设备

基于对抗网络的知识库扩展方法、装置及计算机设备

摘要

本发明公开了基于对抗网络的知识库扩展方法、装置、计算机设备及存储介质,涉及人工智能技术,先通过初始问答标准知识库中的初始问题集作为样本集训练模型得到训练后的对抗网络模型,然后再将初始问题集输入至训练后的对抗网络模型进行运算得到扩展问题集并对应检索答案得到扩展答案集,最后由所述扩展问题集和所述扩展答案集进行组合得到扩展问答标准知识库。实现了通过对抗网络将初始问答标准知识库中的问题集进行数量巨大的自动扩展,提高了问题集扩充的效率以及增加了大量自动扩展的问题,避免了标准化知识库因用户提问数量不足或过度内聚而导致过于稀疏的问题。

著录项

  • 公开/公告号CN112989007A

    专利类型发明专利

  • 公开/公告日2021-06-18

    原文格式PDF

  • 申请/专利权人 平安科技(深圳)有限公司;

    申请/专利号CN202110423116.6

  • 发明设计人 姜敏华;

    申请日2021-04-20

  • 分类号G06F16/332(20190101);G06F16/36(20190101);G06N5/02(20060101);

  • 代理机构44242 深圳市精英专利事务所;

  • 代理人李翔宇

  • 地址 518000 广东省深圳市福田区福田街道福安社区益田路5033号平安金融中心23楼

  • 入库时间 2023-06-19 11:29:13

说明书

技术领域

本发明涉及人工智能的智能决策技术领域,尤其涉及一种基于对抗网络的知识库扩展方法、装置、计算机设备及存储介质。

背景技术

大型企业(例如大型保险公司)所涉及的产品往往数以百计乃至千计,其经年累月所沉淀的知识词条也会达到巨大量级。

在经典的自动问答系统中,常通过将客户输入的问句与知识库中的标准化问句作比对,并抽取出最相近问句的答案返回给客户。

然而此设计在包括巨大量级知识的领域进行知识问答中可能面临以下几个问题:

1、产品知识规模巨大,相对而言用户提问数量不足或过度内聚,导致标准化知识库过于"稀疏",并使用户新输入的问题无法匹配标准问句、或匹配结果与实际需求相去甚远;

2、新上线的产品未沉淀出有效的标准问答库,此冷启动状态下问题检索不易获得有效结果;

3、如通过人工来对海量产品收集客户关注问题,其人工成本高昂,且流程冗长,导致效率低下。

发明内容

本发明实施例提供了一种基于对抗网络的知识库扩展方法、装置、计算机设备及存储介质,旨在解决现有技术中设计巨大量级知识的自动问答系统中用户提问数量不足或过度内聚,导致标准化知识库过于稀疏的问题。

第一方面,本发明实施例提供了一种基于对抗网络的知识库扩展方法,其包括:

获取本地的初始问答标准知识库,并获取所述初始问答标准知识库中的初始问题集和初始答案集;

将所述初始问题集作为训练样本对待训练对抗网络模型进行训练,得到训练后的对抗网络模型;

将所述初始问题集输入至所述训练后的对抗网络模型进行运算,得到扩展问题集;

获取预先存储的数据获取地址信息,在所述数据获取地址信息对应的数据集中检索获取与所述扩展问题集中每一扩展问题对应的扩展答案,组成扩展答案集;以及

将所述扩展问题集和所述扩展答案集进行组合得到扩展问答标准知识库,将所述扩展问答标准知识库进行本地存储。

第二方面,本发明实施例提供了一种基于对抗网络的知识库扩展装置,其包括:

初始知识库获取单元,用于获取本地的初始问答标准知识库,并获取所述初始问答标准知识库中的初始问题集和初始答案集;

模型训练单元,用于将所述初始问题集作为训练样本对待训练对抗网络模型进行训练,得到训练后的对抗网络模型;

扩展问题集获取单元,用于将所述初始问题集输入至所述训练后的对抗网络模型进行运算,得到扩展问题集;

扩展答案集获取单元,用于获取预先存储的数据获取地址信息,在所述数据获取地址信息对应的数据集中检索获取与所述扩展问题集中每一扩展问题对应的扩展答案,组成扩展答案集;以及

扩展知识库获取单元,用于将所述扩展问题集和所述扩展答案集进行组合得到扩展问答标准知识库,将所述扩展问答标准知识库进行本地存储。

第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于对抗网络的知识库扩展方法。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于对抗网络的知识库扩展方法。

本发明实施例提供了一种基于对抗网络的知识库扩展方法、装置、计算机设备及存储介质,先通过初始问答标准知识库中的初始问题集作为样本集训练模型得到训练后的对抗网络模型,然后再将初始问题集输入至训练后的对抗网络模型进行运算得到扩展问题集并对应检索答案得到扩展答案集,最后由所述扩展问题集和所述扩展答案集进行组合得到扩展问答标准知识库。实现了通过对抗网络将初始问答标准知识库中的问题集进行数量巨大的自动扩展,提高了问题集扩充的效率以及增加了大量自动扩展的问题,避免了标准化知识库因用户提问数量不足或过度内聚而导致过于稀疏的问题。

附图说明

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

图1为本发明实施例提供的基于对抗网络的知识库扩展方法的应用场景示意图;

图2为本发明实施例提供的基于对抗网络的知识库扩展方法的流程示意图;

图3为本发明实施例提供的基于对抗网络的知识库扩展装置的示意性框图;

图4为本发明实施例提供的计算机设备的示意性框图。

具体实施方式

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

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和 “包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

请参阅图1和图2,图1为本发明实施例提供的基于对抗网络的知识库扩展方法的应用场景示意图;图2为本发明实施例提供的基于对抗网络的知识库扩展方法的流程示意图,该基于对抗网络的知识库扩展方法应用于服务器中,该方法通过安装于服务器中的应用软件进行执行。

如图2所示,该方法包括步骤S101~S105。

S101、获取本地的初始问答标准知识库,并获取所述初始问答标准知识库中的初始问题集和初始答案集。

在本实施例中,在服务器中部署了初始问答标准知识库以及对外提供相应的智能问答服务(例如提供智能机器人客服后),用户可以使用用户端与服务器建立连接后,向智能机器人发送问题进行咨询,智能机器人客服在本地的初始问答标准知识库中检索与用户所提问题对应的较为接近若干个答案后,将这些检索出来的答案发送至用户端以供查看。服务器中问答标准知识库中问题和答案数据量的多少决定了其对用户所提问题进行答复的准确度,也即服务器中问答标准知识库中的问题和答案数据量越多才会提高答复的准确度。

一般本地的初始问答标准知识库可以采用人工整理方式得到或者是自动从指定数据库中获取,例如保险公司的智能机器人客服的初始问答标准知识库可以是自动从公司内部已存储的数据库中采集获取已整理的问题-答案数据,从而形成了一个初始问答标准知识库。但是一般初始问答标准知识库的问题-答案数据的数量不多,不足以支持对用户问题的有效回答,此时可以先获取所述初始问答标准知识库中的初始问题集和初始答案集,然后将初始问题集进行智能扩展,从而实现扩展知识库的目的。

S102、将所述初始问题集作为训练样本对待训练对抗网络模型进行训练,得到训练后的对抗网络模型。

在本实施例中,训练后的对抗网络模型是极为实用的一种扩展数据集的方法,例如常见的训练后的对抗网络模型有GAN(即生成式对抗网络)、cycle-GAN(即循环式对抗网络)等。

作为本申请中训练后的对抗网络模型的第一实施例,可以选取GAN模型进行问题集的扩展。在GAN模型中包括了一个生成器和一个判别器,更具体的是包括扩展问题生成器以及真实/扩展问题识别器(真实/扩展问题识别器用于识别问题是由用户真实提出、或是由扩展问题生成器生成)。在训练GAN模型的扩展问题生成器以及真实/扩展问题识别器时,需要对扩展问题生成器以及真实/扩展问题识别器进行多轮迭代训练,训练完成后所生成的扩展问题与用户提出的真实问题理论上遵循同一分布,可作为原有的初始问题集的扩展。

作为本申请中训练后的对抗网络模型的第二实施例,可以选取cycle-GAN模型进行问题集的扩展。cycle-GAN模型本质上是两个镜像对称的GAN模型,构成一个环形网络。在cycle-GAN模型中包括了两个生成器和两个判别器,cycle-GAN模型中的两个GAN模型共享两个生成器,而且两个GAN模型各自带一个判别器。

在一实施例中,在以所述初始问题集为训练样本对cycle-GAN模型进行训练时,作为第一具体实施例,步骤S102具体包括:

获取所述初始问题集中每一初始问题的语义向量;

获取所述初始问题集根据各初始问题的语义向量之间的向量相似度,并根据预设的分组策略对所述初始问题集进行分组,得到问题集分组结果;其中,所述问题集分组结果中包括若干个问题集子分组,且分别记为第1问题集子分组至第k问题集子分组,k为问题集分组结果中包括的问题集子分组总个数;

统计获取每一问题集子分组中对应包括的问题总个数,并获取其中包括问题总个数最多的问题集子分组,作为目标问题集子分组;

不断从目标问题集子分组中任意获取两个初始问题的语义向量以对待训练cycle-GAN模型进行训练,直至待训练cycle-GAN模型收敛时停止从目标问题集子分组中任意获取两个初始问题的语义向量,得到cycle-GAN模型作为训练后的对抗网络模型。

在训练cycle-GAN模型的第一具体实施例中,为了提高模型训练的效率,可以从初始问题集中挑选部分语义相近且数量较多的初始问题组成筛选后数据集以对待训练cycle-GAN模型进行训练。

通过将所述初始问题集进行分组后,语义相近的初始问题会被分进同一问题集子分组。此时选取多个问题集子分组中包括的问题总个数为最大值的问题集子分组作为目标问题集子分组。此时目标问题集子分组可以作为筛选后训练样本对待训练cycle-GAN模型进行训练。

例如,在目标问题集子分组中任意选择的两个初始问题的语义向量分别记为样本 a和样本b,此时需要训练出两个生成器

分别优化训练生成器和判别器,两个生成器共享权重,两个判别器共享权重,最终 的目标就是求得使目标最小化的生成器

在一实施例中,所述获取所述初始问题集根据各初始问题的语义向量之间的向量相似度,并根据预设的分组策略对所述初始问题集进行分组,得到问题集分组结果,包括:

将所述初始问题集根据各初始问题的语义向量之间的欧式距离作为向量相似度进行K-means聚类,得到问题集分组结果。

在本实施例中,对所述初始问题集按照预设的分组策略进行分组时,可以将分组策略设置为K-means聚类,此时预先设定好期望的分类组个数后,即可根据各初始问题的语义向量之间的欧式距离作为向量相似度进行K-means聚类,得到问题集分组结果。K-means聚类为常用的现有技术,此处不再展开赘述。

在一实施例中,在以所述初始问题集为训练样本对cycle-GAN模型进行训练时,作为第二具体实施例,步骤S102具体包括:

获取所述初始问题集中每一初始问题的语义向量;

获取所述初始问题集根据各初始问题的语义向量之间的向量相似度,并根据预设的分组策略对所述初始问题集进行分组,得到问题集分组结果;其中,所述问题集分组结果中包括若干个问题集子分组,且分别记为第1问题集子分组至第k问题集子分组,k为问题集分组结果中包括的问题集子分组总个数;其中,i的初始取值为1,且i的取值范围是[1,k];

从第i个问题集子分组中任意获取两个初始问题的语义向量以对待训练cycle-GAN模型进行训练,直至待训练cycle-GAN模型收敛时,得到第i个cycle-GAN模型,并以第i个cycle-GAN模型更新作为待训练cycle-GAN模型;

将i自增1以更新i的取值,判断i是否超出k;若i未超出k,返回执行从第i个问题集子分组中任意获取两个初始问题的语义向量以对待训练cycle-GAN模型进行训练,直至待训练cycle-GAN模型收敛时,得到第i个cycle-GAN模型,并以第i个cycle-GAN模型更新作为待训练cycle-GAN模型的步骤;

若i超出k,获取第i-1个cycle-GAN模型作为训练后的对抗网络模型。

在训练cycle-GAN模型的第二具体实施例中,为了提高模型的输出准确率,可以将所述初始问题集中根据分组策略得到的每一问题集子分组均作为训练样本对待训练cycle-GAN模型进行训练,得到训练后的对抗网络模型。

此时为了更清楚的理解上述训练过程,以第1问题集子分组为例来说明模型训练 过程。例如,在第1问题集子分组中任意选择的两个初始问题的语义向量分别记为样本a和 样本b,此时需要训练出两个生成器

在经过第1问题集子分组初始训练一个第1个cycle-GAN模型后,之后再以第2问题集子分组初始训练一个第1个cycle-GAN模型得到第2个cycle-GAN模型,以此类推,直至训练出第k个cycle-GAN模型并作为最终的训练后的对抗网络模型。通过这一方式训练得到的训练后的对抗网络模型因为得到了足够样本的训练,最终得到的模型的输出准确率更高。

S103、将所述初始问题集输入至所述训练后的对抗网络模型进行运算,得到扩展问题集。

在本实施例中,当完成模型训练而得到训练后的对抗网络模型后,此时仍可以初 始问题集作为训练后的对抗网络模型的输入数据从而生成扩展问题集。例如将初始问题集 记为Q

其中,扩展问题集

S104、获取预先存储的数据获取地址信息,在所述数据获取地址信息对应的数据集中检索获取与所述扩展问题集中每一扩展问题对应的扩展答案,组成扩展答案集。

在本实施例中,为了获取m个扩展问题分别对应的扩展答案,此时可以从目标地址 (例如目标数据库地址)去检索获取每一扩展问题对应的扩展答案。以其中一个扩展问题

获取扩展问题对应的当前语义向量;

获取预先训练的稠密段落检索模型,将所述当前语义向量输入至所述稠密段落检索模型进行运算,得到检索结果集;

获取预先训练的BERT模型,将所述检索结果集输入至所述BERT模型进行运算,得到与所述当前语义向量对应的当前扩展答案;其中,当前扩展答案作为扩展答案集中的其中一个扩展答案。

在本实施例中,稠密段落检索模型即DPR模型(DPR的全称是Dense PassageRetrieval),其作为一个检索模型的作用是在所述数据获取地址信息对应的数据集中检索获取与问题最相关的一些文本。之后BERT模型(BERT的全称是Bidirectional EncoderRepresentation from Transformer,即双向编码描述的转换模型),其作为一个阅读模型,其作用是从检索模型输出的与问题最相关的一些文本中,最精确的筛选出问题的答案。

其中,DPR模型在线下完成了对所述数据获取地址信息对应的数据集中所有段落 的编码,且在DPR模型中包括段落编码器和问题编码器。训练段落编码器时,将含有标准答 案字串的候选段落作为段落编码器的正例,将其他段落作为负例。段落编码器训练完成后, 即可在预测前对所有的段落进行编码。之后预测时只需要编码问题,即可通过向量搜索得 到相关段落。可见,通过这一方式能够快速检索获取与所述扩展问题集中每一扩展问题对 应的扩展答案,组成扩展答案集

在一实施例中,作为在所述数据获取地址信息对应的数据集中检索获取与所述扩展问题集中每一扩展问题对应的扩展答案的另一实施例,步骤S104包括:

获取所述扩展问题集中每一扩展问题对应的问题语义向量;

获取所述数据获取地址信息对应的数据集中所包括的每一文本集,及与每一文本集对应的文本语义向量;

在与每一文本集对应的文本语义向量中分别获取与各问题语义向量的向量相似度为最大值的文本语义向量,以组成与各问题语义一一对应的目标文本语义向量;

获取各目标文本语义向量分别对应的目标文本,组成扩展答案集。

在本实施例中,可以预先获取所述数据获取地址信息对应的数据集中所包括的每一文本集,并获取每一文本集对应的文本语义向量。这样当每一个扩展问题需要在所述数据获取地址信息对应的数据集中检索最接近的答案时,计算扩展问题的问题语义向量与文本及的文本语义向量两者之间的向量相似度(此时可以向量之间的欧氏距离作为向量相似度,两个向量之间的欧氏距离值越小,表示两个语义向量之间的向量相似度越近似,两个文本越近似),获取在与每一文本集对应的文本语义向量中分别获取与各问题语义向量的向量相似度为最大值的文本语义向量,以组成与各问题语义一一对应的目标文本语义向量;最后获取各目标文本语义向量分别对应的目标文本,组成扩展答案集。同样的,通过这一方式能够快速检索获取与所述扩展问题集中每一扩展问题对应的扩展答案。

S105、将所述扩展问题集和所述扩展答案集进行组合得到扩展问答标准知识库,将所述扩展问答标准知识库进行本地存储。

在本实施例中,原始问答标准知识库记为

在一实施例中,如图2所示,步骤S105之后还包括:

S106、将扩展问答标准知识库发送至目标接收端。

S107、若接收到目标接收端发送的人工校准知识库,将人工校准知识库进行本地存储。

在本实施例中,可以投入部分人力(专家组)协助扩展问题生成与答案检索优化,包括:

a.对生成的扩展问题是否为一个有效问题,标记0(无效)或1(有效);

b.步骤S104中通过算法生成的置信度(在模型生成答案时伴随产出)较低的答案,可请求专家组进行协助标记。

通过人工介入可对扩展问答标准知识库作进一步优化,且人工成本远低于常规知识库构建方式(仿真问题的0-1标记及对少量不确定问题的解答,较常规的问题/答案集编写更省人力)。

该方法通过对抗网络将初始问答标准知识库中的问题集进行数量巨大的自动扩展,提高了问题集扩充的效率以及增加了大量自动扩展的问题,避免了标准化知识库因用户提问数量不足或过度内聚而导致过于稀疏的问题。

本发明实施例还提供一种基于对抗网络的知识库扩展装置,该基于对抗网络的知识库扩展装置用于执行前述基于对抗网络的知识库扩展方法的任一实施例。具体地,请参阅图3,图3是本发明实施例提供的基于对抗网络的知识库扩展装置的示意性框图。该基于对抗网络的知识库扩展装置100可以配置于服务器中。

如图3所示,基于对抗网络的知识库扩展装置100包括:初始知识库获取单元101、模型训练单元102、扩展问题集获取单元103、扩展答案集获取单元104、扩展知识库获取单元105。

初始知识库获取单元101,用于获取本地的初始问答标准知识库,并获取所述初始问答标准知识库中的初始问题集和初始答案集。

在本实施例中,在服务器中部署了初始问答标准知识库以及对外提供相应的智能问答服务(例如提供智能机器人客服后),用户可以使用用户端与服务器建立连接后,向智能机器人发送问题进行咨询,智能机器人客服在本地的初始问答标准知识库中检索与用户所提问题对应的较为接近若干个答案后,将这些检索出来的答案发送至用户端以供查看。服务器中问答标准知识库中问题和答案数据量的多少决定了其对用户所提问题进行答复的准确度,也即服务器中问答标准知识库中的问题和答案数据量越多才会提高答复的准确度。

一般本地的初始问答标准知识库可以采用人工整理方式得到或者是自动从指定数据库中获取,例如保险公司的智能机器人客服的初始问答标准知识库可以是自动从公司内部已存储的数据库中采集获取已整理的问题-答案数据,从而形成了一个初始问答标准知识库。但是一般初始问答标准知识库的问题-答案数据的数量不多,不足以支持对用户问题的有效回答,此时可以先获取所述初始问答标准知识库中的初始问题集和初始答案集,然后将初始问题集进行智能扩展,从而实现扩展知识库的目的。

模型训练单元102,用于将所述初始问题集作为训练样本对待训练对抗网络模型进行训练,得到训练后的对抗网络模型。

在本实施例中,训练后的对抗网络模型是极为实用的一种扩展数据集的方法,例如常见的训练后的对抗网络模型有GAN(即生成式对抗网络)、cycle-GAN(即循环式对抗网络)等。

作为本申请中训练后的对抗网络模型的第一实施例,可以选取GAN模型进行问题集的扩展。在GAN模型中包括了一个生成器和一个判别器,更具体的是包括扩展问题生成器以及真实/扩展问题识别器(真实/扩展问题识别器用于识别问题是由用户真实提出、或是由扩展问题生成器生成)。在训练GAN模型的扩展问题生成器以及真实/扩展问题识别器时,需要对扩展问题生成器以及真实/扩展问题识别器进行多轮迭代训练,训练完成后所生成的扩展问题与用户提出的真实问题理论上遵循同一分布,可作为原有的初始问题集的扩展。

作为本申请中训练后的对抗网络模型的第二实施例,可以选取cycle-GAN模型进行问题集的扩展。cycle-GAN模型本质上是两个镜像对称的GAN模型,构成一个环形网络。在cycle-GAN模型中包括了两个生成器和两个判别器,cycle-GAN模型中的两个GAN模型共享两个生成器,而且两个GAN模型各自带一个判别器。

在一实施例中,在以所述初始问题集为训练样本对cycle-GAN模型进行训练时,作为第一具体实施例,模型训练单元102具体包括:

第一语义向量获取单元,用于获取所述初始问题集中每一初始问题的语义向量;

第一问题集分组单元,用于获取所述初始问题集根据各初始问题的语义向量之间的向量相似度,并根据预设的分组策略对所述初始问题集进行分组,得到问题集分组结果;其中,所述问题集分组结果中包括若干个问题集子分组,且分别记为第1问题集子分组至第k问题集子分组,k为问题集分组结果中包括的问题集子分组总个数;

目标问题集子分组获取单元,用于统计获取每一问题集子分组中对应包括的问题总个数,并获取其中包括问题总个数最多的问题集子分组,作为目标问题集子分组;

第一模型训练单元,用于不断从目标问题集子分组中任意获取两个初始问题的语义向量以对待训练cycle-GAN模型进行训练,直至待训练cycle-GAN模型收敛时停止从目标问题集子分组中任意获取两个初始问题的语义向量,得到cycle-GAN模型作为训练后的对抗网络模型。

在训练cycle-GAN模型的第一具体实施例中,为了提高模型训练的效率,可以从初始问题集中挑选部分语义相近且数量较多的初始问题组成筛选后数据集以对待训练cycle-GAN模型进行训练。

通过将所述初始问题集进行分组后,语义相近的初始问题会被分进同一问题集子分组。此时选取多个问题集子分组中包括的问题总个数为最大值的问题集子分组作为目标问题集子分组。此时目标问题集子分组可以作为筛选后训练样本对待训练cycle-GAN模型进行训练。

例如,在目标问题集子分组中任意选择的两个初始问题的语义向量分别记为样本 a和样本b,此时需要训练出两个生成器

分别优化训练生成器和判别器,两个生成器共享权重,两个判别器共享权重,最终 的目标就是求得使目标最小化的生成器

在一实施例中,问题集分组单元还用于:

将所述初始问题集根据各初始问题的语义向量之间的欧式距离作为向量相似度进行K-means聚类,得到问题集分组结果。

在本实施例中,对所述初始问题集按照预设的分组策略进行分组时,可以将分组策略设置为K-means聚类,此时预先设定好期望的分类组个数后,即可根据各初始问题的语义向量之间的欧式距离作为向量相似度进行K-means聚类,得到问题集分组结果。K-means聚类为常用的现有技术,此处不再展开赘述。

在一实施例中,在以所述初始问题集为训练样本对cycle-GAN模型进行训练时,作为第二具体实施例,模型训练单元102具体包括:

第二语义向量获取单元,用于获取所述初始问题集中每一初始问题的语义向量;

第二问题集分组单元,用于获取所述初始问题集根据各初始问题的语义向量之间的向量相似度,并根据预设的分组策略对所述初始问题集进行分组,得到问题集分组结果;其中,所述问题集分组结果中包括若干个问题集子分组,且分别记为第1问题集子分组至第k问题集子分组,k为问题集分组结果中包括的问题集子分组总个数;其中,i的初始取值为1,且i的取值范围是[1,k];

第二模型训练单元,用于从第i个问题集子分组中任意获取两个初始问题的语义向量以对待训练cycle-GAN模型进行训练,直至待训练cycle-GAN模型收敛时,得到第i个cycle-GAN模型,并以第i个cycle-GAN模型更新作为待训练cycle-GAN模型;

序号自增单元,用于将i自增1以更新i的取值,判断i是否超出k;若i未超出k,返回执行从第i个问题集子分组中任意获取两个初始问题的语义向量以对待训练cycle-GAN模型进行训练,直至待训练cycle-GAN模型收敛时,得到第i个cycle-GAN模型,并以第i个cycle-GAN模型更新作为待训练cycle-GAN模型的步骤;

最终模型输出单元,用于若i超出k,获取第i-1个cycle-GAN模型作为训练后的对抗网络模型。

在训练cycle-GAN模型的第二具体实施例中,为了提高模型的输出准确率,可以将所述初始问题集中根据分组策略得到的每一问题集子分组均作为训练样本对待训练cycle-GAN模型进行训练,得到训练后的对抗网络模型。

此时为了更清楚的理解上述训练过程,以第1问题集子分组为例来说明模型训练 过程。例如,在第1问题集子分组中任意选择的两个初始问题的语义向量分别记为样本a和 样本b,此时需要训练出两个生成器

在经过第1问题集子分组初始训练一个第1个cycle-GAN模型后,之后再以第2问题集子分组初始训练一个第1个cycle-GAN模型得到第2个cycle-GAN模型,以此类推,直至训练出第k个cycle-GAN模型并作为最终的训练后的对抗网络模型。通过这一方式训练得到的训练后的对抗网络模型因为得到了足够样本的训练,最终得到的模型的输出准确率更高。

扩展问题集获取单元103,用于将所述初始问题集输入至所述训练后的对抗网络模型进行运算,得到扩展问题集。

在本实施例中,当完成模型训练而得到训练后的对抗网络模型后,此时仍可以初 始问题集作为训练后的对抗网络模型的输入数据从而生成扩展问题集。例如将初始问题集 记为Q

其中,扩展问题集

扩展答案集获取单元104,用于获取预先存储的数据获取地址信息,在所述数据获取地址信息对应的数据集中检索获取与所述扩展问题集中每一扩展问题对应的扩展答案,组成扩展答案集。

在本实施例中,为了获取m个扩展问题分别对应的扩展答案,此时可以从目标地址 (例如目标数据库地址)去检索获取每一扩展问题对应的扩展答案。以其中一个扩展问题

获取扩展问题对应的当前语义向量;

获取预先训练的稠密段落检索模型,将所述当前语义向量输入至所述稠密段落检索模型进行运算,得到检索结果集;

获取预先训练的BERT模型,将所述检索结果集输入至所述BERT模型进行运算,得到与所述当前语义向量对应的当前扩展答案;其中,当前扩展答案作为扩展答案集中的其中一个扩展答案。

在本实施例中,稠密段落检索模型即DPR模型(DPR的全称是Dense PassageRetrieval),其作为一个检索模型的作用是在所述数据获取地址信息对应的数据集中检索获取与问题最相关的一些文本。之后BERT模型(BERT的全称是Bidirectional EncoderRepresentation from Transformer,即双向编码描述的转换模型),其作为一个阅读模型,其作用是从检索模型输出的与问题最相关的一些文本中,最精确的筛选出问题的答案。

其中,DPR模型在线下完成了对所述数据获取地址信息对应的数据集中所有段落 的编码,且在DPR模型中包括段落编码器和问题编码器。训练段落编码器时,将含有标准答 案字串的候选段落作为段落编码器的正例,将其他段落作为负例。段落编码器训练完成后, 即可在预测前对所有的段落进行编码。之后预测时只需要编码问题,即可通过向量搜索得 到相关段落。可见,通过这一方式能够快速检索获取与所述扩展问题集中每一扩展问题对 应的扩展答案,组成扩展答案集

在一实施例中,作为在所述数据获取地址信息对应的数据集中检索获取与所述扩展问题集中每一扩展问题对应的扩展答案的另一实施例,扩展答案集获取单元104包括:

问题语义向量获取单元,用于获取所述扩展问题集中每一扩展问题对应的问题语义向量;

文本语义向量获取单元,用于获取所述数据获取地址信息对应的数据集中所包括的每一文本集,及与每一文本集对应的文本语义向量;

目标文本语义向量获取单元,用于在与每一文本集对应的文本语义向量中分别获取与各问题语义向量的向量相似度为最大值的文本语义向量,以组成与各问题语义一一对应的目标文本语义向量;

扩展答案集组合单元,用于获取各目标文本语义向量分别对应的目标文本,组成扩展答案集。

在本实施例中,可以预先获取所述数据获取地址信息对应的数据集中所包括的每一文本集,并获取每一文本集对应的文本语义向量。这样当每一个扩展问题需要在所述数据获取地址信息对应的数据集中检索最接近的答案时,计算扩展问题的问题语义向量与文本及的文本语义向量两者之间的向量相似度(此时可以向量之间的欧氏距离作为向量相似度,两个向量之间的欧氏距离值越小,表示两个语义向量之间的向量相似度越近似,两个文本越近似),获取在与每一文本集对应的文本语义向量中分别获取与各问题语义向量的向量相似度为最大值的文本语义向量,以组成与各问题语义一一对应的目标文本语义向量;最后获取各目标文本语义向量分别对应的目标文本,组成扩展答案集。同样的,通过这一方式能够快速检索获取与所述扩展问题集中每一扩展问题对应的扩展答案。

扩展知识库获取单元105,用于将所述扩展问题集和所述扩展答案集进行组合得到扩展问答标准知识库,将所述扩展问答标准知识库进行本地存储。

在本实施例中,原始问答标准知识库记为

在一实施例中,如图3所示,基于对抗网络的知识库扩展装置100还包括:

扩展库发送单元106,用于将扩展问答标准知识库发送至目标接收端。

校准数据存储单元107,用于若接收到目标接收端发送的人工校准知识库,将人工校准知识库进行本地存储。

在本实施例中,可以投入部分人力(专家组)协助扩展问题生成与答案检索优化,包括:

a.对生成的扩展问题是否为一个有效问题,标记0(无效)或1(有效);

b. 扩展答案集获取单元104中通过算法生成的置信度(在模型生成答案时伴随产出)较低的答案,可请求专家组进行协助标记。

通过人工介入可对扩展问答标准知识库作进一步优化,且人工成本远低于常规知识库构建方式(仿真问题的0-1标记及对少量不确定问题的解答,较常规的问题/答案集编写更省人力)。

该装置通过对抗网络将初始问答标准知识库中的问题集进行数量巨大的自动扩展,提高了问题集扩充的效率以及增加了大量自动扩展的问题,避免了标准化知识库因用户提问数量不足或过度内聚而导致过于稀疏的问题。

上述基于对抗网络的知识库扩展装置可以实现为计算机程序的形式,该计算机程序可以在如图4所示的计算机设备上运行。

请参阅图4,图4是本发明实施例提供的计算机设备的示意性框图。该计算机设备500是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。

参阅图4,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。

该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行基于对抗网络的知识库扩展方法。

该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。

该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行基于对抗网络的知识库扩展方法。

该网络接口505用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图4中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现本发明实施例公开的基于对抗网络的知识库扩展方法。

本领域技术人员可以理解,图4中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图4所示实施例一致,在此不再赘述。

应当理解,在本发明实施例中,处理器502可以是中央处理单元 (CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路 (Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列 (Field-Programmable Gate Array,FPGA) 或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现本发明实施例公开的基于对抗网络的知识库扩展方法。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

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

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备 ( 可以是个人计算机,服务器,或者网络设备等 ) 执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U 盘、移动硬盘、只读存储器 (ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号