CN110457457B - 对话生成模型的训练方法、对话生成方法及装置 - Google Patents

对话生成模型的训练方法、对话生成方法及装置 Download PDF

Info

Publication number
CN110457457B
CN110457457B CN201910713314.9A CN201910713314A CN110457457B CN 110457457 B CN110457457 B CN 110457457B CN 201910713314 A CN201910713314 A CN 201910713314A CN 110457457 B CN110457457 B CN 110457457B
Authority
CN
China
Prior art keywords
hidden layer
layer variable
dialogue
gaussian
reply
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
CN201910713314.9A
Other languages
English (en)
Other versions
CN110457457A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910713314.9A priority Critical patent/CN110457457B/zh
Publication of CN110457457A publication Critical patent/CN110457457A/zh
Priority to PCT/CN2020/102760 priority patent/WO2021022992A1/zh
Priority to US17/462,193 priority patent/US11842164B2/en
Application granted granted Critical
Publication of CN110457457B publication Critical patent/CN110457457B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • 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/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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/042Knowledge-based neural networks; Logical representations of neural 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/045Combinations of 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/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Acoustics & Sound (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Human Computer Interaction (AREA)
  • Machine Translation (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请公开了一种对话生成模型的训练方法、对话生成方法及装置,涉及人工智能领域。该方法包括:通过对上下文样本进行编码得到第一隐层变量,对第一隐层变量识别得到先验隐层变量;对答复样本进行编码得到第二隐层变量;对答复相似样本进行编码得到第三隐层变量;根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量;匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练。该方法采用了样本集中的相似样本,通过相似样本的混合高斯分布来拟合对话生成模型的后验分布,达到了拟合更加复语义的目的,能够捕捉对话的复杂语义和高可变性。

Description

对话生成模型的训练方法、对话生成方法及装置
技术领域
本申请涉及人工智能领域,特别涉及一种对话生成模型的训练方法、对话生成方法及装置。
背景技术
开放域下的对话系统被广泛应用于工业界和学术界,该对话系统能够生成具有多样性和相关性的答复。
基于变分自动编码器(Variational Auto-Encoders,VAEs)的对话生成模型在给定不同主题的上下文的情况下,生成具有多样性和相关性的答复。以Wasserstein自动编码器(Dialog Wasserstein Auto-Encoder,DialogWAE)为例,对对话生成模型的训练过程进行说明,首先,DialogWAE通过先验网络(Prior Network)对上下文学习得到一个混合高斯分布,基于混合高斯分布采样得到一个随机变量;然后,通过生成器将上述随机变量转变为先验隐层变量;同理,DialogWAE还通过后验网络对上下文和真实答复学习得到另一个高斯分布,基于上述另一个高斯分布重采样得到一个变量,通过另一生成器将生成后验隐层变量;最终,DialogWAE通过判别器度量先验隐层变量与后验隐层变量之间的Wasserstein距离。
上述DialogWAE通过简单的高斯分布拟合后验分布,比如,对一个高斯分布采样得到一个变量,来生成后验隐层变量;而简单的高斯分布拟合的后验分布可能无法捕捉到对于答复生成所需的复杂语义和高可变性。
发明内容
本申请实施例提供了一种对话生成模型的训练方法、对话生成方法及装置,可以解决简单的高斯分布拟合的后验分布对于答复生成所需的复杂语义和高可变性可能无法捕捉到的问题。所述技术方案如下:
根据本申请的一个方面,提供了一种对话生成模型的训练方法,该方法包括:
获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本;
对上下文样本进行编码得到第一隐层变量,对第一隐层变量识别得到先验隐层变量;
对答复样本进行编码得到第二隐层变量;对答复相似样本进行编码得到第三隐层变量;根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量;
匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练;
其中,答复相似样本是根据答复样本的上下文采集得到的答复的相似样本;上下文样本是采集答复样本的上下文得到的。
根据本申请的另一个方面,提供了一种对话生成方法,应用于运行有对话生成模型的服务器中,对话生成模型是上述一个方面及其可选实施例中任一方法训练的模型,该方法包括:
获取对话的上下文;
调用对话生成模型对对话的上下文进行编码得到第一隐层变量;
调用对话生成模型对第一隐层变量识别得到先验隐层变量;
调用对话生成模型对第一隐层变量和先验隐层变量的和进行解码生成答复对话;
输出答复对话。
根据本申请的另一方面,提供了一种对话生成模型的训练装置,该装置包括:
获取模块,用于获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本;
识别模块,用于对上下文样本进行编码得到第一隐层变量;对第一隐层变量识别得到先验隐层变量;
识别模块,用于对答复样本进行编码得到第二隐层变量;对答复相似样本进行编码得到第三隐层变量;根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量;
匹配模块,用于匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练;
其中,答复相似样本是根据答复样本的上下文采集得到的答复的相似样本;上下文样本是采集答复样本的上下文得到的。
根据本申请的另一方面,提供了一种对话生成的装置,该装置中运行有对话生成模型,对话生成模型是上述一个方面及其可选实施例中任一方法训练的模型,该装置包括:
获取模块,用于获取对话的上下文;
调用模块,用于调用对话生成模型对对话的上下文进行编码得到第一隐层变量;
调用模块,用于调用对话生成模型对第一隐层变量识别得到先验隐层变量;
调用模块,用于调用对话生成模型对第一隐层变量和先验隐层变量的和进行解码生成答复对话;
输出模块,用于输出答复对话。
根据本申请的另一方面,提供了一种终端,该终端包括:
存储器;
与存储器相连的处理器;
其中,处理器被配置为加载并执行可执行指令以实现如上述一个方面及其可选实施例所述的对话生成模型的训练方法,以及如上述另一方面及其可选实施例所述的对话生成方法。
根据本申请的另一方面,提供了一种服务器,该服务器包括:
存储器;
与存储器相连的处理器;
其中,处理器被配置为加载并执行可执行指令以实现如上述一个方面及其可选实施例所述的对话生成模型的训练方法,以及如上述另一方面及其可选实施例所述的对话生成方法。
根据本申请的另一方面,提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,上述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述一个方面及其可选实施例所述的对话生成模型的训练方法,以及如上述另一方面及其可选实施例所述的对话生成方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本;对上下文样本进行编码得到第一隐层变量,对第一隐层变量识别得到先验隐层变量;对答复样本进行编码得到第二隐层变量;对答复相似样本进行编码得到第三隐层变量;根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量;匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练。
该方法采用了样本集中的相似样本,通过相似样本的混合高斯分布来拟合对话生成模型的后验分布,达到了拟合更加复语义的目的,能够捕捉对话的复杂语义和高可变性。
该方法中先验网络还在计算第三权重时使用归一化指数函数(即softmax函数),避免了使用极值型归一化函数(即gumbel-softmax函数)导致的混合高斯分布退化为简单高斯分布的问题,使先验网络识别得到的高斯分布能够保持为混合高斯分布。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的对话生成模型的结构示意图;
图2是本申请一个示例性实施例提供的计算机系统的结构示意图;
图3是本申请一个示例性实施例提供的对话生成模型的训练方法的流程图;
图4是本申请另一个示例性实施例提供的对话生成模型的训练方法的流程图;
图5是本申请另一个示例性实施例提供的对话生成模型的结构示意图;
图6是本申请另一个示例性实施例提供的对话生成模型的训练方法的流程图;
图7是本申请另一个示例性实施例提供的对话生成模型的结构示意图;
图8是本申请一个示例性实施例提供的对话生成方法流程图;
图9是本申请一个示例性实施例提供的对话生成模型的性能变化曲线;
图10是本申请一个示例性实施例提供的对话生成模型的训练装置的框图;
图11是本申请一个示例性实施例提供的对话生成装置的框图;
图12是本申请一个示例性实施例提供的电子设备的结构示意图;
图13是本申请一个示例性实施例提供的服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请示出的一个示例性实施例提供的对话生成模型的结构示意图,该对话生成模型包括先验分布模块、后验分布模块和判别器;
后验分布模块包括至少两组发声编码器组11、识别网络12、第一生成器13和答复解码器组14;至少两组发声编码器组11中每组发声编码器组11分别与识别网络12相互连接,识别网络12与第一生成器13相互连接,第一生成器13与答复解码器组14相互连接。
可选地,每组发声编码器组11包括j个串联的发声编码器;答复解码器组14包括f个串联的答复解码器;j、f为正整数。
先验分布模块包括上下文编码器组15、先验网络16和第二生成器17;上下文编码器组15与先验网络16相互连接,先验网络16与第二生成器17相互连接;上下文编码器组15还分别与每组发声编码器组11、以及答复解码器组14相互连接。
可选地,上下文编码器组15包括至少一个发声编码器和至少一个上下文编码器。
判别器18分别与第一生成器13、第二生成器17相互连接。
在一些实施例中,至少两组发声编码器组11包括第一编码器组和第二编码器组;上下文编码器组15,用于对上下文样本进行编码得到第一隐层变量c。第一编码器组,用于对答复样本进行编码得到第二隐层变量r;第二编码器组,用于对答复相似样本进行编码得到第三隐层变量r1、……、rk
识别网络12,用于对第二隐层变量与第一隐层变量的和r+c进行识别,得到1个第一混合高斯分布和对应的第一权重π;对第三隐层变量与第一隐层变量的和r1+c、……、rk+c进行识别,得到k个第二混合高斯分布和对应的第二权重π1、……、πk。其中,第一混合高斯分布包括均值μ和方差σ,第二混合高斯分布包括均值μ1、……、μk和方差σ1、……、σk
识别网络12,还用于从第一混合高斯分布中抽取第一高斯噪声ε,从第二混合高斯分布中抽取第二高斯噪声ε1、……、εk;计算后验高斯噪声为ε*π+ε11+……+εkk
第一生成器13,用于将后验高斯噪声转换为后验隐层变量z1
先验网络16,用于对第一隐层变量c进行识别,得到第三混合高斯分布和第三权重πi;其中,第三混合高斯分布中包括第三高斯分布,第三高斯分布包括均值μi和方差σi;计算先验高斯噪声为ε11+……+εii
可选地,先验网络16中包括归一化指数函数,归一化指数函数也就是softmax函数;先验网络16,还用于通过softmax函数确定上述第三权重πi
第二生成器17,用于将先验高斯噪声转换为先验隐层变量z2
判别器18,用于最小化z1和z2之间的运输距离,对对话生成模型进行对抗训练;其中,运输距离也就是Wasserstein距离,k、i为正整数。
综上所述,上述对话生成模型中增加了对答复相似样本的训练模块,通过相似样本的混合高斯分布来拟合对话生成模型的后验分布,达到了拟合更加复语义的目的,能够捕捉对话的复杂语义和高可变性。
上述对话生成模型的先验网络中还使用了softmax函数,避免了使用即gumbel-softmax函数导致的混合高斯分布退化为简单高斯分布的问题,使先验网络识别得到的高斯分布能够保持为混合高斯分布。
图2是本申请的一个示例性实施例提供的计算机系统的结构示意图,该计算机系统包括终端120和服务器140。
终端120与服务器140之间通过有线或者无线网络相互连接。
可选地,终端120可以包括笔记本电脑、台式电脑、智能手机、平板电脑中的至少一种。
终端120包括第一存储器、第一处理器和第一通信模块。第一存储器中存储有第一程序;上述第一程序被第一处理器调用执行以实现本申请提供的对话生成方法。第一存储器可以包括但不限于以下几种:随机存取存储器(Random Access Memory,RAM)、只读存储器(Read Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM)、以及电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)。
第一处理器可以是一个或者多个集成电路芯片组成。可选地,第一处理器可以是通用处理器,比如,中央处理器(Central Processing Unit,CPU)或者网络处理器(NetworkProcessor,NP)。第一处理器用于执行第一存储器中存储的第一程序以实现本申请提供的对话生成方法。可选地,第一处理器用于通过调用第一存储器中存储的对话生成模型来实现上述对话生成方法。
第一通信模块用于向服务器140发送对话生成请求,以及接收服务器140发送的答复对话。
可选地,终端120中包括第一显示器;第一显示器用于显示终端120或者服务器140生成的答复对话。
可选地,终端120中包括第一扬声器;第一扬声器用于播放终端120或者服务器140生成的答复对话。
服务器140包括第二存储器、第二处理器和第二通信模块。第二存储器中存储有第二程序,上述第二程序被第二处理器调用来处理终端120发送的对话生成请求,以实现本申请提供的对话生成方法。第二存储器还存储有对话生成模型,上述对话生成模型被第二处理器调用以实现上述对话生成方法。
第二处理器用于执行第二存储器中存储的第二程序以实现上述对话生成方法;可选地,第二处理器通过调用第二存储器中存储对话生成模型以实现上述对话生成方法。
可选地,第二存储器可以包括但不限于以下几种:RAM、ROM、PROM、EPROM、EEPROM。可选地,第二处理器可以是通用处理器,比如,CPU或者NP。
第二通信模块用于接收终端120发送的对话生成请求,以及向终端120发送生成的回复对话。
在一些实施例中,终端120的第一存储器中还存储有对话生成模型,上述对话生成模型被第一处理器调用以实现上述对话生成方法。因此,终端120可以独立实现本申请提供的对话生成方法。
示意性的,本申请提供的对话生成模型可以应用于口语对话辅助、咨询服务以及学术研究等等场景中。对此进行举例说明如下:
对话生成模型应用于口语对话辅助软件中,终端120通过文本输入控件采集对话文本,或者通过麦克风采集用户语音,将语音转换为对话文本;通过口语对话辅助软件调用对话生成模型生成对话文本对应的答复对话;通过显示器对答复对话进行显示,或者通过扬声器对答复对话进行语音播放;使用户能够通过与机器之间的对话进行口语训练。
对话生成模型应用于咨询服务软件中,终端120通过文本输入控件采集咨询问题的文本,或者通过麦克风采集用户语音,将语音转换为咨询问题的文本;通过咨询服务软件调用对话生成模型生成咨询问题对应的答复对话;通过显示器对答复对话进行显示,或者通过扬声器对答复对话进行语音播放;通过机器为用户提供咨询服务,减少了人力资源的需求。
对话生成模型应用于学术中,该对话生成模型可以作为研究样本,对开放域下的对话系统进行更深层次的技术研究,甚至扩展至对神经网络模型的研究。
图3是本申请示出的一个示例性实施例提供的对话生成模型的训练方法的流程图,该方法包括:
步骤101,电子设备获取至少一组训练样本。
其中,每组训练样本包括上下文样本、答复样本和答复相似样本。
答复样本是针对一个主题问题采集得到的历史答复。
上下文样本是采集答复样本的上下文得到的。比如,答复样本为“I liketennis”,上下文样本为“I like soccer”,和/或“that is cool”,和/或“how about you”等等。
答复相似样本是根据答复样本的上下文采集得到的答复的相似样本。采集答复相似样本的步骤可以如下:
首先,采集答复样本的上下文;其次,根据答复样本的上下文采集相似的上下文;再次,采集相似的上下文对应的答复作为答复相似样本。
在一个示意性的例子中,首先,采集答复样本的上下文;其次,根据答复样本的上下文的最后一句采集相似的上下文的最后一句;再次,根据相似的上下文的最后一句采集得到相似的上下文以及其对应的答复;最终,将上述对应的答复作为答复相似样本。
通过上述采集方式得到的答复相似样本与答复样本具有相似性,比如,答复样本为“I like fish”,答复相似样本为“I like beaf”、“I like rice”等等,针对的主题均为喜欢的食物。
可选地,电子设备包括终端和服务器中的任意一种。
步骤102,电子设备对上下文样本进行编码得到第一隐层变量。
电子设备调用对话生成模型对上下文样本进行编码得到第一隐层变量。
对话生成模型中包括发声编码器(utterance encoder)和上下文编码器(contextencoder);对话生成模型通过发声编码器和上下文编码器将上下文样本进行编码,得到第一隐层变量。示意性的,对话生成模型通过发声编码器对上下文样本中的至少一个上下文分别编码得到至少一个中间隐层变量;将至少一个中间隐层变量输入上下文编码器,通过上下文编码器编码得到第一隐层变量。
步骤103,电子设备对答复样本进行编码得到第二隐层变量。
电子设备调用对话生成模型对答复样本进行编码得到第二隐层变量。
对话生成模型通过发声编码器将答复样本进行编码,得到第二隐层变量。
步骤104,电子设备对答复相似样本进行编码得到第三隐层变量。
电子设备调用对话生成模型对答复相似样本进行编码得到第三隐层变量。
对话生成模型通过发声编码器将答复相似样本进行编码,得到第三隐层变量。
可选地,上下文样本中包括至少一个上下文,对应一个第一隐层变量;答复样本中包括一个真实答复,对应一个第二隐层变量;答复相似样本中包括至少一个真实答复的相似答复,对应至少一个第三隐层变量。
步骤105,电子设备对第一隐层变量识别得到先验隐层变量。
电子设备调用对话生成模型对第一隐层变量识别得到先验隐层变量。
可选地,对话生成模型包括先验网络和第二生成器;对话生成模型对隐层变量识别得到先验隐层变量的示意性过程如下:
1)调用先验网络(prior network)对第一隐层变量进行识别,得到第三混合高斯分布和对应的第三权重。
其中,第三混合高斯分布中包括n个第三高斯分布,对应的,对话生成模型通过先验网络识别得到n个第三权重,n为大于2的正整数。
可选地,先验网络中包括softmax函数;第三权重的识别步骤包括:
a)调用上述softmax函数对第一隐层变量进行处理,得到上述第三权重。也就是说,对话生成模型将第一隐层变量输入softmax函数计算得到第三权重。
2)调用先验网络从n个第三高斯分布中分别获取得到n个第三高斯噪声。
3)调用先验网络将n个第三高斯噪声分别与对应的n个第三权重相乘,得到n个第三乘积;将n个第三乘积的和确定为先验高斯噪声。
4)调用第二生成器将先验高斯噪声转换为先验隐层变量。
步骤106,电子设备根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量。
电子设备调用对话生成模型对第一隐层变量、第二隐层变量和第三隐层变量识别得到混合高斯分布,并从混合高斯分布中识别得到后验隐层变量。
可选地,对话生成模型包括识别网络和第一生成器;对话生成模型对隐层变量识别得到后验隐层变量的示意性过程如下:
1)调用识别网络(recognition network)对第二隐层变量与第一隐层变量的和进行识别,得到第一识别结果。
第一识别结果包括第一混合高斯分布,第一混合高斯分布包括均值和方差。
可选地,第一识别结果还包括第一权重,第一权重用于指示第一高斯噪声在后验高斯噪声中所占比例。
2)调用识别网络对第三隐层变量与第一隐层变量的和进行识别,得到第二识别结果。
第二识别结果包括第二混合高斯分布,第二混合高斯分布包括均值和方差。
可选地,第二识别结果包括第二权重,第二权重用于指示第二高斯噪声在后验高斯噪声中所占比例。
3)调用识别网络从第一混合高斯分布和第二混合高斯分布中确定出后验高斯噪声。
可选地,后验高斯噪声的获取步骤如下所示:
a)调用识别网络从第一混合高斯分布中获取第一高斯噪声;从第二混合高斯分布中获取第二高斯噪声;
可选地,调用识别网络对第一混合高斯分布的均值和方差抽取得到第一高斯噪声;对第二混合高斯分布的均值和方差抽取得到第二高斯噪声。
可选地,识别网络采用重参数化技巧(re-parameterization trick)从第一混合高斯分布中抽取出第一高斯噪声,从第二混合高斯分布中抽取出第二高斯噪声。
b)调用识别网络将第一高斯噪声与第一权重相乘得到第一乘积;将第二高斯噪声与第二权重相乘得到第二乘积。
c)调用识别网络将第一乘积与第二乘积的和确定为后验高斯噪声。
4)调用第一生成器将后验高斯噪声转换为后验隐层变量。
步骤107,电子设备匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练。
电子设备调用对话生成模型匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练。
可选地,对话生成模型通过判别器最小化先验隐层变量和后验隐层变量之间的Wasserstein距离,对对话生成模型进行对抗训练。
综上所述,本实施例提供的对话生成模型的训练方法,通过获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本;对上下文样本进行编码得到第一隐层变量,对第一隐层变量识别得到先验隐层变量;对答复样本进行编码得到第二隐层变量;对答复相似样本进行编码得到第三隐层变量;根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量;匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练。
该方法采用了样本集中的相似样本,通过相似样本的混合高斯分布来拟合对话生成模型的后验分布,达到了拟合更加复语义的目的,能够捕捉对话的复杂语义和高可变性。
该方法中先验网络还在计算第三权重时使用softmax函数,避免了使用gumbel-softmax函数导致的混合高斯分布退化为简单高斯分布的问题,使先验网络识别得到的高斯分布能够保持为混合高斯分布。
还需要说明的是,步骤102至步骤104可以是并行执行的,步骤102至步骤104之间的执行顺序在本申请中不加以限定;在步骤102至步骤104执行完成之后,可以并行执行步骤105至步骤106,步骤105与步骤106之间的执行顺序在本申请中也不加以限定。
在一些实施例中,对话生成模型的训练可以分为三个阶段,实现对对话生成模型从易到难的训练,三个阶段分别为:
第一阶段,采集答复样本和上下文样本对对话生成模型的后验分布模块中的模型参数进行训练;
第二阶段,采集答复样本、答复相似样本和上下文样本对对话生成模型的后验分布模块中的模型参数进行训练;
第三阶段,采集答复样本、答复相似样本和上下文样本对对话生成模型的先验分布模块和后验分布模块进行对抗训练。
对于第一阶段,如图4,对对话生成模型的后验分布模块中模型参数的训练的示意性步骤包括:
步骤201,电子设备获取至少一组训练样本。
其中,每组训练样本中包括上下文样本和答复样本。
步骤202,电子设备对上下文样本进行编码得到第一隐层变量。
步骤203,电子设备对答复样本进行编码得到第二隐层变量。
步骤204,电子设备调用对话生成模型对第一隐层变量和第二隐层变量进行识别,对对话生成模型的后验分布模块中的模型参数进行训练。
可选地,电子设备调用识别网络对第一隐层变量与第二隐层变量的和进行识别,得到第五混合高斯分布;从第五混合高斯分布中获取第五高斯噪声;调用第一生成器将第五高斯噪声转换为后验隐层变量。
可选地,对话生成模型包括答复解码器;电子设备调用答复解码器对后验隐层变量与第一隐层变量的和进行解码,生成答复对话。
示意性的,如图5,上下文样本输入上下文编码器组15,得到第一隐层变量c;答复样本输入发声编码器组11,得到第二隐层变量r;将r+c等隐层变量输入识别网络12,得到1个第五混合高斯分布,第五混合高斯分布包括均值μ和方差σ;从第五混合高斯分布中抽取第五高斯噪声ε;将第五高斯噪声ε输入第一生成器13中得到后验隐层变量z;将z与c的和输入答复解码器组14中解码得到对话。
对于第二阶段,如图6,采用第一阶段训练得到的对话生成模型,对对话生成模型的后验分布模块中模型参数的训练的示意性步骤包括:
步骤301,电子设备获取至少一组训练样本。
其中,每组训练样本包括上下文样本、答复样本和答复相似样本。
步骤302,电子设备对上下文样本进行编码得到第一隐层变量。
步骤303,电子设备对答复样本进行编码得到第二隐层变量。
步骤304,电子设备对答复相似样本进行编码得到第三隐层变量。
步骤305,电子设备调用对话生成模型对第一隐层变量、第二隐层变量和第三隐层变量进行识别,对对话生成模型的后验分布模块中的模型参数进行训练。
可选地,后验分布模块中包括识别网络、第一生成器和答复解码器;对对话生成模型的后验分布模块中的模型参数进行训练的示意性步骤如下:
1)调用识别网络对隐层变量之和进行识别,得到第四混合高斯分布。
其中,隐层变量之和包括第二隐层变量与第一隐层变量的和,以及第三隐层变量与第一隐层变量的和。
2)调用识别网络从第四混合高斯分布中获取第四高斯噪声。
3)调用第一生成器对第四高斯噪声进行处理,生成后验隐层变量。
4)调用答复解码器对后验隐层变量和第一隐层变量的和进行解码,对后验分布模块中的模型参数进行训练。
需要说明的是,上述对对话生成模型的后验分布模块中模型参数的训练过程中,是将第二隐层变量与第一隐层变量的和,以及第三隐层变量与第一隐层变量的和按照先后顺序输入对话生成模型中,对后验分布模块中的模型参数进行训练。示意性的,如图7,上下文样本输入上下文编码器组15,得到第一隐层变量c;答复样本输入第一发声编码器组,得到第二隐层变量r;答复相似样本输入第二发声编码器组,得到第三隐层变量r1、……、rk;将r+c,r1+c、……、rk+c等等隐层变量先后输入识别网络12,先后得到k+1个第四混合高斯分布,第四混合高斯分布包括均值μ、μ1、……、μk和方差σ、σ1、……、σk;从第四混合高斯分布中抽取第五高斯噪声ε、ε1、……、εk;通过第一生成器13将第五高斯噪声ε、ε1、……、εk转换为后验隐层变量z、z1、……、zk;对后验隐层变量z、z1、……、zk分别解码生成对话。
对于第三阶段,采用第二阶段训练得到的对话生成模型,第三阶段中对对话生成模型的训练的示意性步骤请参考步骤101至步骤107,在此不再加以赘述。还需要说明的是,第三阶段还可以采用第一阶段训练得到的对话生成模型;或者,第二阶段还可以是未采用第一阶段的对话生成模型。
综上所述,本实施例提供的对话生成模型的训练方法,通过上述三个阶段的训练,实现了对对话生成模型由易到难的训练过程,使生成的对话更加多样性。
还需要说明的是,对话生成模型中包括答复解码器(response decoder);对话生成模型通过答复解码器对后验隐层变量与第一隐层变量的和进行解码,生成对话。示意性的,上述均为对话生成模型的训练阶段的过程说明;而在生成阶段中,对话生成模型将第一隐层变量与先验隐层变量的和进行解码,生成对话。请参考图8,示出了一个示例性实施例提供的对话生成方法的流程图,对上述生成阶段进行说明,该方法包括:
步骤401,电子设备获取对话的上下文。
步骤402,电子设备调用对话生成模型对对话的上下文进行编码得到第一隐层变量。
该对话生成模型是指通过本申请提供的对话生成模型的训练方法进行训练过的对话生成模型。
可选地,对话生成模型包括发声编码器和上下文编码器;对话生成模型通过发声编码器和上下文编码器将对话的上下文进行编码,得到第一隐层变量。
步骤403,电子设备调用对话生成模型对第一隐层变量识别得到先验隐层变量。
可选地,对话生成模型包括先验网络和生成器;生成先验隐层变量的示意性步骤如下:
1)调用先验网络对第一隐层变量进行识别,得到先验高斯噪声。
可选地,先验网络中包括softmax函数;对先验高斯噪声识别的示意性步骤如下:
a)对第一隐层变量进行识别,得到第三混合高斯分布;以及调用softmax函数确定出对应的第三权重,第三混合高斯分布中包括n个第三高斯分布;
b)从n个第三高斯分布中分别获取得到n个第三高斯噪声;
c)将n个第三高斯噪声分别与对应的n个第三权重相乘,得到n个第三乘积;将n个第三乘积的和确定为先验高斯噪声。
2)调用生成器对先验高斯噪声进行处理,得到先验隐层变量。
步骤404,电子设备调用对话生成模型对第一隐层变量和先验隐层变量的和进行解码生成答复对话。
可选地,对话生成模型包括答复解码器;电子设备调用答复解码器对第一隐层变量和先验隐层变量的和进行解码生成答复对话。
步骤405,电子设备输出答复对话。
可选地,电子设备通过显示器输出答复对话;或者,通过扬声器播放答复对话。
综上所述,本实施例提供的对话生成方法,通过获取对话的上下文;调用对话生成模型对对话的上下文进行编码得到第一隐层变量;调用对话生成模型对第一隐层变量识别得到先验隐层变量;调用对话生成模型对第一隐层变量和先验隐层变量的和进行解码生成答复对话;输出答复对话。
该对话生成方法调用了对话生成模型,该对话生成模型是通过本申请提供的对话生成模型的训练方法进行训练过的对话生成模型,能够捕捉对话的复杂语义和高可变性,生成多样性的答复对话。
该方法中先验网络还在计算第三权重时使用softmax函数,避免了使用gumbel-softmax函数导致的混合高斯分布退化为简单高斯分布的问题,使先验网络识别得到的高斯分布能够保持为混合高斯分布。
为了检验本申请提供的对话生成模型的有效性,可以采用自动评估和人工评估两个方面对本申请提供的对话生成模型进行评估。当对本申请提供的对话生成模型进行自动评估时,将8个已有的对话生成模型作为基准模型,与本申请提供的对话生成模型的性能进行比较,8个已有的对话生成模型包括:分层循环编码器-解码器(Hierarchical RecurrentEncoder-Decoder,HRED)模型、序列生成对抗网络(Sequence Generative AdversarialNetworks,SeqGAN)模型、条件变分自编码器(Conditional Variational Auto-Encoder,CVAE)模型、基于词袋的条件变分自编码器(CVAE-Bag-Of-Words,CVAE-BOW)模型、协同式条件变分自编码器(CVAE-COllaborative,CVAE-CO)模型、隐变量层次递归编码器-解码器(latent Variable Hierarchical Recurrent Encoder-Decoder Model,VHRED)模型、VHCR模型和DialogWAE-GMP模型。
自动评估采用了能够反映相关性和多样性的指标:词嵌入和距离。其中,词嵌入表示了预测与响应之间的余弦相似度,该余弦相似度可以来评估生成的响应的相关性。本申请中的词嵌入包括平均值、极值和贪婪值。在测试阶段,对每个测试环境下的10个预测响应进行抽样,并计算10个抽样响应中最大词嵌入分数作为最终报告结果。距离用于测量生成的响应的多样性。本申请中计算N元模型(n-gram)中n取值为1,2时分别对应的距离平均值。示意性的,如表1,示出了交换机数据集的性能比较数据;如表2,示出了日常对话(DailyDialog)数据集的性能比较。
表1
表2
人工评估则从日常对话的测试集中随机抽取150个对话进行评价。对于测试中的每个上下文,均从评估的模型中生成10个响应,响应也即生成的答复对话。3名注释员检查每个上下文件的答复对话,从中选择出在流畅性、一致性和多样性方面表现最好的模型,并对每个模型在每个度量下的比率计算响应的人类评估分数。
对测试结果进行定量分析,从表1和表2中,可以知道本申请提供的对话生成模型在两个数据集中的所有度量方面几乎优于所有基准模型。也就是说,本申请提供的对话生成模型可以生成更连贯的答复对话,增强了对话间的多样性。
需要说明的是,后验隐层变量的个数k对性能的影响,从图9中可以得出,在大多数情况下,性能随k增加而增加,当k超过某个阈值时,性能随k增加而降低,比如,阈值为4;而且随着k的变化,词嵌入分数的波动相对较小,表示随着k的增加,相关性基本稳定,本着不损失相关性的原则,通过设置k值来改善多样性。综合考虑,在测试实验中,将k设置为4。
对测试结果进行定性分析,表3中是对DialogWAE-GMP模型与本申请提供对话生成模型生成的答复对话的示例,可以看出,本申请提供对话生成模型相比于DialogWAE-GMP模型生成的答复对话更流畅、更具有相关性以及多样性。
表3
如表4,是对DailyDialog数据集上的模型的人工评估,可以看出,本申请提供的对话生成模型在流畅性、相关性以及多样性上明显优于DialogWAE-GMP模型;而本申请中采用课程优化策略训练得到的对话生成模型在流畅性、相关性以及多样性上明显优于没有采用课程优化策略训练得到的对话生成模型。
表4
示意性的,从表5中可以看出,课程优化策略的每个阶段均有助于增强本申请提供的对话生成模型生成的答复对话的相关性和多样性。
表5
综上所述,本申请提出了一种新的对话生成体系结构,该体系结构采用范例增强和课程优化的方法,以增强生成答复对话的多样性和相关性。也就是说,首先,充分利用例子来近似更复杂的混合高斯分布,这有助于模拟产生的响应(生成答复对话)的高变异性。同时,通过从易到难的三个阶段,逐步进行课程优化模式的培训,进一步提高了答复对话的多样性和相关性。在上述两个数据集上的实验结果表明,与上述基准模型相比,本申请提供的对话生成模型可以产生更为多样和相关的响应。
图10是本申请示出的一个示例性实施例提供的对话生成模型的训练装置的框图,该装置通过软件、硬件或者二者的结合实现成为终端或者服务器的部分或者全部,该装置包括:
获取模块501,用于获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本;
识别模块502,用于对上下文样本进行编码得到第一隐层变量,对第一隐层变量识别得到先验隐层变量;
识别模块502,用于对答复样本进行编码得到第二隐层变量;对答复相似样本进行编码得到第三隐层变量;根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量;
匹配模块503,用于匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练;
其中,答复相似样本是根据答复样本的上下文采集得到的答复的相似样本;上下文样本是采集答复样本的上下文得到的。
在一些实施例中,对话生成模型包括识别网络和第一生成器;
识别模块502,用于调用识别网络对第二隐层变量与第一隐层变量的和进行识别,得到第一识别结果;对第三隐层变量与第一隐层变量的和进行识别,得到第二识别结果;其中,第一识别结果包括第一混合高斯分布,第二识别结果包括第二混合高斯分布;
识别模块502,用于调用识别网络从第一混合高斯分布和第二混合高斯分布中确定出后验高斯噪声;
识别模块502,用于调用第一生成器将后验高斯噪声转换为后验隐层变量。
在一些实施例中,第一识别结果还包括第一权重;第二识别结果还包括第二权重;
识别模块502,用于调用识别网络从第一混合高斯分布中获取第一高斯噪声;从第二混合高斯分布中获取第二高斯噪声;调用识别网络将第一高斯噪声与第一权重相乘得到第一乘积;将第二高斯噪声与第二权重相乘得到第二乘积;调用识别网络将第一乘积与第二乘积的和确定为后验高斯噪声。
在一些实施例中,对话生成模型包括先验网络和第二生成器;
识别模块502,用于调用先验网络对第一隐层变量进行识别,得到第三混合高斯分布和对应的第三权重,第三混合高斯分布中包括n个第三高斯分布;从n个第三高斯分布中分别获取得到n个第三高斯噪声;将n个第三高斯噪声分别与对应的n个第三权重相乘,得到n个第三乘积;将n个第三乘积的和确定为先验高斯噪声;
识别模块502,用于调用第二生成器将先验高斯噪声转换为先验隐层变量,n为大于2的正整数。
在一些实施例中,先验网络中包括归一化指数函数;
识别模块502,用于调用归一化指数函数对第一隐层变量进行处理,得到第三权重。
在一些实施例中,对话生成模型包括后验分布模块;
识别模块502,还用于调用对话生成模型对第一隐层变量、第二隐层变量和第三隐层变量进行识别,对对话生成模型的后验分布模块中的模型参数进行训练。
在一些实施例中,后验分布模块中包括识别网络、第一生成器和答复解码器;
识别模块502,用于调用识别网络对隐层变量之和进行识别,得到第四混合高斯分布;调用识别网络从第四混合高斯分布中获取第四高斯噪声;调用第一生成器对第四高斯噪声进行处理,生成后验隐层变量;调用答复解码器对后验隐层变量和第一隐层变量的和进行解码,对后验分布模块中的模型参数进行训练;
其中,隐层变量之和包括第二隐层变量与第一隐层变量的和,以及第三隐层变量与第一隐层变量的和。
在一些实施例中,对话生成模型包括后验分布模块;
识别模块502,用于调用对话生成模型对第一隐层变量和第二隐层变量进行识别,对对话生成模型的后验分布模块中的模型参数进行训练。
综上所述,本实施例提供的对话生成模型的训练装置,通过获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本;对上下文样本进行编码得到第一隐层变量,对第一隐层变量识别得到先验隐层变量;对答复样本进行编码得到第二隐层变量;对答复相似样本进行编码得到第三隐层变量;根据第一隐层变量、第二隐层变量和第三隐层变量的混合高斯分布,识别得到后验隐层变量;匹配先验隐层变量和后验隐层变量,对对话生成模型进行对抗训练。
该装置采用了样本集中的相似样本,通过相似样本的混合高斯分布来拟合对话生成模型的后验分布模块,达到了拟合更加复语义的目的,能够捕捉对话的复杂语义和高可变性。
该装置中先验网络还在计算第三权重时使用softmax函数,避免了使用gumbel-softmax函数导致的混合高斯分布退化为简单高斯分布的问题,使先验网络识别得到的高斯分布能够保持为混合高斯分布。
图11是本申请示出的另一个示例性实施例提供的对话生成装置的框图,该装置中运行有对话生成模型,该对话生成模型是通过本申请提供的对话生成模型的训练方法进行训练过的对话生成模型;该装置通过软件、硬件或者二者的结合实现成为终端或者服务器的部分或者全部,该装置包括:
获取模块601,用于获取对话的上下文;
调用模块602,用于调用对话生成模型对对话的上下文进行编码得到第一隐层变量;
调用模块602,用于调用对话生成模型对第一隐层变量识别得到先验隐层变量;
调用模块602,用于调用对话生成模型对第一隐层变量和先验隐层变量的和进行解码生成答复对话;
输出模块603,用于输出答复对话。
在一些实施例中,对话生成模型包括先验网络和生成器;
调用模块602,用于调用先验网络对第一隐层变量进行识别,得到先验高斯噪声;调用生成器对先验高斯噪声进行处理,得到先验隐层变量。
在一些实施例中,先验网络中包括归一化指数函数;
调用模块602,用于对第一隐层变量进行识别,得到第三混合高斯分布;以及调用归一化指数函数确定出对应的第三权重,第三混合高斯分布中包括n个第三高斯分布;从n个第三高斯分布中分别获取得到n个第三高斯噪声;将n个第三高斯噪声分别与对应的n个第三权重相乘,得到n个第三乘积;将n个第三乘积的和确定为先验高斯噪声。
综上所述,本实施例提供的对话生成装置,通过获取对话的上下文;调用对话生成模型对对话的上下文进行编码得到第一隐层变量;调用对话生成模型对第一隐层变量识别得到先验隐层变量;调用对话生成模型对第一隐层变量和先验隐层变量的和进行解码生成答复对话;输出答复对话。
该对话生成装置调用了对话生成模型,该对话生成模型是通过本申请提供的对话生成模型的训练方法进行训练过的对话生成模型,能够捕捉对话的复杂语义和高可变性,生成多样性的答复对话。
该装置中先验网络还在计算第三权重时使用softmax函数,避免了使用gumbel-softmax函数导致的混合高斯分布退化为简单高斯分布的问题,使先验网络识别得到的高斯分布能够保持为混合高斯分布。
图12示出了本申请一个示例性实施例提供的终端800的结构框图。该终端800可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio LayerIV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端800包括有:处理器801和存储器802。
处理器801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器801可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器801所执行以实现本申请中方法实施例提供的对话生成模型的训练方法,以及对话生成方法。
在一些实施例中,终端800还可选包括有:外围设备接口803和至少一个外围设备。处理器801、存储器802和外围设备接口803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口803相连。具体地,外围设备包括:射频电路804、显示屏805、音频电路806、定位组件807和电源808中的至少一种。
外围设备接口803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器801和存储器802。在一些实施例中,处理器801、存储器802和外围设备接口803被集成在同一芯片或电路板上;在一些其他实施例中,处理器801、存储器802和外围设备接口803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏805是触摸显示屏时,显示屏805还具有采集在显示屏805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器801进行处理。此时,显示屏805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏805可以为一个,设置终端800的前面板;在另一些实施例中,显示屏805可以为至少一个,分别设置在终端800的不同表面或呈折叠设计;在一些实施例中,显示屏805可以是柔性显示屏,设置在终端800的弯曲表面上或折叠面上。甚至,显示屏805还可以设置成非矩形的不规则图形,也即异形屏。显示屏805可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
音频电路806可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器801进行处理,或者输入至射频电路804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器801或射频电路804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路806还可以包括耳机插孔。
定位组件807用于定位终端800的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件807可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源808用于为终端800中的各个组件进行供电。电源808可以是交流电、直流电、一次性电池或可充电电池。当电源808包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
本领域技术人员可以理解,图12中示出的结构并不构成对终端800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图13示出了本申请一个实施例提供的服务器的结构示意图。该服务器用于实施上述实施例中提供的对话生成模型的训练方法,以及对话生成方法。具体来讲:
所述服务器900包括中央处理单元(CPU)901、包括随机存取存储器(RAM)902和只读存储器(ROM)903的系统存储器904,以及连接系统存储器904和中央处理单元901的系统总线905。所述服务器900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。
所述基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标、键盘之类的输入设备909。其中所述显示器908和输入设备909都通过连接到系统总线905的输入输出控制器910连接到中央处理单元901。所述基本输入/输出系统906还可以包括输入输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。所述大容量存储设备907及其相关联的计算机可读介质为服务器900提供非易失性存储。也就是说,所述大容量存储设备907可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。
根据本申请的各种实施例,所述服务器900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器900可以通过连接在所述系统总线905上的网络接口单元911连接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程计算机系统(未示出)。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (13)

