CN115879422B - 一种对话回复生成方法、装置和存储介质 - Google Patents
一种对话回复生成方法、装置和存储介质 Download PDFInfo
- Publication number
- CN115879422B CN115879422B CN202310176290.4A CN202310176290A CN115879422B CN 115879422 B CN115879422 B CN 115879422B CN 202310176290 A CN202310176290 A CN 202310176290A CN 115879422 B CN115879422 B CN 115879422B
- Authority
- CN
- China
- Prior art keywords
- dialogue
- sentence
- vector
- generating
- nodes
- 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
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000003860 storage Methods 0.000 title claims abstract description 11
- 239000013598 vector Substances 0.000 claims abstract description 144
- 238000012512 characterization method Methods 0.000 claims abstract description 54
- 230000002776 aggregation Effects 0.000 claims description 21
- 238000004220 aggregation Methods 0.000 claims description 21
- 238000013528 artificial neural network Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 claims description 4
- 238000012935 Averaging Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 21
- 230000005540 biological transmission Effects 0.000 description 10
- 238000012549 training Methods 0.000 description 9
- 230000003993 interaction Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- ABMMIOIRQJNRHG-XKNYDFJKSA-N Asn-Asn-Pro-Ser Chemical compound NC(=O)C[C@H](N)C(=O)N[C@@H](CC(N)=O)C(=O)N1CCC[C@H]1C(=O)N[C@@H](CO)C(O)=O ABMMIOIRQJNRHG-XKNYDFJKSA-N 0.000 description 1
- 241000288105 Grus Species 0.000 description 1
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- 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
- Machine Translation (AREA)
Abstract
本申请涉及一种对话回复生成方法、装置和存储介质,该方法包括:利用预先训练好的句子表征模型,生成对话语句的句向量;提取所述对话语句的主题词;所述主题词用于标识所述对话语句的主题信息;根据所述主题词和所述预先训练好的句子表征模型,生成所述对话语句的主题向量;根据所述句向量和所述主题向量,生成所述对话回复。本申请利用主题信息来生成相应的对话回复,提高了对话回复的准确性,解决了现有的对话回复生成技术中缺少了对主题相关信息的利用,从而导致生成的对话回复不准确的问题。
Description
技术领域
本申请涉及人工智能领域,特别是涉及一种对话回复生成方法、装置和存储介质。
背景技术
对话回复生成是一项自然语言处理中的核心任务,可以被结合到很多领域如智能音箱、智能客服、AI陪伴机器人等。
随着大规模预训练模型的提出,多轮对话回复生成模型取得了重大的突破,不过如何有效地编码对话历史从而生成通顺且相关地回复,还是一个很大的挑战。传统的对话回复生成的做法包括两种:1)将所有对话历史拼接成一个长序列输入到模型,然后模型进行字词层级的attention学习并生成回复。这样做法的一个缺点是只考虑了字词层级的信息,忽略了句子语意信息,无法有效地将语意的影响考虑进来生成适当的回复;2)利用一个分层结构,先对多轮对话中每一句话进行编码,然后将每一句的句向量输入到另一个编码器中进行句子层级的编码。目前的对话回复生成技术存在两个问题:1) 缺乏句子结构化信息,在生成对话回复的时候往往更关注最近的且最相关的对话历史来帮助生成回复;2) 模型往往生成比较泛的回复,缺少了对主题相关信息的捕捉,从而导致生成的对话回复不准确。
针对现有的对话回复生成技术中缺少了对主题相关信息的利用,从而导致生成的对话回复不准确的问题,目前还没有提出有效的解决方案。
发明内容
在本实施例中提供了一种对话回复生成方法、装置和存储介质,以解决现有的对话回复生成技术中缺少了对主题相关信息的利用,从而导致生成的对话回复不准确的问题。
第一个方面,在本实施例中提供了一种对话回复生成方法,所述方法包括:
利用预先训练好的句子表征模型,生成对话语句的句向量;
提取所述对话语句的主题词;所述主题词用于标识所述对话语句的主题信息;
根据所述主题词和所述预先训练好的句子表征模型,生成所述对话语句的主题向量;
根据所述句向量和所述主题向量,生成所述对话回复。
在其中的一些实施例中,所述利用预先训练好的句子表征模型,生成对话语句的句向量,包括:
利用预先训练好的句子表征模型对所述对话语句进行编码,生成所述对话语句的句向量。
在其中的一些实施例中,所述根据所述主题词和所述预先训练好的句子表征模型,生成所述对话语句的主题向量,包括:
利用所述句子表征模型的字典,将所述主题词拼接为主题序列;
根据所述主题序列和所述句子表征模型,生成所述主题词的词向量;
根据所述词向量生成所述对话语句的主题向量。
在其中的一些实施例中,所述根据所述句向量和所述主题向量,生成所述对话回复,包括:
构建所述对话语句的有向图;所述有向图包括节点和连接所述节点的有向边;所述节点用于标识所述对话语句,所述有向边用于标识所述对话语句的之间的关系;
根据所述句向量和所述主题向量,利用图注意力神经网络对所述有向图中的节点进行信息聚合,得到所述节点的聚合向量;
根据所述聚合向量,生成所述对话回复。
在其中的一些实施例中,所述方法还包括:
根据所述句向量和所述主题向量,生成所述节点的初始向量。
在其中的一些实施例中,所述根据所述句向量和所述主题向量,利用图注意力神经网络对所述有向图中的节点进行信息聚合,得到所述节点的聚合向量,包括:
构建有向图的节点间的时间衰减函数;所述时间衰减函数用于表征时间对所述对话语句的之间的关系的影响;
构建所述有向图的有向边的权重系数;
根据所述有向图的节点间的时间衰减函数、所述权重系数和相邻节点的所述初始向量,利用图注意力神经网络对所述有向图中的节点进行信息聚合,得到所述节点的聚合向量。
在其中的一些实施例中,所述根据所述聚合向量,生成所述对话回复,包括:
将所述节点的聚合向量输入至解码器,生成所述对话回复。
在其中的一些实施例中,所述根据所述词向量生成所述对话语句的主题向量,包括:
将所述对话语句的词向量取平均,得到所述对话语句的主题向量。
第二个方面,在本实施例中提供了一种对话回复生成装置,所述装置包括:
第一生成模块,用于利用预先训练好的句子表征模型,生成对话语句的句向量;
提取模块,用于提取所述对话语句的主题词;所述主题词用于标识所述对话语句的主题信息;
第二生成模块,用于根据所述主题词和所述预先训练好的句子表征模型,生成所述对话语句的主题向量;
第三生成模块,用于根据所述句向量和所述主题向量,生成所述对话回复。
第三个方面,在本实施例中提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一个方面所述的对话回复生成方法的步骤。
与相关技术相比,在本申请中提供的一种对话回复生成方法、装置和存储介质,通过利用预先训练好的句子表征模型,生成所有对话语句的句向量,对所有的对话语句提取主题词,再利用预先训练好的句子表征模型,生成所有对话语句的主题向量,根据所有对话语句的句向量和所有对话语句主题向量,生成相应的对话回复。本申请利用主题信息来生成相应的对话回复,提高了对话回复的准确性,解决了现有的对话回复生成技术中缺少了对主题相关信息的利用,从而导致生成的对话回复不准确的问题。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是执行本申请实施例的一种对话回复生成方法的终端的硬件结构框图;
图2是本申请实施例的一种对话回复生成方法的流程图;
图3本申请实施例的生成对话语句的主题向量的流程图;
图4本申请实施例的生成对话回复的流程图;
图5是本申请实施例的对话回复生成方法的优选流程图;
图6是本申请实施例的一种对话回复生成装置的结构框图。
具体实施方式
为更清楚地理解本申请的目的、技术方案和优点,下面结合附图和实施例,对本申请进行了描述和说明。
除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属技术领域具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和系统、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他步骤或模块(单元)。在本申请中所涉及的“连接”、“相连”、“耦接”等类似的词语并不限定于物理的或机械连接,而可以包括电气连接,无论是直接连接还是间接连接。在本申请中所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。通常情况下,字符“/”表示前后关联的对象是一种“或”的关系。在本申请中所涉及的术语“第一”、“第二”、“第三”等,只是对相似对象进行区分,并不代表针对对象的特定排序。
在本实施例中提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。比如在终端上运行,图1是执行本申请实施例的一种对话回复生成方法的终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102和用于存储数据的存储器104,其中,处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置。上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限制。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示出的不同配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如在本实施例中的一种对话回复生成方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(NetworkInterface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种对话回复生成方法,图2是本申请实施例的一种对话回复生成方法的流程图,如图2所示,该流程包括如下步骤:
步骤S210,利用预先训练好的句子表征模型,生成对话语句的句向量。
具体地,将获取到的对话语句或数据库中存储的所有的对话语句,分别输入至预先训练好的句子表征模型,生成每条对话语句所对应的句向量。示例性地,这里的句子表征模型可以为SimCSE-RoBERTa模型。
步骤S220,提取对话语句的主题词;主题词用于标识对话语句的主题信息。
具体地,对获取到的对话语句或数据库中存储的所有的对话语句分别进行主题词提取,提取每条对话语句所对应的主题词。这里的主题词用于标识对话语句的主题信息,一条对话语句中可以包括一个或多个主题词,也可以不包括主题词。
步骤S230,根据主题词和预先训练好的句子表征模型,生成对话语句的主题向量。
具体地,将步骤S220中提取的所有对话语句的主题词,输入至预先训练好的句子表征模型,生成每条对话语句的主题向量。示例性地,这里的句子表征模型可以为SimCSE-RoBERTa模型。
步骤S240,根据句向量和主题向量,生成对话回复。
具体地,根据步骤S210生成的所有对话语句的句向量和步骤S230生成的所有对话语句主题向量,生成相应的对话回复。
在本实施中,利用预先训练好的句子表征模型,生成所有对话语句的句向量,对所有的对话语句提取主题词,再利用预先训练好的句子表征模型,生成所有对话语句的主题向量,根据所有对话语句的句向量和所有对话语句主题向量,生成相应的对话回复。本申请利用主题信息来生成相应的对话回复,提高了对话回复的准确性,解决了现有的对话回复生成技术中缺少了对主题相关信息的利用,从而导致生成的对话回复不准确的问题。
在其中的一些实施例中,步骤S210,利用预先训练好的句子表征模型,生成对话语句的句向量,包括:利用预先训练好的句子表征模型对对话语句进行编码,生成对话语句的句向量。
具体地,将对话语句输入至预先训练好的句子表征模型进行编码,根据编码结果,生成该对话语句的句向量。进一步具体地,可以利用对比学习的损失函数作为句子表征模型的训练的目标,并采用大规模预训练模型RoBERTa在对比学习的框架上继续训练来更好的学习句子表征,最后得到句子表征模型。
在本实施例中,利用对比学习的损失函数来训练句子表征模型,增强了句子表征模型对语意的理解,从而提高了句子表征模型的准确度。
在其中的一些实施例中,步骤S230,根据主题词和预先训练好的句子表征模型,生成对话语句的主题向量,如图3所示,包括如下步骤:
步骤S231,利用句子表征模型的字典,将主题词拼接为主题序列。
具体地,将步骤S220中提取的所有对话语句的主题词,输入至预先训练好的句子表征模型,利用该句子表征模型的字典对输入的主题词按照对话语句顺序进行拼接,得到主题序列,该主题序列包括对话语句的标识,该对话语句的标识用于标识主题序列中的主题词属于哪个对话语句。
步骤S232,根据主题序列和句子表征模型,生成主题词的词向量。
具体地,将步骤S231生成的主题序列输入至句子表征模型,生成主题词的词向量。
步骤S233,根据词向量生成对话语句的主题向量。
具体地,将同一条对话语句的所有主题词的词向量取平均,得到该条对话语句的主题向量。
在其中的一些实施例中,步骤S240,根据句向量和主题向量,生成对话回复,如图4所示,包括如下步骤:
步骤S241,构建对话语句的有向图;有向图包括节点和连接节点的有向边;节点用于标识对话语句,有向边用于标识对话语句的之间的关系。
具体地,构建关于对话语句的有向图,其中,有向图包括节点和连接节点的有向边,该有向图用于编码对话语句的结构信息。
步骤S242,根据句向量和主题向量,利用图注意力神经网络对有向图中的节点进行信息聚合,得到节点的聚合向量。
具体地,根据句向量和主题向量,生成有向图的节点的初始向量。构建有向边的权重系数。构建有向图的节点间的时间衰减函数,有向图的节点间的时间衰减函数用于表征时间对对话语句的之间的关系的影响,时间衰减函数中包括时间衰减信息。根据节点的初始向量、权重系数和节点间的时间衰减函数,利用图注意力神经网络对有向图中的节点进行信息聚合,得到节点的聚合向量。
进一步具体地,可以根据句子表征模型将两个节点所标识的对话语句连接起来,得到拼接句向量,输入至线性分类器中来计算两个节点对应的对话语句的语意相似度,从而作为两个节点之间的有向边的权重系数。
另外,进一步具体地,根据两个节点所代表的对话语句的标识来确定时间衰减函数的时间差,根据该时间差生成该两个节点间的时间衰减函数,这里的对话语句的标识包括对话语句的身份标识和对话语句的对话轮次标识。
步骤S243,根据聚合向量,生成对话回复。
具体地,将聚合得到的聚合向量输入到解码器中进行解码,根据解码结果,生成相应的对话回复。示例性地,这里的解码器可以为基于Transformer的解码器。
在本实施例中,通过构建对话语句的有向图,将对话语句的结构化信息如时间衰减信息、语意相关性等信息融合到图网络中,最后利用图注意力神经网络进行信息的融合与传递,来指导对话的回复,充分利用对话语句的结构化信息及主题相关信息来指导对话的回复,提高了对话回复的准确度。
下面通过优选实施例对本申请实施例进行描述和说明。
图5是本申请实施例的对话回复生成方法的优选流程图,如图5所示,该流程包括如下步骤:
步骤S510,提取对话中的主题词。
具体地,使用自然语言处理工具包NLTK来对每一句对话进行自动分词与词性标注,NLTK会针对不同的词将其依照词性分成36类。选择其中的名词即词性标签为NN,NNS,NNP或者NNPS。同时还会利用正则表达式将名词性短语NP、动词性短语VP以及介词性短语PP从对话的语句中提取出来。最后得到每一句对话un中带有主题信息的词tn={tn 1,tn 2,tn 3…,tn k},其中,tn i为每一句对话un中第i个带有主题信息的词,i的取值为1到k,k表示这一句话中提取出了k个带有主题信息的词,n表示一段对话中一共有n句话。利用NLTK去分词与词性标注后,然后把特定的词性的词或短语抽取出来作为主题信息词。这里的每一句对话un为前述实施例所述的对话语句。
步骤S520,利用对比学习方法训练句子表征模型。
具体地,利用对比学习的方法训练句子表征模型,其主要思想是拉近相似语句的距离并推开不相似的语句,这样的方式可以让模型更好的学到句子的语意表征。训练的语料是自然语言推理的数据集,每一笔训练资料都包含两个句子ui和uj,将其中逻辑上相反的句子作为负例,反之作为正例。然后利用对比学习的损失函数lossi作为训练的目标,并采用大规模预训练模型RoBERTa在对比学习的框架上继续训练来更好的学习句子表征,最后得到SimCSE-RoBERTa模型,即句子表征模型。模型在训练的时候要确保损失函数lossi越小越好,损失函数lossi如公式(1)所示,即作为正例的两个句子相似度越接近,负例的两个句子相似度差别越大。
其中,是计算两个句子之间的余弦相似度,是计算两个句子之间的余弦相似度,Hi 1、Hi 2、Hj 2则表示句子经过SimCSE-RoBERTa模型编码后得到的hidden state,即句向量,i、j为自变量,i、j的取值为1到N的整数,N表示句子的数量。训练完成后,利用句子表征模型对句子进行编码得到句向量。
步骤S530,生成句子的句向量和主题向量。
具体地,在步骤S520中,利用对比学习的方法得到SimCSE-RoBERTa句子表征学习模型。给定一段多轮对话u={u1,u2,u3,…,un},其中,ui为句子,i的取值为1到n,n表示这一段多轮对话中有n句。此外,步骤S520中抽取出了每一句对话un中带有主题信息的词tn={tn 1,tn 2,tn 3…,tn k}。利用SimCSE-RoBERTa句子表征模型编码每一句对话un与其对应的带有主题信息的词tn。首先将每一句对话un分别输入到SimCSE-RoBERTa得到句向量Hun。接着,将每一句中带有主题信息的词tn拼成如下的一个长序列:
其中,该长序列中,<s>表示长序列的起始,中间的</s>表示连接着两个带有主题信息的词,最后一个</s>表示序列的终止,连接词</s>与<s>为SimCSE-RoBERTa模型vocab字典中的词。若某一句话中没有提取到带有主题信息的词,则使用符号<mask>来代替。将长序列输入至句子表征模型,得到每一个带有主题信息的词tn的词向量后,将同一句话un中所有带有主题信息的词向量取平均得到该句话的主题向量Htn。
步骤S540,构建有向图。
具体地,在获取每一句话的句向量Hun与主题向量Htn后,构建有向图G=(V,E),用于编码对话的结构信息。有向图的节点V表示的是每一句对话,有向图的节点之间的边E表示的是对话之间的交互关系,交互关系可以分成两种:
1)说话者间的对话交互
两个不同的说话者之间存在一条边Einter,表示不同说话者对话的相互影响。
2)同一说话者的历史交互
同一个说话者中存在一条边Eintra,表示同一说话者历史对话对当前对话的影响。
在构建有向图G中,边的方向是单向的,即从历史对话指向当前对话,因为历史对话会对当前的对话产生影响,而当前对话无法影响到历史发生过的对话。此外,不同于以往的方法在构建有向图之后边的权重初始为0(两个节点之间没有边连接)或1(两个节点之间有一条边连接)。本实施例在构建完边之后,会使用步骤S520得到的基于对比学习的SimCSE-RoBERTa句子表征模型将两个句子拼接起来,得到句向量,然后将句向量输入到线性分类器中来计算两个节点(Vi和Vj)对应的句子(ui和uj)的语意相似度,从而作为边的初始化权重wij,这里的线性分类器预先利用对话句子进行训练。
步骤S550,构建指数时间衰减函数。
具体地,在对话中,除了不同说话者身份信息、对话之间的语意相关性外,还满足时间衰减的结构化特性,即历史对话对当前对话的影响会随着对话轮数的增加而慢慢衰减,现有技术中未将这个结构化特征考虑进去。定义指数时间衰减的函数F如公式(2)所示:
其中,τ用来控制指数时间衰减的速率,d(ui,uj)表示的是两个节点之间的时间差,Ei,j表示有向图的两个节点之间的边,i、j为自变量。如公式(3)所示,若两个节点(Vi和Vj)是不同说话者之间,则时间差为j-i,反之若是同一个说话者之间的话,则时间差为(j-i)/2。
步骤S560,利用图注意力神经网络进行信息的聚合与传递,得到聚合向量。
具体地,构建完指数时间衰减函数之后,利用图注意力神经网络进行信息的聚合与传递。在步骤S530获取每一句话的句向量Hun与主题向量Htn后,将两个向量拼接起来得到拼接向量HCn,HCn=[Hun:Htn],HCn作为有向图G的节点Vn的初始向量表征。利用公式(4)根据节点的初始向量表征计算图注意力神经网络的权重al i,j,其中,l表示图注意力神经网络的第l层,Wa l是可训练的参数,Hl Ci和Hl Cj为第l层的拼接向量,[Hl Ci:Hl Cj]为对拼接向量Hl Ci和拼接向量Hl Cj进行拼接,Softmax为归一化指数函数,Ni表示与Vi相连的邻居节点。
al i,j=Softmaxj∈Ni(Wa l[Hl Ci:Hl Cj])(4)
根据公式(5)将初始化权重wij和指数时间衰减函数F融合到图注意力神经网络的权重中,并对每一层的图注意力神经网络做信息聚合得到每一个节点的聚合向量Mi l,Ni表示与Vi相连的邻居节点。
如公式(6)所示,通过两个GRU网络实现层与层之间的信息传递,其中GRUN网络是传递聚合后的节点信息,GRUC网络是传递了历史文本信息到后面的图网络层,其中,表示用/>作为指导来控制Mj l的传递,/>表示用Mj l作为指导来控制/>的传递,/>为第l层的拼接向量。
经过了L层图注意力网络的迭代之后,根据公式(7)将得到的向量表征相加起来得到聚合后的聚合向量Hfinal,聚合向量Hfinal即为最终的多轮对话历史表征。
步骤S570,将聚合向量进行解码,生成对话回复。
具体地,将图注意力网络聚合得到的聚合向量Hfinal输入到基于Transformer的解码器中指导对话回复的生成。在每一层解码的时候,将聚合向量Hfinal透过cross-attention的方式作为一个指导来控制多轮对话回复的生成。
本优选实施例至少具有以下有益效果:
1、本优选实施例提供的基于时间及语意信息的多轮对话结构建模与回复生成方法,提取每一句话中带有主题信息的字词并提取主题向量,同时构建了一个有向图,将对话的结构化信息如时间衰减、语意相关性、说话者身份认证等融合到图网络中,最后利用图注意力神经网络进行信息的融合与传递,作为指导控制回复生成,提高了对话回复的准确性。
2、本优选实施例提供的多轮对话回复生成方法,结合了对比学习的方法,增强了模型对句子语义特征的理解;指数时间衰减,藉由生活中时间衰减的现象,对应到多轮对话中历史讯息对当前回复影响的时间衰减,更好地融合了结构化信息;利用语意相似性作为边的初始权重,将对话的语意信息融合到构建的图注意力网络中;采用图注意力网络的结构,将对话的结构信息及语意信息进行融合并向后传递,从而来指导对话回复的生成。从而对多轮对话的结构化信息进行建模并生成更通顺且主题相关的对话回复。
在本实施例中还提供了一种对话回复生成装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。以下所使用的术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管在以下实施例中所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是本申请实施例的一种对话回复生成装置的结构框图,如图6所示,该装置包括:
第一生成模块610,用于利用预先训练好的句子表征模型,生成对话语句的句向量;
提取模块620,用于提取对话语句的主题词;主题词用于标识对话语句的主题信息;
第二生成模块630,用于根据主题词和预先训练好的句子表征模型,生成对话语句的主题向量;
第三生成模块640,用于根据句向量和主题向量,生成对话回复。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
在本实施例中还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,利用预先训练好的句子表征模型,生成对话语句的句向量;
S2,提取对话语句的主题词;主题词用于标识对话语句的主题信息;
S3,根据主题词和预先训练好的句子表征模型,生成对话语句的主题向量;
S4,根据句向量和主题向量,生成对话回复。
需要说明的是,在本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,在本实施例中不再赘述。
此外,结合上述实施例中提供的一种对话回复生成方法,在本实施例中还可以提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种对话回复生成方法的步骤。
应该明白的是,这里描述的具体实施例只是用来解释这个应用,而不是用来对它进行限定。根据本申请提供的实施例,本领域普通技术人员在不进行创造性劳动的情况下得到的所有其它实施例,均属本申请保护范围。
显然,附图只是本申请的一些例子或实施例,对本领域的普通技术人员来说,也可以根据这些附图将本申请适用于其他类似情况,但无需付出创造性劳动。另外,可以理解的是,尽管在此开发过程中所做的工作可能是复杂和漫长的,但是,对于本领域的普通技术人员来说,根据本申请披露的技术内容进行的某些设计、制造或生产等更改仅是常规的技术手段,不应被视为本申请公开的内容不足。
“实施例”一词在本申请中指的是结合实施例描述的具体特征、结构或特性可以包括在本申请的至少一个实施例中。该短语出现在说明书中的各个位置并不一定意味着相同的实施例,也不意味着与其它实施例相互排斥而具有独立性或可供选择。本领域的普通技术人员能够清楚或隐含地理解的是,本申请中描述的实施例在没有冲突的情况下,可以与其它实施例结合。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对专利保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (8)
1.一种对话回复生成方法,其特征在于,所述方法包括:
利用预先训练好的句子表征模型,生成对话语句的句向量;
提取所述对话语句的主题词;所述主题词用于标识所述对话语句的主题信息;
根据所述主题词和所述预先训练好的句子表征模型,生成所述对话语句的主题向量;
构建所述对话语句的有向图;所述有向图包括节点和连接所述节点的有向边;所述节点用于标识所述对话语句,所述有向边用于标识所述对话语句的之间的关系;
构建有向图的节点间的时间衰减函数;所述时间衰减函数用于表征时间对所述对话语句的之间的关系的影响;构建所述有向图的有向边的权重系数;根据所述有向图的节点间的时间衰减函数、所述权重系数和相邻节点的初始向量,利用图注意力神经网络对所述有向图中的节点进行信息聚合,得到所述节点的聚合向量;
根据所述聚合向量,生成所述对话回复;
2.根据权利要求1所述的对话回复生成方法,其特征在于,所述利用预先训练好的句子表征模型,生成对话语句的句向量,包括:
利用预先训练好的句子表征模型对所述对话语句进行编码,生成所述对话语句的句向量。
3.根据权利要求1所述的对话回复生成方法,其特征在于,所述根据所述主题词和所述预先训练好的句子表征模型,生成所述对话语句的主题向量,包括:
利用所述句子表征模型的字典,将所述主题词拼接为主题序列;
根据所述主题序列和所述句子表征模型,生成所述主题词的词向量;
根据所述词向量生成所述对话语句的主题向量。
4.根据权利要求1所述的对话回复生成方法,其特征在于,所述方法还包括:
根据所述句向量和所述主题向量,生成所述节点的初始向量。
5.根据权利要求4所述的对话回复生成方法,其特征在于,所述根据所述聚合向量,生成所述对话回复,包括:
将所述节点的聚合向量输入至解码器,生成所述对话回复。
6.根据权利要求3所述的对话回复生成方法,其特征在于,所述根据所述词向量生成所述对话语句的主题向量,包括:
将所述对话语句的词向量取平均,得到所述对话语句的主题向量。
7.一种对话回复生成装置,其特征在于,所述装置包括:
第一生成模块,用于利用预先训练好的句子表征模型,生成对话语句的句向量;
提取模块,用于提取所述对话语句的主题词;所述主题词用于标识所述对话语句的主题信息;
第二生成模块,用于根据所述主题词和所述预先训练好的句子表征模型,生成所述对话语句的主题向量;
第三生成模块,用于构建所述对话语句的有向图;所述有向图包括节点和连接所述节点的有向边;所述节点用于标识所述对话语句,所述有向边用于标识所述对话语句的之间的关系;
构建有向图的节点间的时间衰减函数;所述时间衰减函数用于表征时间对所述对话语句的之间的关系的影响;构建所述有向图的有向边的权重系数;根据所述有向图的节点间的时间衰减函数、所述权重系数和相邻节点的初始向量,利用图注意力神经网络对所述有向图中的节点进行信息聚合,得到所述节点的聚合向量;
根据所述聚合向量,生成所述对话回复;
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至权利要求6中任一项所述的对话回复生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310176290.4A CN115879422B (zh) | 2023-02-16 | 2023-02-16 | 一种对话回复生成方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310176290.4A CN115879422B (zh) | 2023-02-16 | 2023-02-16 | 一种对话回复生成方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115879422A CN115879422A (zh) | 2023-03-31 |
CN115879422B true CN115879422B (zh) | 2023-06-13 |
Family
ID=85761685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310176290.4A Active CN115879422B (zh) | 2023-02-16 | 2023-02-16 | 一种对话回复生成方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115879422B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117196035A (zh) * | 2023-08-31 | 2023-12-08 | 摩尔线程智能科技(北京)有限责任公司 | 回复内容的处理方法、装置、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094315A (zh) * | 2015-06-25 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机智能聊天的方法和装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102686742B1 (ko) * | 2015-10-28 | 2024-07-19 | 디티에스, 인코포레이티드 | 객체 기반 오디오 신호 균형화 |
CN112131368B (zh) * | 2020-09-27 | 2024-02-09 | 深圳平安智慧医健科技有限公司 | 对话生成方法、装置、电子设备及存储介质 |
CN115080707A (zh) * | 2021-03-12 | 2022-09-20 | 阿里巴巴新加坡控股有限公司 | 对话生成模型的训练方法、装置、电子设备及存储介质 |
CN115145980B (zh) * | 2022-07-13 | 2024-07-09 | 平安科技(深圳)有限公司 | 对话回复生成方法和装置、电子设备及存储介质 |
CN115048944B (zh) * | 2022-08-16 | 2022-12-20 | 之江实验室 | 一种基于主题增强的开放域对话回复方法及系统 |
CN115495552A (zh) * | 2022-09-16 | 2022-12-20 | 中国人民解放军国防科技大学 | 基于双通道语义增强的多轮对话回复生成方法及终端设备 |
-
2023
- 2023-02-16 CN CN202310176290.4A patent/CN115879422B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105094315A (zh) * | 2015-06-25 | 2015-11-25 | 百度在线网络技术(北京)有限公司 | 基于人工智能的人机智能聊天的方法和装置 |
Non-Patent Citations (2)
Title |
---|
CONTROLLING THE PERCEIVED SOUND QUALITY FOR DIALOGUE ENHANCEMENT WITH DEEP LEARNING;Christian Uhle.etc;《IEEE》;全文 * |
多轮对话中回复选择的算法研究;薄士宁;《中国知网》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115879422A (zh) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110427617B (zh) | 推送信息的生成方法及装置 | |
Ji et al. | A latent variable recurrent neural network for discourse relation language models | |
CN110222152B (zh) | 一种基于机器阅读理解的问题答案获取方法及系统 | |
CN110069612B (zh) | 一种回复生成方法及装置 | |
JP6677419B2 (ja) | 音声対話方法及び装置 | |
EP1450350A1 (en) | Method for Recognizing Speech with attributes | |
CN111241237A (zh) | 一种基于运维业务的智能问答数据处理方法及装置 | |
JP2018055548A (ja) | 対話装置、学習装置、対話方法、学習方法、およびプログラム | |
CN114596844B (zh) | 声学模型的训练方法、语音识别方法及相关设备 | |
CN110795549B (zh) | 短文本对话方法、装置、设备及存储介质 | |
CN115497465B (zh) | 语音交互方法、装置、电子设备和存储介质 | |
CN115879422B (zh) | 一种对话回复生成方法、装置和存储介质 | |
CN111522925A (zh) | 对话状态生成方法和装置 | |
CN111522936A (zh) | 一种包含情感的智能客服对话回复生成方法、装置及电子设备 | |
CN113705196A (zh) | 基于图神经网络的中文开放信息抽取方法和装置 | |
CN110597968A (zh) | 一种回复选择方法及装置 | |
CN113553418A (zh) | 一种基于多模态学习的视觉对话生成方法及装置 | |
CN109933773A (zh) | 一种多重语义语句解析系统及方法 | |
CN113158687A (zh) | 语义的消歧方法及装置、存储介质、电子装置 | |
CN113761868A (zh) | 文本处理方法、装置、电子设备及可读存储介质 | |
CN113177113B (zh) | 任务型对话模型预训练方法、装置、设备及存储介质 | |
CN114239607A (zh) | 一种对话答复方法及装置 | |
CN116955579B (zh) | 一种基于关键词知识检索的聊天回复生成方法和装置 | |
CN115525740A (zh) | 对话应答语句的生成方法、装置、电子设备及存储介质 | |
CN113761933A (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 |