CN111797218B - 一种基于Cycle-Seq2Seq的开放域对话生成方法 - Google Patents

一种基于Cycle-Seq2Seq的开放域对话生成方法 Download PDF

Info

Publication number
CN111797218B
CN111797218B CN202010646644.3A CN202010646644A CN111797218B CN 111797218 B CN111797218 B CN 111797218B CN 202010646644 A CN202010646644 A CN 202010646644A CN 111797218 B CN111797218 B CN 111797218B
Authority
CN
China
Prior art keywords
model
task
ncg
input
response
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
Application number
CN202010646644.3A
Other languages
English (en)
Other versions
CN111797218A (zh
Inventor
吴嘉琪
于建港
肖定和
刘嵩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hainan Zhongzhixin Information Technology Co ltd
Original Assignee
Hainan Zhongzhixin Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hainan Zhongzhixin Information Technology Co ltd filed Critical Hainan Zhongzhixin Information Technology Co ltd
Priority to CN202010646644.3A priority Critical patent/CN111797218B/zh
Publication of CN111797218A publication Critical patent/CN111797218A/zh
Application granted granted Critical
Publication of CN111797218B publication Critical patent/CN111797218B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Machine Translation (AREA)

Abstract

本发明提供一种基于Cycle‑Seq2Seq的开放域对话生成方法,该方法包括:基于正向任务input‑to‑response和反向任务response‑to‑input建立Cycle‑Seq2Seq模型,所述正向任务input‑to‑response和反向任务response‑to‑input都使用一个NCG模型去完成对应的任务目标,正向任务input‑to‑response对应的NCG模型任务目标为根据用户的输入生成相应的回复,反向任务response‑to‑input对应的NCG模型任务目标为根据问答的回复生成可能的用户输入;对正向任务和反向任务迭代进行联合训练,共同优化联合任务的目标,每次迭代通过模型更新优化生成更准确的input‑to‑response句子和response‑to‑input句子,在联合训练过程中通过交替迭代生成质量更高的训练数据。所述方法使用较少的语料就能够训练出性能较高的模型,生成的对话内容关联性强。

Description

一种基于Cycle-Seq2Seq的开放域对话生成方法
技术领域
本发明涉及开放域聊天技术领域,尤其涉及一种基于Cycle-Seq2Seq的开放域对话生成方法。
背景技术
近年来,随着互联网和社交媒体的快速发展,开放域聊天机器人在生活中发挥着广泛作用。它不仅可以解决用户的交流需求,也能降低企业为用户提供服务的成本。因此,研究开放域对话生成具有一定意义,也是当下的热点研究之一。
开放域对话生成任务的主要目标是在开放域对话过程中,根据提问者的问题给出合适的回复。目前,针对该任务的主流解决方案是基于神经网络的开放域对话生成模型(Neural Conversation Generation Model,NCG),其中,现有的Seq2Seq模型取得了较好的效果,但仍然存在以下问题:
1.模型采用最大似然估计(Maximum Likelihood Estimation,MLE)生成回复,导致生成的回复常常包含大量无意义的安全回复,例如:“我不知道(I don't know)”,“对不起(Sorry)”,“没事(Nothing)”等万能答案;
2.仅使用seq2seq模型生成的回答,通常是与问题关联性弱且非常低效愚笨,容易导致对话的多样性和持续性极大程度地缺失;
3.为了尽可能满足开放域的内容覆盖需求以及对话生成的多样性,需要大量的开放域对话训练语料,导致词表过大,增加模型训练难度以及模型对话准确性等其他方面的效果。
发明内容
本发明的目的在于提供一种基于Cycle-Seq2Seq的开放域对话生成方法,通过基于多任务联合训练的完全基于数据驱动的Cycle-Seq2Seq模型来生成对话内容强关联的回复,以克服或至少部分解决现有技术所存在的上述问题。
本发明第一方面提供一种基于Cycle-Seq2Seq的开放域对话生成方法,所述方法包括:
基于正向任务input-to-response和反向任务response-to-input建立Cycle-Seq2Seq模型,所述正向任务input-to-response和反向任务response-to-input都使用一个NCG模型去完成对应的任务目标,正向任务input-to-response对应的NCG模型任务目标为根据用户的输入生成相应的回复,反向任务response-to-input对应的NCG模型任务目标为根据问答的回复生成可能的用户输入;
对正向任务和反向任务迭代进行联合训练,共同优化联合任务的目标,每次迭代通过模型更新优化生成更准确的input-to-response句子和response-to-input句子,在联合训练过程中通过交替迭代生成质量更高的训练数据。
进一步的,对正向任务和反向任务迭代进行联合训练,具体包括:
使用成对对话数据集对正向任务和反向任务的NCG模型进行预训练,通过最大似然估计进行模型的参数学习,得到两个训练好的NCG模型,正向任务NCG模型表示为Gx→y,反向任务NCG模型表示为Gy→x,成对对话数据集表示为D={x(n),y(n)},其中x为输入语句,y为回复语句;
添加未成对对话数据集进行正向任务NCG模型和反向任务NCG模型的联合训练,所述未成对对话数据集包括输入语句集合X={x(t)}和回复语句集合Y={y(m)},将未成对对话数据集输入到正向任务NCG模型和反向任务NCG模型中,通过多次迭代方式进行不断的对话生成更新,同时不断更新Gx→y和Gy→x的模型参数以优化模型。
进一步的,所述添加未成对对话数据集进行正向任务NCG模型和反向任务NCG模型的联合训练,具体包括:
在初次迭代中,使用两个预训练好的NCG模型分别对输入语句集合和回复语句集合生成相应的成对对话数据,数据更新后,再使用更新的训练数据分别对Gx→y和Gy→x进行训练,更新模型参数,得到更新后的模型
Figure BDA0002573374630000031
Figure BDA0002573374630000032
完成初次迭代,更新的训练数据包括成对对话数据集D、合成的训练数据集X'和Y';
在后续迭代中,重复初次迭代的操作,每次迭代使用的更新的合成的训练数据集是通过上一次迭代中更新的模型
Figure BDA0002573374630000033
Figure BDA0002573374630000034
分别生成的新的训练数据,直至整个联合训练的模型达到收敛后停止迭代,i为当前迭代代数。
进一步的,正向任务NCG模型和反向任务NCG模型的目标是最大化数据源的似然率,Cycle-Seq2Seq模型的整体联合训练目标为正向任务和反向任务的似然估计的总和,其目标函数如下:
L(θ)=L*x→y)+L*y→x)。
进一步的,正向任务NCG模型Gx→y对于给定的成对对话数据集D和回复语句集合
Figure BDA0002573374630000035
训练目标为最大化两个数据源的似然率,目标函数如下:
Figure BDA0002573374630000036
其中第一项表示成对对话数据的似然率,第二项表示未成对对话数据的似然率,考虑优化过程中的相互关系,将输入语句的生成作为回复语句的隐藏状态,将logp(y(m))分解如下:
log p(y(m))≥∑x[Q(x)logp(y(m)|x)-KL(Q(x)||p(x))]
其中x是隐变量,表示回复语句y(m)的可能的输入语句的生成,Q(x)是x的近似概率分布,∑xQ(x)=1,p(x)表示语句x的边缘分布,KL(Q(x)||p(x))是两个概率分布的KL散度,Q(x)满足以下条件:
Figure BDA0002573374630000041
其中a是常数,不依赖于x或y,因此Q(x)可以用下式计算:
Figure BDA0002573374630000042
其中p'(x|y(m))表示真实的response-to-input的生成概率。
进一步的,引入反向任务NCG模型获取L*x→y),具体为使用反向任务NCG模型的生成概率p(x|y(m))作为Q(x),可得:
Figure BDA0002573374630000043
其中L*x→y)为L(θx→y)的下界,因此KL估计与参数θx→y不相关,L*x→y)可以简化为:
Figure BDA0002573374630000044
进一步的,反向任务NCG模型Gy→x对于给定的成对对话数据集D和输入语句集合
Figure BDA0002573374630000045
训练目标为最大化两个数据源的似然率,目标函数如下:
Figure BDA0002573374630000046
其中第一项表示成对对话数据的似然率,第二项表示未成对对话数据的似然率,考虑优化过程中的相互关系,将回复语句的生成作为输入语句的隐藏状态,将logp(x(t))分解如下:
logp(x(t))≥∑y[Q(y)log p(x(t)|y)-KL(Q(y)||p(y))]
其中y是隐变量,表示输入语句x(t)的可能的回复语句的生成,Q(y)是y的近似概率分布,∑yQ(y)=1,p(y)表示语句y的边缘分布,KL(Q(y)||p(y))是两个概率分布的KL散度,Q(y)满足以下条件:
Figure BDA0002573374630000051
其中a是常数,不依赖于x或y,因此Q(y)可以用下式计算:
Figure BDA0002573374630000052
其中p'(y|x(t))表示真实的input-to-response的生成概率。
进一步的,引入正向任务NCG模型获取L*y→x),具体为使用正向任务NCG模型的生成概率p(y|x(t))作为Q(y),可得:
Figure BDA0002573374630000053
其中L*y→x)为L(θy→x)的下界,因此KL估计与参数θy→x不相关,L*y→x)可以简化为:
Figure BDA0002573374630000054
进一步的,采用加权方法控制质量较差的数据对模型的影响,具体包括:
将原始的成对对话数据权重设置为1,同时将未成对对话数据通过正向任务NCG模型和反向任务NCG模型生成的合成响应的权重设置为模型输出概率的归一化值;
在基于对成对对话数据进行MLE估计的基础上,通过JointEM估计对新生成的input/response数据进行度量。
本发明第二方面提供一种计算机可读介质,其存储有可由终端设备执行的计算机程序,当所述程序在终端设备上运行时,使得所述终端设备执行前述第一方面所述方法的步骤。
与现有技术相比,本发明的有益效果是:
(1)Cycle-Seq2Seq模型第一个采用联合训练的方式迭代优化两个NCG模型,以避免生成的开放域对话单调且与输入无关,实验结果表明,在联合训练过程中,输入遗传和响应遗传的相互关系被成功地建立起来;
(2)Cycle-Seq2Seq模型考虑了输入和响应在生成过程中的训练数据更新和双重学习,这有助于更好地利用数据对进行训练,并生成信息和输入相关的响应;
(3)通过不断迭代的联合训练方式,能够生成质量高的对话数据,生成的高质量数据可以补充训练数据,辅助训练模型,使得模型使用较少的语料就能够训练出性能较高的模型。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的优选实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的Cycle-Seq2Seq模型整体框架示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所列举实施例只用于解释本发明,并非用于限定本发明的范围。
参照图1,本发明提供一种基于Cycle-Seq2Seq的开放域对话生成方法,所述方法包括:
基于正向任务input-to-response和反向任务response-to-input建立Cycle-Seq2Seq模型,所述正向任务input-to-response和反向任务response-to-input都使用一个NCG模型去完成对应的任务目标,正向任务input-to-response对应的NCG模型任务目标为根据用户的输入生成相应的回复,反向任务response-to-input对应的NCG模型任务目标为根据问答的回复生成可能的用户输入;
对正向任务和反向任务迭代进行联合训练,共同优化联合任务的目标,每次迭代通过模型更新优化生成更准确的input-to-response句子和response-to-input句子,在联合训练过程中通过交替迭代生成质量更高的训练数据。本领域技术人员可以理解,建立NCG模型实现任务目标以及进行联合训练可以通过不同的算法来实现,模型的构建方式和联合训练的方式可以根据需要选择相应的算法来实现。
作为一种示例,对正向任务和反向任务进行联合训练,具体可以包括:
首先使用高质量的成对对话数据集对正向任务和反向任务的NCG模型进行预训练,通过最大似然估计进行模型的参数学习,得到两个训练好的NCG模型,正向任务NCG模型表示为Gx→y,其中x为输入语句,y为相应的回复语句;反向任务NCG模型表示为Gy→x,其中y为回复语句,x为可能的用户输入语句;成对对话数据集表示为D={x(n),y(n)},其中n为变量,其取值范围为[1,N],N表示成对对话数据集D的语料数量;
得到预训练的两个模型后,在高质量的成对对话数据基础上,添加未成对对话数据集进行正向任务NCG模型和反向任务NCG模型的联合训练,所述未成对对话数据集包括输入语句集合X={x(t)}和回复语句集合Y={y(m)},其中t为变量,其取值范围为[1,T],T表示输入语句集合X的语料数量;m为变量,其取值范围为[1,M],M表示回复语句集合Y的语料数量。将未成对对话数据集输入到正向任务NCG模型和反向任务NCG模型中,通过多次迭代方式进行不断的对话生成更新,同时不断更新Gx→y和Gy→x的模型参数以优化模型。
其中,所述添加未成对对话数据集进行正向任务NCG模型和反向任务NCG模型的联合训练,具体包括:
在初次迭代中,使用预训练好的正向任务NCG模型和反向任务NCG模型分别对输入语句集合和回复语句集合生成相应的成对对话数据,具体为:
使用Gy→x
Figure BDA0002573374630000081
生成对应的x并且形成合成的训练数据集
Figure BDA0002573374630000082
使用Gx→y
Figure BDA0002573374630000083
生成对应的y并且形成合成的训练数据集
Figure BDA0002573374630000084
数据更新后,再使用更新的训练数据分别对Gx→y和Gy→x进行训练,更新模型参数,得到更新后的模型
Figure BDA0002573374630000085
Figure BDA0002573374630000086
完成初次迭代,更新的训练数据包括成对对话数据集D、合成的训练数据集X'和Y';
在后续的迭代中,将初次迭代的操作重复进行,区别在于每次迭代使用的更新的合成的训练数据集是通过上一次迭代中更新的模型
Figure BDA0002573374630000087
Figure BDA0002573374630000088
分别生成的新的训练数据,数据的质量相较于前一次迭代更加的准确可靠,更新后的模型性能也相较上一次迭代有所提升,在每次迭代过程中,生成的训练语料和模型性能都得到了不断的提升,直到整个联合训练的模型达到收敛后停止迭代,i为当前迭代代数。
作为一个优选的示例,正向任务NCG模型和反向任务NCG模型的目标是最大化数据源的似然率,Cycle-Seq2Seq模型的整体联合训练目标为正向任务和反向任务的似然估计的总和,其目标函数如下:
L(θ)=L*x→y)+L*y→x)。
以正向任务NCG模型Gx→y为例,对于给定的成对对话数据集D和单独的未成对对话语料
Figure BDA0002573374630000089
半监督训练目标为最大化两个数据源的似然率,其目标函数如下:
Figure BDA00025733746300000810
其中第一项表示成对对话数据的似然率,第二项表示未成对对话数据的似然率,考虑优化过程中的相互关系,将输入语句的生成作为回复语句的隐藏状态,将logp(y(m))分解如下:
log p(y(m))≥∑x[Q(x)log p(y(m)|x)-KL(Q(x)||p(x))]
其中x为隐变量,表示回复语句y(m)的可能的输入语句的生成,Q(x)是x的近似概率分布,∑xQ(x)=1,p(x)表示语句x的边缘分布,KL(Q(x)||p(x))是两个概率分布的KL散度,Q(x)满足以下条件:
Figure BDA0002573374630000091
其中a是常数,不依赖于x或y,因此Q(x)可以用下式计算:
Figure BDA0002573374630000092
其中p'(x|y(m))表示真实的response-to-input的生成概率。
由于p'(x|y(m))通常无法直接计算,因此,作为一种示例,通过引入反向任务NCG模型获取L*x→y),即使用反向任务NCG模型的生成概率p(x|y(m))作为Q(x),结合上述公式可得:
Figure BDA0002573374630000093
其中L*x→y)为L(θx→y)的下界,因此KL估计与参数θx→y不相关,L*x→y)可以简化为:
Figure BDA0002573374630000094
其中,L*x→y)的第一部分为MLE训练,第二部分可以通过EM算法进行优化,也可以通过其他算法进行优化。
以反向任务NCG模型Gy→x为例,其获得L*y→x)的原理与L*x→y)相同,对于给定的成对对话数据集D和输入语句集合
Figure BDA0002573374630000095
训练目标为最大化两个数据源的似然率,目标函数如下:
Figure BDA0002573374630000096
其中第一项表示成对对话数据的似然率,第二项表示未成对对话数据的似然率,考虑优化过程中的相互关系,将回复语句的生成作为输入语句的隐藏状态,将logp(x(t))分解如下:
log p(x(t))≥∑y[Q(y)log p(x(t)|y)-KL(Q(y)||p(y))]
其中y是隐变量,表示输入语句x(t)的可能的回复语句的生成,Q(y)是y的近似概率分布,∑yQ(y)=1,p(y)表示语句y的边缘分布,KL(Q(y)||p(y))是两个概率分布的KL散度,Q(y)满足以下条件:
Figure BDA0002573374630000101
其中a是常数,不依赖于x或y,因此Q(y)可以用下式计算:
Figure BDA0002573374630000102
其中p'(y|x(t))表示真实的input-to-response的生成概率。
由于p'(y|x(t))通常无法直接计算,因此,作为一种示例,通过引入正向任务NCG模型获取L*(θy→x),具体为使用正向任务NCG模型的生成概率p(y|x(t))作为Q(y),可得:
Figure BDA0002573374630000103
其中L*y→x)为L(θy→x)的下界,因此KL估计与参数θy→x不相关,L*y→x)可以简化为:
Figure BDA0002573374630000104
作为一种优选的方法,在模型优化的部分根据数据情况以及联合训练的特点,考虑到直接引入未成对的数据可能会因为初始数据质量问题导致模型初始存在缺陷影响模型性能,因此可以采取在训练过程中自动测量通过模型生成的问答对数据的质量。为了联合优化两个NCG模型,本发明采用加权方法控制质量较差的数据对模型的影响,通过对迭代过程中生成的训练问答对数据进行加权处理,使得数据产生的噪声对模型的负面影响最小化,具体包括:
将原始的成对对话数据权重设置为1,与此同时,将未成对对话数据通过正向任务NCG模型和反向任务NCG模型生成的合成响应的权重设置为模型输出概率的归一化值;
在基于对成对对话数据进行MLE估计的基础上,通过JointEM估计对新生成的input/response数据进行度量。
将本发明提供的Cycle-Seq2Seq模型在Cornell(C)和Opensubtitle(O)数据集上进行实验,实验结果表明,Cycle-Seq2Seq模型可以生成话题相关的、适当的多样性响应。在评估指标和人工评估方面,相较于传统的Seq2Seq模型,Cycle-Seq2Seq模型在perplexity、BLEU以及基于两类规则的人工打分值等各指标都有显著的提升,这两种评价指标的结果如表1所示,人工打分评估结果如表2所示。
表1 Cycle-Seq2Seq模型在两个数据集上perplexity和BLEU评价结果
模型 Perplexity(C) Perplexity(O) BLEU(C) BLEU(O)
Seq2seq_attetion(unp) 12.1 1.86 0.1 0.11
Bi-Seq2Seq_attention(unp) 11.75 7.67 0.15 0.15
Cyccle-Seq2seq_attention 1.47 1.53 0.20 0.21
表2针对内容可信性和内容相关性的人工打分评估结果
Figure BDA0002573374630000111
本发明还提供一种终端设备,包括至少一个处理单元、以及至少一个存储单元,其中,存储单元存储有计算机程序,当程序被处理单元执行时,使得处理单元执行上述方法的步骤。
本发明还提供一种计算机可读介质,其存储有可由终端设备执行的计算机程序,当程序在终端设备上运行时,使得终端设备上述方法的步骤。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,所述方法包括:
基于正向任务input-to-response和反向任务response-to-input建立Cycle-Seq2Seq模型,所述正向任务input-to-response和反向任务response-to-input都使用一个NCG模型去完成对应的任务目标,所述NCG模型为开放域对话生成模型,正向任务input-to-response对应的NCG模型任务目标为根据用户的输入生成相应的回复,反向任务response-to-input对应的NCG模型任务目标为根据问答的回复生成可能的用户输入;
对正向任务和反向任务迭代进行联合训练,共同优化联合任务的目标,每次迭代通过模型更新优化生成更准确的input-to-response句子和response-to-input句子,在联合训练过程中通过交替迭代生成质量更高的训练数据;
对正向任务和反向任务迭代进行联合训练,具体包括:
使用成对对话数据集对正向任务和反向任务的NCG模型进行预训练,通过最大似然估计进行模型的参数学习,得到两个训练好的NCG模型,正向任务NCG模型表示为Gx→y,反向任务NCG模型表示为Gy→x,成对对话数据集表示为D={x(n),y(n)},其中x为输入语句,y为回复语句;
添加未成对对话数据集进行正向任务NCG模型和反向任务NCG模型的联合训练,所述未成对对话数据集包括输入语句集合X={x(t)}和回复语句集合Y={y(m)},将未成对对话数据集输入到正向任务NCG模型和反向任务NCG模型中,通过多次迭代方式进行不断的对话生成更新,同时不断更新Gx→y和Gy→x的模型参数以优化模型,其中t为变量,其取值范围为[1,T],T表示输入语句集合X的语料数量;m为变量,其取值范围为[1,M],M表示回复语句集合Y的语料数量。
2.根据权利要求1所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,所述添加未成对对话数据集进行正向任务NCG模型和反向任务NCG模型的联合训练,具体包括:
在初次迭代中,使用两个预训练好的NCG模型分别对输入语句集合和回复语句集合生成相应的成对对话数据,数据更新后,再使用更新的训练数据分别对Gx→y和Gy→x进行训练,更新模型参数,得到更新后的模型
Figure FDA0003479222230000021
Figure FDA0003479222230000022
完成初次迭代,更新的训练数据包括成对对话数据集D、合成的训练数据集X'和Y';
在后续迭代中,重复初次迭代的操作,每次迭代使用的更新的合成的训练数据集是通过上一次迭代中更新的模型
Figure FDA0003479222230000023
Figure FDA0003479222230000024
分别生成的新的训练数据,直至整个联合训练的模型达到收敛后停止迭代,i为当前迭代代数。
3.根据权利要求1或2所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,正向任务NCG模型和反向任务NCG模型的目标是最大化数据源的似然率,Cycle-Seq2Seq模型的整体联合训练目标为正向任务和反向任务的似然估计的总和,其目标函数如下:
L(θ)=L*x→y)+L*y→x)。
4.根据权利要求3所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,正向任务NCG模型Gx→y对于给定的成对对话数据集D和回复语句集合
Figure FDA0003479222230000031
训练目标为最大化两个数据源的似然率,目标函数如下:
Figure FDA0003479222230000032
其中第一项表示成对对话数据的似然率,第二项表示未成对对话数据的似然率,考虑优化过程中的相互关系,将输入语句的生成作为回复语句的隐藏状态,将logp(y(m))分解如下:
logp(y(m))≥∑x[Q(x)logp(y(m)|x)-KL(Q(x)||p(x))]
其中x是隐变量,表示回复语句y(m)的可能的输入语句的生成,Q(x)是x的近似概率分布,∑xQ(x)=1,p(x)表示语句x的边缘分布,KL(Q(x)||p(x))是两个概率分布的KL散度,Q(x)满足以下条件:
Figure FDA0003479222230000033
其中a是常数,不依赖于x或y,因此Q(x)可以用下式计算:
Figure FDA0003479222230000034
其中p'(x|y(m))表示真实的response-to-input的生成概率。
5.根据权利要求4所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,引入反向任务NCG模型获取L*x→y),具体为使用反向任务NCG模型的生成概率p(x|y(m))作为Q(x),可得:
Figure FDA0003479222230000035
Figure FDA0003479222230000041
其中L*x→y)为L(θx→y)的下界,因此KL估计与参数θx→y不相关,L*x→y)可以简化为:
Figure FDA0003479222230000042
6.根据权利要求3所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,反向任务NCG模型Gy→x对于给定的成对对话数据集D和输入语句集合
Figure FDA0003479222230000043
训练目标为最大化两个数据源的似然率,目标函数如下:
Figure FDA0003479222230000044
其中第一项表示成对对话数据的似然率,第二项表示未成对对话数据的似然率,考虑优化过程中的相互关系,将回复语句的生成作为输入语句的隐藏状态,将logp(x(t))分解如下:
logp(x(t))≥∑y[Q(y)logp(x(t)|y)-KL(Q(y)||p(y))]
其中y是隐变量,表示输入语句x(t)的可能的回复语句的生成,Q(y)是y的近似概率分布,∑yQ(y)=1,p(y)表示语句y的边缘分布,KL(Q(y)||p(y))是两个概率分布的KL散度,Q(y)满足以下条件:
Figure FDA0003479222230000045
其中a是常数,不依赖于x或y,因此Q(y)可以用下式计算:
Figure FDA0003479222230000046
其中p'(y|x(t))表示真实的input-to-response的生成概率。
7.根据权利要求6所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,引入正向任务NCG模型获取L*y→x),具体为使用正向任务NCG模型的生成概率p(y|x(t))作为Q(y),可得:
Figure FDA0003479222230000051
其中L*y→x)为L(θy→x)的下界,因此KL估计与参数θy→x不相关,L*y→x)可以简化为:
Figure FDA0003479222230000052
8.根据权利要求1所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,采用加权方法控制质量较差的数据对模型的影响,具体包括:
将原始的成对对话数据权重设置为1,同时将未成对对话数据通过正向任务NCG模型和反向任务NCG模型生成的合成响应的权重设置为模型输出概率的归一化值;
在基于对成对对话数据进行MLE估计的基础上,通过JointEM估计对新生成的input/response数据进行度量。
9.一种计算机可读介质,其特征在于,其存储有可由终端设备执行的计算机程序,当所述程序在终端设备上运行时,使得所述终端设备执行权利要求1~8任一权利要求所述方法的步骤。
CN202010646644.3A 2020-07-07 2020-07-07 一种基于Cycle-Seq2Seq的开放域对话生成方法 Active CN111797218B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010646644.3A CN111797218B (zh) 2020-07-07 2020-07-07 一种基于Cycle-Seq2Seq的开放域对话生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010646644.3A CN111797218B (zh) 2020-07-07 2020-07-07 一种基于Cycle-Seq2Seq的开放域对话生成方法

