CN114756693B - 对话生成方法、相关设备及可读存储介质 - Google Patents
对话生成方法、相关设备及可读存储介质 Download PDFInfo
- Publication number
- CN114756693B CN114756693B CN202210674679.7A CN202210674679A CN114756693B CN 114756693 B CN114756693 B CN 114756693B CN 202210674679 A CN202210674679 A CN 202210674679A CN 114756693 B CN114756693 B CN 114756693B
- Authority
- CN
- China
- Prior art keywords
- knowledge
- mentioned
- target
- sentences
- historical
- 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/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- 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
Abstract
本申请公开了一种对话生成方法、相关设备及可读存储介质。在进行对话生成时,可以获取历史对话语句以及预设知识图谱,确定历史对话语句提及的知识,基于历史对话语句提及的知识以及预设知识图谱,预测得到目标知识信息,最后,基于历史对话语句和目标知识信息,生成下一对话语句。上述方案中,由于预设知识图谱中包括多个知识,基于历史对话语句提及的知识以及预设的知识图谱预测得到的目标知识信息能够表征下一对话语句可能提及的知识图谱中的知识,在基于历史对话语句和目标知识信息生成的下一对话语句中包含有可能提及的知识图谱中的知识,使得下一句对话语句中蕴含丰富信息。
Description
技术领域
本申请涉及人机对话系统技术领域,更具体的说,是涉及一种对话生成方法、相关设备及可读存储介质。
背景技术
人机对话是指让机器理解和运用自然语言实现人机通信的技术。随着大数据与深度学习的不断发展,当前人机对话系统主要采用基于神经网络的端到端模型(如,Seq2Seq模型),基于神经网络的端到端模型的人机对话系统,不可避免地存在着万能回复的问题。
考虑到人类在对话中是及时抽取了大脑中积累的相关知识,才使得对话双方顺畅并高效地完成了理解和交流,因此,为人机对话系统提供外部知识(如,知识图谱),使得人机对话系统在人机对话过程中,利用外部知识进行对话生成,理论上可以生成蕴含丰富信息的下一对话语句。
因此,如何使人机对话系统利用外部知识进行对话生成,生成蕴含丰富信息的下一对话语句,成为本领域技术人员亟待解决的技术问题。
发明内容
鉴于上述问题,本申请提出了一种对话生成方法、相关设备及可读存储介质。具体方案如下:
一种对话生成方法,所述方法包括:
获取历史对话语句以及预设知识图谱;
确定所述历史对话语句提及的知识;
基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;
基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
可选地,所述基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,包括:
基于所述历史对话语句提及的知识,确定所述历史对话语句提及的话题;
基于所述知识图谱和所述历史对话语句提及的话题,创建所述历史对话语句对应的关系图谱;
基于所述关系图谱,预测得到目标话题特征向量,所述目标话题特征向量用于表征下一对话语句可能提及的话题;
基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息。
可选地,所述基于所述知识图谱和所述历史对话语句提及的话题,创建所述历史对话语句对应的关系图谱,包括:
确定所述知识图谱中的目标边,所述目标边用于表征所述历史对话语句提及的话题;
确定所述历史对话语句提及的话题的推进顺序;
以所述目标边为节点,基于所述历史对话语句提及的话题的推进顺序建立各个节点之间的有向联系,创建所述历史对话语句对应的关系图谱。
可选地,所述基于所述关系图谱,预测得到目标话题特征向量,包括:
确定所述关系图谱中各个节点的特征向量;
将所述关系图谱中各个节点的特征向量按照各个节点之间的有向联系连接,得到所述关系图谱对应的特征序列;
对所述关系图谱对应的特征序列进行编码,得到所述目标话题特征向量。
可选地,所述确定所述关系图谱中各个节点的特征向量,包括:
获取所述关系图谱各个节点的初始特征向量;
采用图神经网络对所述关系图谱中各个节点的初始特征向量进行处理,确定所述关系图谱中各个节点的特征向量。
可选地,所述基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息,包括:
获取所述历史对话语句提及的知识的特征向量;
计算所述目标话题特征向量和所述历史对话语句提及的知识的特征向量之间的权重;
基于所述历史对话语句提及的知识的特征向量对应的权重,对所述历史对话语句提及的知识的特征向量进行加权求和,得到待处理知识特征向量;
获取所述知识图谱中各知识的特征向量;
将所述知识图谱中各知识的特征向量中,与所述待处理知识特征向量的相似性满足预设条件的知识的特征向量,作为所述目标知识信息。
可选地,基于所述历史对话语句和所述目标知识信息,生成所述下一对话语句,包括:
对所述历史对话语句进行编码,得到所述历史对话语句的特征向量;
基于注意力机制对所述历史对话语句的特征向量进行解码,得到解码后的特征向量;
基于注意力机制对所述解码后的特征向量和所述目标知识信息进行解码,生成所述下一对话语句。
可选地,基于所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句生成下一对话语句的过程,包括:
将所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句输入对话生成模型,所述对话生成模型基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,并基于所述历史对话语句和所述目标知识信息,生成下一对话语句,所述目标知识信息用于表征下一对话语句可能提及的知识;
所述对话生成模型是以训练用对话语句中历史对话语句、历史对话语句对应的知识图谱和历史对话语句提及的知识为训练样本,以训练用对话语句中标注的下一对话语句、训练用对话语句中标注的下一对话语句提及的知识为样本标签,以所述对话生成模型输出的目标知识信息对应的知识趋近于所述训练用对话语句中标注的下一对话语句提及的知识;以所述对话生成模型输出的下一对话语句趋近于所述训练用对话语句中标注的下一对话语句为训练目标,训练得到的。
一种对话生成装置,所述装置包括:
获取单元,用于获取历史对话语句以及预设知识图谱;
确定单元,用于确定所述历史对话语句提及的知识;
预测单元,用于基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;
生成单元,用于基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
可选地,所述预测单元,包括:
话题确定单元,用于基于所述历史对话语句提及的知识,确定所述历史对话语句提及的话题;
关系图谱创建单元,用于基于所述知识图谱和所述历史对话语句提及的话题,创建所述历史对话语句对应的关系图谱;
目标话题特征向量预测单元,用于基于所述关系图谱,预测得到目标话题特征向量,所述目标话题特征向量用于表征下一对话语句可能提及的话题;
目标知识信息预测单元,用于基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息。
可选地,所述关系图谱创建单元,包括:
目标边确定单元,用于确定所述知识图谱中的目标边,所述目标边用于表征所述历史对话语句提及的话题;
推进顺序确定单元,用于确定所述历史对话语句提及的话题的推进顺序;
创建单元,用于以所述目标边为节点,基于所述历史对话语句提及的话题的推进顺序建立各个节点之间的有向联系,创建所述历史对话语句对应的关系图谱。
可选地,所述目标话题特征向量预测单元,包括:
关系图谱中各个节点的特征向量确定单元,用于确定所述关系图谱中各个节点的特征向量;
关系图谱对应的特征序列确定单元,用于将所述关系图谱中各个节点的特征向量按照各个节点之间的有向联系连接,得到所述关系图谱对应的特征序列;
特征序列编码单元,用于对所述关系图谱对应的特征序列进行编码,得到所述目标话题特征向量。
可选地,所述关系图谱中各个节点的特征向量确定单元,包括:
初始特征向量获取单元,用于获取所述关系图谱各个节点的初始特征向量;
图神经网络处理单元,用于采用图神经网络对所述关系图谱中各个节点的初始特征向量进行处理,确定所述关系图谱中各个节点的特征向量。
可选地,所述目标知识信息预测单元,包括:
历史知识特征向量获取单元,用于获取所述历史对话语句提及的知识的特征向量;
权重计算单元,用于计算所述目标话题特征向量和所述历史对话语句提及的知识的特征向量之间的权重;
加权求和计算单元,用于基于所述历史对话语句提及的知识的特征向量对应的权重,对所述历史对话语句提及的知识的特征向量进行加权求和,得到待处理知识特征向量;
知识特征向量获取单元,用于获取所述知识图谱中各知识的特征向量;
知识特征向量筛选单元,用于将所述知识图谱中各知识的特征向量中,与所述待处理知识特征向量的相似性满足预设条件的知识的特征向量,作为所述目标知识信息。
可选地,所述生成单元,包括:
编码单元,用于对所述历史对话语句进行编码,得到所述历史对话语句的特征向量;
第一解码单元,用于基于注意力机制对所述历史对话语句的特征向量进行解码,得到解码后的特征向量;
第二解码单元,用于基于注意力机制对所述解码后的特征向量和所述目标知识信息进行解码,生成所述下一对话语句。
可选地,所述装置还包括:
对话生成模型应用单元,用于将所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句输入对话生成模型,所述对话生成模型基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,并基于所述历史对话语句和所述目标知识信息,生成下一对话语句,所述目标知识信息用于表征下一对话语句可能提及的知识;
所述对话生成模型是以训练用对话语句中历史对话语句、历史对话语句对应的知识图谱和历史对话语句提及的知识为训练样本,以训练用对话语句中标注的下一对话语句、训练用对话语句中标注的下一对话语句提及的知识为样本标签,以所述对话生成模型输出的目标知识信息对应的知识趋近于所述训练用对话语句中标注的下一对话语句提及的知识;以所述对话生成模型输出的下一对话语句趋近于所述训练用对话语句中标注的下一对话语句为训练目标,训练得到的。
一种对话生成设备,包括存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如上所述的对话生成方法的各个步骤。
一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的对话生成方法的各个步骤。
借由上述技术方案,本申请公开了一种对话生成方法、相关设备及可读存储介质。在进行对话生成时,可以获取历史对话语句以及预设知识图谱,确定历史对话语句提及的知识,基于历史对话语句提及的知识以及预设知识图谱,预测得到目标知识信息,最后,基于历史对话语句和目标知识信息,生成下一对话语句。上述方案中,由于预设知识图谱中包括多个知识,基于历史对话语句提及的知识以及预设的知识图谱预测得到的目标知识信息能够表征下一对话语句可能提及的知识图谱中的知识,在基于历史对话语句和目标知识信息生成的下一对话语句中包含有可能提及的知识图谱中的知识,使得下一句对话语句中蕴含丰富信息,因此,采用上述方案能够使人机对话系统利用外部知识进行对话生成,生成蕴含丰富信息的下一对话语句。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本申请实施例公开的一种对话生成方法的流程示意图;
图2为本申请实施例公开的一种关系图谱的示意图;
图3为本申请实施例公开的一种对话生成模型的结构示意图;
图4为本申请实施例公开的一种对话生成装置结构示意图;
图5为本申请实施例公开的一种对话生成设备的硬件结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
接下来,通过下述实施例对本申请提供的对话生成方法进行介绍。
参照图1,图1为本申请实施例公开的一种对话生成方法的流程示意图,该方法可以应用于人机对话系统,该方法可以包括:
步骤S101:获取历史对话语句以及预设知识图谱。
在本申请中,历史对话语句可以为人机对话系统已经形成的多个轮次的对话语句,可以包括当前对话语句,也可以不包括当前对话语句。预设知识图谱可以为历史对话语句对应的知识图谱,具体可以为历史对话语句所涉及的领域内的知识图谱中与历史对话语句相关的知识图谱,比如,历史对话语句所涉及的领域为音乐领域,历史对话语句中包括张三的一些内容,则预设知识图谱为音乐领域的知识图谱中与张三相关的知识图谱。
步骤S102:确定所述历史对话语句提及的知识。
在本申请中,所述历史对话语句提及的知识为预设知识图谱中的知识,可以采用知识抽取的方式确定所述历史对话语句提及的知识。作为一种可实施方式,可以基于训练用对话语句,以及训练用对话语句标注的知识,训练得到知识抽取模型。则将所述历史对话语句输入知识抽取模型,知识抽取模型即可输出历史对话语句提及的知识。需要说明的是,在本申请中,也可以采用其他自然语言处理的方式确定历史对话语句提及的知识,对此,本申请不进行任何限定。
需要说明的是,历史对话语句提及的知识可以为知识三元组的形式,其中包含两个实体以及两个实体之间的关系,比如历史对话语句提及的知识可以为(张三,代表作,歌曲A),其中张三、歌曲A为两个实体,职业为张三和歌曲A这两个实体之间的关系。
步骤S103:基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;
在本申请中,目标知识信息可以采用各种形式表示,比如,可以采用知识三元组的形式表示,也可以采用特征向量的形式表示,对此本申请不进行任何限定。
作为一种可实施方式,如果目标知识信息采用特征向量的形式表示,则可以确定历史对话语句提及的知识的特征向量,以及知识图谱中各知识的特征向量,基于历史对话语句提及的知识的特征向量以及知识图谱中各知识的特征向量,预测得到目标知识信息。具体实现方式将通过后面的实施例详细说明,此处不再展开描述。
步骤S104:基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
在本申请中,可以确定历史对话语句的特征向量,对历史对话语句的特征向量和目标知识信息进行解码,生成下一对话语句,具体实现方式将通过后面的实施例详细说明,此处不再展开描述。
需要说明的是,当前对话语句可以为用户输入语句时,下一对话语句为人机对话系统对用户输入语句的回复语句。
本实施例公开了一种对话生成方法。在进行对话生成时,可以获取历史对话语句以及预设知识图谱,确定历史对话语句提及的知识,基于历史对话语句提及的知识以及预设知识图谱,预测得到目标知识信息,最后,基于历史对话语句和目标知识信息,生成下一对话语句。上述方案中,由于预设知识图谱中包括多个知识,基于历史对话语句提及的知识以及预设的知识图谱预测得到的目标知识信息能够表征下一对话语句可能提及的知识图谱中的知识,在基于历史对话语句和目标知识信息生成的下一对话语句中包含有可能提及的知识图谱中的知识,使得下一句对话语句中蕴含丰富信息,因此,采用上述方案能够使人机对话系统利用外部知识进行对话生成,生成蕴含丰富信息的下一对话语句。
在本申请的另一个实施例中,对基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息的具体实现方式进行了说明,该方式可以包括以下步骤:
步骤S201:基于所述历史对话语句提及的知识,确定所述历史对话语句提及的话题。
在本申请中,可以将历史对话语句提及的知识中,两个实体之间的关系,确定为历史对话语句提及的话题。比如,历史对话语句提及的知识有(张三,代表作,歌曲A),则历史对话语句提及的话题包括“代表作”。
步骤S202:基于所述知识图谱和所述历史对话语句提及的话题,创建所述历史对话语句对应的关系图谱。
需要说明的是,所述关系图谱中包括多个节点,每个节点用于表征一个话题;节点之间的有向连线用于表征所述历史对话语句提及的话题的推进顺序,所述历史对话语句提及的话题的推进顺序用于表征话题之间的跳转关系。
可以理解的是,历史对话语句提及的话题的推进顺序指的是话题在历史对话语句中提及的先后顺序。知识图谱中的节点用于表征一个实体,节点之间的边用于表征两个节点之间的关系,而本申请中,是将历史对话语句提及的知识中,实体与实体之间的关系,确定为历史对话语句提及的话题,因此,作为一种可实施方式,所述基于所述知识图谱和所述历史对话语句提及的话题,创建所述历史对话语句对应的关系图谱的具体实现方式可以包括:确定所述知识图谱中的目标边,所述目标边用于表征所述历史对话语句提及的话题;确定所述历史对话语句提及的话题的推进顺序;以所述目标边为节点,基于所述历史对话语句提及的话题的推进顺序建立各个节点之间的有向联系,创建所述历史对话语句对应的关系图谱。
为便于理解,参照图2,图2为本申请实施例公开的一种关系图谱的示意图。如图2所示,假设历史对话语句是有关E2的,则知识图谱如图2中KG所示,在KG中,E1至E9为节点,用于表征不同的实体,R1至R8为边,用于表征所连接的两个实体之间的关系,假设历史对话语句提及的话题按照推进顺序对应的KG中的目标边依次为R1、R2、R3,则关系图谱如图2中RG所示,关系图谱RG中包括三个节点R1、R2、R3,节点之间的有向连线为R1→R2→R3。
步骤S203:基于所述关系图谱,预测得到目标话题特征向量,所述目标话题特征向量用于表征下一对话语句可能提及的话题。
作为一种可实施方式,所述基于所述关系图谱,预测得到目标话题特征向量的具体实现方式可以包括:
步骤S2031:确定所述关系图谱中各个节点的特征向量。
在本申请中,确定所述关系图谱中各个节点的特征向量,包括:获取所述关系图谱各个节点的初始特征向量;基于所述关系图谱中各个节点的初始特征向量确定所述关系图谱中各个节点的特征向量。
需要说明的是,针对关系图谱中各个节点,为知识图谱中的目标边,因此,可以将知识图谱中目标边的特征向量作为关系图谱各个节点的初始特征向量。
作为一种可实施方式,可以将关系图谱中各个节点的初始特征向量作为关系图谱中各个节点的特征向量,但是关系图谱中各个节点的初始特征向量不足以表达各个节点之间的有向联系,即不足以表达历史对话语句提及的话题之间的跳转关系。
因此,作为另一种可实施方式,可以采用图神经网络对所述关系图谱中各个节点的初始特征向量进行处理,确定所述关系图谱中各个节点的特征向量。采用图神经网络对所述关系图谱中各个节点的初始特征向量进行处理即基于所述关系图谱中各个节点之间的有向联系对所述关系图谱中各个节点对应的初始特征向量进行加权求和,得到关系图谱中各个节点的特征向量。该实施方式得到的关系图谱中每个节点的特征向量都融合了其他节点的特征向量,能够表征各个节点之间的有向联系,即能够表达历史对话语句提及的话题之间的跳转关系。
步骤S2032:将所述关系图谱中各个节点的特征向量按照各个节点之间的有向联系连接,得到所述关系图谱对应的特征序列。
在本步骤中,按照各个节点之间的有向联系,将所述关系图谱中各个节点的特征向量拼接起来,就可以得到关系图谱对应的特征序列。
步骤S2033:对所述关系图谱对应的特征序列进行编码,得到所述目标话题特征向量。
在本步骤中,可以将所述关系图谱对应的特征序列输入目标话题特征向量预测模型,目标话题特征向量预测模型对所述关系图谱对应的特征序列进行编码,得到所述目标话题特征向量。作为一种可实施方式,目标话题特征向量预测模型可以为Bi-GRU(Bi-GatedRecurrent Unit,双向门控循环单元结构)。
步骤S204:基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息。
作为一种可实施方式,所述基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息的具体实现方式可以包括:
步骤S2041:获取所述历史对话语句提及的知识的特征向量。
在本申请中,所述历史对话语句提及的知识为预设知识图谱中的知识,所述历史对话语句提及的知识的特征向量即为知识图谱中相应知识的特征向量。在本申请中,可以使用TransR模型得到知识图谱中各个节点和边的特征向量,其中,每个节点对应一个实体,每个边对应其所连接的两个节点之间的关系。一个知识的特征向量即为该知识对应的三元组中所包含实体和关系的特征向量的组合。
步骤S2042:计算所述目标话题特征向量和所述历史对话语句提及的知识的特征向量之间的权重。
在本申请中,可以基于注意力机制,计算所述目标话题特征向量和所述历史对话语句提及的知识的特征向量之间的权重。
步骤S2043:基于所述历史对话语句提及的知识的特征向量对应的权重,对所述历史对话语句提及的知识的特征向量进行加权求和,得到待处理知识特征向量。
步骤S2044:获取所述知识图谱中各知识的特征向量。
在本申请中,可以使用TransR模型得到知识图谱中各个节点和边的特征向量,其中,每个节点对应一个实体,每个边对应其所连接的两个节点之间的关系。一个知识的特征向量即为该知识对应的三元组中所包含实体和关系的特征向量的组合。
步骤S2045:将所述知识图谱中各知识的特征向量中,与所述待处理知识特征向量的相似性满足预设条件的知识的特征向量,作为所述目标知识信息。
需要说明的是,相似性满足预设条件可以为相似度最高。
在本申请的另一个实施例中,对基于所述历史对话语句和所述目标知识信息,生成所述下一对话语句的具体实现方式进行了说明,该方式可以包括如下步骤:
步骤S301:对所述历史对话语句进行编码,得到所述历史对话语句的特征向量。
步骤S302:基于注意力机制对所述历史对话语句的特征向量进行解码,得到解码后的特征向量。
步骤S303:基于注意力机制对所述解码后的特征向量和所述目标知识信息进行解码,生成所述下一对话语句。
需要说明的是,本申请实施例公开的对话生成方法中,基于所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句生成下一对话语句的过程可以采用神经网络模型实现,具体的,在本申请中,可以以训练用对话语句中历史对话语句历史对话语句对应的知识图谱和历史对话语句提及的知识为训练样本,以训练用对话语句中标注的下一对话语句、训练用对话语句中标注的下一对话语句提及的知识为样本标签,以所述对话生成模型输出的目标知识信息对应的知识趋近于所述训练用对话语句中标注的下一对话语句提及的知识;且所述对话生成模型输出的下一对话语句趋近于所述训练用对话语句中标注的下一对话语句为训练目标,训练得到对话生成模型。
需要说明的是,训练用对话语句可以为kdconv对话数据集中的对话数据:kdconv对话数据集中的对话数据除训练用对话语句外,还包含训练用对话语句对应的知识图谱,并提供了训练用对话语句轮次级别的知识标注。
进一步需要说明的是,上述训练目标可以采用损失函数的形式说明,具体的,该损失函数可以包括两个损失项,其中一个可以是用于表征对话生成模型输出的目标知识信息对应的知识与所述训练用对话语句中标注的下一对话语句提及的知识之间的误差的Triplet损失,另一个可以是用于表征所述对话生成模型输出的下一对话语句与所述训练用对话语句中标注的下一对话语句之间的误差的NLL损失。
基于以上对话生成模型,可以将所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句输入对话生成模型,所述对话生成模型基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,并基于所述历史对话语句和所述目标知识信息,生成下一对话语句,所述目标知识信息用于表征下一对话语句可能提及的知识。
需要说明的是,所述对话生成模型的结构可以采用各种形式。对此,本申请不进行任何限定。
在本申请的另一个实施例中,提供了一种对话生成模型的结构,参照图3,图3为本申请实施例公开的一种对话生成模型的结构示意图。该对话生成模型包括目标知识信息预测子模型和下一对话语句生成子模型,目标知识信息预测子模型用于基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;下一对话语句生成子模型用于基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
作为一种可实施方式,下一对话语句生成子模型可以包括编码器和解码器,其中,所述解码器包括第一解码层和第二解码层,所述编码器用于对所述历史对话语句进行编码,得到所述历史对话语句的特征向量;所述第一解码层用于基于注意力机制对所述历史对话语句的特征向量进行解码,得到解码后的特征向量;所述第二解码层用于基于注意力机制对所述解码后的特征向量和所述目标知识信息进行解码,生成所述下一对话语句。
作为一种可实施方式,下一对话语句生成子模型中的编码器可以采用Transformer模型中的Encoder,解码器中的第一解码层可以采用Transformer模型中Decoder的self-attention层和encoder-attention层,第二解码层可以在Transformer模型中Decoder的前向传递网络前加一个注意力层实现。
下面对本申请实施例公开的对话生成装置进行描述,下文描述的对话生成装置与上文描述的对话生成方法可相互对应参照。
参照图4,图4为本申请实施例公开的一种对话生成装置结构示意图。如图4所示,该对话生成装置可以包括:
获取单元11,用于获取历史对话语句以及预设知识图谱;
确定单元12,用于确定所述历史对话语句提及的知识;
预测单元13,用于基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;
生成单元14,用于基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
作为一种可实施方式,所述预测单元,包括:
话题确定单元,用于基于所述历史对话语句提及的知识,确定所述历史对话语句提及的话题;
关系图谱创建单元,用于基于所述知识图谱和所述历史对话语句提及的话题,创建所述历史对话语句对应的关系图谱;
目标话题特征向量预测单元,用于基于所述关系图谱,预测得到目标话题特征向量,所述目标话题特征向量用于表征下一对话语句可能提及的话题;
目标知识信息预测单元,用于基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息。
作为一种可实施方式,所述关系图谱创建单元,包括:
目标边确定单元,用于确定所述知识图谱中的目标边,所述目标边用于表征所述历史对话语句提及的话题;
推进顺序确定单元,用于确定所述历史对话语句提及的话题的推进顺序;
创建单元,用于以所述目标边为节点,基于所述历史对话语句提及的话题的推进顺序建立各个节点之间的有向联系,创建所述历史对话语句对应的关系图谱。
作为一种可实施方式,所述目标话题特征向量预测单元,包括:
关系图谱中各个节点的特征向量确定单元,用于确定所述关系图谱中各个节点的特征向量;
关系图谱对应的特征序列确定单元,用于将所述关系图谱中各个节点的特征向量按照各个节点之间的有向联系连接,得到所述关系图谱对应的特征序列;
特征序列编码单元,用于对所述关系图谱对应的特征序列进行编码,得到所述目标话题特征向量。
作为一种可实施方式,所述关系图谱中各个节点的特征向量确定单元,包括:
初始特征向量获取单元,用于获取所述关系图谱各个节点的初始特征向量;
图神经网络处理单元,用于采用图神经网络对所述关系图谱中各个节点的初始特征向量进行处理,确定所述关系图谱中各个节点的特征向量。
作为一种可实施方式,所述目标知识信息预测单元,包括:
历史知识特征向量获取单元,用于获取所述历史对话语句提及的知识的特征向量;
权重计算单元,用于计算所述目标话题特征向量和所述历史对话语句提及的知识的特征向量之间的权重;
加权求和计算单元,用于基于所述历史对话语句提及的知识的特征向量对应的权重,对所述历史对话语句提及的知识的特征向量进行加权求和,得到待处理知识特征向量;
知识特征向量获取单元,用于获取所述知识图谱中各知识的特征向量;
知识特征向量筛选单元,用于将所述知识图谱中各知识的特征向量中,与所述待处理知识特征向量的相似性满足预设条件的知识的特征向量,作为所述目标知识信息。
作为一种可实施方式,所述生成单元,包括:
编码单元,用于对所述历史对话语句进行编码,得到所述历史对话语句的特征向量;
第一解码单元,用于基于注意力机制对所述历史对话语句的特征向量进行解码,得到解码后的特征向量;
第二解码单元,用于基于注意力机制对所述解码后的特征向量和所述目标知识信息进行解码,生成所述下一对话语句。
作为一种可实施方式,所述装置还包括:
对话生成模型应用单元,用于将所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句输入对话生成模型,所述对话生成模型基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,并基于所述历史对话语句和所述目标知识信息,生成下一对话语句,所述目标知识信息用于表征下一对话语句可能提及的知识;
所述对话生成模型是以训练用对话语句中历史对话语句、历史对话语句对应的知识图谱和历史对话语句提及的知识为训练样本,以训练用对话语句中标注的下一对话语句、训练用对话语句中标注的下一对话语句提及的知识为样本标签,以所述对话生成模型输出的目标知识信息对应的知识趋近于所述训练用对话语句中标注的下一对话语句提及的知识;以所述对话生成模型输出的下一对话语句趋近于所述训练用对话语句中标注的下一对话语句为训练目标,训练得到的。
参照图5,图5为本申请实施例提供的一种对话生成设备的硬件结构框图,参照图5,对话生成的硬件结构可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;
在本申请实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;
处理器1可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
获取历史对话语句以及预设知识图谱;
确定所述历史对话语句提及的知识;
基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;
基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例还提供一种可读存储介质,该可读存储介质可存储有适于处理器执行的程序,所述程序用于:
获取历史对话语句以及预设知识图谱;
确定所述历史对话语句提及的知识;
基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;
基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种对话生成方法,其特征在于,所述方法包括:
获取历史对话语句以及预设知识图谱;
确定所述历史对话语句提及的知识;
基于所述历史对话语句提及的知识以及目标话题特征向量,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;所述目标话题特征向量是以所述知识图谱中的目标边为节点,基于所述历史对话语句提及的话题的推进顺序建立各个节点之间的有向联系,创建所述历史对话语句对应的关系图谱,基于所述关系图谱,预测得到的;所述目标边用于表征所述历史对话语句提及的话题;
基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
2.根据权利要求1所述的方法,其特征在于,所述基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识,包括:
基于所述历史对话语句提及的知识,确定所述历史对话语句提及的话题;
基于所述知识图谱和所述历史对话语句提及的话题,创建所述历史对话语句对应的关系图谱;
基于所述关系图谱,预测得到目标话题特征向量,所述目标话题特征向量用于表征下一对话语句可能提及的话题;
基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息。
3.根据权利要求2所述的方法,其特征在于,所述基于所述关系图谱,预测得到目标话题特征向量,包括:
确定所述关系图谱中各个节点的特征向量;
将所述关系图谱中各个节点的特征向量按照各个节点之间的有向联系连接,得到所述关系图谱对应的特征序列;
对所述关系图谱对应的特征序列进行编码,得到所述目标话题特征向量。
4.根据权利要求3所述的方法,其特征在于,所述确定所述关系图谱中各个节点的特征向量,包括:
获取所述关系图谱各个节点的初始特征向量;
采用图神经网络对所述关系图谱中各个节点的初始特征向量进行处理,确定所述关系图谱中各个节点的特征向量。
5.根据权利要求2所述的方法,其特征在于,所述基于所述历史对话语句提及的知识和所述目标话题特征向量,预测得到目标知识信息,包括:
获取所述历史对话语句提及的知识的特征向量;
计算所述目标话题特征向量和所述历史对话语句提及的知识的特征向量之间的权重;
基于所述历史对话语句提及的知识的特征向量对应的权重,对所述历史对话语句提及的知识的特征向量进行加权求和,得到待处理知识特征向量;
获取所述知识图谱中各知识的特征向量;
将所述知识图谱中各知识的特征向量中,与所述待处理知识特征向量的相似性满足预设条件的知识的特征向量,作为所述目标知识信息。
6.根据权利要求1所述的方法,其特征在于,基于所述历史对话语句和所述目标知识信息,生成所述下一对话语句,包括:
对所述历史对话语句进行编码,得到所述历史对话语句的特征向量;
基于注意力机制对所述历史对话语句的特征向量进行解码,得到解码后的特征向量;
基于注意力机制对所述解码后的特征向量和所述目标知识信息进行解码,生成所述下一对话语句。
7.根据权利要求1所述的方法,其特征在于,基于所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句生成下一对话语句的过程,包括:
将所述历史对话语句提及的知识、所述知识图谱和所述历史对话语句输入对话生成模型,所述对话生成模型基于所述历史对话语句提及的知识以及所述知识图谱,预测得到目标知识信息,并基于所述历史对话语句和所述目标知识信息,生成下一对话语句,所述目标知识信息用于表征下一对话语句可能提及的知识;
所述对话生成模型是以训练用对话语句中历史对话语句、历史对话语句对应的知识图谱和历史对话语句提及的知识为训练样本,以训练用对话语句中标注的下一对话语句、训练用对话语句中标注的下一对话语句提及的知识为样本标签,以所述对话生成模型输出的目标知识信息对应的知识趋近于所述训练用对话语句中标注的下一对话语句提及的知识;以所述对话生成模型输出的下一对话语句趋近于所述训练用对话语句中标注的下一对话语句为训练目标,训练得到的。
8.一种对话生成装置,其特征在于,所述装置包括:
获取单元,用于获取历史对话语句以及预设知识图谱;
确定单元,用于确定所述历史对话语句提及的知识;
预测单元,用于基于所述历史对话语句提及的知识以及目标话题特征向量,预测得到目标知识信息,所述目标知识信息用于表征下一对话语句可能提及的所述知识图谱中的知识;所述目标话题特征向量是以所述知识图谱中的目标边为节点,基于所述历史对话语句提及的话题的推进顺序建立各个节点之间的有向联系,创建所述历史对话语句对应的关系图谱,基于所述关系图谱,预测得到的;所述目标边用于表征所述历史对话语句提及的话题;
生成单元,用于基于所述历史对话语句和所述目标知识信息,生成下一对话语句。
9.一种对话生成设备,其特征在于,包括存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如权利要求1至7中任一项所述的对话生成方法的各个步骤。
10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述的对话生成方法的各个步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210674679.7A CN114756693B (zh) | 2022-06-15 | 2022-06-15 | 对话生成方法、相关设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210674679.7A CN114756693B (zh) | 2022-06-15 | 2022-06-15 | 对话生成方法、相关设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114756693A CN114756693A (zh) | 2022-07-15 |
CN114756693B true CN114756693B (zh) | 2022-11-01 |
Family
ID=82337091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210674679.7A Active CN114756693B (zh) | 2022-06-15 | 2022-06-15 | 对话生成方法、相关设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114756693B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112632961A (zh) * | 2021-03-04 | 2021-04-09 | 支付宝(杭州)信息技术有限公司 | 基于上下文推理的自然语言理解处理方法、装置以及设备 |
US20210201167A1 (en) * | 2018-05-30 | 2021-07-01 | Al Speech Co., Ltd. | Method of knowledge sharing among dialogue systems, dialogue method and device |
CN113268609A (zh) * | 2021-06-22 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于知识图谱的对话内容推荐方法、装置、设备及介质 |
CN114065047A (zh) * | 2021-11-25 | 2022-02-18 | 上海理工大学 | 一种基于多级注意力机制的知识增强对话推荐方法 |
-
2022
- 2022-06-15 CN CN202210674679.7A patent/CN114756693B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210201167A1 (en) * | 2018-05-30 | 2021-07-01 | Al Speech Co., Ltd. | Method of knowledge sharing among dialogue systems, dialogue method and device |
CN112632961A (zh) * | 2021-03-04 | 2021-04-09 | 支付宝(杭州)信息技术有限公司 | 基于上下文推理的自然语言理解处理方法、装置以及设备 |
CN113268609A (zh) * | 2021-06-22 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于知识图谱的对话内容推荐方法、装置、设备及介质 |
CN114065047A (zh) * | 2021-11-25 | 2022-02-18 | 上海理工大学 | 一种基于多级注意力机制的知识增强对话推荐方法 |
Non-Patent Citations (1)
Title |
---|
基于知识图谱问答系统的技术实现;魏泽林 等;《软件工程》;20210228;38-44 * |
Also Published As
Publication number | Publication date |
---|---|
CN114756693A (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109785824B (zh) | 一种语音翻译模型的训练方法及装置 | |
CN110377716B (zh) | 对话的交互方法、装置及计算机可读存储介质 | |
CN110610700B (zh) | 解码网络构建方法、语音识别方法、装置、设备及存储介质 | |
US10242667B2 (en) | Natural language generation in a spoken dialogue system | |
CN110032633B (zh) | 多轮对话处理方法、装置和设备 | |
CN110634487B (zh) | 一种双语种混合语音识别方法、装置、设备及存储介质 | |
CN110516253B (zh) | 中文口语语义理解方法及系统 | |
JP6677419B2 (ja) | 音声対話方法及び装置 | |
CN111026857B (zh) | 对话状态跟踪方法、人机对话方法及系统 | |
CN110147435B (zh) | 对话生成方法、装置、设备及存储介质 | |
CN111832308B (zh) | 语音识别文本连贯性处理方法和装置 | |
CN115309877B (zh) | 对话生成方法、对话模型训练方法及装置 | |
CN116884391B (zh) | 基于扩散模型的多模态融合音频生成方法及装置 | |
CN110942774A (zh) | 一种人机交互系统、其对话方法、介质和设备 | |
CN109979461B (zh) | 一种语音翻译方法及装置 | |
CN110489761B (zh) | 一种篇章级文本翻译方法及装置 | |
CN110913229B (zh) | 基于rnn的解码器隐状态确定方法、设备和存储介质 | |
CN112017643B (zh) | 语音识别模型训练方法、语音识别方法及相关装置 | |
CN114005446A (zh) | 情感分析方法、相关设备及可读存储介质 | |
CN114239607A (zh) | 一种对话答复方法及装置 | |
CN114756693B (zh) | 对话生成方法、相关设备及可读存储介质 | |
CN109002498B (zh) | 人机对话方法、装置、设备及存储介质 | |
CN112466282B (zh) | 一种面向航天专业领域的语音识别系统和方法 | |
CN112686059A (zh) | 文本翻译方法、装置、电子设备和存储介质 | |
CN115169367B (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 |