法律状态公告日
法律状态信息
法律状态
2020-07-21
授权
授权
2019-09-27
实质审查的生效 IPC(主分类):G06F16/332 申请日:20190611
实质审查的生效
2019-09-03
公开
公开
技术领域
本发明涉及问答系统技术领域,特别涉及一种低资源语言问答语料库生成方法
背景技术
近年来,随着信息化的快速发展,人工智能领域取得了突飞猛进的进步,问答系统作为人工智能领域的一个重要分支也受到了越来越多的关注。问答系统可以接受并理解用户输入的自然语言问句,同时返回给用户准确而简约的答案。目前,由于存在大规模公开的问答语料库(如Google的Natural Questions,Facebook的SimpleQuestions,微软的WikiQA,TREC QA,百度中文问答数据集WebQA等),问答系统在英、汉等语言取得了很大进展,而低资源语言问答系统的研究还处于起步阶段,缺少公开的问答语料库是一个很重要的原因,因此如何有效构建出大规模的低资源语言问答语料库至关重要。
传统人工标注构建语料库的方法需要花费大量的时间和人力。因此,很多研究者把重心放在构造虚拟问答对的任务上,主要采用基于模板的方式进行构建。基于模板的构建方式利用知识库或者文本段落,通过人工抽取、标注等操作,将问句从知识库或者文本段落中提取出来,并且转化成自然语言问句。但是,基于模板的构建方式存在相应的问句质量无法保证,问句同质化严重的问题。
发明内容
本发明的目的在于,解决低资源语言问答语料库资源匮乏的问题,利用小规模的低资源语言问答语料库,将生成对抗网络(GAM)网络应用于低资源语言问答语料库生成中。
为实现上述目的,本发明提供了一种低资源语言问答语料库生成方法,该方法包括以下步骤:
采用生成对抗网络生成问答语料库;通过最大似然估计对随机产生的样本数据进行初始化;然后送入准循环神经网络的生成器中产生问题,同时优化强化学习中蒙特卡洛搜索加速模型迭代速度,最后使用语言模型对产生的问题进行语法优化,使得问题更加准确、自然。
优选地,本发明通过数据库中已统计字符随机产生一定量的样本数据,同时为了缩小产生的样本数据和真实数据的概率分布差异,使用最大似然估计对产生的随机样本数据进行初始化,然后再送入准循环神经网络的生成器中。
优选地,本发明通过优化蒙特卡洛搜索算法训练一个可以对部分已生成前缀进行打分的判别器,加速强化学习搜索效率;判别器采用长短期记忆网络结构,为了使得生成的样本数据更加逼近真实样本的数据分布,利用强化学习对生成器和判别器分别进行参数调优;为了对文本序列进行策略优化,通过在判别器对各个生成样本打出概率得分上会减去一个惩罚基准值来优化搜索空间,进而优化整个搜索策略。
优选地,本发明使用BERT模型对问题进行修正和优化,使得生成的问题更加自然、准确。
优选地,本发明最大似然估计对产生的随机样本数据进行初始化步骤,包括:定义初始化序列为T=(t1,t2,L,tn),通过训练得到初始化数据模型参数θ。即
优选地,生成器使用准循环神经网络模型单元,即
ht=QRNN(ht-1,xt)
p(yt|x1,x2,L,xt)=z(ht)
ht是QRNN网络输出的中间隐层向量,而z(ht)是一个softmax函数,主要根据已经生成的序列来预测下一个单词,xt代表时刻t的输入。
优选地,本发明采用判别器给予生成样本xi的概率得分并且将其反馈给生成器作为奖励;别器对各个生成样本打出概率得分上会减去一个惩罚基准值b,公式如下。
优选地,蒙特卡洛搜索优化算法对于获得的部分序列进行下一个字符或者序列的预测,假设已经拥有了部分生成的前缀xi[1:t],利用当前的生成器参数,强制固定这个前缀,并重复生成出可能的M个完整的序列,然后分别交给判别器进行打分,这M个模拟样本的平均奖励得分即为部分序列xi[1:t]的奖励估计值De(ai,xi[1:t])
其中,ai代表第i个生成文本序列的得分,xi[1:t]代表第i个文本从时间1到t已经产生的序列。
优选地,本发明直接训练一个可以对部分已生成前缀进行打分的新判别器,将真实样本X+的全部前缀子序列(必须从第一个词开始)集合记作
优选地,本发明使用BERT模型对产生的问题进行修正和优化,其中包括两个部分:随机掩码和下一句话预测;
随机掩码:针对文本表示较长的问题,采用20%的概率将一些词使用特殊符号“*”代替;
下一句话预测:按照50%的比例从生成的虚拟问答对中选择,另外按照50%的数量随机选择,从中筛选出正确对应的问答对。
本发明通过优化生成对抗网络模型,自动地构建出大规模的低资源语言问答语料库,为进一步开展低资源语言问答系统研究提供了支撑;并通过对生成对抗网络模型进行优化,通过使用准循环神经网络模型作为生成器的基本单元,以及优化蒙特卡罗搜索算法降低模型的收敛时间。
附图说明
图1为本发明实施例提供的一种低资源语言问答语料库生成方法流程示意图;
图2为图1所示方法的技术方案示意图。
具体实施例
图1为本发明实施例提供的一种低资源语言问答语料库生成方法流程示意图。如图1和图2所示,该方法包括步骤S101-S103:
步骤S101,采用生成对抗网络生成问答语料库;
步骤S102,通过最大似然估计对随机产生的样本数据进行初始化;
具体地,为了更加有效地生成问题,本发明实施例使用最大似然估计对产生的随机样本数据进行初始化。定义初始化序列为T=(t1,t2,L,tn),通过训练得到初始化数据模型参数θ。即
步骤S103,然后送入准循环神经网络的生成器中产生问题,同时优化强化学习中蒙特卡洛搜索加速模型迭代速度,最后使用语言模型对产生的问题进行语法优化,使得问题更加准确、自然。
具体地,本发明实施例生成器使用准循环神经网络(QRNN)模型单元,即
ht=QRNN(ht-1,xt)
p(yt|x1,x2,L,xt)=z(ht)
ht是QRNN网络输出的中间隐层向量,而z(ht)是一个softmax函数,主要根据已经生成的序列来预测下一个单词,xt代表时刻t的输入。本发明使用准循环神经网络作为生成器的基本单元,准循环神经网络不仅仅可以处理时序问题,同时可以大大加速模型的训练速度。
本发明实施例采用判别器D给予生成样本xi的概率得分(xi属于真实样本的概率)并且将其反馈给生成器作为奖励。既然是概率值,即使生成器生成的样本数据存在大量的语法错误,判别器D也不会给出负的得分对生成器进行惩罚。从理论上来看,生成器的训练会趋向于降低较小奖励值样本xlow出现的概率而提高较大奖励值样本xhigh出现的概率。由于采样不全、数据稀疏等不可控因素,这种区分不明的奖惩区别将有可能使得生成器G的训练变的偏颇。因此在判别器D对各个生成样本打出概率得分上会减去一个惩罚基准值b,如下所示。
本发明实施例采用蒙特卡洛搜索优化算法对于获得的部分序列进行下一个字符或者序列的预测。假设已经拥有了部分生成的前缀xi[1:t],利用当前的生成器参数,强制固定这个前缀,并重复生成出可能的M个完整的序列,然后分别交给判别器D进行打分,这M个模拟样本的平均奖励得分即为部分序列xi[1:t]的奖励估计值De(ai,xi[1:t])。
其中,ai代表第i个生成文本序列的得分,xi[1:t]代表第i个文本从时间1到t已经产生的序列。然而,每生成一个词,就要进行M次生成采样,非常耗时;同时每当计算较为靠后的一些部分序列奖励估计值的时候,总是会无法避免地多计算前面已经生成的项,这样计算出来的奖励估计值可能导致对于较前子序列的过拟合。因此,本发明直接训练一个可以对部分已生成前缀进行打分的新判别器D。将真实样本X+的全部前缀子序列(必须从第一个词开始)集合记作
为了降低模型产生的问题的语法错误,本发明使用BERT模型对产生的问题进行修正和优化,其中包括两个部分:随机掩码和下一句话预测。
随机掩码:针对文本表示较长的问题,采用20%的概率将一些词使用特殊符号“*”代替。
下一句话预测:按照50%的比例从生成的虚拟问答对中选择,另外按照50%的数量随机选择,从中筛选出正确对应的问答对。本发明实施例通过BERT模型对生成器生成的问题进行微调。
本发明实施例通过优化生成对抗网络模型,自动地构建出大规模的低资源语言问答语料库,为进一步开展低资源语言问答系统研究提供了支撑。以及通过对生成对抗网络模型进行优化,通过使用准循环神经网络模型作为生成器的基本单元,以及优化蒙特卡罗搜索算法降低模型的收敛时间。
机译: 基于语料库检索系统的语言教学系统和语言教学方法,利用问答功能
机译: 基于自然语言问答系统中交互历史的内容推荐为语料库的方法
机译: 自然语言问答系统中基于交互历史的内容推荐作为语料库的方法