CN110297895B - 一种基于自由文本知识的对话方法及系统 - Google Patents

一种基于自由文本知识的对话方法及系统 Download PDF

Info

Publication number
CN110297895B
CN110297895B CN201910440182.7A CN201910440182A CN110297895B CN 110297895 B CN110297895 B CN 110297895B CN 201910440182 A CN201910440182 A CN 201910440182A CN 110297895 B CN110297895 B CN 110297895B
Authority
CN
China
Prior art keywords
knowledge
dialog
free
decoding
text knowledge
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
CN201910440182.7A
Other languages
English (en)
Other versions
CN110297895A (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.)
Shandong University
Original Assignee
Shandong University
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 Shandong University filed Critical Shandong University
Priority to CN201910440182.7A priority Critical patent/CN110297895B/zh
Publication of CN110297895A publication Critical patent/CN110297895A/zh
Application granted granted Critical
Publication of CN110297895B publication Critical patent/CN110297895B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本公开公开了一种基于自由文本知识的对话方法及系统,该方法包括:接收自由文本知识和对话上下文;分别通过知识编码器和语境编码器将自由文本知识和对话上下文编码成隐状态表示;通过混合解码器将二者的隐状态表示解码;在解码的每个时间步,通过模式转换器确定混合解码器执行模式;经过一定数量的解码时间步,直至得到由不同执行模式结果共同按序合成最终的回复序列。本公开融合了生成式与抽取式对话系统的精华,同时具备逐词生成与从文本知识中抽取相关语义单元的能力,对于系统输出的回复,信息性显著增强,同时流利性与自然性得到保障,最大化用户体验。

Description

