CN110413752A - 基于对话逻辑的多轮口语理解方法、***、装置 - Google Patents
基于对话逻辑的多轮口语理解方法、***、装置 Download PDFInfo
- Publication number
- CN110413752A CN110413752A CN201910661448.0A CN201910661448A CN110413752A CN 110413752 A CN110413752 A CN 110413752A CN 201910661448 A CN201910661448 A CN 201910661448A CN 110413752 A CN110413752 A CN 110413752A
- Authority
- CN
- China
- Prior art keywords
- data
- speech understanding
- vector
- wheel
- dialog
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 103
- 230000007246 mechanism Effects 0.000 claims abstract description 30
- 238000013528 artificial neural network Methods 0.000 claims abstract description 20
- 230000002457 bidirectional effect Effects 0.000 claims abstract description 20
- 230000000306 recurrent effect Effects 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 37
- 239000011159 matrix material Substances 0.000 claims description 13
- 238000005457 optimization Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 13
- 238000012549 training Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 6
- 230000009466 transformation Effects 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 4
- 230000017105 transposition Effects 0.000 claims description 3
- 230000002452 interceptive effect Effects 0.000 abstract description 4
- 230000010387 memory retrieval Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 241000208340 Araliaceae Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
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/35—Clustering; Classification
-
- 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
-
- 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/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24147—Distances to closest patterns, e.g. nearest neighbour classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Machine Translation (AREA)
Abstract
本发明属于人机对话技术领域,具体涉及一种基于对话逻辑的多轮口语理解方法、***、装置,旨在解决现有多轮口语理解方法对历史对话数据利用率低的问题。本***方法包括获取当前对话数据、历史对话数据;通过双向门控循环神经网络,分别将当前对话数据和历史对话数据编码成输入向量和记忆向量;根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量;基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息。本发明可以在多轮口语理解中对历史对话数据高效的利用,提升语言理解在多轮场景下的性能。
Description
技术领域
本发明属于人机对话技术领域,具体涉及一种基于对话逻辑的多轮口语理解方法、***、装置。
背景技术
任务型对话***是在某一特定领域(餐馆、酒店或机票等领域),通过自然语言交互的形式,辅助用户完成任务的人机交互***。任务型对话***需要具有如下四个基本功能:口语理解、对话状态跟踪、对话策略和对话生成。其中,口语理解(Spoken LanguageUnderstanding,SLU)作为整个***的入口,是非常重要的技术模块,主要任务是在人机交互的对话***限定的语境中理解话语的含义,它通常包括领域分类、用户意图检测和语义槽填充三个子任务,也有一些***把领域分类和意图检测合并处理。
传统的SLU通常是给定当前用户输入,进行解析,即为单轮语言理解。但实际中,用户通常需要与对话***进行多轮交互才能完成一个完整的对话任务,虽然多轮对话可以拆分成多个单轮对话,然后分别解析,但这样没有考虑语境关系,即上下文,而这种语境信息对于解决一些对话内的共指、歧义、话题跳转等问题尤为重要。因此,多轮语言理解的研究具有很高的研究价值。
如何从模型层面对给定数据进行更高效的利用,提升语言理解模块在多轮场景下的性能,是一个非常具有挑战性的任务。目前的已有的方法主要是采用记忆网络来对对话历史进行建模,提高多轮口语理解,但这些研究关于对话语境的建模还很初步,只是利用SLU训练目标来优化记忆网络的语境记忆,没有充分挖掘对话历史信息的价值。
发明内容
为了解决现有技术中的上述问题,即为了解决现有多轮口语理解方法对历史对话数据利用率低的问题,本发明第一方面,提出了一种基于对话逻辑的多轮口语理解的方法,该方法包括:
步骤S10,获取口语理解数据集;所述口语理解数据集包括当前对话数据、历史对话数据;
步骤S20,通过双向门控循环神经网络,分别将所述当前对话数据和所述历史对话数据编码成输入向量和记忆向量;
步骤S30,根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量;
步骤S40,基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息;
其中,
所述基于注意力机制的记忆检索方法为基于注意力机制得到输入向量的权重对记忆向量进行加权求和,生成语境知识向量的方法;
所述多轮口语理解模型基于层叠式的双向循环神经网络构建,用于基于当前对话数据及其对应的语境知识向量获取当前对话数据的意图分类信息和语义槽填充信息。
在一些优选的实施方式中,步所述多轮口语理解模型在训练过程中基于对话逻辑进行优化,其优化具体步骤为:
获取口语理解数据集中每条数据对应的对话逻辑推理数据;
根据多轮口语理解模型中的语境知识向量、预设维度变换的权重矩阵,采用softmax函数构建对话逻辑推理模型;
基于多轮口语理解模型的意图分类和语义槽填充、所述对话逻辑推理数据,根据联合优化损失函数对多轮口语理解模型、对话逻辑推理模型进行优化训练;
其中,
所述联合优化损失函数为将预设的多轮口语理解模型的损失函数、预设的对话逻辑推理模型的损失函数按照预设权重系数权重相加后构成的损失函数。
在一些优选的实施方式中,所述层叠式的双向循环神经网络,其包括BiGRU层、BiLSTM层;所述BiGRU层用于对所述当前对话数据进行编码;所述BiLSTM层用于在每个时间步当中,将当前对话数据的编码和语境知识向量进行拼接,并对拼接后的数据进行编码。
在一些优选的实施方式中,步骤S30中“通过基于注意力机制的记忆检索方法生成语境知识向量”,其方法为:
h=Wo(c+mws)
pi=softmax(cTmi)
其中,pi是记忆向量mi的注意力权重,c为输入向量,T为矩阵转置操作,mws为输入向量的语境表示,h为语境知识向量,Wo为权重矩阵,i为自然数。
在一些优选的实施方式中,“多轮口语理解数据集中每条数据生成其对应的对话逻辑推理数据”,其生成方法为:
获取多轮口语理解数据集,将该数据集中的每条数据随机排序;
将排序好的每条口语理解数据按照其数据索引与预设的候选数据索引进行对比,并根据是否相等进行1/0标注,进而得到对应的对话逻辑推理数据。
在一些优选的实施方式中,所述对话逻辑推理模型其计算对话逻辑推理数据的概率的方法为:
P(xj|x1,...,xk)=softmax(Wdh)
其中,Wd为预设维度变换的权重矩阵,x1,...,xk为历史对话数据,xj为当前对话数据,k,j为自然数,P为概率值。
在一些优选的实施方式中,所述联合优化损失函数为:
L=(1-λ)LSLU+λLDLI
其中,L为联合优化损失函数,LSLU为多轮口语理解模型的损失函数,LDLI为对话逻辑推理模型的损失函数,λ为预设的超参数。
本发明的第二方面,提出了一种基于对话逻辑的多轮口语理解的***,该***包括获取模块、编码模块、生成模块、输出模块;
所述的获取模块,配置为获取口语理解数据集;所述口语理解数据集包括当前对话数据、历史对话数据;
所述的编码模块,配置为通过双向门控循环神经网络,分别将所述当前对话数据和所述历史对话数据编码成输入向量和记忆向量;
所述的生成模块,配置为根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量;
所述的输出模块,配置基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息;
其中,
所述基于注意力机制的记忆检索方法为基于注意力机制得到输入向量的权重对记忆向量进行加权求和,生成语境知识向量的方法;
所述多轮口语理解模型基于层叠式的双向循环神经网络构建,用于基于当前对话数据及其对应的语境知识向量获取当前对话数据的意图分类信息和语义槽填充信息。
本发明的第三方面,提出了一种存储装置,其中存储有多条程序,所述程序应用由处理器加载并执行以实现上述的基于对话逻辑的多轮口语理解方法。
本发明的第四方面,提出了一种处理设置,包括处理器、存储装置;处理器,适用于执行各条程序;存储装置,适用于存储多条程序;所述程序适用于由处理器加载并执行以实现上述的基于对话逻辑的多轮口语理解方法。
本发明的有益效果:
本发明可以在多轮口语理解中对历史对话数据高效的利用,提升语言理解在多轮场景下的性能。本发明提供的基于对话逻辑的多轮口语理解方法在训练过程通过对话逻辑推理任务对多轮口语理解模型进行优化,提升口语理解在多轮场景下的性能;基于双向循环神经网络对当前对话数据和历史对话数据进行编码,将当前对话数据和历史对话数据串联起来,考虑语境关系,即上下文,解决对话内的共指、歧义、话题跳转等问题;通过基于注意力机制的记忆检索方法生成语境知识向量,并通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息,充分挖掘对话历史信息的价值,对给定历史数据进行更高效的利用。
附图说明
通过阅读参照以下附图所做的对非限制性实施例所做的详细描述,本申请的其他特征、目的和优点将会变得更明显。
图1是本发明一种实施例的基于对话逻辑的多轮口语理解方法的流程示意图;
图2是本发明一种实施例的基于对话逻辑的多轮口语理解方法的框架示意图;
图3是本发明一种实施例的预设超参数对语义槽识别F1值与意图检测的正确率的影响的示例图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明的基于对话逻辑的多轮口语理解方法,如图1所示,包括以下步骤:
步骤S10,获取口语理解数据集;所述口语理解数据集包括当前对话数据、历史对话数据;
步骤S20,通过双向门控循环神经网络,分别将所述当前对话数据和所述历史对话数据编码成输入向量和记忆向量;
步骤S30,根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量;
步骤S40,基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息;
其中,
所述基于注意力机制的记忆检索方法为基于注意力机制得到输入向量的权重对记忆向量进行加权求和,生成语境知识向量的方法;
所述多轮口语理解模型基于层叠式的双向循环神经网络构建,用于基于当前对话数据及其对应的语境知识向量获取当前对话数据的意图分类信息和语义槽填充信息。
为了更清晰地对本发明基于对话逻辑的多轮口语理解方法进行说明,下面结合附图对本发明方法一种实施例中各步骤进行展开详述。
步骤S10,获取口语理解数据集;所述口语理解数据集包括当前对话数据、历史对话数据。
在本实施例中,优选通过包含有对话***的电子设备或应用平台或与应用平台通信连接的终端设备获得多轮口语理解训练数据。电子设备可以是任务型对话***中对口语理解数据处理或任务控制的服务器。
具体地,在人机交互的对话***中,具有口语理解功能的模块获取用户通过语音识别模块输入的口语理解数据,并提取出该对话***限定的语境中所输入的口语理解数据的语义。在一些交互领域(如餐馆订餐、酒店服务或机票订购领域),通过自然语言交互的形式,辅助用户完成人机交互。在人机交互的任务型对话***中,对话***结合对话历史,构造多轮口语理解模型。其中,多轮对话数据包括该次人机交互从开始到结束的全部对话数据。
在本实施例中,所述口语理解数据集包括当前对话数据、历史对话数据。
步骤S20,通过双向门控循环神经网络,分别将所述当前对话数据和所述历史对话数据编码成输入向量和记忆向量。
为了表示与存储历史对话数据{x1,x2,...xk},本实施例中,用双向门控循环神经网络,其结构为两个BiGRU层,一层BiGRU把历史对话数据编码成记忆向量M={m1,m2,...mk},然后用了另外一层BiGRU去把当前对话数据xk+1编码成输入向量c,其编码过程如公式(1)(2)所示:
mi=BiGRUm(xi) (1)
c=BiGRUc(xk+1) (2)
其中,xi为对话历史数据,mi为记忆向量,BiGRUm表示对历史对话数据编码的BiGRU层,BiGRUc表示对当前对话数据编码的BiGRU层,i、k为自然数,表示下标。
步骤S30,根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量。
在本实施例中,把历史对话数据编码成记忆向量的过程即为记忆编码(MemoryEncoding)。根据用户当前对话数据xk+1从历史对话数据中进行回忆、检索到相关信息,生成语境知识表示的过程即为记忆检索(Memory Retrieval)。
目前,有两种较为常见的检索方法:基于注意力机制的记忆检索与基于序列编码的记忆检索。
本实施例中,“基于注意力机制的记忆检索方法”可以参考Yun-NungDilek Hakkani-T¨ur,Gokhan Tur,Jianfeng Gao,and Li Deng,“End-to-End MemoryNetworks with Knowledge Carryover for Multi-Turn Spoken LanguageUnderstanding”,September 2016。具体参考文献中的Knowledge AttentionDistribution和Knowledge Encoding Representatio部分,此处不再详述。
“基于序列编码的记忆检索方法”可以参考Ankur Bapna,Gokhan Tur,DilekHakkani-Tur,Larry Heck,“Sequential Dialogue Context Modeling for SpokenLanguage Understanding”,May 2017。具体参考文献中的SequentialDialogueEncoderNetwork部分,此处不再详述。
基于注意力机制的记忆检索方法为基于注意力机制得到输入向量的权重对记忆向量进行加权求和,生成语境知识向量的方法,具体步骤如下:
基于注意力机制的记忆检索方法首先计算输入向量c关于记忆向量M的注意力分布,然后通过M的加权和来作为关于当前输入的语境表示,计算过程如公式(3)(4)表示:
pi=softmax(cTmi) (3)
其中,pi是记忆向量mi的注意力权重,T为矩阵转置操作,mws为输入向量的语境表示。
mws进一步和输入向量c进行相加,然后再乘以权重矩阵Wo来生成语境知识向量h,具体计算如公式(5)所示:
h=Wo(c+mws) (5)
在基于序列编码的记忆检索方法中,语境知识向量h的计算方法略有不同。该方法首先把每个记忆向量与输入向量进行拼接,然后通过一个全连接层输出初步的语境知识表示,然后再利用一个BiGRU层对这些初步表示进行再次编码,获得最终的语境知识向量h,具体计算公式如(6)(7)所示:
gi=sigmoid(FF([c;mi])) (6)
h=BiGRUg([g1,g2,...,gk]) (7)
其中,FF是一个全连接层,gi为基于序列编码的记忆检索方法中的语境知识表示,BiGRUg表示基于序列编码的记忆检索方法中编码的BiGRU层。
在本实施例中,优选基于注意力机制的记忆检索方法,根据所述输入向量、所述记忆向量,生成语境知识向量。在其他实施例中,可以选择基于序列编码的记忆检索方法或其他方法生成语境知识向量。
步骤S40,基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息。
在本实例中,多轮口语理解模型基于层叠式的双向循环神经网络构建,层叠式的双向神经网络其结构为:一个BiGRU层加上一个BiLSTM层。传统的方法只是用h来初始化BiLSTM的隐状态,这是一种较为低效的使用语境知识的方法。本发明中把h拼接到第二层也就是BiLSTM的每个时间步中,其计算过程如公式(8)(9)所示:
O1=BiGRU1(xk+1) (8)
O2=BiLSTM2([O1;h]) (9)
其中,BiGRU1表示双向循环神经网络第一层为BiGRU,是第一层BiGRU的输出,m是当前对话数据xk+1的长度,BiLSTM2表示双向循环神经网络第二层为BiLSTM,负责把编码,得到最终的隐状态和输出值 为双向神经网络中的前向表示,为双向神经网络中的后向表示,s2与O2可被分别用于意图分类Pi与语义槽填充如公式(10)所示:
其中,U和V是输出层的权重矩阵,t是当前对话数据xk+1中每个变量的索引。
所述多轮口语理解模型在训练过程中,基于对话逻辑对该模型进行优化,其优化具体步骤为:
步骤A41,获取口语理解数据集中每条数据对应的对话逻辑推理数据。
获取方法为:基于一条完整的多轮口语理解数据X={x1,x2,...xn},其中xi是该条多轮对话中的第i个数据即句子,n为该条对话数据X所包含的句子数目。首先把X随机打乱成X′,对话逻辑推理任务是给定已排好顺序的若干上文和若干候选句子,选出正确的当前句。训练数据可以按照如下方式进行自动标注,其方法如公式(11)所示:
其中,k+1是当前输入句的索引,j为遍历集合random(range(k+1,n))的索引,x1,...,xk为历史对话数据,xj为当前待标注数据,k,j为自然数,Y为标注标签。
公式(11)中标注完成的数据即对话逻辑推理数据。
步骤A42,通过多轮口语理解模型中的记忆编码模块与记忆检索模块,构建对话逻辑推理模型。
通过多轮口语理解模型中的记忆编码模块与记忆检索模块,即多轮口语理解模型中的语境知识向量、预设维度变换的权重矩阵,采用二维的softmax函数构建对话逻辑推理模型,即二分类器作为对话逻辑推理模型,使用所述对话逻辑推理模型估计上述对话逻辑推理数据的概率,其计算方法如公式(12)所示:
P(xj|x1,...,xk)=softmax(Wdh) (12)
其中,Wd为维度变换的权重矩阵,P为概率值。
步骤A43,基于多轮口语理解模型的意图分类和语义槽填充、所述对话逻辑推理数据,根据联合优化损失函数对多轮口语理解模型、对话逻辑推理模型进行优化训练。
联合优化损失函数为将预设的多轮口语理解模型的损失函数、预设的对话逻辑推理模型的损失函数按照预设权重系数权重相加后构成的损失函数。具体步骤为:
分别按公式(13)(14)计算多轮口语理解模型、对话逻辑推理模型的损失函数:
其中,LSLU为多轮口语理解模型的损失函数,p(yI|x1,...,xk+1)为意图分类的预测概率,为语义槽填充的预测概率,yI为意图分类的标准答案,为语义槽填充的标准答案,yD为对话逻辑推理数据的标准答案,xk+1为当前用户输入的对话数据,xk为第k条历史对话数据,LDLI为对话逻辑推理模型的损失函数,p(yD|xj,x1,...,xk)为对话逻辑推理数据的预测概率,xj是当前回复的候选,t为索引。最终,联合优化的损失函数可以表示为公式(15):
L=(1-λ)LSLU+λLDLI (15)
其中,L为联合优化损失函数,λ为预设的超参数。
根据上述的联合优化的损失函数,对话逻辑推理模型与多轮口语理解模型进行优化,进而使多轮口语理解模型充分的挖掘对话逻辑之间的关系。
作为示例,将发明的技术方案在基于注意力机制的记忆检索的多轮口语理解方法(MemNet)和基于序列编码的记忆检索的多轮口语理解方法(SDEN)上分别进行比较,评价指标包括语义槽填充任务的F1值、意图分类的正确率。选择了公开数据集KVRET作为实验数据,这是一个车载助手场景下的多轮任务型对话数据集。这个数据集由斯坦福大学按照Wizard-of-Oz标准进行收集,包含了3031条多轮对话数据。该数据共有3个领域且每个领域只有1个意图,分别是日程规划、天气信息检索和目的地导航。然而,KVRET数据集中每条完整的对话数据都是单一领域的。本示例进一步构建了一个多领域的多轮对话数据集,实施办法是随机从KVRET中选择两个不同领域的对话然后合并成一个对话,我们把合并概率设置为50%。
表1和表2分别是用KVRET和KVRET*两个数据集的实验结果:
表1
表2
在上述表1和表2中,Slot_F1,Dom_Acc分别表示在口语理解数据翻译中语义槽填充识别F1值和意图分类的评价指标,单轮SLU为传统的SLU,根据语义槽填充识别F1值和意图分类的正确率,可以看出所有采用了本发明提出的基于对话逻辑的多轮口语理解方法后,效果均有明显提升。
图2给出了在训练过程中,本发明引入预设的超参数λ对语义槽识别F1值与意图检测(意图分类)的正确率的影响,其中左侧Slot F1代表语义槽识别F1值的正确率,右侧Intent Acc.表示意图检测的正确率,Lambda为预设的超参数。可以看出本发明引入的超参数具有鲁棒性。
本发明第二实施例的一种基于对话逻辑的多轮口语理解***,如图2所示,包括:获取模块100、编码模块200、生成模块300、输出模块400;
获取模块100,配置为获取口语理解数据集;所述口语理解数据集包括当前对话数据、历史对话数据;
编码模块200,配置为通过双向门控循环神经网络,分别将所述当前对话数据和所述历史对话数据编码成输入向量和记忆向量;
生成模块300,配置为根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量;
输出模块400,配置为基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息;
其中,
所述基于注意力机制的记忆检索方法为基于注意力机制得到输入向量的权重对记忆向量进行加权求和,生成语境知识向量的方法;
所述多轮口语理解模型基于层叠式的双向循环神经网络构建,用于基于当前对话数据及其对应的语境知识向量获取当前对话数据的意图分类信息和语义槽填充信息。
所述技术领域的技术人员可以清楚的了解到,为描述的方便和简洁,上述描述的***的具体的工作过程及有关说明,可以参考签署方法实施例中的对应过程,在此不再赘述。
需要说明的是,上述实施例提供的基于对话逻辑的多轮口语理解***,仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要而将上述功能分配由不同的功能模块来完成,即将本发明实施例中的模块或者步骤再分解或者组合,例如,上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块,以完成以上描述的全部或者部分功能。对于本发明实施例中涉及的模块、步骤的名称,仅仅是为了区分各个模块或者步骤,不视为对本发明的不当限定。
本发明第三实施例的一种存储装置,其中存储有多条程序,所述程序适用于由处理器加载并实现上述的基于对话逻辑的多轮口语理解方法。
本发明第四实施例的一种处理装置,包括处理器、存储装置;处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序适于由处理器加载并执行以实现上述的基于对话逻辑的多轮口语理解方法。
所述技术领域的技术人员可以清楚的了解到,未描述的方便和简洁,上述描述的存储装置、处理装置的具体工作过程及有关说明,可以参考签署方法实例中的对应过程,在此不再赘述。
本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的模块、方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,软件模块、方法步骤对应的程序可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
术语“第一”、“第二”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。
术语“包括”或者任何其它类似用语旨在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过程、方法、物品或者设备/装置所固有的要素。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (10)
1.一种基于对话逻辑的多轮口语理解方法,其特征在于,该方法包括:
步骤S10,获取口语理解数据集;所述口语理解数据集包括当前对话数据、历史对话数据;
步骤S20,通过双向门控循环神经网络,分别将所述当前对话数据和所述历史对话数据编码成输入向量和记忆向量;
步骤S30,根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量;
步骤S40,基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息;
其中,
所述基于注意力机制的记忆检索方法为基于注意力机制得到输入向量的权重对记忆向量进行加权求和,生成语境知识向量的方法;
所述多轮口语理解模型基于层叠式的双向循环神经网络构建,用于基于当前对话数据及其对应的语境知识向量获取当前对话数据的意图分类信息和语义槽填充信息。
2.根据权利要求1所述的基于对话逻辑的多轮口语理解方法,其特征在于,所述多轮口语理解模型在训练过程中基于对话逻辑进行优化,其优化方法:
获取口语理解数据集中每条数据对应的对话逻辑推理数据;
根据多轮口语理解模型中的语境知识向量、预设维度变换的权重矩阵,采用softmax函数构建对话逻辑推理模型;
基于多轮口语理解模型的意图分类和语义槽填充、所述对话逻辑推理数据,根据联合优化损失函数对多轮口语理解模型、对话逻辑推理模型进行优化训练;
其中,
所述联合优化损失函数为将预设的多轮口语理解模型的损失函数、预设的对话逻辑推理模型的损失函数按照预设权重系数权重相加后构成的损失函数。
3.根据权利要求1所述的基于对话逻辑的多轮口语理解方法,其特征在于,所述层叠式的双向循环神经网络,其包括BiGRU层、BiLSTM层;所述BiGRU层用于对所述当前对话数据进行编码;所述BiLSTM层用于在每个时间步当中,将当前对话数据的编码和语境知识向量进行拼接,并对拼接后的数据进行编码。
4.根据权利要求1所述的基于对话逻辑的多轮口语理解方法,其特征在于,步骤S30中“通过基于注意力机制的记忆检索方法生成语境知识向量”,其方法为:
h=Wo(c+mws)
pi=softmax(cTmi)
其中,pi是记忆向量mi的注意力权重,c为输入向量,T为矩阵转置操作,mws为输入向量的语境表示,h为语境知识向量,Wo为权重矩阵,i为自然数。
5.根据权利要求1或2所述的基于对话逻辑的多轮口语理解方法,其特征在于,“多轮口语理解数据集中每条数据生成其对应的对话逻辑推理数据”,其方法为:
获取多轮口语理解数据集,将该数据集中的每条数据随机排序;
将排序好的每条口语理解数据按照其数据索引与预设的候选数据索引进行对比,并根据是否相等进行1/0标注,进而得到对应的对话逻辑推理数据。
6.根据权利要求1或2或4所述的基于对话逻辑的多轮口语理解方法,其特征在于,所述对话逻辑推理模型其计算对话逻辑推理数据的概率的方法为:
P(xj|x1,...,xk)=softmax(Wdh)
其中,Wd为预设维度变换的权重矩阵,x1,...,xk为历史对话数据,xj为当前对话数据,k,j为自然数,P为概率值。
7.根据权利要求2所述的基于对话逻辑的多轮口语理解方法,其特征在于,所述联合优化损失函数为:
L=(1-λ)LSLU+λLDLI
其中,L为联合优化损失函数,LSLU为多轮口语理解模型的损失函数,LDLI为对话逻辑推理模型的损失函数,λ为预设的超参数。
8.一种基于对话逻辑的多轮口语理解***,其特征在于,该***包括获取模块、编码模块、生成模块、输出模块;
所述的获取模块,配置为获取口语理解数据集;所述口语理解数据集包括当前对话数据、历史对话数据;
所述的编码模块,配置为通过双向门控循环神经网络,分别将所述当前对话数据和所述历史对话数据编码成输入向量和记忆向量;
所述的生成模块,配置为根据所述输入向量、所述记忆向量,通过基于注意力机制的记忆检索方法生成语境知识向量;
所述的输出模块,配置为基于所述语境知识向量和所述当前对话数据,通过多轮口语理解模型获取当前对话数据的意图分类信息和语义槽填充信息;
其中,
所述基于注意力机制的记忆检索方法为基于注意力机制得到输入向量的权重对记忆向量进行加权求和,生成语境知识向量的方法;
所述多轮口语理解模型基于层叠式的双向循环神经网络构建,用于基于当前对话数据及其对应的语境知识向量获取当前对话数据的意图分类信息和语义槽填充信息。
9.一种存储装置,其中存储有多条程序,其特征在于,所述程序应用由处理器加载并执行以实现权利要求1-7任一项所述的基于对话逻辑的多轮口语理解方法。
10.一种处理设置,包括处理器、存储装置;处理器,适用于执行各条程序;存储装置,适用于存储多条程序;其特征在于,所述程序适用于由处理器加载并执行以实现权利要求1-7任一项所述的基于对话逻辑的多轮口语理解方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910661448.0A CN110413752B (zh) | 2019-07-22 | 2019-07-22 | 基于对话逻辑的多轮口语理解方法、***、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910661448.0A CN110413752B (zh) | 2019-07-22 | 2019-07-22 | 基于对话逻辑的多轮口语理解方法、***、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110413752A true CN110413752A (zh) | 2019-11-05 |
CN110413752B CN110413752B (zh) | 2021-11-16 |
Family
ID=68362364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910661448.0A Active CN110413752B (zh) | 2019-07-22 | 2019-07-22 | 基于对话逻辑的多轮口语理解方法、***、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110413752B (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110990555A (zh) * | 2020-03-05 | 2020-04-10 | 中邮消费金融有限公司 | 端到端检索式对话方法与***及计算机设备 |
CN111128175A (zh) * | 2020-01-19 | 2020-05-08 | 大连即时智能科技有限公司 | 口语对话管理方法及*** |
CN111309883A (zh) * | 2020-02-13 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 基于人工智能的人机对话方法、模型训练方法及装置 |
CN111813909A (zh) * | 2020-06-24 | 2020-10-23 | 泰康保险集团股份有限公司 | 一种智能问答方法和装置 |
CN112069300A (zh) * | 2020-09-04 | 2020-12-11 | 中国平安人寿保险股份有限公司 | 任务型对话的语义识别方法、装置、电子设备及存储介质 |
CN112100354A (zh) * | 2020-09-16 | 2020-12-18 | 北京奇艺世纪科技有限公司 | 人机对话方法、装置、设备及存储介质 |
CN112182191A (zh) * | 2020-10-16 | 2021-01-05 | 西北师范大学 | 多轮口语理解的结构化记忆图网络模型 |
CN112908319A (zh) * | 2019-12-04 | 2021-06-04 | 海信视像科技股份有限公司 | 一种处理信息交互的方法及设备 |
CN112951207A (zh) * | 2021-02-10 | 2021-06-11 | 网易有道信息技术(北京)有限公司 | 口语评测方法、装置及相关产品 |
CN113010661A (zh) * | 2021-04-22 | 2021-06-22 | 中国平安人寿保险股份有限公司 | 解析语句的方法、装置、设备及存储介质 |
CN113326360A (zh) * | 2021-04-25 | 2021-08-31 | 哈尔滨工业大学 | 一种小样本场景下的自然语言理解方法 |
CN113377907A (zh) * | 2021-06-08 | 2021-09-10 | 四川大学 | 基于记忆掩码自注意力网络的端到端任务型对话*** |
CN113868395A (zh) * | 2021-10-11 | 2021-12-31 | 北京明略软件***有限公司 | 多轮对话生成式模型建立方法、***、电子设备及介质 |
WO2022042664A1 (zh) * | 2020-08-28 | 2022-03-03 | 华为技术有限公司 | 人机交互方法及装置 |
CN115132178A (zh) * | 2022-07-15 | 2022-09-30 | 科讯嘉联信息技术有限公司 | 一种基于深度学习的语义端点检测*** |
CN115310429A (zh) * | 2022-08-05 | 2022-11-08 | 厦门靠谱云股份有限公司 | 一种多轮倾听对话模型中的数据压缩与高性能计算方法 |
WO2023020262A1 (en) * | 2021-08-18 | 2023-02-23 | International Business Machines Corporation | Integrating dialog history into end-to-end spoken language understanding systems |
US11646035B1 (en) * | 2020-09-22 | 2023-05-09 | Amazon Technologies, Inc. | Dialog management system |
CN111462749B (zh) * | 2020-03-20 | 2023-07-21 | 北京邮电大学 | 基于对话状态导向和知识库检索的端到端对话***及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120053945A1 (en) * | 2010-08-30 | 2012-03-01 | Honda Motor Co., Ltd. | Belief tracking and action selection in spoken dialog systems |
CN106611055A (zh) * | 2016-12-27 | 2017-05-03 | 大连理工大学 | 基于层叠式神经网络的中文模糊限制信息范围检测方法 |
CN108415923A (zh) * | 2017-10-18 | 2018-08-17 | 北京邮电大学 | 封闭域的智能人机对话*** |
CN109493166A (zh) * | 2018-10-23 | 2019-03-19 | 深圳智能思创科技有限公司 | 一种针对电子商务导购场景任务型对话***的构建方法 |
CN109858030A (zh) * | 2019-02-11 | 2019-06-07 | 北京邮电大学 | 双向的意图槽值交叉相关的任务型对话理解***及方法 |
CN110032633A (zh) * | 2019-04-17 | 2019-07-19 | 腾讯科技(深圳)有限公司 | 多轮对话处理方法、装置和设备 |
-
2019
- 2019-07-22 CN CN201910661448.0A patent/CN110413752B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120053945A1 (en) * | 2010-08-30 | 2012-03-01 | Honda Motor Co., Ltd. | Belief tracking and action selection in spoken dialog systems |
CN106611055A (zh) * | 2016-12-27 | 2017-05-03 | 大连理工大学 | 基于层叠式神经网络的中文模糊限制信息范围检测方法 |
CN108415923A (zh) * | 2017-10-18 | 2018-08-17 | 北京邮电大学 | 封闭域的智能人机对话*** |
CN109493166A (zh) * | 2018-10-23 | 2019-03-19 | 深圳智能思创科技有限公司 | 一种针对电子商务导购场景任务型对话***的构建方法 |
CN109858030A (zh) * | 2019-02-11 | 2019-06-07 | 北京邮电大学 | 双向的意图槽值交叉相关的任务型对话理解***及方法 |
CN110032633A (zh) * | 2019-04-17 | 2019-07-19 | 腾讯科技(深圳)有限公司 | 多轮对话处理方法、装置和设备 |
Non-Patent Citations (2)
Title |
---|
YUN-NUNG CHEN: "End-to-end memory networks with knowledge carryover for Multi-Turn Spoken Language understanding", 《THE 17TH ANNUAL MEETING OF THE INTERNATIONAL SPEECH》 * |
陈健鹏等: "基于多轮交互的人机对话***综述", 《南京信息工程大学学报》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112908319A (zh) * | 2019-12-04 | 2021-06-04 | 海信视像科技股份有限公司 | 一种处理信息交互的方法及设备 |
CN111128175A (zh) * | 2020-01-19 | 2020-05-08 | 大连即时智能科技有限公司 | 口语对话管理方法及*** |
CN111309883B (zh) * | 2020-02-13 | 2023-08-08 | 腾讯科技(深圳)有限公司 | 基于人工智能的人机对话方法、模型训练方法及装置 |
CN111309883A (zh) * | 2020-02-13 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 基于人工智能的人机对话方法、模型训练方法及装置 |
CN110990555A (zh) * | 2020-03-05 | 2020-04-10 | 中邮消费金融有限公司 | 端到端检索式对话方法与***及计算机设备 |
CN111462749B (zh) * | 2020-03-20 | 2023-07-21 | 北京邮电大学 | 基于对话状态导向和知识库检索的端到端对话***及方法 |
CN111813909A (zh) * | 2020-06-24 | 2020-10-23 | 泰康保险集团股份有限公司 | 一种智能问答方法和装置 |
WO2022042664A1 (zh) * | 2020-08-28 | 2022-03-03 | 华为技术有限公司 | 人机交互方法及装置 |
CN112069300A (zh) * | 2020-09-04 | 2020-12-11 | 中国平安人寿保险股份有限公司 | 任务型对话的语义识别方法、装置、电子设备及存储介质 |
CN112100354A (zh) * | 2020-09-16 | 2020-12-18 | 北京奇艺世纪科技有限公司 | 人机对话方法、装置、设备及存储介质 |
US11646035B1 (en) * | 2020-09-22 | 2023-05-09 | Amazon Technologies, Inc. | Dialog management system |
CN112182191A (zh) * | 2020-10-16 | 2021-01-05 | 西北师范大学 | 多轮口语理解的结构化记忆图网络模型 |
CN112182191B (zh) * | 2020-10-16 | 2022-08-30 | 西北师范大学 | 多轮口语理解的结构化记忆图网络模型 |
CN112951207A (zh) * | 2021-02-10 | 2021-06-11 | 网易有道信息技术(北京)有限公司 | 口语评测方法、装置及相关产品 |
CN112951207B (zh) * | 2021-02-10 | 2022-01-07 | 网易有道信息技术(北京)有限公司 | 口语评测方法、装置及相关产品 |
CN113010661A (zh) * | 2021-04-22 | 2021-06-22 | 中国平安人寿保险股份有限公司 | 解析语句的方法、装置、设备及存储介质 |
CN113326360B (zh) * | 2021-04-25 | 2022-12-13 | 哈尔滨工业大学 | 一种小样本场景下的自然语言理解方法 |
CN113326360A (zh) * | 2021-04-25 | 2021-08-31 | 哈尔滨工业大学 | 一种小样本场景下的自然语言理解方法 |
CN113377907B (zh) * | 2021-06-08 | 2023-06-09 | 四川大学 | 基于记忆掩码自注意力网络的端到端任务型对话*** |
CN113377907A (zh) * | 2021-06-08 | 2021-09-10 | 四川大学 | 基于记忆掩码自注意力网络的端到端任务型对话*** |
WO2023020262A1 (en) * | 2021-08-18 | 2023-02-23 | International Business Machines Corporation | Integrating dialog history into end-to-end spoken language understanding systems |
CN113868395A (zh) * | 2021-10-11 | 2021-12-31 | 北京明略软件***有限公司 | 多轮对话生成式模型建立方法、***、电子设备及介质 |
CN115132178A (zh) * | 2022-07-15 | 2022-09-30 | 科讯嘉联信息技术有限公司 | 一种基于深度学习的语义端点检测*** |
CN115132178B (zh) * | 2022-07-15 | 2023-01-10 | 科讯嘉联信息技术有限公司 | 一种基于深度学习的语义端点检测*** |
CN115310429A (zh) * | 2022-08-05 | 2022-11-08 | 厦门靠谱云股份有限公司 | 一种多轮倾听对话模型中的数据压缩与高性能计算方法 |
CN115310429B (zh) * | 2022-08-05 | 2023-04-28 | 厦门靠谱云股份有限公司 | 一种多轮倾听对话模型中的数据压缩与高性能计算方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110413752B (zh) | 2021-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110413752A (zh) | 基于对话逻辑的多轮口语理解方法、***、装置 | |
CN109977283B (zh) | 一种基于知识图谱和用户足迹的旅游推荐方法和*** | |
CN110046240B (zh) | 结合关键词检索与孪生神经网络的目标领域问答推送方法 | |
CN107908671A (zh) | 基于法律数据的知识图谱构建方法及*** | |
CN110096567A (zh) | 基于qa知识库推理的多轮对话回复选择方法、*** | |
CN113297364B (zh) | 一种面向对话***中的自然语言理解方法及装置 | |
CN105512209A (zh) | 一种基于特征自动学习的生物医学事件触发词识别方法 | |
CN113553824A (zh) | 一种句子向量模型训练方法 | |
CN115564393B (zh) | 一种基于招聘需求相似度的职位推荐方法 | |
CN110990555B (zh) | 端到端检索式对话方法与***及计算机设备 | |
Li et al. | Multi-View Visual Semantic Embedding. | |
CN114443827A (zh) | 基于预训练语言模型的局部信息感知对话方法及*** | |
CN110347776A (zh) | 兴趣点名称匹配方法、装置、设备及存储介质 | |
Larki et al. | Solving the multiple traveling salesman problem by a novel meta-heuristic algorithm | |
CN114398976A (zh) | 基于bert与门控类注意力增强网络的机器阅读理解方法 | |
CN111429977A (zh) | 一种新的基于图结构注意力的分子相似性搜索算法 | |
CN113204976A (zh) | 一种实时问答方法及*** | |
CN114238652A (zh) | 一种用于端到端场景的工业故障知识图谱建立方法 | |
CN116206159A (zh) | 一种图像分类方法、装置、设备及可读存储介质 | |
CN115187910A (zh) | 视频分类模型训练方法、装置、电子设备及存储介质 | |
CN111914553A (zh) | 一种基于机器学习的金融信息负面主体判定的方法 | |
CN116737922A (zh) | 一种游客在线评论细粒度情感分析方法和*** | |
CN111522923B (zh) | 一种多轮任务式对话状态追踪方法 | |
CN116910190A (zh) | 多任务感知模型获取方法、装置、设备及可读存储介质 | |
CN110245230A (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 |