1.一种对话生成模型的训练方法,其特征在于,所述对话生成模型包括先验网络、识别网络、第一生成器和第二生成器,所述方法包括:
获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本,所述训练样本采用文本或语音的形式表示;
对所述上下文样本进行编码得到第一隐层变量,调用所述先验网络对所述第一隐层变量进行识别,得到第三混合高斯分布和第三权重,所述第三混合高斯分布中包括n个第三高斯分布,所述第三权重包括与所述n个第三高斯分布对应的n个第三权重;从所述n个第三高斯分布中分别获取得到n个第三高斯噪声;将所述n个第三高斯噪声分别与所述n个第三权重对应相乘,得到n个第三乘积;将所述n个第三乘积的和确定为先验高斯噪声;调用所述第二生成器将所述先验高斯噪声转换为先验隐层变量,n为大于2的正整数;
对所述答复样本进行编码得到第二隐层变量;对所述答复相似样本进行编码得到第三隐层变量;调用所述识别网络对所述第二隐层变量与所述第一隐层变量的和进行识别,得到第一识别结果,所述第一识别结果包括第一混合高斯分布;调用所述识别网络对所述第三隐层变量与所述第一隐层变量的和进行识别,得到第二识别结果,所述第二识别结果包括第二混合高斯分布;调用所述识别网络从所述第一混合高斯分布和所述第二混合高斯分布中确定出后验高斯噪声;调用所述第一生成器将所述后验高斯噪声转换为第一后验隐层变量;
匹配所述先验隐层变量和所述第一后验隐层变量,对所述对话生成模型进行对抗训练;
其中,所述答复相似样本是根据所述答复样本的上下文采集得到的答复的相似样本;所述上下文样本是采集所述答复样本的上下文得到的。
2.根据权利要求1所述的方法,其特征在于,所述第一识别结果还包括第一权重;所述第二识别结果还包括第二权重;
所述调用所述识别网络从所述第一混合高斯分布和所述第二混合高斯分布中确定出后验高斯噪声,包括:
调用所述识别网络从所述第一混合高斯分布中获取第一高斯噪声;从所述第二混合高斯分布中获取第二高斯噪声;
调用所述识别网络将所述第一高斯噪声与所述第一权重相乘得到第一乘积;将所述第二高斯噪声与所述第二权重相乘得到第二乘积;
调用所述识别网络将所述第一乘积与所述第二乘积的和确定为所述后验高斯噪声。
3.根据权利要求1所述的方法,其特征在于,所述先验网络中包括归一化指数函数;
所述调用所述先验网络对所述第一隐层变量进行识别,得到第三权重,包括:
调用所述归一化指数函数对所述第一隐层变量进行处理,得到所述第三权重。
4.根据权利要求1至3任一所述的方法,其特征在于,所述对话生成模型包括后验分布模块;
所述方法还包括:
调用所述对话生成模型对所述第一隐层变量、所述第二隐层变量和所述第三隐层变量进行识别,对所述对话生成模型的所述后验分布模块中的模型参数进行训练。
5.根据权利要求4所述的方法,其特征在于,所述后验分布模块中包括所述识别网络、所述第一生成器和答复解码器;
所述调用所述对话生成模型对所述第一隐层变量、所述第二隐层变量和所述第三隐层变量进行识别,对所述对话生成模型的所述后验分布模块中的模型参数进行训练,包括:
调用所述识别网络对隐层变量之和进行识别,得到第四混合高斯分布;调用所述识别网络从所述第四混合高斯分布中获取第四高斯噪声;
调用所述第一生成器对所述第四高斯噪声进行处理,生成第二后验隐层变量;
调用所述答复解码器对所述第二后验隐层变量和所述第一隐层变量的和进行解码,对所述后验分布模块中的所述模型参数进行训练;
其中,所述隐层变量之和包括所述第二隐层变量与所述第一隐层变量的和,以及所述第三隐层变量与所述第一隐层变量的和。
6.根据权利要求1至3任一所述的方法,其特征在于,所述对话生成模型包括后验分布模块;
所述方法还包括:
调用所述对话生成模型对所述第一隐层变量和所述第二隐层变量进行识别,对所述对话生成模型的所述后验分布模块中的模型参数进行训练。
7.一种对话生成方法,其特征在于,应用于运行有对话生成模型的服务器中,所述对话生成模型是权利要求1至6任一所述方法训练的模型,所述方法包括:
获取对话的上下文;
调用所述对话生成模型对所述对话的上下文进行编码得到第一隐层变量;
调用所述对话生成模型对所述第一隐层变量识别得到先验隐层变量;
调用所述对话生成模型对所述第一隐层变量和所述先验隐层变量的和进行解码生成答复对话;
输出所述答复对话。
8.根据权利要求7所述的方法,其特征在于,所述对话生成模型包括先验网络和生成器;
所述调用所述对话生成模型对所述第一隐层变量识别得到先验隐层变量,包括:
调用所述先验网络对所述第一隐层变量进行识别,得到先验高斯噪声;
调用所述生成器对所述先验高斯噪声进行处理,得到所述先验隐层变量。
9.根据权利要求8所述的方法,其特征在于,所述先验网络中包括归一化指数函数;
所述调用所述先验网络对所述第一隐层变量进行识别,得到先验高斯噪声,包括:
对所述第一隐层变量进行识别,得到第三混合高斯分布;以及调用所述归一化指数函数确定出第三权重,所述第三混合高斯分布中包括n个第三高斯分布,所述第三权重包括与所述n个高斯分布对应的n个第三权重;
从所述n个第三高斯分布中分别获取得到n个第三高斯噪声;
将所述n个第三高斯噪声分别与所述n个第三权重对应相乘,得到n个第三乘积;将所述n个第三乘积的和确定为所述先验高斯噪声。
10.一种对话生成模型的训练装置,其特征在于,所述对话生成模型包括先验网络、识别网络、第一生成器和第二生成器,所述装置包括:
获取模块,用于获取至少一组训练样本,每组训练样本包括上下文样本、答复样本和答复相似样本,所述训练样本采用文本或语音的形式表示;
识别模块,用于对所述上下文样本进行编码得到第一隐层变量,调用所述先验网络对所述第一隐层变量进行识别,得到第三混合高斯分布和第三权重,所述第三混合高斯分布中包括n个第三高斯分布,所述第三权重包括与所述n个第三高斯分布对应的n个第三权重;从所述n个第三高斯分布中分别获取得到n个第三高斯噪声;将所述n个第三高斯噪声分别与所述n个第三权重对应相乘,得到n个第三乘积;将所述n个第三乘积的和确定为先验高斯噪声;调用所述第二生成器将所述先验高斯噪声转换为先验隐层变量,n为大于2的正整数;
所述识别模块,用于对所述答复样本进行编码得到第二隐层变量;对所述答复相似样本进行编码得到第三隐层变量;调用所述识别网络对所述第二隐层变量与所述第一隐层变量的和进行识别,得到第一识别结果,所述第一识别结果包括第一混合高斯分布;调用所述识别网络对所述第三隐层变量与所述第一隐层变量的和进行识别,得到第二识别结果,所述第二识别结果包括第二混合高斯分布;调用所述识别网络从所述第一混合高斯分布和所述第二混合高斯分布中确定出后验高斯噪声;调用所述第一生成器将所述后验高斯噪声转换为第一后验隐层变量;
匹配模块,用于匹配所述先验隐层变量和所述第一后验隐层变量,对所述对话生成模型进行对抗训练;
其中,所述答复相似样本是根据所述答复样本的上下文采集得到的答复的相似样本;所述上下文样本是采集所述答复样本的上下文得到的。
11.一种对话生成装置,其特征在于,所述装置中运行有对话生成模型,所述对话生成模型是权利要求1至6任一所述方法训练的模型,所述装置包括:
获取模块,用于获取对话的上下文;
调用模块,用于调用对话生成模型对所述对话的上下文进行编码得到第一隐层变量;
所述调用模块,用于调用所述对话生成模型对所述第一隐层变量识别得到先验隐层变量;
所述调用模块,用于调用所述对话生成模型对所述第一隐层变量和所述先验隐层变量的和进行解码生成答复对话;
输出模块,用于输出所述答复对话。
12.一种服务器,所述服务器包括:
存储器;
与所述存储器相连的处理器;
其中,所述处理器被配置为加载并执行可执行指令以实现如权利要求1至6任一所述的对话生成模型的训练方法,以及如权利要求7至9任一所述的对话生成方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集;所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由处理器加载并执行以实现如权利要求1至6任一所述的对话生成模型的训练方法,以及如权利要求7至9任一所述的对话生成方法。
CN201910713314.9A 2019-08-02 2019-08-02 对话生成模型的训练方法、对话生成方法及装置 Active CN110457457B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201910713314.9A CN110457457B (zh) 2019-08-02 2019-08-02 对话生成模型的训练方法、对话生成方法及装置
PCT/CN2020/102760 WO2021022992A1 (zh) 2019-08-02 2020-07-17 对话生成模型的训练方法、对话生成方法、装置及介质
US17/462,193 US11842164B2 (en) 2019-08-02 2021-08-31 Method and apparatus for training dialog generation model, dialog generation method and apparatus, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910713314.9A CN110457457B (zh) 2019-08-02 2019-08-02 对话生成模型的训练方法、对话生成方法及装置

