CN111160512B - 基于生成式对抗网络构建双判别器对话生成模型的方法 - Google Patents
基于生成式对抗网络构建双判别器对话生成模型的方法 Download PDFInfo
- Publication number
- CN111160512B CN111160512B CN201911224148.2A CN201911224148A CN111160512B CN 111160512 B CN111160512 B CN 111160512B CN 201911224148 A CN201911224148 A CN 201911224148A CN 111160512 B CN111160512 B CN 111160512B
- Authority
- CN
- China
- Prior art keywords
- model
- rewriting
- reply
- rewrite
- discriminant
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于生成式对抗网络构建双判别器对话生成模型的方法,该方法首先对语料进行处理得到具有相似对话信息的四元语料;然后预训练改写模型和判别模型,前者能够对匹配到的相似回复进行改写,从而生成一个更符合当前语境的回复,后者能够对真假语句进行判别,分辨出语句来自语料库还是改写模型;最后改写模型和判别模型进行对抗学习,在两者的博弈过程中得到最佳的改写效果。本发明通过引入两个判别器多角度对生成模型进行改进,在生成句子的语法性、上下文相关性等方面取得了较大进展。
Description
技术领域
本发明涉及自然语言处理、深度学习、对话***,是一种基于生成式对抗网络(GAN)构建双判别器对话生成模型的方法。
背景技术
随着智能手机、智能家居的发展,人与机器的交互变得越来越频繁,用户对于与机器对话质量的要求也越来越高,希望能够得到顺畅流利而又多样的交流体验,这就意味着目前工业界普遍使用的基于模版的对话***已经难以满足用户需求了。目前工业界普遍使用的构建对话***的方法多基于模版,即人工整理、定义大量话术形成模版,将用户说的话输入到预先定义的模版中得到固定回复,这种方法涵盖的话题较少、人力成本较高。而随着大数据技术、深度学习技术和计算机硬件的发展,学术界在自动生成对话***方面进行了大量的探索,大数据技术提供了大量可分析的语料、深度学习技术提供了复杂的计算框架、计算机硬件技术提供了高速的运算,三者共同作用,促进了对话***的发展。
生成式对话***,顾名思义,就是用户得到的回复是***自己“创造”出来的,预先并没有人告诉它固定的答案,只是“丢”给它大量数据要它自己“学习”,这个“自学”的过程,就要利用深度学习了。目前大多数的生成式对话***的“自学”都是基于seq2seq模型,让模型学习如何对输入进行编码,然后再解码得到回复,通过不断缩小生成语句和真实语句之间的差距改进模型,然而这样就会造成模型“偷懒”——它只学习简单的生成,即它更倾向于生成“我不知道”、“好的”、“嗯”这种普适回复。同时,由于这些传统的方法所采用的语料都是“上文+回复”这样的二元语料,导致在生成的过程中没有来自回复语句的干预,使得模型不知道什么样的句子是正确的,于是有时会生成一些语法错误、语义不通的话语。所以目前亟需一种能够提高自动生成对话***多样性、上下文相关性、语法准确性的方法。
发明内容
本发明的目的是针对生成式对话***现有模型的不足而提出的一种基于生成式对抗网络构建双判别器对话生成模型的方法,该方法重点对生成回复的语法和语义两类核心问题,提出了有效的优化。
实现本发明目的具体技术方案是:
一种基于生成式对抗网络构建双判别器对话生成模型的方法,该方法包括以下具体步骤:
步骤1:语料处理
根据当前语境C,利用文本匹配算法在语料库中匹配到相似的语境C’,由此得到相似语境下的回复R’,组成四元语料<C、R、C’、R’>;
步骤2:初始化改写模型
利用步骤1得到的四元数据在seq2seq框架下训练得到一个初级的改写模型,该改写模型能结合语境C和C’对R’进行改写,生成一个回复R*,此时的改写模型远没有达到理想效果,具有较大loss;
步骤3:初始化判别模型
利用步骤2生成的回复R*与真实回复R训练判别模型的两个判别器,这两个判别器将分别从改写效果和上下文相关性两方面判断,具体过程如下:
判别器_1,旨在判别改写效果的好坏,其输入为改写前后的语句,其中改写前的句子类别为“True”,改写后的句子类别为“False”,判别器_1的作用就是尽可能的将区分两个类别;
判别器_2,旨在判别上下文相关性的好坏,于是它的其输入为“当前语境+生成的回复”和“当前语境+真实的回复”,显然,后者的上下文相关性最强,类别标为“True”,前者标为“False”,判别器_2的作用就是尽可能区分两个类别;
步骤4:改写模型与判别模型对抗训练
改写模型根据判别模型的反馈更新参数,此后,新的改写模型再将生成的语句传给判别模型,判别模型利用辨别真假语句的准确率更新模型参数,在这个对抗过程中,两者的loss都呈下降趋势直到趋于稳定,对抗训练终止;此时得到的改写模型为最优模型,即为所述对话生成模型。
本发明在对抗训练过程中,判别器的准确率越低,说明改写模型的效果越好,因为它“混淆”了判别器;但是,判别器也会随着改写模型效果的提升不断和自身准确率的下降而提高其判别力,这就是所谓的“对抗”过程。当生成模型的loss和判别模型的准确率下降到一定程度并趋于稳定时,就认为两者“实力相当”,可以终止对抗了。此时得到的生成模型,即为最优模型,取该改写模型作为最终的对话生成模型。
与现有技术相比,本发明有以下优点:
1)语法正确:与从零生成一句话相比,基于一句已有的话进行改写,能提供一个很好的语法基础;
2)语义通顺:本方法根据相似语境下的回复进行改写,能够有较好的语境基础,这样得到的回复更符合上下文。
3)模型自动学习性强:改写模型与判别器对抗学习,根据对方的效果修改模型参数,而不仅仅是根据自身的loss修改参数。
附图说明
图1为本发明的整体框架图。
具体实施方式
以下结合具体实施例和附图,对本发明做进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制的内容。
实施例
参阅图1,本发明提供的一种基于生成式对抗网络构建双判别器对话生成模型的方法,即一种以改写代替创造、改写模型与判别器博弈学习构建对话生成模型的方法,如图所示,已知当前语境C,利用文本匹配算法,匹配得到相似语境C’及其回复R’。图中左虚框部分为本实施例的改写模型,它基于seq2seq框架,编码器对R’进行编码,解码器在引入C和C’的差异diff(C,C’) 的同时进行解码,最终得到生成的回复R*。图中右虚框部分为本实施例的判别模型,判别器_1学习区分改写模型得到的R*和真实回复R,判别器_2学习区分虚假对话C+R*和真实对话C+R,两个判别器得到的反馈会再回传给改写模型。本实施例具体包括以下步骤:
步骤1:数据预处理
根据观察及经验,在一个模板基础上进行修改比完全从零开始创作要简单容易,于是本实施例提出通过改写某句话得到对话的回复,首先要做的就是对语料进行处理。目前已有的对话语料都是成对的——当前语境(context)对应一句回复(response),为了有更好的改写基础,要保证两者是在相似的语境条件下的,所以要根据匹配算法得到相似的语境,提取对应的回复,构成四元语料<C,R,C’,R’>,本实施例直接调用文本匹配算法,得到与C匹配得分最高的前10个C’,构成所需要的语料。得到四元语料后,还要对数据进行进一步清洗,设定句子长度最大为50词,超过该阈值的将弃之不用。进一步的,将语料库划分为训练集、验证集和测试集,比例为7∶2∶1。
步骤2:预训练改写模型
改写模型基于生成模型常用框架——seq2seq,框架的输入为R’,目标输出为R,框架会逐词生成R*,在解码过程中引入了注意力机制,其中注意力机制的Attention来自于编辑向量diff(C,C’)、R’和已经生成的词序列,编辑向量即为C和C’的差异词向量序列。模型利用步骤1所得的训练集进行训练,每一轮训练结束后都会得到一个模型,再利用步骤1得到的验证集进行验证,选取效果最好的模型作为改写模型在对抗过程中的初始化模型。
步骤3:预训练判别模型
判别器是基于神经网络构建的,其作用就是判断一句话/一组对话是不是真的。在将句子输入判别器之前,首先给句子打上标签,来自语料库的标签为1,由改写模型生成的标签为0;然后训练判别器,使它尽可能将两类句子区分开来。为了从不同方面辨别句子的真伪,本实施例应用两个判别器,它们的输入如图1所示,利用R与R’训练判别器_1对句子语法性的辨别能力,利用C+R*和C +R训练判别器_2对上下文语境的辨别能力。
步骤4:改写模型与判别模型对抗学习
在对抗学习过程中,改写模型的目标就是尽量生成真实的话去欺骗判别模型,而判别模型的目标就是尽量把改写模型生成的回复和真实的回复区分开来。这样,改写模型和判别模型构成了一个动态的对抗。在最理想的状态下,改写模型G可以生成足以“以假乱真”的回复。而对于判别模型D来说,它难以判定改写模型生成的回复究竟是不是真实的,此时判别器的准确率为D(G)=0.5。在对抗过程中,不断调整参数使判别模型的准确率逼近0.5,同时使改写模型的loss下降并最终趋于稳定。最终得到的对话生成模型,生成的回复在语法、上下文方面都有所提高,在向量余弦相似度度量指标Greedy、Average、Extrema上分别得到了0.629、0.755、0.682的结果。这样得到了一个生成式的模型,它可以用来生成恰当的回复。
Claims (1)
1.一种基于生成式对抗网络构建双判别器对话生成模型的方法,其特征在于,该方法包括以下具体步骤:
步骤1:语料处理
根据当前语境C,利用文本匹配算法在语料库中匹配到相似的语境C’,由此得到相似语境下的回复R’,组成四元语料<C、R、C’、R’>;
步骤2:初始化改写模型
利用步骤1得到的四元数据在seq2seq框架下训练得到一个初级的改写模型,该改写模型能结合语境C和C’对R’进行改写,生成一个回复R*;
步骤3:初始化判别模型
利用步骤2生成的回复R*与真实回复R训练判别模型的两个判别器,这两个判别器将分别从改写效果和上下文相关性两方面判断,具体过程如下:
判别器_1,旨在判别改写效果,其输入为改写前后的语句,其中改写前的句子类别为“True”,改写后的句子类别为“False”,判别器_1将区分两个类别;
判别器_2,旨在判别上下文相关性,其输入为“当前语境+生成的回复”和“当前语境+真实的回复”,后者的上下文相关性最强,类别标为“True”,前者标为“False”,判别器_2将区分两个类别;
步骤4:改写模型与判别模型对抗训练
改写模型根据判别模型的反馈更新参数,更新后的改写模型再将生成的语句传给判别模型,判别模型利用辨别真假语句的准确率更新模型参数,在这个对抗过程中,两者的loss都呈下降趋势直到趋于稳定,对抗训练终止;此时得到的改写模型为最优模型,即为所述对话生成模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911224148.2A CN111160512B (zh) | 2019-12-04 | 2019-12-04 | 基于生成式对抗网络构建双判别器对话生成模型的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911224148.2A CN111160512B (zh) | 2019-12-04 | 2019-12-04 | 基于生成式对抗网络构建双判别器对话生成模型的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111160512A CN111160512A (zh) | 2020-05-15 |
CN111160512B true CN111160512B (zh) | 2023-06-13 |
Family
ID=70556431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911224148.2A Active CN111160512B (zh) | 2019-12-04 | 2019-12-04 | 基于生成式对抗网络构建双判别器对话生成模型的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111160512B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111783955A (zh) * | 2020-06-30 | 2020-10-16 | 北京市商汤科技开发有限公司 | 神经网络的训练、对话生成方法及装置、存储介质 |
CN113076078B (zh) * | 2021-03-11 | 2022-03-22 | 山东大学 | 一种基于混合驱动的对话式信息获取方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004102596A (ja) * | 2002-09-09 | 2004-04-02 | Mitsubishi Electric Corp | 言語理解モデル生成装置 |
CN108734276A (zh) * | 2018-04-28 | 2018-11-02 | 同济大学 | 一种基于对抗生成网络的模仿学习对话生成方法 |
US10152970B1 (en) * | 2018-02-08 | 2018-12-11 | Capital One Services, Llc | Adversarial learning and generation of dialogue responses |
CN110188182A (zh) * | 2019-05-31 | 2019-08-30 | 中国科学院深圳先进技术研究院 | 模型训练方法、对话生成方法、装置、设备及介质 |
CN110347792A (zh) * | 2019-06-25 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 对话生成方法及装置、存储介质、电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10115055B2 (en) * | 2015-05-26 | 2018-10-30 | Booking.Com B.V. | Systems methods circuits and associated computer executable code for deep learning based natural language understanding |
-
2019
- 2019-12-04 CN CN201911224148.2A patent/CN111160512B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004102596A (ja) * | 2002-09-09 | 2004-04-02 | Mitsubishi Electric Corp | 言語理解モデル生成装置 |
US10152970B1 (en) * | 2018-02-08 | 2018-12-11 | Capital One Services, Llc | Adversarial learning and generation of dialogue responses |
CN108734276A (zh) * | 2018-04-28 | 2018-11-02 | 同济大学 | 一种基于对抗生成网络的模仿学习对话生成方法 |
CN110188182A (zh) * | 2019-05-31 | 2019-08-30 | 中国科学院深圳先进技术研究院 | 模型训练方法、对话生成方法、装置、设备及介质 |
CN110347792A (zh) * | 2019-06-25 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 对话生成方法及装置、存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111160512A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109977207A (zh) | 对话生成方法、对话生成装置、电子设备及存储介质 | |
CN108710704B (zh) | 对话状态的确定方法、装置、电子设备及存储介质 | |
CN104050160B (zh) | 一种机器与人工翻译相融合的口语翻译方法和装置 | |
CN111738016B (zh) | 多意图识别方法及相关设备 | |
CN110059169B (zh) | 基于语料标注的智能机器人聊天上下文实现方法及*** | |
CN108847241A (zh) | 将会议语音识别为文本的方法、电子设备及存储介质 | |
CN105095182A (zh) | 一种回复信息推荐方法及装置 | |
KR102654480B1 (ko) | 언어학습을 위한 지식 기반 대화 시스템 및 방법 | |
CN111160512B (zh) | 基于生成式对抗网络构建双判别器对话生成模型的方法 | |
CN112364631B (zh) | 基于层级多任务学习的中文语法错误检测方法及*** | |
CN112463942A (zh) | 文本处理方法、装置、电子设备及计算机可读存储介质 | |
CN116821290A (zh) | 面向多任务对话的大语言模型训练方法和交互方法 | |
CN116187320A (zh) | 意图识别模型的训练方法及相关装置 | |
CN113326367B (zh) | 基于端到端文本生成的任务型对话方法和*** | |
CN113362815A (zh) | 语音交互方法、***、电子设备及存储介质 | |
CN117370512A (zh) | 回复对话的方法、装置、设备及存储介质 | |
CN112084788A (zh) | 一种影像字幕隐式情感倾向自动标注方法及*** | |
CN111046674A (zh) | 语义理解方法、装置、电子设备和存储介质 | |
CN112002325B (zh) | 多语种语音交互方法和装置 | |
CN114330285B (zh) | 语料处理方法、装置、电子设备及计算机可读存储介质 | |
CN108962281A (zh) | 一种语言表达的评价和辅助方法及装置 | |
CN110147556B (zh) | 一种多向神经网络翻译***的构建方法 | |
CN114358019A (zh) | 意图预测模型的训练方法及*** | |
CN115017876A (zh) | 一种自动生成情感文本的方法及终端 | |
CN114254640A (zh) | 开放关系抽取方法、电子设备和存储介质 |
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 |