Publications (2)

Publication Number Publication Date
CN111797218A CN111797218A (zh) 2020-10-20
CN111797218B true CN111797218B (zh) 2022-03-29

Family

ID=72811251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010646644.3A Active CN111797218B (zh) 2020-07-07 2020-07-07 一种基于Cycle-Seq2Seq的开放域对话生成方法

Country Status (1)

Country Link
CN (1) CN111797218B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766506A (zh) * 2017-10-20 2018-03-06 哈尔滨工业大学 一种基于层次化注意力机制的多轮对话模型构建方法
CN108170749A (zh) * 2017-12-21 2018-06-15 北京百度网讯科技有限公司 基于人工智能的对话方法、装置及计算机可读介质
CN109460463A (zh) * 2018-11-15 2019-03-12 平安科技(深圳)有限公司 基于数据处理的模型训练方法、装置、终端及存储介质
CN109547331A (zh) * 2018-11-22 2019-03-29 大连智讯科技有限公司 一种基于多轮语音聊天模型构建方法
CN110008325A (zh) * 2019-03-29 2019-07-12 海南中智信信息技术有限公司 一种基于商用对话系统的口语语言理解及改写方法
CN110222152A (zh) * 2019-05-29 2019-09-10 北京邮电大学 一种基于机器阅读理解的问题答案获取方法及系统
CN110334190A (zh) * 2019-07-12 2019-10-15 电子科技大学 一种面向开放域对话系统的回复自动生成方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015031B2 (en) * 2011-08-04 2015-04-21 International Business Machines Corporation Predicting lexical answer types in open domain question and answering (QA) systems
US9251474B2 (en) * 2013-03-13 2016-02-02 International Business Machines Corporation Reward based ranker array for question answer system
US9928235B2 (en) * 2016-07-07 2018-03-27 International Business Machines Corporation Type-specific rule-based generation of semantic variants of natural language expression
CN109086282A (zh) * 2017-06-14 2018-12-25 杭州方得智能科技有限公司 一种具备多任务驱动能力的多轮对话的方法和系统
CN109783704B (zh) * 2019-01-03 2021-02-02 中国科学院自动化研究所 人机混合的应答方法、系统、装置
CN110188331B (zh) * 2019-06-03 2023-05-26 腾讯科技(深圳)有限公司 模型训练方法、对话系统评价方法、装置、设备及存储介质
CN110866101B (zh) * 2019-11-07 2022-11-01 昆明理工大学 一种基于近端策略优化与对抗学习的对话生成方法
CN111046157B (zh) * 2019-12-10 2021-12-07 北京航空航天大学 一种基于平衡分布的通用英文人机对话生成方法和系统
CN111274374B (zh) * 2020-01-19 2023-05-23 出门问问信息科技有限公司 一种数据处理方法、装置及计算机存储介质和电子设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766506A (zh) * 2017-10-20 2018-03-06 哈尔滨工业大学 一种基于层次化注意力机制的多轮对话模型构建方法
CN108170749A (zh) * 2017-12-21 2018-06-15 北京百度网讯科技有限公司 基于人工智能的对话方法、装置及计算机可读介质
CN109460463A (zh) * 2018-11-15 2019-03-12 平安科技(深圳)有限公司 基于数据处理的模型训练方法、装置、终端及存储介质
CN109547331A (zh) * 2018-11-22 2019-03-29 大连智讯科技有限公司 一种基于多轮语音聊天模型构建方法
CN110008325A (zh) * 2019-03-29 2019-07-12 海南中智信信息技术有限公司 一种基于商用对话系统的口语语言理解及改写方法
CN110222152A (zh) * 2019-05-29 2019-09-10 北京邮电大学 一种基于机器阅读理解的问题答案获取方法及系统
CN110334190A (zh) * 2019-07-12 2019-10-15 电子科技大学 一种面向开放域对话系统的回复自动生成方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Adversarial Learning for Neural Dialogue Generation;Jiwei Li et al.;《Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing.》;20171231;第1-13页 *
Implicit Discourse Relation Identification for Open-domain Dialogues;Mingyu Derek Ma et al.;《Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics》;20190731;第666–672页 *
基于DQN的开放域多轮对话策略学习;宋皓宇等;《中文信息学报》;20180715(第07期);第99-108,136页 *
基于开放域对话系统的自动化评测方法研究;王春柳等;《计算机应用研究》;20200531(第05期);第1456-1459页 *
基于深度学习的开放领域对话系统研究综述;陈晨 等;《计算机学报》;20190318;第42卷(第07期);第1439-1466页 *
怎么结合检索式和生成式开放域对话生成方法?;https://zhuanlan.zhihu.com/p/107755040;《https://zhuanlan.zhihu.com/p/107755040》;20200219;第1-6页 *