Publications (2)

Publication Number Publication Date
CN110457457A CN110457457A (zh) 2019-11-15
CN110457457B true CN110457457B (zh) 2023-09-22

Family

ID=68484795

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910713314.9A Active CN110457457B (zh) 2019-08-02 2019-08-02 对话生成模型的训练方法、对话生成方法及装置

Country Status (3)

Country Link
US (1) US11842164B2 (zh)
CN (1) CN110457457B (zh)
WO (1) WO2021022992A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110457457B (zh) 2019-08-02 2023-09-22 腾讯科技(深圳)有限公司 对话生成模型的训练方法、对话生成方法及装置
US11710046B2 (en) * 2019-11-29 2023-07-25 42Maru Inc. Method and apparatus for generating Q and A model by using adversarial learning
CN111199149B (zh) * 2019-12-17 2023-10-20 航天信息股份有限公司 一种对话系统的语句智能澄清方法及系统
CN113010023A (zh) * 2019-12-20 2021-06-22 北京搜狗科技发展有限公司 一种信息推荐方法、装置和电子设备
CN113053356B (zh) * 2019-12-27 2024-05-31 科大讯飞股份有限公司 语音波形生成方法、装置、服务器及存储介质
CN111400489B (zh) * 2020-04-08 2022-12-02 科大讯飞股份有限公司 对话文本摘要生成方法、装置、电子设备和存储介质
CN111552774B (zh) * 2020-04-24 2023-07-25 中国人民大学 基于沃瑟斯坦距离正则化的查询-文档匹配方法和系统
CN111680123B (zh) * 2020-05-25 2024-01-26 腾讯科技(深圳)有限公司 对话模型的训练方法、装置、计算机设备及存储介质
CN111861924B (zh) * 2020-07-23 2023-09-22 成都信息工程大学 一种基于进化gan的心脏磁共振图像数据增强方法
CN111967577B (zh) * 2020-07-29 2024-04-05 华北电力大学 一种基于变分自编码器的能源互联网场景生成方法
CN113535911B (zh) * 2020-12-03 2024-04-12 腾讯科技(深圳)有限公司 奖励模型处理方法、电子设备、介质和计算机程序产品
CN113254597B (zh) * 2021-06-23 2021-09-28 腾讯科技(深圳)有限公司 模型训练方法、查询处理方法及相关设备
CN114398904B (zh) * 2021-11-22 2024-08-23 重庆邮电大学 一种基于多粒度特征解耦的开放领域对话生成方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334497A (zh) * 2018-02-06 2018-07-27 北京航空航天大学 自动生成文本的方法和装置
CN110008322A (zh) * 2019-03-25 2019-07-12 阿里巴巴集团控股有限公司 多轮对话场景下的话术推荐方法和装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9558743B2 (en) * 2013-03-15 2017-01-31 Google Inc. Integration of semantic context information
US9811519B2 (en) * 2015-09-24 2017-11-07 Conduent Business Services, Llc Generative discriminative approach for transactional dialog state tracking via collective matrix factorization
US11205103B2 (en) * 2016-12-09 2021-12-21 The Research Foundation for the State University Semisupervised autoencoder for sentiment analysis
US10453444B2 (en) * 2017-07-27 2019-10-22 Microsoft Technology Licensing, Llc Intent and slot detection for digital assistants
US10635707B2 (en) * 2017-09-07 2020-04-28 Xerox Corporation Contextual memory bandit for proactive dialogs
KR102608469B1 (ko) * 2017-12-22 2023-12-01 삼성전자주식회사 자연어 생성 방법 및 장치
CN110457457B (zh) * 2019-08-02 2023-09-22 腾讯科技(深圳)有限公司 对话生成模型的训练方法、对话生成方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108334497A (zh) * 2018-02-06 2018-07-27 北京航空航天大学 自动生成文本的方法和装置
CN110008322A (zh) * 2019-03-25 2019-07-12 阿里巴巴集团控股有限公司 多轮对话场景下的话术推荐方法和装置