一种基于自由文本知识的对话方法及系统
技术领域
本公开属于智能人机对话的技术领域,涉及一种基于自由文本知识的对话方法及系统。
背景技术
本部分的陈述仅仅是提供了与本公开相关的背景技术信息,不必然构成在先技术。
人机对话是研究让人可以通过人类语言(即自然语言)与计算机进行交互的一门技术。在人工智能狂潮席卷全球的今天,人机对话已经成为衡量机器智能程度的重要标杆,其重要程度不言而喻,被学术界与工业级共同聚焦。此外,人机对话的相关产品在当今也被广泛应用,已经给人类生活带来了巨大便利,主要产品应用包括虚拟助手(苹果siri、微软小娜、阿里小蜜)、闲聊软件(微软小冰)和智能音箱(亚马逊Echo、百度小度、阿里天猫精灵、Google Home)。
人机对话作为人工智能领域的终极难题之一,如何使生成的回复包含更多对用户有意义的信息是一大挑战。如果对话系统不依赖于外界知识信息,则很倾向于生成信息匮乏的无意义回复。因此,通过对人机对话系统引入自由文本形式的外界知识(例如与特定对话内容相关的一段文本),它由许多表达完整语义的单元组成(后文简称语义单元,例如实体、词组、短语)。对话系统可以实现从外界文本知识中查找、利用与对话情景相关的内容,以辅助生成更富有信息的回复,从而更好地造福于用户。
然而,发明人在研发过程中发现,当前的基于自由文本知识的对话系统存在较为严重的问题。首先,主流的采用生成式方法的对话系统缺乏有效利用自由文本知识的能力,系统只能按序列逐词生成回复,每个词可以从预先给定的词表中预测,也可以从文本知识中“拷贝”;但是这种“逐词生成”的方法经常“打碎”完整的语义单元,造成“语义失真”,丢失大量有意义的信息,这样的回复并不能给用户带来实质性的帮助。其次,有些对话系统使用抽取式方法从自由文本知识中直接抽取完整的相关语义单元作为回复;虽然这种方法可以一定程度上保障回复的信息性,但是抽取的内容与真人的回复相比,往往会让人感觉“生硬”,即缺乏流利性与自然性,这势必会降低用户体验。
发明内容
针对现有技术中存在的不足,解决当前基于自由文本知识的对话系统回复易失信息性与自然性的问题,本公开的一个或多个实施例提供了一种基于自由文本知识的对话方法及系统,有效融合生成式与抽取式对话系统,同时具备逐词生成与从文本知识中抽取相关语义单元的能力。对于系统输出的回复,信息性显著增强,同时流利性与自然性得到保障,从而最大化用户体验。
根据本公开的一个或多个实施例的一个方面,提供一种基于自由文本知识的对话方法。
一种基于自由文本知识的对话方法,该方法包括:
接收自由文本知识和对话上下文;
分别通过知识编码器和语境编码器将自由文本知识和对话上下文编码成隐状态表示;
通过混合解码器将二者的隐状态表示解码;
在解码的每个时间步,通过模式转换器确定混合解码器执行模式;
经过一定数量的解码时间步,直至得到由不同执行模式结果共同按序合成最终的回复序列。
进一步地,在该方法中,所述对话上下文为用户给定的输入和存储的对话历史。
进一步地,在该方法中,所述知识编码器采用双向循环神经网络构成;所述语境编码器采用双向循环神经网络构成;所述知识编码器和所述语境编码器不共享参数。
进一步地,在该方法中,所述混合解码器采用单向循环神经网络构成;所述通过混合解码器将二者的隐状态表示解码前将自由文本知识和对话上下文的隐状态表示输入线性变换层得到所述混合解码器的初始隐状态向量。
进一步地,在该方法中,所述执行模式包括抽取模式和生成模式;
所述抽取模式为在自由文本知识中抽取完整语义单元;
所述生成模式为生成一个词并确定执行的解码方式。
进一步地,在该方法中,所述解码方式包括预测解码和拷贝解码;
所述预测解码为从预先定义的词表中预测一个词;
所述拷贝解码为从自由文本知识中拷贝一个词。
进一步地,该方法还包括:根据训练集采用反向传播算法训练所述知识编码器、语境编码器、混合解码器和模式转换器的网络参数;使得由生成损失、抽取损失、转换器损失共同组成的损失函数最小。
根据本公开的一个或多个实施例的一个方面,提供一种计算机可读存储介质。
一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行所述的一种基于自由文本知识的对话方法。
根据本公开的一个或多个实施例的一个方面,提供一种终端设备。
一种终端设备,其包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行所述的一种基于自由文本知识的对话方法。
根据本公开的一个或多个实施例的一个方面,提供一种基于自由文本知识的对话装置。
一种基于自由文本知识的对话装置,基于所述的一种基于自由文本知识的对话方法,包括:
对话接收模块,被配置为接收自由文本知识和对话上下文;
对话编码模块,被配置为分别通过知识编码器和语境编码器将自由文本知识和对话上下文编码成隐状态表示;
对话解码模块,被配置为通过混合解码器将二者的隐状态表示解码;经过一定数量的解码时间步,直至得到由不同执行模式结果共同按序合成最终的回复序列;
解码模式确定模块,被配置为在解码的每个时间步,通过模式转换器确定混合解码器执行模式。
本公开的有益效果:
本公开提供的一种基于自由文本知识的对话方法及系统,创新地使用抽取与生成结合的方式来增强基于自由文本知识的对话系统所产生回复的流利性、自然性与信息性。相比于当前主流的生成式方法,本公开提升了系统回复所包含的信息量,从而可以为用户提供更多有价值的内容;相比于当前的抽取式方法,本公开提升了系统回复的流利性与自然性,从而显著改善了用户体验,增强了用户粘性,让用户真正感觉是在与真人对话。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。
图1是根据一个或多个实施例的一种基于自由文本知识的对话方法流程图;
图2是根据一个或多个实施例的EGNet的工作流程图;
图3是根据一个或多个实施例的EGNet的知识编码器示意图;
图4是根据一个或多个实施例的EGNet的混合解码器与模式转换器示意图。
具体实施方式:
下面将结合本公开的一个或多个实施例中的附图,对本公开的一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开的一个或多个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本实施例使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
需要注意的是,附图中的流程图和框图示出了根据本公开的各种实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分可以包括一个或多个用于实现各个实施例中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。
在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合,下面结合附图与实施例对本公开作进一步说明。
实施例一
根据本公开的一个或多个实施例的一个方面,提供一种基于自由文本知识的对话方法。
如图1所示,一种基于自由文本知识的对话方法,该方法包括:
一种基于自由文本知识的对话方法,该方法包括:
S1:接收自由文本知识和对话上下文;
S2:分别通过知识编码器和语境编码器将自由文本知识和对话上下文编码成隐状态表示;
S3:通过混合解码器将二者的隐状态表示解码;
S4:在解码的每个时间步,通过模式转换器确定混合解码器执行模式;
S5:经过一定数量的解码时间步,直至得到由不同执行模式结果共同按序合成最终的回复序列。
在本实施例中采用了目前流行的基于深度学习的编码器-解码器框架,名称为Extraction-Generation Network(简称为EGNet),其包含四个模块,分别为:知识编码器、语境编码器、模式转换器、混合解码器。其中,知识编码器、语境编码器分别把自由文本知识与对话上下文(用户给定的输入及之前的对话历史)编码成隐状态表示。之后,二者的隐状态表示会作为混合解码器的输入。在解码的每个时间步,模式转换器都会在“抽取模式”与“生成模式”之间做出选择;依据模式转换器的决定,混合编码器要么去自由文本知识中抽取一个完整语义单元(“抽取模式”),要么生成一个词(“生成模式”)。此外,在“生成模式”下,模式转换器还将进一步决定具体的解码方式,要么执行“预测解码”(从预先定义的词表中预测一个词),要么执行“拷贝解码”(从文本知识中拷贝一个词)。经过一定数量的解码时间步(每个时间步均执行模式转换器和混合解码器),我得到最终的回复序列,回复序列将由“生成模式”生成的词与“抽取模式”抽取的语义单元共同按序合成。
在本实施例中,形式化定义EGNet的初始输入与最终输出。给定由LK个词组成自由文本知识
Figure BDA0002071804590000081
给定对话上下文Cτ=(…,Xτ-3,Xτ-2,Xτ-1)(τ为对话轮数,Cτ也可表示为
Figure BDA0002071804590000082
个词组成的形式
Figure BDA0002071804590000083
),EGNet的任务是产生第τ轮的回复Xτ。其中,Xτ
Figure BDA00020718045900000810
个语义单元组成,具体为
Figure BDA0002071804590000084
本实施例假设
Figure BDA00020718045900000811
可以是一个词
Figure BDA0002071804590000085
Figure BDA0002071804590000086
也可以由n个词构成的完整语义单元
Figure BDA0002071804590000087
注意,本实施例在K与Cτ中按词为粒度划分,在回复Xτ中按语义单元为粒度划分。EGNet的具体工作流程如图2所示。
下面详细介绍EGNet的各个部分。
1.知识编码器与语境编码器部分。
对于自由文本知识K与对话上下文Cτ,本实施例使用由双向循环神经网络(bi-directional RNN)构成的知识编码器与语境编码器来获取知识的隐状态序列
Figure BDA0002071804590000088
与对话上下文的隐状态序列
Figure BDA0002071804590000089
Figure BDA0002071804590000091
Figure BDA0002071804590000092
其中,
Figure BDA0002071804590000093
与e(kt)分别为t时刻来自对话上下文和自由文本知识的词
Figure BDA0002071804590000094
与kt所对应的词嵌入向量。
Figure BDA0002071804590000095
Figure BDA0002071804590000096
分别为前二者所对应的隐状态向量。此外,两个编码器不共享参数,本实施例以知识编码器为例,具体的网络结构如图3所示(语境编码器与其网络结构相同,此处略去表示)。
2.混合解码器与模式转换器部分。
使用单向循环神经网络(RNN)构成混合解码器,如图4所示。为了初始化混合解码器,本实施例首先使用一个线性变换层得到混合解码器的初始隐状态向量s0。具体而言,本实施例分别取得文本知识的隐状态序列Hk与对话上下文的隐状态序列
Figure BDA0002071804590000097
的最后一个隐状态向量
Figure BDA0002071804590000098
Figure BDA0002071804590000099
将二者作为线性变换层的输入:
Figure BDA00020718045900000910
其中,Ws与bs为可训练的参数,relu为线性变换层的激活函数。[;]表示向量的拼接。
因为解码过程是一个多时间步的循环过程,本实施例接下来推广到混合编码器在第t个解码时间步的详细计算流程。给定隐状态向量st,本实施例首先用st分别对Hk
Figure BDA00020718045900000911
执行注意力机制得到对应的注意力分布
Figure BDA00020718045900000912
与注意力向量
Figure BDA00020718045900000913
Figure BDA00020718045900000914
Figure BDA00020718045900000915
Figure BDA00020718045900000916
为例,其计算过程为:
Figure BDA00020718045900000917
Figure BDA0002071804590000101
Figure BDA0002071804590000102
其中,Wk、Uk、vk与bk为可训练的参数,tanh为激活函数。
Figure BDA0002071804590000103
为概率分布
Figure BDA0002071804590000104
在自由文本知识词ki上的注意力概率。
Figure BDA0002071804590000105
的计算方式与
Figure BDA0002071804590000106
相同。
然后,本实施例计算在第t个解码时间步模式转换器在“抽取模式”上的选择概率P(e)与在“生成模式”上的选择概率P(g):
Figure BDA0002071804590000107
[P(e),P(gp),P(gc)]=softmax(ft) (8)
其中,ft为混合向量,Wf与bf为可训练的参数。P(gp)、P(gc)分别为“预测解码”与“拷贝解码”的概率,它们满足P(g)=P(gp)+P(gc)。本实施例依据第t个解码时间步计算所得的P(e)与P(g)的数值大小进行模式选择:如果P(e)≥P(g),本实施例将执行“抽取模式”输出一个完整语义单元;如果P(e)<P(g),本实施例将执行“生成模式”输出一个词。
在执行具体模式之前,系统将会计算输出向量ot:
Figure BDA0002071804590000108
其中,Wo与bo为可训练的参数。输出向量ot将参与“抽取模式”与“生成模式”内部的具体计算。
如果执行“抽取模式”,本实施例首先使用输出向量ot对自由文本知识的隐状态序列Hk执行注意力机制,得到在自由文本知识词序列上的注意力概率分布
Figure BDA0002071804590000111
本实施例假设系统将要从自由文本知识中抽取的语义单元
Figure BDA0002071804590000112
的起始词
Figure BDA0002071804590000113
与终止词
Figure BDA0002071804590000114
(通过预测起始词的方式来定位语义单元)在
Figure BDA0002071804590000115
中分别对应的概率为
Figure BDA0002071804590000116
Figure BDA0002071804590000117
Figure BDA0002071804590000118
Figure BDA0002071804590000119
Figure BDA00020718045900001110
其中,We、Ue、ve与be为可训练的参数。由此本实施例得到在“抽取模式”的条件下从自由文本知识中抽取一个语义单元的概率:
Figure BDA00020718045900001111
综上,本实施例最终得到
Figure BDA00020718045900001112
在“抽取模式”中产生的概率:
Figure BDA00020718045900001113
本实施例要保证抽取出的语义单元使得
Figure BDA00020718045900001114
最大。为实现这个目标,本实施例直接从分布
Figure BDA00020718045900001115
中取最大的两个概率值,其二者位置在前的作为
Figure BDA00020718045900001116
对应起始词
Figure BDA00020718045900001117
位置在后的作为
Figure BDA00020718045900001118
对应终止词
Figure BDA00020718045900001119
Figure BDA00020718045900001120
Figure BDA00020718045900001121
及两者中间的内容作为最终抽取的内容。
如果执行“生成模式”,在“预测解码”的条件下,本实施例得到词
Figure BDA0002071804590000121
在预先定义的词表中的预测概率:
Figure BDA0002071804590000122
其中,Wgp与bgp为可训练的参数,vT是一个独热(one-hot)指示向量,向量的第j个元素对应词表中的第j个词vj,满足
Figure BDA0002071804590000123
的第j个向量元素的值为1,其余元素为0。在“拷贝解码”的条件下,本实施例得词
Figure BDA0002071804590000124
在自由文本知识中的拷贝概率:
Figure BDA0002071804590000125
其中,
Figure BDA0002071804590000126
的详细计算过程见公式(5)。综上,本实施例最后将上面两组概率组合得到
Figure BDA0002071804590000127
在“生成模式”中产生的概率:
Figure BDA0002071804590000128
本实施例取
Figure BDA0002071804590000129
概率最大时所对应的
Figure BDA00020718045900001210
作为t时间步的生成词。
至此,第t个时间步计算结束,本实施例将更新得到第t+1个时间步的解码器状态st+1开始新一轮循环,假设在第t个解码时间步输出为词的情况下
Figure BDA00020718045900001211
得:
Figure BDA00020718045900001212
如果第t个解码时间步输出为语义单元
Figure BDA00020718045900001213
那么对语义单元中的n个词
Figure BDA00020718045900001214
本实施例依次执行公式(18),取最后一次执行(即
Figure BDA00020718045900001215
作为输入)所得的解码器隐状态为st+1
从解码器时间步将持续进行
Figure BDA00020718045900001216
次,循环在每一个解码器时间步,本实施例要么输出一个词要么输出一个语义单元。每一步输出的内容按序组成完整的最终回复Xτ
EGNet在应用前,需要在训练集上学习网络参数。训练集可从互联网上进行爬取,也可以通过众包的方式构建数据集。对于训练,我本实施例的目标是在给定自由文本知识K与对话上下文Cτ的条件下,最大化目标回复Xτ的产出概率。本实施例定义了三个损失函数,分别为:生成损失、抽取损失、转换器损失。
本实施例定义生成损失Lg(θ):
Figure BDA0002071804590000131
其中,θ为EGNet中的所有参数,M对应一个特定的自由文本知识所对应的训练集的实例数(需要预测的回复轮数)。对于Lg(θ),本实施例按词的粒度进行训练。
本实施例定义抽取损失Le(θ):
Figure BDA0002071804590000132
其中,
Figure BDA0002071804590000133
是一个指示函数,如果
Figure BDA0002071804590000134
则其值为1,若
Figure BDA0002071804590000135
则其值为0。注意,在训练时,本实施例已知第t个解码时间步要输出的
Figure BDA0002071804590000136
是一个词还是一个完整语义单元:如果
Figure BDA0002071804590000137
Figure BDA0002071804590000138
将被交由“抽取模式”产生。
因为EGNet引入了模式转换器,其需要在“抽取模式”与“生成模式”之间做出选择。为了更好的对模式转换器进行监督训练,本实施例定义了Ls(θ):
Figure BDA0002071804590000141
其中,
Figure BDA0002071804590000142
也是一个指示函数,同公式(20)。
本实施例得到最终的损失函数L(θ):
L(θ)=Lg(θ)+Le(θ)+Ls(θ) (22)
随后本实施例用深度学习常用的反向传播算法(简称为BP算法)对EGNet的所有参数以及词嵌入矩阵更新以减小损失。EGNet训练完毕后,参数便全部固定,然后就可以应用到与用户多轮对话的实际场景中去。实现根据用户对话的上下文与给定的自由文本知识,以抽取与生成结合的方式输出流利、自然、富含大量信息的回复。
实施例二
根据本公开的一个或多个实施例的一个方面,提供一种计算机可读存储介质。
一种计算机可读存储介质,其中存储有多条指令,所述指令适于由终端设备的处理器加载并执行所述的一种基于自由文本知识的对话方法。
实施例三
根据本公开的一个或多个实施例的一个方面,提供一种终端设备。
一种终端设备,其包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,所述指令适于由处理器加载并执行所述的一种基于自由文本知识的对话方法。
这些计算机可执行指令在设备中运行时使得该设备执行根据本公开中的各个实施例所描述的方法或过程。
在本实施例中,计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
本文所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开内容操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开内容的各个方面。
实施例四
根据本公开的一个或多个实施例的一个方面,提供一种基于自由文本知识的对话装置。
一种基于自由文本知识的对话装置,基于所述的一种基于自由文本知识的对话方法,包括:
对话接收模块,被配置为接收自由文本知识和对话上下文;
对话编码模块,被配置为分别通过知识编码器和语境编码器将自由文本知识和对话上下文编码成隐状态表示;
对话解码模块,被配置为通过混合解码器将二者的隐状态表示解码;经过一定数量的解码时间步,直至得到由不同执行模式结果共同按序合成最终的回复序列;
解码模式确定模块,被配置为在解码的每个时间步,通过模式转换器确定混合解码器执行模式。
应当注意,尽管在上文的详细描述中提及了设备的若干模块或子模块,但是这种划分仅仅是示例性而非强制性的。实际上,根据本公开的实施例,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
本公开的有益效果是:
本公开创新地使用抽取与生成结合的方式来增强基于自由文本知识的对话系统所产生回复的流利性、自然性与信息性。相比于当前主流的生成式方法,本公开提升了系统回复所包含的信息量,从而可以为用户提供更多有价值的内容;相比于当前的抽取式方法,本公开提升了系统回复的流利性与自然性,从而显著改善了用户体验,增强了用户粘性,让用户真正感觉是在与真人对话。综上所述,因为创新性的方法所带来的效果提升,本公开可以取代大量现用对话系统,并可以大规模嵌入并应用于私人助理、闲聊机器人、智能音箱中,在人工智能席卷全球的今天,拥有较大的商业应用价值。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。因此,本公开将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (9)