Also Published As

Publication number Publication date
CN111797218A (zh) 2020-10-20

Similar Documents

Publication Publication Date Title
CN108734276B (zh) 一种基于对抗生成网络的模仿学习对话生成方法
CN104077595B (zh) 基于贝叶斯正则化的深度学习网络图像识别方法
CN112541063B (zh) 一种基于自学习对话模型的人机对话方法及系统
CN108829797A (zh) 多智能体对话策略系统构建方法及自适应方法
CN110866101B (zh) 一种基于近端策略优化与对抗学习的对话生成方法
Li et al. Insufficient data can also rock! learning to converse using smaller data with augmentation
CN110837548A (zh) 答案匹配方法、装置、电子设备及存储介质
CN111104513B (zh) 一种游戏平台用户问答业务的短文本分类方法
CN112989017B (zh) 用于生成对话策略学习用高质量模拟经验的方法
Maharana et al. On curriculum learning for commonsense reasoning
Zimmer et al. Developmental reinforcement learning through sensorimotor space enlargement
US20230119109A1 (en) Systems and methods for controlling hallucinations in abstractive summarization
CN111553154A (zh) 一种基于扰动对抗训练的跨语言词向量构建方法
CN111797218B (zh) 一种基于Cycle-Seq2Seq的开放域对话生成方法
CN118153659A (zh) 问答模型的训练方法、装置、电子设备、存储介质及产品
CN113010655B (zh) 一种机器阅读理解的回答与干扰项生成方法、装置
CN117828049A (zh) 数据处理方法及相关装置
CN109255994A (zh) 一种外语教学自适应学习方法及计算机可读存储介质
Qi et al. Online DPO: Online Direct Preference Optimization with Fast-Slow Chasing
Khalifa et al. Exploring demonstration ensembling for in-context learning
CN113535911B (zh) 奖励模型处理方法、电子设备、介质和计算机程序产品
CN111581911B (zh) 实时文本自动添加标点的方法、模型构建方法及装置
Tan et al. Regularized soft actor-critic for behavior transfer learning
Aouar An Adaptive Deep Learning for Causal Inference Based on Support Points With High-Dimensional Data
Ning et al. Employing Recursive Neural Networks in Voice Question-Answering Systems: A Novel Approach for Sequence Processing

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