Also Published As

Publication number Publication date
US20210397797A1 (en) 2021-12-23
US11842164B2 (en) 2023-12-12
CN110457457A (zh) 2019-11-15
WO2021022992A1 (zh) 2021-02-11

Similar Documents

Publication Publication Date Title
CN110457457B (zh) 对话生成模型的训练方法、对话生成方法及装置
CN111309883B (zh) 基于人工智能的人机对话方法、模型训练方法及装置
CN107623614B (zh) 用于推送信息的方法和装置
CN110516059B (zh) 基于机器学习的问题答复方法、问答模型训练方法及装置
CN110263131B (zh) 回复信息生成方法、装置及存储介质
CN108922525B (zh) 语音处理方法、装置、存储介质及电子设备
CN112069309B (zh) 信息获取方法、装置、计算机设备及存储介质
CN110992963B (zh) 网络通话方法、装置、计算机设备及存储介质
CN108962241B (zh) 位置提示方法、装置、存储介质及电子设备
CN112840396A (zh) 用于处理用户话语的电子装置及其控制方法
CN110931000A (zh) 语音识别的方法和装置
CN111602133A (zh) 针对自然语言处理系统的词嵌入的压缩
CN115116458B (zh) 语音数据转换方法、装置、计算机设备及存储介质
US20120053937A1 (en) Generalizing text content summary from speech content
CN110781329A (zh) 图像搜索方法、装置、终端设备及存储介质
CN108322770B (zh) 视频节目识别方法、相关装置、设备和系统
CN113763925B (zh) 语音识别方法、装置、计算机设备及存储介质
CN113903338A (zh) 面签方法、装置、电子设备和存储介质
CN111324710B (zh) 一种基于虚拟人的在线调研方法、装置和终端设备
CN108989551B (zh) 位置提示方法、装置、存储介质及电子设备
CN114866856B (zh) 音频信号的处理方法、音频生成模型的训练方法及装置
CN117520363A (zh) 数据库查询语句的生成方法、装置、设备及存储介质
CN112905748A (zh) 一种演讲效果评估系统
CN111292766B (zh) 用于生成语音样本的方法、装置、电子设备和介质
CN116741193B (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