1.一种基于自由文本知识的对话方法,其特征在于,该方法包括:
接收自由文本知识和对话上下文;
分别通过知识编码器和语境编码器将自由文本知识和对话上下文编码成隐状态表示;
通过混合解码器将二者的隐状态表示解码;
在解码的每个时间步,通过模式转换器确定混合解码器执行模式;
所述执行模式包括抽取模式和生成模式;
所述抽取模式为在自由文本知识中抽取完整语义单元;
所述生成模式为生成一个词并确定执行的解码方式;
混合编码器去自由文本知识中抽取一个完整语义单元,或者生成一个词;
经过解码时间步,直至得到由不同执行模式结果共同按序合成最终的回复序列;回复序列由“生成模式”生成的词与“抽取模式”抽取的语义单元共同按序合成。
2.如权利要求1所述的一种基于自由文本知识的对话方法,其特征在于,在该方法中,所述对话上下文为用户给定的输入和存储的对话历史。
3.如权利要求1所述的一种基于自由文本知识的对话方法,其特征在于,在该方法中,所述知识编码器采用双向循环神经网络构成;所述语境编码器采用双向循环神经网络构成;所述知识编码器和所述语境编码器不共享参数。
4.如权利要求1所述的一种基于自由文本知识的对话方法,其特征在于,在该方法中,所述混合解码器采用单向循环神经网络构成;所述通过混合解码器将二者的隐状态表示解码前将自由文本知识和对话上下文的隐状态表示输入线性变换层得到所述混合解码器的初始隐状态向量。
5.如权利要求1所述的一种基于自由文本知识的对话方法,其特征在于,在该方法中,所述解码方式包括预测解码和拷贝解码;
所述预测解码为从预先定义的词表中预测一个词;
所述拷贝解码为从自由文本知识中拷贝一个词。
6.如权利要求1所述的一种基于自由文本知识的对话方法,其特征在于,该方法还包括:根据训练集采用反向传播算法训练所述知识编码器、语境编码器、混合解码器和模式转换器的网络参数;使得由生成损失、抽取损失、转换器损失共同组成的损失函数最小。
7.一种计算机可读存储介质,其中存储有多条指令,其特征在于,所述指令适于由终端设备的处理器加载并执行如权利要求1-6任一项所述的一种基于自由文本知识的对话方法。
8.一种终端设备,其包括处理器和计算机可读存储介质,处理器用于实现各指令;计算机可读存储介质用于存储多条指令,其特征在于,所述指令适于由处理器加载并执行如权利要求1-6任一项所述的一种基于自由文本知识的对话方法。
9.一种基于自由文本知识的对话装置,其特征在于,基于如权利要求1-6任一项所述的一种基于自由文本知识的对话方法,包括:
对话接收模块,被配置为接收自由文本知识和对话上下文;
对话编码模块,被配置为分别通过知识编码器和语境编码器将自由文本知识和对话上下文编码成隐状态表示;
对话解码模块,被配置为通过混合解码器将二者的隐状态表示解码;经过解码时间步,直至得到由不同执行模式结果共同按序合成最终的回复序列;
解码模式确定模块,被配置为在解码的每个时间步,通过模式转换器确定混合解码器执行模式。
CN201910440182.7A 2019-05-24 2019-05-24 一种基于自由文本知识的对话方法及系统 Active CN110297895B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910440182.7A CN110297895B (zh) 2019-05-24 2019-05-24 一种基于自由文本知识的对话方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910440182.7A CN110297895B (zh) 2019-05-24 2019-05-24 一种基于自由文本知识的对话方法及系统

