CN110321417B - 一种对话生成方法、系统、可读存储介质及计算机设备 - Google Patents
一种对话生成方法、系统、可读存储介质及计算机设备 Download PDFInfo
- Publication number
- CN110321417B CN110321417B CN201910464111.0A CN201910464111A CN110321417B CN 110321417 B CN110321417 B CN 110321417B CN 201910464111 A CN201910464111 A CN 201910464111A CN 110321417 B CN110321417 B CN 110321417B
- Authority
- CN
- China
- Prior art keywords
- information
- vector
- subject
- sentence
- vector representation
- 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/3332—Query translation
- G06F16/3338—Query expansion
-
- 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/3347—Query execution using vector based model
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种对话生成方法、系统、可读存储介质及计算机设备,对个性信息进行扩展和挖掘。该方法包括以下步骤:获取用户的多轮对话上下文信息和个性信息,将最后一句上下文信息作为当前询问语句信息;基于神经网络的主题模型进行个性信息扩展;采用双向循环神经网络分别对个性信息、上下文信息和当前询问语句信息进行编码,得到对个性信息、上下文信息和当前询问语句信息的句子向量表示;将个性信息、上下文信息以及当前询问语句信息的句子向量表示进行融合,得到所有信息的整体向量表示;基于所有信息的整体表示向量,采用注意力机制分别对上下文信息、个性信息、扩展个性信息的每个词向量表示进行解码,生成目标对话回复。
Description
技术领域
本公开涉及自然语言处理技术领域,具体涉及一种基于个性信息扩展和挖掘的对话生成方法、系统、可读存储介质及计算机设备。
背景技术
对话系统是自然语言处理中具有挑战性的任务,近年来吸引力大量研究者的注意。对话系统分为任务导向型对话系统和非任务导向型对话系统,其中,任务导向型对话系统旨在帮助用户完成实际具体的任务,例如帮助用户找寻商品,预订酒店餐厅等;非任务导向型对话系统与人类交互,提供合理的回复和娱乐消遣功能,通常情况下主要集中在开放的领域与人交谈,虽然非任务导向的系统似乎在进行聊天,但是它在许多实际应用程序中都发挥了作用,比如阿里小蜜,QQ小冰等。
针对开放域对话系统,很多研究者提出来各种方法和模型,但是仍然存在很多局限和挑战,比如内容缺乏一致性等。因此,目前出现了基于个性的对话系统,像人一样来生成个性化一致的回复。基于个性的对话系统中,个性信息有两种存储方式,一种是结构化的键值对,比如<性别,男>,另一种是非结构化的句子形式的表述,比如“我喜欢弹钢琴”。两种个性信息的表达方式各有优缺点,结构化的键-值对可以让模型更加简单的并且准确的捕捉到个性信息,非结构化的句子可以提供更多的更加灵活的个性信息,但是增加了模型准确捕捉到个性信息的难度。发明人在研究过程中发现,现有很多模型只是基于数据原有的个性信息训练,这可能导致模型过分依赖当前个性信息,反而导致生成的回复信息不够丰富。
目前基于个性的开放域多轮对话系统技术主要使用编码器-解码器框架,即先将上下文信息和个性信息编码成向量,再将各部分信息拼接后传入解码器,最后生成回复。发明人在研究过程中发现,目前的方法大部分是利用单个数据集(包括用户个性信息,对话信息)来进行训练。但是这种单一的数据集训练方法对于个性的扩展和挖掘是不足的,这也直接导致了很难产生拥有丰富个性信息的对话。
发明内容
为了克服上述现有技术的不足,本公开提供了一种基于个性信息扩展和挖掘的对话生成方法、系统、可读存储介质及计算机设备,对个性信息进行扩展并充分应用到对话生成过程中,以此来获得更具个性化和多样性的回复。
本公开第一方面提供的一种基于个性信息扩展和挖掘的对话生成方法的技术方案是:
一种基于个性信息扩展和挖掘的对话生成方法,该方法包括以下步骤:
获取用户的多轮对话上下文信息和个性信息,将最后一句上下文信息作为当前询问语句信息;
基于神经网络的主题模型进行个性信息扩展;
采用双向循环神经网络分别对个性信息、上下文信息和当前询问语句信息进行编码,得到对个性信息、上下文信息和当前询问语句信息的句子向量表示;
将个性信息、上下文信息以及当前询问语句信息的句子向量表示进行融合,得到所有信息的整体向量表示;
基于所有信息的整体表示向量,采用注意力机制分别对上下文信息、个性信息、扩展个性信息的每个词向量表示进行解码,生成目标对话回复。
本公开第二方面提供的一种基于个性信息扩展和挖掘的对话生成系统的技术方案是:
一种基于个性信息扩展和挖掘的对话生成系统,该系统包括:
信息获取模块,用于获取用户的多轮对话上下文信息和个性信息,将最后一句上下文信息作为当前询问语句信息;
个性扩展模块,用于基于神经网络的主题模型进行个性信息扩展;
个性挖掘模块,用于采用双向循环神经网络分别对个性信息、上下文信息和当前询问语句信息进行编码,得到对个性信息、上下文信息和当前询问语句信息的句子向量表示;将个性信息、上下文信息和当前询问语句信息的句子向量表示进行融合,得到所有信息的整体向量表示;基于所有信息的整体表示向量,采用注意力机制分别对上下文信息、个性信息、扩展个性信息的每个词向量表示进行解码,生成目标对话回复。
本公开第三方面提供的一种计算机可读存储介质的技术方案是:
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的基于个性信息扩展和挖掘的对话生成方法中的步骤。
本公开第四方面提供的一种计算机设备的技术方案是:
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的基于个性信息扩展和挖掘的对话生成方法中的步骤。
通过上述技术方案,本公开的有益效果是:
(1)本公开使用基于神经网络的主题模型来实现个性信息的扩展,将有限的个性信息充分地利用,并将其自然地融入到解码器的解码过程中;
(2)本公开还提出了信息融合模块,单独使用当前询问语句,更充分地融合上下文信息和个性信息,并使用具有个性化的词袋损失函数监督生成;
(3)本公开设计了两种个性挖掘方法:在编码器部分,设计了注意力机制来整合和提取重要的信息,在解码器部分使用了基于注意力机制的个性信息检索模型并且提出了基于词袋模型的损失函数;这两种方法可以整合不同种类的信息并且产生更加个性相关的回复。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本申请,并不构成对本公开的不当限定。
图1是实施例一基于个性信息扩展和挖掘的对话生成方法的流程图;
图2是实施例一信息融合流程图。
图3是实施例二基于个性信息扩展和挖掘的对话生成系统的结构图。
具体实施方式
下面结合附图与实施例对本公开作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本公开使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例一
本实施例提供了一种基于个性信息扩展和挖掘的对话生成方法,利用神经主题模型来扩充个性的信息,将有限的个性信息充分地利用,并将其自然地融入到解码器的解码过程中;采用多源编码器对个性信息(persona),上下文信息(context)和当前询问语句进行编码,采用信息融合模块融合各部分信息,利用带有注意力机制的解码器生成对话回复。
请参阅附图1,所述对话生成方法包括以下步骤:
S101,获取用户的多轮对话上下文信息、个性信息和当前询问语句信息。
每一句上下文信息都描述了用户的一个特征。因为最后一句上下文信息包含了更重要的信息,本实施例将最后一句对话的上下文信息Ck-1作为用户的当前询问语句信息,称之为Q。
S102,采用神经主题模型扩展用户的个性信息。
每一个用户的个性信息是由几个句子组成的,也就是非结构化的个性信息。如果只利用这几个句子,生成的回复很可能会平淡无奇并且很难进行话题的转移,因此本实施例采用基于神经网络的主题模型来充分扩展个性信息从而产生更加富有信息的回复。与传统的方法相比,基于神经网络的主题模型训练起来消耗的时间更少,更重要的是当有新数据时,可以在之前的基础上进行训练而不需要重新训练因此更加具有扩展性。
为了更好的学习到词和主题之间的关系,本实施例引入了基准数据集DailyDialog,将基准数据集DailyDialog和个性对话数据集Persona-Chat这两个数据集中的每一段对话作为一个文本(document),采用基于神经网络的主题模型(NTM)对文本所有进行训练,从而得到了主题-词汇矩阵BK×|V|,K是主题的个数,|V'|是词表的大小。
具体地,所述个性信息的扩展方法为:
(1)引入基准数据集DailyDialog和个性对话数据集Persona-Chat。
个性对话数据集Persona-Chat中对每个用户会提供3-5句话描述其个人信息。
DailyDialog是另一个日常聊天记录的数据集(包含多段对话,每段对话包含两个人之间的多轮交流)。其聊天内容与persona-chat类似,都是日常闲聊的聊天记录,所以存在很多共同词汇。该数据集的引入是为了用更多数据更好地训练主题模型。
(2)从主题模型的词表中查找个性对话数据集和基准数据集中每句个性信息的个性主题词。
具体地,对于每句个性信息,根据其是否出现在主题模型的词表里来找到其该个性信息的个性主题词WP,一般是名词,去掉了停用词等没有用的词。
(3)采用基于神经网络的主题模型对两个数据集一起进行训练,得到主题-词汇矩阵BK×|V|',K是主题的个数,|V'|是词表的大小,对于每一个个性主题词,根据矩阵B中每个主题词词对应的主题向量,计算每一个扩展主题词和对应的个性主题词的余弦距离,从而得到m个与个性主题词的余弦距离最近的扩展主题词。
主题-词汇矩阵B是主题模型中解码器的神经网络的最后一层的参数,属于主题模型中的一部分。
在本实施例中,根据每一个扩展主题词和对应的个性主题词的相似度,即步骤(2)计算的扩展主题词与对应的个性主题词的余弦距离,进行筛选。每个扩展主题词被选出时,都有一个对应的余弦距离。
本实施例会将扩展出的主题词应用在模型解码器中,来丰富生成回复的内容。
S103,采用多源编码器对个性信息、上下文信息和当前询问语句信息进行编码,得到对个性信息、上下文信息和当前询问语句信息的词向量表示。
为了融合不同种类的信息,本实施例使用了三个独立的编码器,分别为:上下文编码器、个性信息编码器和当前询问语句编码器。个性信息编码器学习关于个性信息句子的向量表示eP,个性信息编码器是一个单层的循环神经网络,利用单层神经网络学习每句个性信息的表示向量从而学习到个性信息中所有句子的整体向量表示。层级的上下文信息编码器学习上下文信息的表示向量 是第i个上下文隐含状态向量。层级的上下文编码器是一个双层的循环神经网络,第一层学习到上下文信息中单个句子的表示,第二层是根据句子间顺序和关系,更新每个句子的表示并学习到上下文信息中所有句子的整体表示。为了突出当前查询语句信息Q的重要性,本实施例单独使用了一个当前询问语句编码器,当前询问语句编码器学习得到当前查询语句信息Q的向量表示eQ,当前询问语句编码器也是一个单层的循环神经网络,利用单层循环神经网络学习到当前查询语句信息中单个句子的表示,从而学习到当前查询语句信息中所有句子的整体表示。
在本实施例中,多源编码器使用的是双向GRU神经网络而不是LSTM神经网络,因为GRU和LSTM的性能在很多任务上不分伯仲,但GRU参数更少所以更容易收敛,更加高效。
S104,将个性信息表示向量、上下文信息表示向量和当前询问语句信息表示向量进行融合,得到所有信息的整体表示向量。
得到个性信息表示eP,上下文信息表示eC和当前询问语句表示eQ之后,需要将这些表示融合成一个向量表示。
请参阅附图2,将个性信息表示向量、上下文信息表示向量和当前询问语句信息表示向量进行融合,其具体实现方式如下:
对个性信息、上下文信息和当前询问语句信息中的每一个句子选择主题词,在主题-词汇矩阵B中寻找这些主题词对应的向量,然后将所有主题词对应向量相加并求平均,从而得到每个句子的主题向量表示 和zQ。最后,分别将其拼接到个性信息、上下文信息和当前询问语句信息对应句子表示向量的后边,更新个性信息、上下文信息和当前询问语句信息的句子向量表示为和
通常情况下,当前查询语句信息Q对对话回复的生成是起决定性作用的,所以本实施例利用当前查询语句信息对其他信息做抽取(也叫注意力机制),本实施例用新的当前询问语句信息的向量表示对新的上下文信息的向量表示做注意力学习,得到权重αt,之后用对新的上下文信息的向量表示中的向量用αt做加权求和,得到抽取后的上下文信息向量表示vC。
然后,根据当前查询语句信息来选择相关的个性信息,将新的当前查询语句信息向量表示和相关上下文信息向量表示vC拼接,用拼接后向量对个性信息的向量表示做注意力学习,得到权重αt′,之后用拼接后的向量对个性信息的向量表示中的向量用αt′做加权求和,得到抽取后的个性信息向量表示vP。
权重和向量vP表示如下:
S105,基于所有信息的整体表示,采用注意力机制对上下文信息、个性信息、扩展个性信息进行解码,生成目标对话回复的词概率分布。
具体地,基于所有信息的整体表示,采用注意力机制对上下文信息、个性信息、扩展个性信息进行解码,其具体实现方式如下:
(1)将所有信息的整体向量表示s0作为初始隐藏向量,通过门控循环网络(GRU),得到当前时间步的隐藏向量st,其表达式为:
st=GRU(yt-1,st-1) (4)
其中,st-1为t-1时刻的隐藏向量,初始时刻隐藏向量为s0;yt-1为t-1时刻的生成的词语。每一步t时刻最终的目的是生成t时刻的词语,也就是回复的句子中的第t个词。
(2)采用上下文注意力机制,利用隐藏向量对上下文信息中每一个词语做注意力学习,产生上下文信息的注意力向量。
具体地,采用上下文注意力机制对上下文信息中每一个词语解码,利用隐藏向量st对上下文信息中每个词语向量表示(上下文编码器中第一层的输出)做注意力学习,产生上下文注意力向量 是上下文中第i句话的第j个词语的表示向量。
(3)采用个性信息注意力机制,利用隐藏向量对个性信息中每一个词语做注意力学习,产生个性信息的注意力向量。
具体地,采用个性信息注意力机制对个性信息中每一个词语解码,利用隐藏向量st对个性信息中每个词语表示向量(个性信息编码器的输出)做注意力学习,产生个性信息注意力向量 代表个性信息中第i句话的第j个单词的向量表示。
(4)采用外部个性信息注意力机制,利用隐藏向量对扩展个性信息中每一个相关主题词的主题向量表示做注意力学习,产生外部个性信息注意力向量。
具体地,采用外部个性信息注意力机制对扩展个性信息中每一个相关主题词的主题向量进行解码时,利用隐藏向量st对主题模型扩展出来个性信息的词语向量表示做注意力学习,产生外部个性信息注意力向量其中是第i个通过基于神经网络的主题模型(NTM)扩展出的个性信息相关主题词的主题向量表示。该注意力机制通过选择最相关的扩展主题信息来鼓励生成信息更加丰富的个性化回复。
外部个性信息注意力向量的计算公式如下所示:
其中,Vw∈Rds,Ws w∈R2ds×ds和Ww∈Rds×ds都是要训练的参数。
(7)重复步骤(1)-(7),得到回复的句子中的所有词语。
S106,损失函数。
在本实施例中有两个目标值,一个是目标对话回复,一个是个性化词袋向量。词袋向量是一个|V|维向量,每一维是0或者1,0表示这个单词没有出现在参照回复中,1则表示这个单词出现在参照回复中,这个可以归结为多分类问题。
在本实施例中,个性词袋向量是词袋向量的一个加权版本,当该单词出现在用户的个性信息中时,对应的维度要加λ(λ的具体值通过实验验证得到)。所以,个性化词袋向量目标b包含0,1和1+λ。本实施例使用多类别分类器,通过求和解码器每一步生成的分数来生成词袋模型的表示pb,公式表示如下:
其中My是生成句子中的词语数量。
最终的损失函数分为以下两部分:
总的损失函数为:
L=L1+γL2 (13)
其中,γ是权重系数。
该模型存在很多参数,需要训练得到参数的最优值才可以应用。训练过程是指给出真实的答案监督模型,也就是让模型生成的答案和真实的答案相近。损失函数是衡量真实结果和生成结果的标准,该领域常用的损失函数有NLL(Negative log-likehood,公式11),交叉熵(公式12)等。模型根据损失函数做反向传播来调整模型参数,也就是训练模型。
目前的方法大部分是利用单个数据集(包括用户个性信息,对话信息)来进行训练,利用用户个性信息的时候只考虑给出的用户个性信息,但是给出的个性信息非常有限,没考虑去扩展用户的个性化信息,所以应用比较困难。但是这种单一的数据集训练方法对于个性的扩展和挖掘是不足的,这也直接导致了很难产生拥有丰富个性信息的对话。针对这个问题,本实施例提出了基于个性扩展和挖掘的对话生成方法,该方法使用基于神经网络的主题模型来进行个性信息进行扩展,然后用到了若干个注意力机制来融合各种不同的信息并且引入了基于词袋模型的损失函数实现了个性挖掘。
本实施例对给出的用户个性化信息进行扩展和挖掘,从而能更好地利用用户的个性化信息,通过引入新的数据集是更好地扩展和挖掘用户个性化信息。
实施例二
本实施例提供了一种基于个性信息扩展和挖掘的对话生成系统,请参阅附图3,该系统包括:
信息获取模块201,用于获取用户的多轮对话上下文信息、个性信息和当前询问语句信息;
个性扩展模块202,用于采用神经主题模型扩展用户的个性信息;
个性挖掘模块203,用于分别对个性信息、上下文信息和当前询问语句信息进行编码,得到对个性信息、上下文信息和当前询问语句信息的表示向量;将个性信息表示向量、上下文信息表示向量和当前询问语句信息表示向量进行融合,得到所有信息的整体表示向量;基于所有信息的整体表示,采用注意力机制对上下文信息、个性信息、扩展个性信息进行解码,生成目标对话回复的词概率分布。
在本实施例中,所述信息获取模块201具体用于:
获取用户的多轮对话上下文信息C=(C1,C2,...,CK-1),第i个上下文信息可表示成如下形式:获取用户个性信息的句子序列第j个个性信息可表示成如下形式:将最后一句对话的上下文信息Ck-1作为用户的当前询问语句信息Q。
在本实施例中,所述信息扩展模块202具体用于:
引入基准数据集DailyDialog和个性对话数据集Persona-Cha;
从主题模型的词表中查找个性对话数据集和基准数据集中每句个性信息的个性主题词;
对于每一个个性主题词,采用基于神经网络的主题模型训练得到从而得到主题-词汇矩阵BK×|V'|,K是主题的个数,|V'|是词表的大小,根据矩阵B中每个主题词词对应的主题向量,计算每一个扩展主题词和对应的个性主题词的余弦距离,从而得到m个与个性主题词的余弦距离最近的扩展主题词。
在本实施例中,所述个性挖掘模块203包括多源编码器、信息融合模块和基于多个注意力机制的解码器。
具体地,所述多源编码器包括上下文编码器、个性信息编码器和当前询问语句编码器,其中:
所述当前询问语句编码器,用于利用单层神经网络学习到当前查询语句信息中单个句子的表示,从而学习到当前查询语句信息中所有句子的整体表示向量eQ。
在本实施例中,所述信息融合模块具体用于:
对个性信息、上下文信息和当前询问语句信息中的每一个句子选择主题词,在主题-词汇矩阵B中寻找这些主题词对应的向量,然后将所有主题词向量相加并取平均值从而得到每个句子的主题表示和zQ。最后,分别将其拼接到个性信息、上下文信息和当前询问语句信息对应句子表示向量的后边,更新个性信息、上下文信息和当前询问语句信息的句子表示向量为和
根据当前查询语句信息来选择相关的个性信息,将新的当前查询语句信息表示向量和相关上下文信息表示向量vC拼接,用拼接后向量对个性信息的表示向量做注意力学习,得到权重αt,之间用拼接后的向量对对个性信息的表示向量中的向量用αt做加权求和,得到抽取后的个性信息表示向量vP。
在本实施例中,所述编码器具体用于:
将所有信息的整体s0作为初始隐藏向量,通过门控循环网络(GRU),得到当前时间时刻的隐藏向量;
采用上下文注意力机制,利用隐藏向量对上下文信息中每一个词语做注意力学习,产生上下文信息的注意力向量;
采用个性信息注意力机制,利用隐藏向量对个性信息中每一个词语做注意力学习,产生个性信息的注意力向量;
采用外部个性信息注意力机制,利用隐藏向量对扩展个性信息中每一个相关主题词的主题向量表示做注意力学习,产生外部个性信息注意力向量;
利用上下文信息的注意力向量、个性信息的注意力向量和外部个性信息注意力向量,通过softmax激活函数进行处理,得到目标对话回复的词语概率分布选取当前时刻t目标对话回复的词语概率分布最大对应的词语,作为当前时刻t生成的词语。
本实施例提出的基于个性信息扩展和挖掘的对话生成系统,通过个性扩展模块利用神经主题模型来扩充个性的信息,将有限的个性信息充分地利用,并将其自然地融入到解码器的解码过程中;采用多源编码器对个性信息(persona),上下文信息(context)和当前询问语句进行编码,采用信息融合模块融合各部分信息,通过带有注意力机制的解码器生成目标对话回复。
实施例三
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如图1所示的基于个性信息扩展和挖掘的对话生成方法中的步骤。
实施例四
本实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如图1所示的基于个性信息扩展和挖掘的对话生成方法中的步骤。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。
Claims (10)
1.一种基于个性信息扩展和挖掘的对话生成方法,其特征是,该方法包括以下步骤:
获取用户的多轮对话上下文信息和个性信息,将最后一句上下文信息作为当前询问语句信息;
基于神经网络的主题模型进行个性信息扩展;
采用双向循环神经网络分别对个性信息、上下文信息和当前询问语句信息进行编码,得到对个性信息、上下文信息和当前询问语句信息的句子向量表示;
将个性信息、上下文信息以及当前询问语句信息的句子向量表示进行融合,得到所有信息的整体向量表示;
基于所有信息的整体表示向量,采用注意力机制分别对上下文信息、个性信息、扩展个性信息的每个词向量表示进行解码,生成目标对话回复;
所述将个性信息、上下文信息以及当前询问语句信息的句子向量表示进行融合的步骤包括:
选择每句个性信息、上下文信息和当前询问语句信息中主题词,并从主题-词汇矩阵中寻找主题词对应的向量,并将每句个性信息、上下文信息和当前询问语句信息的主题词向量相加并求平均,得到每句个性信息、上下文信息和当前询问语句信息的主题向量表示,并将每句个性信息、上下文信息和当前询问语句信息的主题向量表示与个性信息、上下文信息和当前询问语句信息对应的每句向量表示相结合,得到新的个性信息、上下文信息和当前询问语句信息的所有句子的向量表示和
采用新的当前询问语句信息的向量表示对新的上下文信息的向量表示进行注意力学习,得到权重αt,再采用新的当前询问语句信息的向量表示对新的上下文信息的向量表示中的向量与权重αt进行加权求和,得到相关上下文信息向量表示vC;
将新的当前查询语句信息向量表示与相关上下文信息向量表示vC拼接,利用拼接后向量对新的个性信息的向量表示进行注意力学习,得到权重αt′,再利用拼接后的向量对新的个性信息的向量表示中的向量与权重αt′进行加权求和,得到相关个性信息向量表示vP;
2.根据权利要求1所述的基于个性信息扩展和挖掘的对话生成方法,其特征是,所述基于神经网络的主题模型进行个性信息扩展的步骤包括:
引入基准数据集和个性对话数据集;
从主题模型的词表中查找个性对话数据集和基准数据集中每句个性信息的个性主题词;
采用基于神经网络的主题模型对每个个性主题词进行训练,得到主题-词汇矩阵,根据主题-词汇矩阵中每个扩展主题词对应的主题向量,计算每一个扩展主题词和对应的个性主题词的相似度,得到若干个与个性主题词相似的扩展主题词;
根据扩展主题词与个性主题词的相似度,重新排列每句个性信息的所有扩展主题词,筛选出每句个性信息的多个扩展主题词。
3.根据权利要求1所述的基于个性信息扩展和挖掘的对话生成方法,其特征是,所述对个性信息、上下文信息和当前询问语句信息进行编码的步骤包括:
采用单层循环神经网络学习每句个性信息中每个词语向量表示,得到每句个性信息的向量表示,从而学习到个性信息中所有句子的整体向量表示eP;
采用双层循环神经网络学习每句上下文信息中每个词语向量表示,得到每句上下文信息的向量表示,并根据上下文信息的句子间顺序和关系,更新每句上下文信息的向量表示,学习到上下文信息中所有句子的整体向量表示eC;
采用单层循环神经网络学习每句当前查询语句信息中每个词语向量表示,得到每句当前查询语句信息的向量表示,从而学习到当前查询语句信息中所有句子的整体向量表示eQ。
4.根据权利要求1所述的基于个性信息扩展和挖掘的对话生成方法,其特征是,所述对上下文信息、个性信息、扩展个性信息的每个词向量表示进行解码的步骤包括:
将所有信息的整体向量表示s0作为初始隐藏向量,通过门控循环网络,得到当前时刻的隐藏向量st;
采用上下文注意力机制,利用隐藏向量st对上下文信息中每一个词语向量表示进行注意力学习,产生上下文信息的注意力向量;
采用个性信息注意力机制,利用隐藏向量st对个性信息中每一个词语向量表示进行注意力学习,产生个性信息的注意力向量;
采用外部个性信息注意力机制从扩展出的个性信息中选取最相关的扩展主题词,利用隐藏向量对每一个相关的扩展主题词的主题向量表示进行注意力学习,产生外部个性信息注意力向量;
通过激活函数对上下文信息注意力向量、个性信息注意力向量和外部个性信息注意力向量进行处理,得到当前时刻目标对话回复的词语概率分布,选取词语概率分布最大的词,作为当前时刻生成的词语;
重复上述步骤,直到得到回复的句子中所有词语。
5.一种基于个性信息扩展和挖掘的对话生成系统,其特征是,该系统包括:
信息获取模块,用于获取用户的多轮对话上下文信息和个性信息,将最后一句上下文信息作为当前询问语句信息;
个性扩展模块,用于基于神经网络的主题模型进行个性信息扩展;
个性挖掘模块,用于采用双向循环神经网络分别对个性信息、上下文信息和当前询问语句信息进行编码,得到对个性信息、上下文信息和当前询问语句信息的句子向量表示;将个性信息、上下文信息和当前询问语句信息的句子向量表示进行融合,得到所有信息的整体向量表示;基于所有信息的整体表示向量,采用注意力机制分别对上下文信息、个性信息、扩展个性信息的每个词向量表示进行解码,生成目标对话回复;
所述将个性信息、上下文信息以及当前询问语句信息的句子向量表示进行融合的步骤包括:
选择每句个性信息、上下文信息和当前询问语句信息中主题词,并从主题-词汇矩阵中寻找主题词对应的向量,并将每句个性信息、上下文信息和当前询问语句信息的主题词向量相加并求平均,得到每句个性信息、上下文信息和当前询问语句信息的主题向量表示,并将每句个性信息、上下文信息和当前询问语句信息的主题向量表示与个性信息、上下文信息和当前询问语句信息对应的每句向量表示相结合,得到新的个性信息、上下文信息和当前询问语句信息的所有句子的向量表示和
采用新的当前询问语句信息的向量表示对新的上下文信息的向量表示进行注意力学习,得到权重αt,再采用新的当前询问语句信息的向量表示对新的上下文信息的向量表示中的向量与权重αt进行加权求和,得到相关上下文信息向量表示vC;
将新的当前查询语句信息向量表示与相关上下文信息向量表示vC拼接,利用拼接后向量对新的个性信息的向量表示进行注意力学习,得到权重αt′,再利用拼接后的向量对新的个性信息的向量表示中的向量与权重αt′进行加权求和,得到相关个性信息向量表示vP;
6.根据权利要求5所述的基于个性信息扩展和挖掘的对话生成系统,其特征是,所述个性扩展模块具体用于:
引入基准数据集和个性对话数据集;
从主题模型的词表中查找个性对话数据集和基准数据集中每句个性信息的个性主题词;
采用基于神经网络的主题模型对每个个性主题词进行训练,得到主题-词汇矩阵,根据主题-词汇矩阵中每个扩展主题词对应的主题向量,计算每一个扩展主题词和对应的个性主题词的相似度,得到若干个与个性主题词相似的扩展主题词;
根据扩展主题词与个性主题词的相似度,重新排列每句个性信息的所有扩展主题词,筛选出每句个性信息的多个扩展主题词。
7.根据权利要求6所述的基于个性信息扩展和挖掘的对话生成系统,其特征是,所述个性挖掘模块包括多源编码器,所述多源编码器包括上下文编码器、个性信息编码器和当前询问语句编码器,所述上下文编码器、个性信息编码器和当前询问语句编码器分别利用双向循环神经网络学习个性信息中所有句子的整体向量表示、上下文信息中所有句子的整体向量表示以及当前查询语句信息中所有句子的整体向量表示。
8.根据权利要求6所述的基于个性信息扩展和挖掘的对话生成系统,所述个性挖掘模块还包括解码器,所述解码器用于:
将所有信息的整体向量表示s0作为初始隐藏向量,通过门控循环网络,得到当前时刻的隐藏向量st;
采用上下文注意力机制,利用隐藏向量st对上下文信息中每一个词语向量表示进行注意力学习,产生上下文信息的注意力向量;
采用个性信息注意力机制,利用隐藏向量st对个性信息中每一个词语向量表示进行注意力学习,产生个性信息的注意力向量;
采用外部个性信息注意力机制从扩展出的个性信息中选取最相关的扩展主题词,利用隐藏向量对每一个相关的扩展主题词的主题向量表示进行注意力学习,产生外部个性信息注意力向量;
通过激活函数对上下文信息注意力向量、个性信息注意力向量和外部个性信息注意力向量进行处理,得到当前时刻目标对话回复的词语概率分布,选取词语概率分布最大的词,作为当前时刻生成的词语。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征是,该程序被处理器执行时实现如权利要求1-4中任一项所述的基于个性信息扩展和挖掘的对话生成方法中的步骤。
10.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征是,所述处理器执行所述程序时实现如权利要求1-4中任一项所述的基于个性信息扩展和挖掘的对话生成方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910464111.0A CN110321417B (zh) | 2019-05-30 | 2019-05-30 | 一种对话生成方法、系统、可读存储介质及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910464111.0A CN110321417B (zh) | 2019-05-30 | 2019-05-30 | 一种对话生成方法、系统、可读存储介质及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110321417A CN110321417A (zh) | 2019-10-11 |
CN110321417B true CN110321417B (zh) | 2021-06-11 |
Family
ID=68119094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910464111.0A Active CN110321417B (zh) | 2019-05-30 | 2019-05-30 | 一种对话生成方法、系统、可读存储介质及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110321417B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110737764B (zh) * | 2019-10-24 | 2023-07-07 | 西北工业大学 | 一种个性化对话内容生成方法 |
CN110795549B (zh) * | 2019-10-31 | 2023-03-17 | 腾讯科技(深圳)有限公司 | 短文本对话方法、装置、设备及存储介质 |
CN110851580B (zh) * | 2019-11-18 | 2022-05-03 | 北京邮电大学 | 一种基于结构化用户属性描述的个性化任务型对话系统 |
CN111159368B (zh) * | 2019-12-12 | 2023-04-28 | 华南理工大学 | 一种个性化对话的回复生成方法 |
CN111522917A (zh) * | 2020-04-21 | 2020-08-11 | 京东数字科技控股有限公司 | 对话情感检测方法及装置、存储介质、电子设备 |
CN111753068B (zh) * | 2020-05-27 | 2024-03-26 | 江汉大学 | 一种开放域对话回复自动生成方法、系统及存储介质 |
CN111625639B (zh) * | 2020-06-02 | 2022-07-12 | 中国人民解放军国防科技大学 | 一种基于多轮响应生成的上下文建模方法 |
CN111738017A (zh) * | 2020-06-24 | 2020-10-02 | 深圳前海微众银行股份有限公司 | 一种意图识别方法、装置、设备及存储介质 |
CN111737146B (zh) * | 2020-07-21 | 2020-11-13 | 中国人民解放军国防科技大学 | 一种用于对话系统评估的语句生成方法 |
CN112182161B (zh) * | 2020-09-30 | 2023-10-31 | 中国人民大学 | 一种基于用户对话历史的个性化对话生成方法和系统 |
CN112328756B (zh) * | 2020-10-13 | 2022-10-14 | 山东师范大学 | 基于上下文的对话生成方法及系统 |
CN112214591B (zh) * | 2020-10-29 | 2023-11-07 | 腾讯科技(深圳)有限公司 | 一种对话预测的方法及装置 |
CN112541340B (zh) * | 2020-12-18 | 2021-11-23 | 昆明理工大学 | 基于变分双主题表征的弱监督涉案微博评价对象识别方法 |
CN112948558B (zh) * | 2021-03-10 | 2022-09-20 | 中国人民解放军国防科技大学 | 面向开放域对话系统的上下文增强的问题生成方法及装置 |
CN113076078B (zh) * | 2021-03-11 | 2022-03-22 | 山东大学 | 一种基于混合驱动的对话式信息获取方法 |
CN113360610A (zh) * | 2021-05-19 | 2021-09-07 | 山东师范大学 | 基于Transformer模型的对话生成方法及系统 |
CN113436752B (zh) * | 2021-05-26 | 2023-04-28 | 山东大学 | 一种半监督的多轮医疗对话回复生成方法及系统 |
CN114386426B (zh) * | 2021-11-25 | 2023-01-13 | 北京容联易通信息技术有限公司 | 一种基于多元语义融合的金牌话术推荐方法及装置 |
CN115186147B (zh) * | 2022-05-31 | 2023-08-25 | 华院计算技术(上海)股份有限公司 | 对话内容的生成方法及装置、存储介质、终端 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823844A (zh) * | 2014-01-26 | 2014-05-28 | 北京邮电大学 | 社区问答服务中基于主客观上下文的问题转发系统和方法 |
CN106776578A (zh) * | 2017-01-03 | 2017-05-31 | 竹间智能科技(上海)有限公司 | 用于提升对话系统对话性能的方法及装置 |
CN108763504A (zh) * | 2018-05-30 | 2018-11-06 | 浙江大学 | 一种基于强化双通道序列学习的对话回复生成方法及系统 |
CN108763284A (zh) * | 2018-04-13 | 2018-11-06 | 华南理工大学 | 一种基于深度学习和主题模型的问答系统实现方法 |
CN108846077A (zh) * | 2018-06-08 | 2018-11-20 | 泰康保险集团股份有限公司 | 问答文本的语义匹配方法、装置、介质及电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180329884A1 (en) * | 2017-05-12 | 2018-11-15 | Rsvp Technologies Inc. | Neural contextual conversation learning |
-
2019
- 2019-05-30 CN CN201910464111.0A patent/CN110321417B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103823844A (zh) * | 2014-01-26 | 2014-05-28 | 北京邮电大学 | 社区问答服务中基于主客观上下文的问题转发系统和方法 |
CN106776578A (zh) * | 2017-01-03 | 2017-05-31 | 竹间智能科技(上海)有限公司 | 用于提升对话系统对话性能的方法及装置 |
CN108763284A (zh) * | 2018-04-13 | 2018-11-06 | 华南理工大学 | 一种基于深度学习和主题模型的问答系统实现方法 |
CN108763504A (zh) * | 2018-05-30 | 2018-11-06 | 浙江大学 | 一种基于强化双通道序列学习的对话回复生成方法及系统 |
CN108846077A (zh) * | 2018-06-08 | 2018-11-20 | 泰康保险集团股份有限公司 | 问答文本的语义匹配方法、装置、介质及电子设备 |
Non-Patent Citations (1)
Title |
---|
基于LDA扩展主题词库的主题爬虫研究;费晨杰等;《计算机应用与软件》;20180415;第35卷(第4期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110321417A (zh) | 2019-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110321417B (zh) | 一种对话生成方法、系统、可读存储介质及计算机设备 | |
JP7072585B2 (ja) | 文脈固有の単語ベクトルを用いた自然言語処理 | |
Song et al. | Generating responses with a specific emotion in dialog | |
US10885277B2 (en) | On-device neural networks for natural language understanding | |
Rocktäschel et al. | Reasoning about entailment with neural attention | |
CN106202010B (zh) | 基于深度神经网络构建法律文本语法树的方法和装置 | |
Sutskever et al. | Generating text with recurrent neural networks | |
CN107729311B (zh) | 一种融合文本语气的中文文本特征提取方法 | |
CN110738026A (zh) | 用于生成描述文本的方法和设备 | |
JP2018055548A (ja) | 対話装置、学習装置、対話方法、学習方法、およびプログラム | |
Nguyen et al. | From film to video: Multi-turn question answering with multi-modal context | |
Deng et al. | Foundations and Trends in Signal Processing: DEEP LEARNING–Methods and Applications | |
CN113901191A (zh) | 问答模型的训练方法及装置 | |
Lebret | Word embeddings for natural language processing | |
CN111382257A (zh) | 一种生成对话下文的方法和系统 | |
CN108363685B (zh) | 基于递归变分自编码模型的自媒体数据文本表示方法 | |
CN115186147B (zh) | 对话内容的生成方法及装置、存储介质、终端 | |
CN110297894B (zh) | 一种基于辅助网络的智能对话生成方法 | |
CN115358289A (zh) | 一种融合多类型知识库和推理技术的文本生成算法 | |
CN114896371A (zh) | 一种自然语言处理模型的训练方法和装置 | |
Zhuang et al. | An ensemble approach to conversation generation | |
Cho et al. | Non-contrastive self-supervised learning of utterance-level speech representations | |
CN113590983A (zh) | 描述文本生成方法和装置、文本处理模型的训练方法 | |
CN112115718A (zh) | 内容文本生成方法和装置、音乐评论文本生成方法 | |
CN114330701A (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 |