[发明专利]一种基于Cycle-Seq2Seq的开放域对话生成方法有效
申请号: | 202010646644.3 | 申请日: | 2020-07-07 |
公开(公告)号: | CN111797218B | 公开(公告)日: | 2022-03-29 |
发明(设计)人: | 吴嘉琪;于建港;肖定和;刘嵩 | 申请(专利权)人: | 海南中智信信息技术有限公司 |
主分类号: | G06F16/332 | 分类号: | G06F16/332;G06N3/02;G06N3/04;G06N3/08 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 陈欢 |
地址: | 570100 海南省澄迈县老城高新技*** | 国省代码: | 海南;46 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cycle seq2seq 开放 对话 生成 方法 | ||
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进行训练,更新模型参数,得到更新后的模型和完成初次迭代,更新的训练数据包括成对对话数据集D、合成的训练数据集X'和Y';
在后续迭代中,重复初次迭代的操作,每次迭代使用的更新的合成的训练数据集是通过上一次迭代中更新的模型和分别生成的新的训练数据,直至整个联合训练的模型达到收敛后停止迭代,i为当前迭代代数。
3.根据权利要求1或2所述的一种基于Cycle-Seq2Seq的开放域对话生成方法,其特征在于,正向任务NCG模型和反向任务NCG模型的目标是最大化数据源的似然率,Cycle-Seq2Seq模型的整体联合训练目标为正向任务和反向任务的似然估计的总和,其目标函数如下:
L(θ)=L*(θx→y)+L*(θy→x)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海南中智信信息技术有限公司,未经海南中智信信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010646644.3/1.html,转载请声明来源钻瓜专利网。