Publications (2)

Publication Number Publication Date
CN110297895A CN110297895A (zh) 2019-10-01
CN110297895B true CN110297895B (zh) 2021-09-17

Family

ID=68027180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910440182.7A Active CN110297895B (zh) 2019-05-24 2019-05-24 一种基于自由文本知识的对话方法及系统

Country Status (1)

Country Link
CN (1) CN110297895B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309883B (zh) * 2020-02-13 2023-08-08 腾讯科技(深圳)有限公司 基于人工智能的人机对话方法、模型训练方法及装置
CN113495943B (zh) * 2020-04-02 2023-07-14 山东大学 一种基于知识追踪与转移的人机对话方法
CN113436752B (zh) * 2021-05-26 2023-04-28 山东大学 一种半监督的多轮医疗对话回复生成方法及系统
CN117786092B (zh) * 2024-02-27 2024-05-14 成都晓多科技有限公司 一种商品评论关键短语提取方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933804A (zh) * 2017-03-10 2017-07-07 上海数眼科技发展有限公司 一种基于深度学习的结构化信息抽取方法
CN107506823A (zh) * 2017-08-22 2017-12-22 南京大学 一种用于对话生成的混合神经网络模型的构建方法
CN107885853A (zh) * 2017-11-14 2018-04-06 同济大学 一种基于深度学习的组合式文本分类方法
CN108280218A (zh) * 2018-02-07 2018-07-13 逸途(北京)科技有限公司 一种基于检索和生产混合问答的流程系统
CN108304911A (zh) * 2018-01-09 2018-07-20 中国科学院自动化研究所 基于记忆神经网络的知识抽取方法以及系统和设备
CN108763504A (zh) * 2018-05-30 2018-11-06 浙江大学 一种基于强化双通道序列学习的对话回复生成方法及系统
CN108829667A (zh) * 2018-05-28 2018-11-16 南京柯基数据科技有限公司 一种基于记忆网络的多轮对话下的意图识别方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10091140B2 (en) * 2015-05-31 2018-10-02 Microsoft Technology Licensing, Llc Context-sensitive generation of conversational responses
CN108304513B (zh) * 2018-01-23 2020-08-11 义语智能科技(上海)有限公司 增加生成式对话模型结果多样性的方法及设备
CN108153913B (zh) * 2018-01-24 2020-08-07 鼎富智能科技有限公司 回复信息生成模型的训练方法、回复信息生成方法及装置
CN108491514B (zh) * 2018-03-26 2020-12-01 清华大学 对话系统中提问的方法及装置、电子设备、计算机可读介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933804A (zh) * 2017-03-10 2017-07-07 上海数眼科技发展有限公司 一种基于深度学习的结构化信息抽取方法
CN107506823A (zh) * 2017-08-22 2017-12-22 南京大学 一种用于对话生成的混合神经网络模型的构建方法
CN107885853A (zh) * 2017-11-14 2018-04-06 同济大学 一种基于深度学习的组合式文本分类方法
CN108304911A (zh) * 2018-01-09 2018-07-20 中国科学院自动化研究所 基于记忆神经网络的知识抽取方法以及系统和设备
CN108280218A (zh) * 2018-02-07 2018-07-13 逸途(北京)科技有限公司 一种基于检索和生产混合问答的流程系统
CN108829667A (zh) * 2018-05-28 2018-11-16 南京柯基数据科技有限公司 一种基于记忆网络的多轮对话下的意图识别方法
CN108763504A (zh) * 2018-05-30 2018-11-06 浙江大学 一种基于强化双通道序列学习的对话回复生成方法及系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Neural Network Approaches to Dialog Response Retrieval and Generation;L Nio 等;《IEICE Transactions on Information and Systems》;20161031;2508-2517 *
基于动态主题建模的Web论坛文档摘要;任昭春 等;《计算机研究与发展》;20121115;2359-2367 *
基于深度学习的交互式问答技术研究;周小强;《中国博士学位论文全文数据库 信息科技辑》;20190115(第1期);I138-221 *
基于混合深度信念网络的多类文本表示与分类方法;翟文洁 等;《情报工程》;20161031;第2卷(第5期);30-40 *

