CN113239157B - 对话模型的训练方法、装置、设备和存储介质 - Google Patents
对话模型的训练方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN113239157B CN113239157B CN202110348055.1A CN202110348055A CN113239157B CN 113239157 B CN113239157 B CN 113239157B CN 202110348055 A CN202110348055 A CN 202110348055A CN 113239157 B CN113239157 B CN 113239157B
- Authority
- CN
- China
- Prior art keywords
- knowledge
- probability
- reply
- model
- dialogue
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Biology (AREA)
- Software Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Human Computer Interaction (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Machine Translation (AREA)
Abstract
本公开公开了一种对话模型的训练方法、装置、设备和存储介质,涉及计算机技术领域,尤其涉及自然语言处理、人机对话等技术领域。对话模型包括知识选择模型和回复生成模型,对话模型的训练方法包括:采用所述知识选择模型,处理对话样本和知识库,以确定与所述对话样本匹配的知识以及第一概率,所述第一概率为所述知识被选中的概率;采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本的概率;基于所述第一概率和所述第二概率,确定损失函数,并基于所述损失函数训练所述知识选择模型和所述回复生成模型。本公开可以将相关知识引入对话***且训练方式具有较强的通用性。
Description
技术领域
本公开涉及计算机技术领域,具体涉及自然语言处理、人机对话等技术领域,尤其涉及对话模型的训练方法、装置、设备和存储介质。
背景技术
为了提高对话***生成的回复的相关性,一般会在对话***中引入知识(knowledge)。针对引入知识的对话***,对话***采用的对话模型包括知识选择模型。
相关技术中,可以采用人工标注的方式为知识打标签,有监督的训练知识选择模型;或者,以词袋(Bag of Words,BoW)和KL散度(Kullback-Leibler divergence)等为优化目标,进行无监督的训练。
发明内容
本公开提供了一种对话模型的训练方法、装置、设备和存储介质。
根据本公开的一方面,提供了一种对话模型的训练方法,所述对话模型包括知识选择模型和回复生成模型,所述方法包括:采用所述知识选择模型,处理对话样本和知识库,以确定与所述对话样本匹配的知识,并确定所述知识对应的第一概率,所述第一概率为所述知识被选中的概率;采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本的概率;基于所述第一概率和所述第二概率,确定损失函数,并基于所述损失函数训练所述知识选择模型和所述回复生成模型。
根据本公开的另一方面,提供了一种对话模型的训练装置,所述对话模型包括知识选择模型和回复生成模型,所述装置包括:知识选择模块,用于采用所述知识选择模型,处理对话样本和知识库,以确定与所述对话样本匹配的知识,并确定所述知识对应的第一概率,所述第一概率为所述知识被选中的概率;回复生成模块,用于采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本的概率;训练模块,用于基于所述第一概率和所述第二概率,确定损失函数,并基于所述损失函数训练所述知识选择模型和所述回复生成模型。
根据本公开的另一方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上述任一方面的任一项所述的方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行如上述任一方面的任一项所述的方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据上述任一方面的任一项所述的方法。
根据本公开的技术方案,可以将相关知识引入对话***且训练方式具有较强的通用性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开第一实施例的示意图;
图2是根据本公开第二实施例的示意图;
图3是根据本公开第三实施例的示意图;
图4是根据本公开第四实施例的示意图;
图5是根据本公开第五实施例的示意图;
图6是根据本公开第六实施例的示意图;
图7是用来实现本公开实施例的对话模型的训练方法中任一方法的电子设备的示意图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在对话***中,人们往往希望能引入和对话相关的知识,使得***能够在回复中围绕相关知识和用户进行讨论,提升回复的相关度、信息量和趣味性。
在对话***中引入知识,即通过对话信息,在知识库中选择出合理的相关知识,结合到***的回复生成中,目前主流方案主要有两种:一种是有监督的训练方式,另一种是基于后验概率的无监督的训练方式。前者主要是对知识进行标注,训练时要求知识选择模型尽可能输出标注为正确的知识;后者不需要人工标注,主要利用当前回复中蕴含的后验信息,对话上文作为先验信息,分别产生知识选择的先验概率和后验概率,通常使用词袋(BagofWords,BoW)建立按后验概率选择出来的知识和后验信息(回复)之间的联系,提升后验概率的准确性,然后再通过KL Divergence等方式拉近先验概率和后验概率的分布。
但是,上述方案都存在一定的问题,前者方案成本昂贵,且由于人力和时间等因素,人工标注无法穷尽所有合理知识,纯依靠人工标注的知识具有片面性;后者模型训练难度较大,常需要大量的经验技巧,才能获得较好的收敛效果,比如需要针对数据集特定的一些词频特性做清洗、在数据集上纯使用后验信息预训练BoW等,导致***训练时间成本高,训练方式不够通用,可复现性差。
为了至少在一定程度上解决上述至少一个方面的问题,本公开实施例提出一种对话模型的训练方法,该训练方法属于无监督的训练方法,从而可以解决有监督的训练方法存在的人工标注量大等问题,另外,该训练方法以回复作为优化目标,而不是以Bow和KLDivergence为优化目标,避免目前的无监督的训练方式存在的通用性差等问题。
图1是根据本公开第一实施例的示意图,本实施例提供一种对话模型的训练方法,对话模型包括知识选择模型和回复生成模型,如图1所示,该方法包括:
101、采用所述知识选择模型,处理对话样本和知识库,以确定与所述对话样本匹配的知识,并确定所述知识对应的第一概率,所述第一概率为所述知识被选中的概率。
102、采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本被选中的概率。
103、基于所述第一概率和所述第二概率,确定损失函数,并基于所述损失函数训练所述知识选择模型和所述回复生成模型。
对话过程一般包括:对话***获取对话信息(context),对话***采用对话模型对该对话信息进行处理,以生成回复(response)。对话信息也可以称为上下文、上文等,是指对话过程中产生的信息,比如包括:用户当前输入的检索语句(query),另外,由于对话过程一般是多轮的,对话信息还可以包括之前已经发生的对话内容。
如图2所示,对话模型可以包括:知识选择模型201和回复生成模型202。对话过程中,知识选择模型201的输入包括对话信息(c)和知识库,知识库用于存储知识,知识选择模型的输出为与输入的对话信息最匹配的一个(top-1)知识(knowledge)(k),回复生成模型202的输入为知识和对话信息,输出为回复(r)。
知识(knowledge)是指对生成回复有价值的信息,知识可以存储在知识库中,知识可以包括各种不同领域的知识,各种不同领域比如包括:天气、娱乐、智能客服、交通导航等。以娱乐为例,知识比如包括某部电影的演员、导演、评价等信息。
为了与对话过程中的对话信息(context)和回复(response)进行区分,在训练阶段,相应的参数称为对话样本(context样本)和回复样本(response样本),另外,在训练阶段,基于对话样本和知识生成的回复可以称为预测回复。
在训练阶段,将对话样本输入到知识选择模型中,知识选择模型的另一输入为预先配置的知识库中的知识,知识库中包括多个知识,经过知识选择模型的处理,可以输出与对话样本匹配的多个(top-k)知识,即,按照匹配值从高到低的顺序选择的k个知识,k为可设置值。知识选择模型可以包括编码模型(encoder),编码模型(encoder)的参数是可训练的,encoder可以为深度神经网络模型,比如为Transformer模型的encoder,encoder可以将输入(对话样本和知识)编码成对应的向量,以基于向量选择知识。另外,可以根据匹配值计算知识对应的第一概率,比如,第一概率为对上述的匹配值进行归一化处理后得到的归一化值。
在得到k个知识后,可以将对话样本和k个知识作为回复生成模型的输入,回复生成模型可以得到预测回复对应的概率,包括预测回复为回复样本的概率,该概率可以称为第二概率。需要说明的是,在训练阶段,可以依据该第二概率进行后续处理,不需要将第二概率映射到对应的回复,但是,在对话过程中,即,应用阶段,回复生成模型得到预测回复对应的概率后,可以选择概率最大的文本作为回复。回复生成模型可以为深度神经网络模型,比如为Transformer模型,回复生成模型的参数是可训练的。
在得到第一概率和第二概率时,可以基于第一概率和第二概率确定损失函数,损失函数可以为边际损失(Marginal Loss)函数,用公式表示为:
其中,p(ki|c)是第一概率,p(r|c,ki)是第二概率,r是回复样本,c是对话样本,ki是第i个知识。
在得到损失函数后,可以基于损失函数训练对话模型。对话模型包括知识选择模型和回复生成模型,在训练时,可以联合训练知识选择模型和回复生成模型,比如,调整知识选择模型的参数和回复生成模型的参数,直至达到基于损失函数确定的优化目标,而不是单独确定知识选择模型对应的损失函数以单独训练知识选择模型。
本实施例中,通过知识选择模型的处理,可以将知识引入对话***,在将知识引入对话***时,损失函数基于第一概率和第二概率确定,第一概率采用知识选择模型确定,第二概率采用回复生成模型确定,因此,可以对知识选择模型和回复生成模型进行联合训练,避免单独训练知识选择模型时存在的人工标注量大的问题,并且,第二概率与回复相关,以回复作为优化目标,相对于以BoW和KL散度等为优化目标的方式,可以使得训练方式更为通用,可复现性更强。
图3是根据本公开第三实施例的示意图,本实施例提供一种对话模型的训练方法,对话模型包括知识选择模型和回复生成模型,如图3所示,该方法包括:
301、构建训练语料。
其中,可以从历史对话中收集训练语料,每组训练语料可以表示为<对话样本,回复样本>。
302、采用所述知识选择模型中的编码模型,将对话样本编码成对话向量,以及,将所述知识库中各个知识分别编码成知识向量。
303、确定所述对话向量与所述知识向量的内积值。
304、按照所述内积值从大到小的顺序,选择预设个数的知识,确定为与所述对话样本匹配的知识。
305、对所述知识对应的内积值进行归一化处理,以得到归一化值,将所述归一化值确定为所述知识对应的第一概率。
如图4所示,为知识选择模型的一种结构示意图,知识选择模型可以包括:编码模型401,编码模型401的输入包括对话样本和知识库中的各个知识,经过编码模型401的处理,可以将输入转换为对应的向量,可以分别称为对话向量(Rep-c)和知识向量(Rep-k)。之后,可以计算对话向量和知识向量的内积值,按照内积值从大到小的顺序,选择预设的k个知识作为对话样本匹配的知识。
针对k个匹配的知识,各个知识对应的第一概率可以是对应的内积值的归一化后的值,比如,假设第i个知识用ki表示,对话样本用c表示,则计算出知识ki和对话样本c的内积值后,可以对该内积值进行softmax处理,得到[0,1]之间的值,将该知识ki对应的第一概率p(ki|c)。
通过按照内积值从大到小的顺序选择,可以获取与对话样本匹配的知识。通过对内积值进行归一化处理,可以简便地得到第一概率。
306、采用所述回复生成模型的输入层,采用所述输入层对所述对话样本和所述知识进行处理,以得到输入向量。
307、采用所述回复生成模型的隐层对所述输入向量进行处理,以得到状态向量。
308、采用所述回复生成模型的输出层对所述状态向量进行处理,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本的概率。
如图5所示,为回复生成模型的一种结构示意图,回复生成模型可以包括:输入层501、隐层502和输出层503。输入层501用于将输入文本转换为输入向量,输入文本用x表示;本实施例中,输入文本包括对话样本、与对话样本匹配的知识,以及已经生成的回复。隐层502用于对输入向量进行处理,输出状态向量,状态向量用h表示。输出层503的输入为状态向量,在训练阶段的输出为预测回复为各个候选文本的概率,候选文本包括回复样本,因此,输出层的输出包括预测回复为回复样本的概率,该概率称为第二概率,用p(r|c,ki)表示。
进一步地,输入层可以包括类型嵌入(type embeddding)层,所述类型嵌入层的输入包括互不相同的对话信息类型标识、知识类型标识和回复类型标识。比如,回复类型标识(type id)为0,对话信息类型标识(type id)为1,知识类型标识(type id)为2。可以理解的是,输入层还可以包括其他的一些通用层,比如,位置嵌入(position embedding)层和标记嵌入(token embedding)层。
通过引入类型嵌入层,并采用不同的类型标识分别标识对话信息、知识和回复,可以更好地区分和使用知识。
隐层和输出层的骨干结构可以为Transformer模型,比如,隐层包括Transformer模型的encoder,输出层包括Transformer模型的decoder。图5中隐层以包括L个Transformer块(block)为例。
进一步地,隐层包括自注意力层模型,所述自注意力模型包括第一部分和第二部分,所述第一部分是对话样本和知识对应的部分,所述第二部分是已生成回复对应的部分,所述第一部分采用双向自注意力机制,所述第二部分采用单向自注意力机制。
如图5所示,对话样本(图5中用上文表示)和知识对应的部分的自注意力机制为双向(用实线表示),回复对应的部分的自注意力机制为单向(用虚线表示)。
通过对自注意力层的第一部分采用双向自注意力机制,可以更好地提取对话样本和知识中的信息,并且一部分采用双向,另一部分采用单向,而不是全部单向或双向,可以提高灵活性。
通过上述的输入层、隐层和输出层,可以确定与回复样本相关的第二概率,从而可以以回复作为优化目标,可以使得训练更稳定,更具通用性。
309、基于所述第一概率和所述第二概率,确定损失函数。
在得到第一概率和第二概率时,可以基于第一概率和第二概率确定损失函数,损失函数可以为边际损失(Marginal Loss)函数,用公式表示为:
其中,p(ki|c)是第一概率,p(r|c,ki)是第二概率,r是回复样本,c是对话样本,ki是第i个知识。
310、基于所述损失函数联合训练所述知识选择模型和回复生成模型。
训练目标(Training Objectives)可以是最小化上述的Marginal Loss。即,在得到损失函数后,可以调整知识选择模型和回复生成模型的参数,直至达到上述的训练目标。
图6是根据本公开第六实施例的示意图。如图6所示,该实施例提供一种对话模型的训练装置。所述对话模型包括知识选择模型和回复生成模型,该装置600包括:知识选择模块601、回复生成模块602和训练模块603。知识选择模块601用于采用所述知识选择模型,处理对话样本和知识库,以确定与所述对话样本匹配的知识,并确定所述知识对应的第一概率,所述第一概率为所述知识被选中的概率;回复生成模块602用于采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本的概率;训练模块603用于基于所述第一概率和所述第二概率,确定损失函数,并基于所述损失函数训练所述知识选择模型和所述回复生成模型。
一些实施例中,所述回复生成模型包括输入层、隐层和输出层,所述回复生成模块602具体用于:采用所述输入层对所述对话样本和所述知识信息处理,以得到输入向量;采用所述隐层对所述输入向量进行处理,以得到状态向量;采用所述输出层对所述状态向量进行处理,以确定预测回复对应的第二概率。
一些实施例中,所述输入层包括:类型嵌入层,所述类型嵌入层的输入包括互不相同的对话信息类型标识、知识类型标识和回复类型标识。
一些实施例中,所述隐层包括:自注意力模型,所述自注意力模型包括第一部分和第二部分,所述第一部分是对话样本和知识对应的部分,所述第二部分是已生成回复对应的部分,所述第一部分采用双向自注意力机制,所述第二部分采用单向自注意力机制。
一些实施例中,所述知识选择模型包括编码模型,所述匹配的知识从所述知识库中确定,所述知识库包括至少一个知识,所述知识选择模块601具体用于:采用所述编码模型,将对话样本编码成对话向量,以及,将所述知识库中各个知识分别编码成知识向量;确定所述对话向量与所述知识向量的内积值;按照所述内积值从大到小的顺序,选择预设个数的知识,确定为与所述对话样本匹配的知识。
一些实施例中,所述知识选择模块601具体用于:
对所述知识对应的内积值进行归一化处理,以得到归一化值,将所述归一化值确定为所述知识对应的第一概率。
本实施例中,通过知识选择模型的处理,可以将知识引入对话***,在将知识引入对话***时,损失函数基于第一概率和第二概率确定,第一概率采用知识选择模型确定,第二概率采用回复生成模型确定,因此,可以对知识选择模型和回复生成模型进行联合训练,避免单独训练知识选择模型时存在的人工标注量大的问题,并且,第二概率与回复相关,以回复作为优化目标,相对于以BoW和KL散度等为优化目标的方式,可以使得训练方式更为通用,可复现性更强。
可以理解的是,本公开实施例中,不同实施例中的相同或相似内容可以相互参考。
可以理解的是,本公开实施例中的“第一”、“第二”等只是用于区分,不表示重要程度高低、时序先后等。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字助理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,电子设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储电子设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
电子设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许电子设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如对话模型的训练方法。在一些实施例中,对话模型的训练方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM702和/或通信单元709而被载入和/或安装到电子设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的对话模型的训练方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行对话模型的训练方法。
本文中以上描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上***的***(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式***的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (14)
1.一种对话模型的训练方法,所述对话模型包括知识选择模型和回复生成模型,所述方法包括:
采用所述知识选择模型,处理对话样本和知识库,以确定与所述对话样本匹配的知识,并确定所述知识对应的第一概率,所述第一概率为所述知识被选中的概率;
采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本的概率;
基于所述第一概率和所述第二概率,确定边际损失函数,并基于所述边际损失函数训练所述知识选择模型和所述回复生成模型。
2.根据权利要求1所述的方法,其中,所述回复生成模型包括输入层、隐层和输出层,所述采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,包括:
采用所述输入层对所述对话样本和所述知识信息处理,以得到输入向量;
采用所述隐层对所述输入向量进行处理,以得到状态向量;
采用所述输出层对所述状态向量进行处理,以确定预测回复对应的第二概率。
3.根据权利要求2所述的方法,其中,所述输入层包括:类型嵌入层,所述类型嵌入层的输入包括互不相同的对话信息类型标识、知识类型标识和回复类型标识。
4.根据权利要求2所述的方法,其中,所述隐层包括:自注意力模型,所述自注意力模型包括第一部分和第二部分,所述第一部分是对话样本和知识对应的部分,所述第二部分是已生成回复对应的部分,所述第一部分采用双向自注意力机制,所述第二部分采用单向自注意力机制。
5.根据权利要求1-4任一项所述的方法,其中,所述知识选择模型包括编码模型,所述匹配的知识从所述知识库中确定,所述知识库包括至少一个知识,所述采用所述知识选择模型,处理对话样本,以确定与所述对话样本匹配的知识,包括:
采用所述编码模型,将对话样本编码成对话向量,以及,将所述知识库中各个知识分别编码成知识向量;
确定所述对话向量与所述知识向量的内积值;
按照所述内积值从大到小的顺序,选择预设个数的知识,确定为与所述对话样本匹配的知识。
6.根据权利要求5所述的方法,其中,所述确定所述知识对应的第一概率,包括:
对所述知识对应的内积值进行归一化处理,以得到归一化值,将所述归一化值确定为所述知识对应的第一概率。
7.一种对话模型的训练装置,所述对话模型包括知识选择模型和回复生成模型,所述装置包括:
知识选择模块,用于采用所述知识选择模型,处理对话样本和知识库,以确定与所述对话样本匹配的知识,并确定所述知识对应的第一概率,所述第一概率为所述知识被选中的概率;
回复生成模块,用于采用所述回复生成模型,处理所述对话样本和所述知识,以确定预测回复对应的第二概率,所述第二概率为所述预测回复为回复样本的概率;
训练模块,用于基于所述第一概率和所述第二概率,确定边际损失函数,并基于所述边际损失函数训练所述知识选择模型和所述回复生成模型。
8.根据权利要求7所述的装置,其中,所述回复生成模型包括输入层、隐层和输出层,所述回复生成模块具体用于:
采用所述输入层对所述对话样本和所述知识信息处理,以得到输入向量;
采用所述隐层对所述输入向量进行处理,以得到状态向量;
采用所述输出层对所述状态向量进行处理,以确定预测回复对应的第二概率。
9.根据权利要求8所述的装置,其中,所述输入层包括:类型嵌入层,所述类型嵌入层的输入包括互不相同的对话信息类型标识、知识类型标识和回复类型标识。
10.根据权利要求8所述的装置,其中,所述隐层包括:自注意力模型,所述自注意力模型包括第一部分和第二部分,所述第一部分是对话样本和知识对应的部分,所述第二部分是已生成回复对应的部分,所述第一部分采用双向自注意力机制,所述第二部分采用单向自注意力机制。
11.根据权利要求7-10任一项所述的装置,其中,所述知识选择模型包括编码模型,所述匹配的知识从知识库中确定,所述知识库包括至少一个知识,所述知识选择模块具体用于:
采用所述编码模型,将对话样本编码成对话向量,以及,将所述知识库中各个知识分别编码成知识向量;
确定所述对话向量与所述知识向量的内积值;
按照所述内积值从大到小的顺序,选择预设个数的知识,确定为与所述对话样本匹配的知识。
12.根据权利要求11所述的装置,其中,所述知识选择模块具体用于:
对所述知识对应的内积值进行归一化处理,以得到归一化值,将所述归一化值确定为所述知识对应的第一概率。
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348055.1A CN113239157B (zh) | 2021-03-31 | 2021-03-31 | 对话模型的训练方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348055.1A CN113239157B (zh) | 2021-03-31 | 2021-03-31 | 对话模型的训练方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113239157A CN113239157A (zh) | 2021-08-10 |
CN113239157B true CN113239157B (zh) | 2022-02-25 |
Family
ID=77130700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110348055.1A Active CN113239157B (zh) | 2021-03-31 | 2021-03-31 | 对话模型的训练方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113239157B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114416943B (zh) * | 2021-12-29 | 2023-04-18 | 北京百度网讯科技有限公司 | 对话模型的训练方法、装置、电子设备及存储介质 |
CN114819183A (zh) * | 2022-04-15 | 2022-07-29 | 支付宝(杭州)信息技术有限公司 | 基于联邦学习的模型梯度确认方法、装置、设备及介质 |
CN114610861B (zh) * | 2022-05-11 | 2022-08-26 | 之江实验室 | 基于变分自编码器的融入知识和感情的端到端对话方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106997375A (zh) * | 2017-02-28 | 2017-08-01 | 浙江大学 | 基于深度学习的客服回复推荐方法 |
CN110188182A (zh) * | 2019-05-31 | 2019-08-30 | 中国科学院深圳先进技术研究院 | 模型训练方法、对话生成方法、装置、设备及介质 |
CN111523328A (zh) * | 2020-04-13 | 2020-08-11 | 中博信息技术研究院有限公司 | 一种智能客服语义处理方法 |
CN111897941A (zh) * | 2020-08-14 | 2020-11-06 | 腾讯科技(深圳)有限公司 | 对话生成方法、网络训练方法、装置、存储介质及设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130106683A1 (en) * | 2011-10-31 | 2013-05-02 | Elwha LLC, a limited liability company of the State of Delaware | Context-sensitive query enrichment |
CN109933785B (zh) * | 2019-02-03 | 2023-06-20 | 北京百度网讯科技有限公司 | 用于实体关联的方法、装置、设备和介质 |
CN110297887B (zh) * | 2019-06-26 | 2021-07-27 | 山东大学 | 基于云平台的服务机器人个性化对话***及方法 |
CN112541060B (zh) * | 2020-11-19 | 2021-08-13 | 中国科学院深圳先进技术研究院 | 一种基于对抗训练的端到端任务型对话学习框架和方法 |
CN112559706B (zh) * | 2020-12-11 | 2021-09-21 | 中国科学院深圳先进技术研究院 | 对话生成模型的训练方法、对话方法、设备以及存储介质 |
-
2021
- 2021-03-31 CN CN202110348055.1A patent/CN113239157B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106997375A (zh) * | 2017-02-28 | 2017-08-01 | 浙江大学 | 基于深度学习的客服回复推荐方法 |
CN110188182A (zh) * | 2019-05-31 | 2019-08-30 | 中国科学院深圳先进技术研究院 | 模型训练方法、对话生成方法、装置、设备及介质 |
CN111523328A (zh) * | 2020-04-13 | 2020-08-11 | 中博信息技术研究院有限公司 | 一种智能客服语义处理方法 |
CN111897941A (zh) * | 2020-08-14 | 2020-11-06 | 腾讯科技(深圳)有限公司 | 对话生成方法、网络训练方法、装置、存储介质及设备 |
Non-Patent Citations (6)
Title |
---|
Context-Aware Dialog Re-Ranking for Task-Oriented Dialog Systems;Junki Ohmura等;《2018 IEEE Spoken Language Technology Workshop (SLT)》;20190214;846-853 * |
Knowledge-aware Multimodal Dialogue Systems;Lizi Liao等;《MM "18: Proceedings of the 26th ACM international conference on Multimedia》;20181015;801-809 * |
Multimodal Dialog System: Generating Responses via Adaptive Decoders;Liqiang Nie等;《MM "19: Proceedings of the 27th ACM International Conference on Multimedia》;20191015;1098-1106 * |
基于深度学习的关系抽取研究综述;庄传志等;《中文信息学报》;20191215(第12期);1-18 * |
融合知识表示的知识库问答***;安波等;《融合知识表示的知识库问答***》;20181121(第11期);1521-1532 * |
面向社区问答匹配的混合神经网络模型;张衍坤等;《小型微型计算机***》;20200904(第09期);43-48 * |
Also Published As
Publication number | Publication date |
---|---|
CN113239157A (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113239157B (zh) | 对话模型的训练方法、装置、设备和存储介质 | |
CN112528655B (zh) | 关键词生成方法、装置、设备及存储介质 | |
CN111241245B (zh) | 人机交互处理方法、装置及电子设备 | |
JP7346788B2 (ja) | 音声認識モデルのトレーニング方法、装置、機器、および記憶媒体 | |
CN113053367B (zh) | 语音识别方法、语音识别的模型训练方法以及装置 | |
CN111737954A (zh) | 文本相似度确定方法、装置、设备和介质 | |
CN112966744A (zh) | 模型训练方法、图像处理方法、装置和电子设备 | |
WO2023155678A1 (zh) | 用于确定信息的方法和装置 | |
CN112507103A (zh) | 任务型对话及模型训练方法、装置、设备和存储介质 | |
CN112786108A (zh) | 分子理解模型的训练方法、装置、设备和介质 | |
CN114242113A (zh) | 语音检测方法、训练方法、装置和电子设备 | |
CN114528387A (zh) | 基于对话流自举的深度学习对话策略模型构建方法和*** | |
CN114490985A (zh) | 对话生成方法、装置、电子设备和存储介质 | |
CN113360683A (zh) | 训练跨模态检索模型的方法以及跨模态检索方法和装置 | |
CN112925912A (zh) | 文本处理方法、同义文本召回方法及装置 | |
CN117114063A (zh) | 用于训练生成式大语言模型和用于处理图像任务的方法 | |
US20230215203A1 (en) | Character recognition model training method and apparatus, character recognition method and apparatus, device and storage medium | |
CN116049370A (zh) | 信息查询方法和信息生成模型的训练方法、装置 | |
CN112990292B (zh) | 基于神经网络的对话状态的生成方法及装置 | |
CN115270719A (zh) | 基于多模态信息的文本摘要生成方法、训练方法及其装置 | |
CN114328855A (zh) | 文档查询方法、装置、电子设备和可读存储介质 | |
CN113806541A (zh) | 情感分类的方法和情感分类模型的训练方法、装置 | |
CN113204616A (zh) | 文本抽取模型的训练与文本抽取的方法、装置 | |
CN116383491B (zh) | 信息推荐方法、装置、设备、存储介质和程序产品 | |
CN116050427B (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 |