Also Published As

Publication number Publication date
CN110297895A (zh) 2019-10-01

Similar Documents

Publication Publication Date Title
CN110297895B (zh) 一种基于自由文本知识的对话方法及系统
US11222252B2 (en) Generating representations of input sequences using neural networks
CN110032633B (zh) 多轮对话处理方法、装置和设备
CN110326002B (zh) 使用在线注意的序列处理
CN110222164B (zh) 一种问答模型训练方法、问题语句处理方法、装置及存储介质
CN110473516B (zh) 语音合成方法、装置以及电子设备
US20170140753A1 (en) Generating target sequences from input sequences using partial conditioning
CN110619867B (zh) 语音合成模型的训练方法、装置、电子设备及存储介质
CN112487173B (zh) 人机对话方法、设备和存储介质
CN107729329A (zh) 一种基于词向量连接技术的神经机器翻译方法及装置
CN112509552B (zh) 语音合成方法、装置、电子设备和存储介质
CN110457661B (zh) 自然语言生成方法、装置、设备及存储介质
Chi et al. Speaker role contextual modeling for language understanding and dialogue policy learning
CN113239157B (zh) 对话模型的训练方法、装置、设备和存储介质
CN112307188B (zh) 对话生成方法、系统、电子设备和可读存储介质
WO2022142823A1 (zh) 人机对话方法、装置、计算机设备及可读存储介质
CN115640520B (zh) 跨语言跨模态模型的预训练方法、设备和存储介质
CN110782871A (zh) 一种韵律停顿预测方法、装置以及电子设备
CN112861548A (zh) 自然语言生成及模型的训练方法、装置、设备和存储介质
CN112786108A (zh) 分子理解模型的训练方法、装置、设备和介质
CN112364148A (zh) 一种基于深度学习方法的生成型聊天机器人
CN110913229B (zh) 基于rnn的解码器隐状态确定方法、设备和存储介质
CN115186147A (zh) 对话内容的生成方法及装置、存储介质、终端
JP7121791B2 (ja) 言語生成方法、装置及び電子機器
CN112434143B (zh) 基于gru单元隐藏状态约束的对话方法、存储介质及系统

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