CN113064985A - 人机对话方法、电子设备及存储介质 - Google Patents
人机对话方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113064985A CN113064985A CN202110481381.XA CN202110481381A CN113064985A CN 113064985 A CN113064985 A CN 113064985A CN 202110481381 A CN202110481381 A CN 202110481381A CN 113064985 A CN113064985 A CN 113064985A
- Authority
- CN
- China
- Prior art keywords
- sentence
- complete semantics
- dialogue
- semantics
- rewrite
- 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.)
- Pending
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/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本发明公开一种人机对话方法,包括:接收用户输入的当前语句;当所述当前语句的语义不完整时,对所述当前语句进行改写以得到具有完整语义的新的当前语句;确定对应于所述新的当前语句的响应内容。本发明实施例的有益效果在于:在接收到的当前语句不具有完整语义时并未急于确定相应的应答内容,而是在对当前语句进行改写得到具备完整语义的新的当前语句之后,才基于新的当前语句来确定响应内容的。避免了由于语义不完整的情况下直接对当前语句进行解析存在错误、准确率低的缺陷。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种人机对话方法、电子设备及存储介质。
背景技术
随着语音人工智能的发展,人机对话服务正在越来越普遍的出现在日常生活中。用户可以采用自然语言的形式与终端设备之间进行人机交互,并达成目标。然而,在多轮人机对话中,由于用户的多个语句放在整个交互场景中是非常清楚无歧义的,但是如果脱离具体场景的话多个语句中的单个语句则未必能够具备完整的语义信息(可能是由于单个与中存在的省略、指代等情况的存在)。这种情况下如果仅仅基于单个语句进行识别处理,并确定响应内容的话,势必会造成回答内容不准确甚至错误的问题。
发明内容
本发明实施例提供一种人机对话方法、电子设备及存储介质,用于至少解决上述技术问题之一。
第一方面,本发明实施例提供一种人机对话方法,包括:
接收用户输入的当前语句;
当所述当前语句的语义不完整时,对所述当前语句进行改写以得到具有完整语义的新的当前语句;
确定对应于所述新的当前语句的响应内容。
第二方面,本发明实施例提供一种人机对话方法,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项人机对话方法。
第三方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明上述任一项人机对话方法。
第四方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项人机对话方法。
本发明实施例的有益效果在于:在接收到的当前语句不具有完整语义时并未急于确定相应的应答内容,而是在对当前语句进行改写得到具备完整语义的新的当前语句之后,才基于新的当前语句来确定响应内容的。避免了由于语义不完整的情况下直接对当前语句进行解析存在错误、准确率低的缺陷。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的人机对话方法的一实施例的流程图;
图2为本发明的人机对话方法的另一实施例的流程图;
图3为本发明中对不同应答的改写策略示意图;
图4为本发明中对DIR的注释示意图;
图5为本发明中的数据收集流程图示意图;
图6为本发明中具有不同累积速率的语句的S/U度量和ER度量的示意图;
图7为本发明中具有不同累积率的话语的BLUE4得分和R-BLEU4得分示意图;
图8为本发明中SParC的错误分布示意图和CoSQL的错误分布示意图;
图9为本发明的电子设备的一实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
如图1所示为本发明的人机对话方法的一实施例的流程图,该方法应用于终端设备(例如,智能手机、智能音箱和平板电脑等,本发明对此不作限定),在该方法中包括:
S10、接收用户输入的当前语句。
示例性地,用户使用配置了人机对话功能的智能手机,并且通过智能手机的麦克风采集用户输入的语音数据,并对该语音数据进行语音识别得到相应的当前语句。或者,用户通过智能手机所提供的虚拟键盘手动输入当前语句。
S20、当所述当前语句的语义不完整时,对所述当前语句进行改写以得到具有完整语义的新的当前语句。
示例性地,当接收到用户输入的当前语句之后,对于语义不完整的当前语句进行改写得到具备完整语义的对话语句,对于本身就语义完整的当前语句不作改写处理。
S30、确定对应于所述新的当前语句的响应内容。
示例性地,在对不具备完整语义的当前语句进行改写之后得到新的当前语句,进一步地对该新的当前语句进行自然语言理解,从而得到相应的应答结果。将多轮对话理解(例如对话状态跟踪)划分为对话话语改写和语言理解为各种对话任务提供了新颖的方法。
本发明实施例中在接收到的当前语句不具有完整语义时并未急于确定相应的应答内容,而是在对当前语句进行改写得到具备完整语义的新的当前语句之后(即,显示的对当前对话语句进行补全,得到语义完整的句子,这是完全不同于现有技术中通过黑盒的方式,在高维空间中隐式的完成语义补全的方式的),才基于新的当前语句来确定响应内容的。避免了由于语义不完整的情况下直接对当前语句进行解析存在错误、准确率低的缺陷。
在一些实施例中,对所述当前语句进行改写以得到具有完整语义的新的当前语句,包括:将所述当前语句输入至预先训练好的语句改写模型进行改写以得到具有完整语义的新的当前语句。
示例性地,为了得到语句改写模型,还预先构建用于训练语句改写模型的对话改写数据集;该对话改写数据集由SParC数据集和CoSQL数据集扩展得到。
在一些实施例中,对话改写数据集中包括对话语句的类型,所述类型至少包括语义完整、共指和省略之一。
如图2所示为本发明的人机对话方法的另一实施例的流程图,在该实施例中,预先构建用于训练语句改写模型的对话改写数据集,包括:
S41、确定所述对话改写数据集中不具有完整语义的对话语句。
S42、对不具有完整语义的对话语句执行预设动作以得到具有完整语义的新的对话语句。
示例性地,根据对应于所述对话语句的历史对话语句对所述对话语句执行预设动作以得到具有完整语义的新的对话语句。
在一些实施例中,预设动作至少包括***动作和替换动作之一;所述对不具有完整语义的对话语句执行预设动作以得到具有完整语义的新的对话语句,包括:
当所述不具有完整语义的对话语句的类型为共指时,对所述不具有完整语义的对话语句执行替换动作以得到具有完整语义的新的对话语句;
当所述不具有完整语义的对话语句的类型为省略时,对所述不具有完整语义的对话语句执行***动作以得到具有完整语义的新的对话语句。
示例性地,还包括确定造成对话语句语义缺失的类型(例如,有的是因为使用了代词造成了缺失,有的是因为一些成分的省略造成的缺失)。例如,对数据集(例如,SParC数据集或者CoSQL数据集)中的对话语句进行类型识别,并进行相应的标注及记录。
在一些实施例中,本发明的人机对话方法还包括:根据历史对话语句确定替换内容;确定所述不具有完整语义的对话语句中的替换位置;所述对所述不具有完整语义的对话语句执行替换动作以得到具有完整语义的新的对话语句,包括:将所述替换内容替换所述替换位置所对应的内容;或者,将所述替换内容***所述替换位置。
为更加清楚的介绍本发明的技术方案,也为更直接地证明本发明的可实时性以及相对于现有技术的有益性,以下将对本发明的技术背景、技术方案以及所进行的实验等进行更为详细的介绍。
摘要:将多轮对话理解(例如,对话状态跟踪)划分为对话话语改写和语言理解为各种对话任务提供了新颖的方法。之前的实验结果证明了两阶段框架的可行性,但是针对改写阶段的数据集很稀缺。为此,我们提出了一种用于交叉领域对话***的大规模DIR(DIalogue Rewrite)数据集。它是从两个交叉领域对话形式的Text2SQL(文本到SQL)语言任务数据集SParC和CoSQL扩展得到的。它包含5908个对话和160个领域。为了验证我们的标注的可用性,我们使用一个高性能的Text2SQL语言解析模型RAT-SQL直接去解析我们的语句改写标注,实验结果得到了显著的提升。另外,我们还验证了使用一些改写模型生成的语句去进行解析的结果。实验结果告诉我们去探究一个高效的改写方法的重要性。
1、介绍
对话***是基于对话的人机交互***的重要组成部分,旨在通过一系列对话来完成既定任务。单个交互的过程可以描述为***接收用户的话语,提取其中包含的意图,然后在知识库中识别最相关的结果并给用户相应的响应。
对话任务是在人机对话***中制定问题的一系列任务。对话任务种类繁多,例如,面向任务的对话,对话式问答和聊天机器人。目前,对几种传统的NLP任务的研究已转化为对话方案,旨在在更复杂的环境中设计更健壮的模型。由于对话历史的存在,对话任务的挑战不仅在于单轮提取准确的信息,还在于通过多轮对话保存历史信息。
实际上,当对话历史不存在时,多个对话任务等效于相应的单轮任务。例如,对话式机器阅读理解任务试图理解问题并确保搜索的正确性。在单轮对话的情况下,这正是机器阅读理解的任务。为此,一些研究人员通过结合整个历史话语直接将多轮任务视为单轮任务。尽管缩减方法完整记录了历史信息,但是增加长度的输入最终将限制编码性能。另一研究重点是为单轮模型设计一种额外的编码方法,以有效地聚合结构化历史信息,从而使模型摆脱输入长度的限制。但是,在这种情况下,累积在结构化历史信息上的噪声将影响模型的性能。
除此之外,特定于任务的研究人员还需要研究人员付出更多的资源,以在找到新的对话任务后找到合适的解决方案。
为了平衡上述方法的优点和缺点提出了一个两阶段的流水线框架,将对话任务分为两部分,上下文查询改写和单轮模型预测。前者的目的是通过共同参考分辨率和省略号补码将历史合并到当前的单轮语句中,然后利用单轮语句模型来预测结果。在这种情况下,语句合并会抑制输入长度的增加速度。非结构化历史信息的使用也同时减轻了噪声积累的影响。
表1:DIR与一些公共对话改写数据集的比较
Num.Dialog和Num.Ture分别指的是数据集中的总的对话数量和对话轮数。Num.Utt和Num.Len分别指的是数据集中原始语句的平均长度和改写语句的平均长度。
为此,如表1所示收集了许多用于训练改写模型的对话改写数据集。从数据库的角度来看,他们关注的对话***可以分为非结构化知识库对话***和结构化知识库对话***。非结构化知识库指的是我们在会话式机器阅读理解中看到的自然语言文档。与对话状态跟踪一样,典型的结构化知识库始终以表格或知识图的形式提供搜索字段。
在本发明中,我们仅关注结构化的知识库对话***。如表1所示,只有MultiWOZ2.3提供了大范围,多领域的语料库,但是由于共引用注释的样本率太低,因此不适合改写任务。此外,它还可以在理想的环境中对对话改写进行建模。用于语义补充的所有片段都是对话状态下的值。这意味着,大多数替换是没有修饰符的实体或短语。实际上,解析完整的语义始终与属性相关。因此,有必要考虑其替换组成一个实体和相应属性的样本。在此基础上,我们在本发明中提出了一个大规模的DIR(DIalogue Rewrite)数据集,其中包括许多上述示例。
DIR是基于两个多轮对话Text2SQL数据集SParC和CoSQL收集的。通常,SQL语言中的搜索条件始终表示为自然语言中的修饰符。当我们改写不完整的语句时,修饰语应该被继承。因此,由于对话Text2SQL任务的特性,DIR提供了更复杂的对话环境。考虑到不完整语句的类型,共指和省略号是重要的特征,我们另外为这两种类型的类别提供注释。除此之外,我们还保留了改写过程的轨迹,这对于该功能中的某些解释研究至关重要。
在我们的实验中,我们首先验证了两个改写模型的性能,从而为数据集上的对话改写任务提供了基线。然后根据数据源将DIR分为两部分。随后基于这些子集的消融研究表明这两个部分都是高质量的。此外,我们还使用带有RAT-SQL的两阶段框架作为单轮预测模型,验证了DIR在原始下游任务对话Text2SQL上的有效性。以重写语句为输入的性能位于上限。用不同的改写模型改写语句的结果说明了设计有效方法的重要性。
本发明的贡献是:
·收集了大规模的多领域对话改写数据集DIR,并提供了不完整的话语类别标签和改写过程跟踪注释。
·为DIR的功能研究提出了一个多领域对话改写任务基线。
·验证了以DIR作为对话改写模型的训练数据集的两阶段框架的有效性。
表2:所有三种不完整语句改写类型的示例。
2、相关工作
对话改写任务旨在通过不完整的话语通过共同引用解析和省略补充来补充语义。研究人员已经收集了不同场景下的几个数据集。现有技术提出了两个大规模的对话改写数据集MULTI和REWRITE。两者都是针对聊天机器人场景而收集的。现有技术还提出了基于QuAC的CANARD,QuAC是有关特定Wikipedia部分的连续问答数据库。它们都是基于非结构化知识库的。
现有技术还提出了基于经典对话数据集CamRest676的数据集TASK。CamRest676由一个对话***收集,该***可帮助您在剑桥找到一家餐馆。任务中提供了三种语句,完整语句,省略语句和共指语句。它们用省略号1或共同引用1代替了当前的语句。然后将完整的语句注释为正确改写的语句。现有技术还公开了多领域对话改写数据集CQR。他们通过解析指称表达来修改公开可用的对话语料库。保留语句的原始结构在CQR中不是必不可少的。现有技术中区分不正确的注释,并为大规模多领域对话数据集MultiWOZ添加了共同引用功能。修改后的数据集称为MultiWOZ2.3。但是,因为不完整语句的比率很低,并且用于补充的片段是简单的短语,所以其他的共同引用注释不适合对话改写任务。
如图3所示为对不同应答的改写策略示意图。
相比之下,在用于对话改写任务的数据集中,DIR提供了最大的语料库,并且相关领域远远超过其他领域。
3、对话改写任务
对话改写任务旨在将历史融合到当前话语中,我们将任务表述如下。设置Tn={t1,t2……,tn}是对话D中的一个片段。然后,对话改写任务旨在学习函数:
其中,满足tn′与Tn的语义信息相同。
图4:DIR的注释示意图。对于每个不完整的语句,设计了几种动作来对其进行补充。每个动作均由五个注释组成,即类型,类别,操作,位置和片段。示例性地,针对每一语义不完整的对话我们通过多个“动作”来将其改写。动作分为“***”和“替换”两种。“***”针对的是限定语的缺失省略,即第一句的“有狗的学生”,它限定了我们需要寻找的对象,但是在第二句中被省略了。“替换”针对的是使用代词的省略,即第三句中的“那些”指代的是“有狗且大于10岁的学生”,其需要被替换。针对每个“动作”我们还提供了“指代”和“缺失”的标注,并且为了追踪这一改写的过程,我们使用每一用来改写的片段的最原始的坐标来记录。该过程的详细信息在第4.2节中进行了描述。
目前,已经定义了一些类似的任务,例如不完整语句的改写和上下文查询改写。但是,对话改写任务是在更普遍的情况下定义的。在上下文查询改写任务中,当前回合的一组插槽值也用于改写。实际上,有几个插槽值来自查询结果,并且它们第一次出现在对话框中是***响应。换句话说,如果结果太长而无法使用自然语言生成响应,则在上下文查询改写任务中,将不会引用该结果来补充不完整的话语。如图3所示的示例,当搜索结果是其中包含太多值的列表时,改写策略也已更改。但是,由于上下文查询改写任务基于传统的对话状态跟踪任务,因此在上下文查询改写任务中几乎不存在这些样本。
对话改写任务中的不完整话语包括语义完整,共指和省略三种类型。并且根据上下文现象将每种类型分为多个类别。语义完整表示语句的语义信息是完整的,因此不需要改写。共指是指照应词(代词)指先行词的现象。先行词是代词所指的一个或多个实体。共指包含五个类别:桥接指代、指定名词短语、一个指代、指示代词和所有格确定语。它们之间的主要区别是代词(请参见表2)。例如,在表2的第3行中,“票”是回指词,而“音乐会”是先行词。省略包括两类:延续和替换。延续是对额外语义的补充,替代是指替换某些特定的语义。替换包括四类,表2中显示了更具体的细节。
4、数据
4.1、数据结构
在DIR中,我们为每种对话提供三种注释。第一个是如其他对话改写数据集中所做的补充对话的结果。为了跟踪补充过程,我们还为每次替换提供了原始位置。我们相信,注释将在将来的一些可解释性工作中扮演重要角色。最后,我们还为每个补充动作注释了类型和类别。
类型和类别:首先,我们确定每个语句的类型。如果语句省略了一些片段并造成了语义信息的不足,我们将通过几种动作对其进行补充。对于每个动作,我们通过上下文在省略和共同引用之间识别出类型。此外,我们在相应的候选者中识别出类别注释。如果语义信息不存在任何不足,则将其注释为语义完整的。
操作:对于省略类型的动作,我们通过***操作对其进行注释。这意味着我们通过***缺失的片段来补充相应的缺陷。对于共指样本,我们找到替换项并执行替换操作以将其替换为相应的片段。
表3:DIR与其他类似对话改写数据集的比较
DIR-SParC和DIR-CoSQL是DIR的两个部分,根据数据源进行拆分。Num.Dom是指领域数量,Dialog Rewrite Rate是指对话改写率,Turn Rewrite Rate是指转写改写率。在DIR中,它等于数据库的数量。对话改写率是指至少有一个不完整语句的对话的比例。同样,转写改写率是指不完整语句的比例。S/U,ER和AR是用于估计改写对话数据集的复杂性的指标。这些定义在第4.3节中进行了描述。
位置:确认编辑操作后,将定位操作位置。这两个操作的位置含义不同。***操作的位置是单个索引,指的是在相应标记之前***片段。对于替换操作,位置是一系列索引,指出需要替换的短语。
片段:对于每个动作,我们最终将原始话语中的缺失片段圈出。每个范围由三个索引组成,即轮数索引和两个终止索引。片段使用原始索引进行注释。例如,如果片段从第0轮复制并再次从改写的第1轮复制,则其片段索引为0,终止索引为第0轮中的索引。此外,为了提高影响力,我们还提供了一些诸如of和at之类的过渡词。
改写的语句:最后,我们提供了具有完整语义信息的改写语句。
4.2、数据收集
数据收集的主要目的是用对话历史中的片段来补充语义上不完整的语句。我们为注释者构建了一个手动单击交互式注释***,为了尽可能保持目标语句的结构,我们鼓励注释者通过单击来选择片段,并且在某些特殊情况下还允许注释者手动改写。
如图5所示为本发明中的数据收集流程图示意图。它由以下三个阶段组成:
人群抽样检查:有一定英语应用能力的标注者在小范围内对样品进行预注释时,我们会提供指导,并在他们正式注释之前进行资格检查。在注释过程中,将使用一些样本进行实时监视,并同步反馈以更正改写的内容。注释之后,根据监视反馈,为大样本选择了广泛的样本(6.33%)。
关键字筛选:关键词(例如,“it”和“there”)的存在总是表明话语的不完整。因此,我们应用了一个正则表达式来过滤掉包含至少一个关键字的注释,并再次对其进行注释。
使用预训练模型进行审查:借助原始数据集中的SQL批注,我们使用预训练的RAT-SQL模型对批注进行了解析,然后使用基于规则的检查器来过滤掉与正确改写的结果相比缺少关键项或列名的SQL。对于那些注释,相应的注释很可能会遗漏一些重要的片段,因此我们修改了其中不正确的片段。
4.4、统计和比较
最后,我们总共收集了5193个对话(用于训练集合)和715个对话(用于评估集合)。除了基本信息外,我们还根据三个指标来估计数据的复杂性,并且它们与改写的难度都呈正相关。
1.度量标准每个语句的片段(S/U,span per utterance)是历史上用于补充当前语句的片段的平均数量。对于数据集Task和CQR,没有标记来标记替换源。考虑到字符串匹配方法不太准确,因此我们没有为它们计算S/U。
2.度量标准扩展率(ER,Expansion Rate)表示改写语句的长度与原始话语的长度之比。
3.度量标准累积率(AR,Accumulation Rate)是合并到当前语句中的平均轮数,类似于SPU。与S/U相似,CQR和Task的累积率也被省略。
其他统计信息以及我们的数据集与其他对话改写数据集之间的比较如表3所示。请注意,与其他公共改写数据集相比,我们的数据集具有更高的复杂度。CQR的ER最高,但在改写过程中丢失了原始结构。MultiWOZ2.3的ER小于1,因为大多数替换是词组,因此补码后的长度几乎不变。
在DIR中,用于改写的历史记录的长度适中。不完整语句的合并历史记录的长度不超过3。如图6所示,具有不同累积速率的语句的S/U度量和ER度量的示意图。我们还计算了具有不同累积率的语句的S/U和AR,。顺滑和稳定的增长表明不同长度的片段的分布是一致的。
5、对话改写的基线
目前,针对不完整的语句恢复任务提出了几种方法。在本发明中,我们将其中三个作为我们数据集的基准。
合并:一种将整个对话直接串联成一个长序列的简单方法。合并对话历史记录不会丢失任何历史记录信息,但是,较长的对话时间将利用降级效果。
序列到序列:使用LSTM作为编码器并使用GRU作为解码器的原始模型。注意机制聚集的最后一个令牌和隐藏状态用于解码当前令牌。
用于改写的U型网络(RUN):这是一种新颖的方法,可以将不完整的话语改写任务重新构造为语义分段任务,并使用编辑矩阵来描述改写过程。然后使用U型CNN来预测编辑操作。估计所生成的语句的质量的指标是F分数,BLEU和ROUGE,结果示于表4。
表4:三种不同方法的改写表现
5.1、DIR作为高质量数据集
此外,根据数据源,我们将数据集分为两个部分:DIR-SParC和DIR-CoSQL。如表3所示,与DIR-CoSQL相比,DIR-SParC具有更高的改写率。然后,我们以DIR的三个部分作为训练集来验证这两个子集的性能。我们使用的模型是第5节中描述的RUN。表5说明了实验结果。对于训练集和测试集一致的情况,结果标记了相应数据集的基本性能。对于训练集和测试集属于DIR的不同部分的情况,结果表示域转换的能力。请注意,在DIR-CoSQL上的训练和在DIR-SParC上的测试的性能得分很差。性能裕度远远大于相反的结果。我们怀疑原因是DIR-CoSQL和DIR-SParC之间的改写率不同。DIR的结果在所有三个指标得分上均达到了高性能。它证实了扩大训练语料库的好处。另外,结果进一步凭经验证明这两个部分对于训练改写模型都是高质量的。
表5:以DIR的不同部分作为训练集的RUN改写性能
5.2、改写的困难
我们考虑了BLEU4分数较低的情况,并发现主要特征集中在长度上。长度较长的改写话语在改写过程中更有可能遗漏一些关键信息。但是,即使在序列任务的其他序列中,解码后的序列也很难获得较高的BLEU4分数。因此,我们另外计算了一个相对的BLEU4分数,该分数表示为BLEU4分数与正确改写的结果长度的乘积,并将该度量标准命名为R-BLEU4。然后,我们整理出BLEU4得分,R-BLEU4得分和AR指标之间的关系,AR指标是用于补充的历史数。如图7所示,它进一步证明了改写的难度主要在于累积率。
图7:具有不同累积率的话语的BLUE4得分和R-BLEU4得分。公制RBLEU4定义为相对BLEU-4,它减轻了长度的影响。
6、改写的Text2SQL对话
6.1、Text2SQL对话
对于对话***,交互由理解,搜索和响应三个部分组成,所有对话任务均围绕其中一个或一些进行设计。一个典型的例子是对话状态跟踪(DST)任务,该任务着重于准确的理解。基于此,定义了多个挑战者任务。对话Text2SQL,也称为基于SQL的DST,就是其中之一。
对话Text2SQL任务和DST任务之间的区别在于搜索模式,该模式记录了用户的意图并用于在知识库中标识结果。在DST任务中,搜索架构被简化为一个槽值对,并且由此产生的查询受到限制。对话Text2SQL任务摆脱了直接从对话生成SQL模式的限制。在这种情况下,可能无法使用自然语言来表示结果。因此,这是一项实际的任务。
表6:具有不同改写方法的两阶段模型的问题匹配精度
表7:改写解析方法与现有方法的比较
Concat是指以串联对话话语作为输入的方法。Oracle引用以正确的改写结果作为输入的方法。SParC和CoSQL验证集上的问题匹配分数。
6.2、两阶段框架的未来
我们将下游任务对话两阶段框架Text2SQL应用于两阶段框架,以验证对话改写的有用性。在本实验中,我们将DIR中带注释的改写话语用作有效的单轮Text2SQL模型RAT-SQL上的oracle输入。为了验证短输入序列的好处,我们还比较了使用串联对话历史训练的相同模型的性能。实验分别在SParC和CoSQL上进行。对于oracle方法,将仅使用相应的注释进行训练。
表7中对话改写的促进表明,我们的注释在尽可能短的上下文中提供了保存良好的对话历史。可以看出,Oracle RATSQL的问题匹配分数优于最新技术。作为两阶段对话改写方法的上限,结果增加了实现更高性能的可能性。
6.3、需要高效的改写模型
我们将解析精度与不同的改写模型进行了比较,结果如表6所示。请注意,下游任务(在本例中为Text2SQL任务)的性能与改写任务的性能呈正相关。换句话说,对于两阶段框架,设计有效的改写模型很重要。
另一方面,在两阶段框架中,准确性取决于改写性能和解析性能。因此,对于无法正确解析的情况,我们分析了每个组件的影响。我们在这里选择的改写模型是RUN。我们首先过滤掉使用正确改写的语句成功解析的样本。然后,在这些样本中,我们进一步定位了未正确解析的样本。这部分是指由于错误的改写导致解析失败的案例。图8中的结果表明,由改写引起的错误占了大多数,并且进一步表明,仍有很大的改进余地。
7、结论
在本发明中,我们提出了一个大规模的多领域对话改写数据集,其中包含其他不完整的话语类别标签和改写跟踪注释。然后,我们为DIR上的对话改写任务提出了一个基准。最后,我们使用不同的改写方法来验证下游任务的性能。在以后的工作中,我们打算增加改写的影响力,并修改其中的语法错误。此外,我们旨在借助DIR在两阶段框架下设计一个对话预训练模型。
本发明中对话任务可以被拆解成“将对话融合成一个语义完整的长句”和“在这一长句上完成任务”两个部分,使用流水线的方式在这种两阶段的结构下完成任务,而针对第一阶段的训练数据很稀缺,之前并没有一个高质量大规模的数据集,因为这一方式之前并未引起重视,而一些实验证明这种两阶段的结构是有效的,因此提出这样一个健壮的数据集针对解决对话任务是很有意义的,另一方面,预训练语言模型被公认为现阶段自然语言处理任务中的一大利器,而针对对话任务的预训练语言模型技术还未成熟,而对话改写任务是很适合当作训练一个针对对话任务的预训练语言模型的预训练任务,而我们提出的数据集DIR在未来预训练语言模型的训练中将起到至关重要的作用。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在一些实施例中,本发明实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项人机对话方法。
在一些实施例中,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项人机对话方法。
在一些实施例中,本发明实施例还提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行人机对话方法。
在一些实施例中,本发明实施例还提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现人机对话方法。
图9是本申请另一实施例提供的执行人机对话方法的电子设备的硬件结构示意图,如图9所示,该设备包括:
一个或多个处理器910以及存储器920,图9中以一个处理器910为例。
执行人机对话方法的设备还可以包括:输入装置930和输出装置940。
处理器910、存储器920、输入装置930和输出装置940可以通过总线或者其他方式连接,图9中以通过总线连接为例。
存储器920作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的人机对话方法对应的程序指令/模块。处理器910通过运行存储在存储器920中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例人机对话方法。
存储器920可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据人机对话装置的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器920可选包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至人机对话装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置930可接收输入的数字或字符信息,以及产生与人机对话装置的用户设置以及功能控制有关的信号。输出装置940可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器920中,当被所述一个或者多个处理器910执行时,执行上述任意方法实施例中的人机对话方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、***总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种人机对话方法,包括:
接收用户输入的当前语句;
当所述当前语句的语义不完整时,对所述当前语句进行改写以得到具有完整语义的新的当前语句;
确定对应于所述新的当前语句的响应内容。
2.根据权利要求1所述的方法,其特征在于,所述对所述当前语句进行改写以得到具有完整语义的新的当前语句,包括:
将所述当前语句输入至预先训练好的语句改写模型进行改写以得到具有完整语义的新的当前语句。
3.根据权利要求2所述的方法,其特征在于,所述还包括:预先构建用于训练所述语句改写模型的对话改写数据集。
4.根据权利要求3所述的方法,其特征在于,所述对话改写数据集中包括对话语句的类型,所述类型至少包括语义完整、共指和省略之一。
5.根据权利要求3所述的方法,其特征在于,所述预先构建用于训练所述语句改写模型的对话改写数据集,包括:
确定所述对话改写数据集中不具有完整语义的对话语句;
对不具有完整语义的对话语句执行预设动作以得到具有完整语义的新的对话语句。
6.根据权利要求5所述的方法,其特征在于,对所述对话语句执行预设动作以得到具有完整语义的新的对话语句,包括:根据对应于所述对话语句的历史对话语句对所述对话语句执行预设动作以得到具有完整语义的新的对话语句。
7.根据权利要求5所述的方法,其特征在于,所述预设动作至少包括***动作和替换动作之一;
所述对不具有完整语义的对话语句执行预设动作以得到具有完整语义的新的对话语句,包括:
当所述不具有完整语义的对话语句的类型为共指时,对所述不具有完整语义的对话语句执行替换动作以得到具有完整语义的新的对话语句;
当所述不具有完整语义的对话语句的类型为省略时,对所述不具有完整语义的对话语句执行***动作以得到具有完整语义的新的对话语句。
8.根据权利要求7所述的方法,其特征在于,还包括:
根据历史对话语句确定替换内容;
确定所述不具有完整语义的对话语句中的替换位置;
所述对所述不具有完整语义的对话语句执行替换动作以得到具有完整语义的新的对话语句,包括:将所述替换内容替换所述替换位置所对应的内容;或者,将所述替换内容***所述替换位置。
9.一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任意一项所述方法的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-8中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110481381.XA CN113064985A (zh) | 2021-04-30 | 2021-04-30 | 人机对话方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110481381.XA CN113064985A (zh) | 2021-04-30 | 2021-04-30 | 人机对话方法、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113064985A true CN113064985A (zh) | 2021-07-02 |
Family
ID=76568171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110481381.XA Pending CN113064985A (zh) | 2021-04-30 | 2021-04-30 | 人机对话方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113064985A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609824A (zh) * | 2021-08-10 | 2021-11-05 | 上海交通大学 | 基于文本编辑和语法纠错的多轮对话改写方法及*** |
CN113688207A (zh) * | 2021-08-24 | 2021-11-23 | 思必驰科技股份有限公司 | 基于网络的结构阅读理解的建模处理方法和装置 |
CN113868386A (zh) * | 2021-09-18 | 2021-12-31 | 天津大学 | 一种可控情感对话生成的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106777018A (zh) * | 2016-12-08 | 2017-05-31 | 竹间智能科技(上海)有限公司 | 一种智能聊天机器人中对输入语句的优化方法及装置 |
CN106897263A (zh) * | 2016-12-29 | 2017-06-27 | 北京光年无限科技有限公司 | 基于深度学习的机器人对话交互方法及装置 |
KR102041621B1 (ko) * | 2019-02-25 | 2019-11-06 | (주)미디어코퍼스 | 인공지능 음성인식 기반 기계학습의 대규모 말뭉치 구축을 위한 대화형 말뭉치 분석 서비스 제공 시스템 및 구축 방법 |
CN111522921A (zh) * | 2020-03-06 | 2020-08-11 | 国网浙江省电力有限公司电力科学研究院 | 一种基于语句改写的面向端到端对话的数据增强方法 |
WO2020233380A1 (zh) * | 2019-05-21 | 2020-11-26 | 华为技术有限公司 | 缺失语义补全方法及装置 |
CN112650842A (zh) * | 2020-12-22 | 2021-04-13 | 平安普惠企业管理有限公司 | 基于人机交互的客服机器人意图识别方法及相关设备 |
-
2021
- 2021-04-30 CN CN202110481381.XA patent/CN113064985A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106777018A (zh) * | 2016-12-08 | 2017-05-31 | 竹间智能科技(上海)有限公司 | 一种智能聊天机器人中对输入语句的优化方法及装置 |
CN106897263A (zh) * | 2016-12-29 | 2017-06-27 | 北京光年无限科技有限公司 | 基于深度学习的机器人对话交互方法及装置 |
KR102041621B1 (ko) * | 2019-02-25 | 2019-11-06 | (주)미디어코퍼스 | 인공지능 음성인식 기반 기계학습의 대규모 말뭉치 구축을 위한 대화형 말뭉치 분석 서비스 제공 시스템 및 구축 방법 |
WO2020233380A1 (zh) * | 2019-05-21 | 2020-11-26 | 华为技术有限公司 | 缺失语义补全方法及装置 |
CN111522921A (zh) * | 2020-03-06 | 2020-08-11 | 国网浙江省电力有限公司电力科学研究院 | 一种基于语句改写的面向端到端对话的数据增强方法 |
CN112650842A (zh) * | 2020-12-22 | 2021-04-13 | 平安普惠企业管理有限公司 | 基于人机交互的客服机器人意图识别方法及相关设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609824A (zh) * | 2021-08-10 | 2021-11-05 | 上海交通大学 | 基于文本编辑和语法纠错的多轮对话改写方法及*** |
CN113688207A (zh) * | 2021-08-24 | 2021-11-23 | 思必驰科技股份有限公司 | 基于网络的结构阅读理解的建模处理方法和装置 |
CN113688207B (zh) * | 2021-08-24 | 2023-11-17 | 思必驰科技股份有限公司 | 基于网络的结构阅读理解的建模处理方法和装置 |
CN113868386A (zh) * | 2021-09-18 | 2021-12-31 | 天津大学 | 一种可控情感对话生成的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11809842B2 (en) | Multi-lingual line-of-code completion system | |
Uc-Cetina et al. | Survey on reinforcement learning for language processing | |
US11914954B2 (en) | Methods and systems for generating declarative statements given documents with questions and answers | |
Arora et al. | Character level embedding with deep convolutional neural network for text normalization of unstructured data for Twitter sentiment analysis | |
Lei et al. | Re-examining the Role of Schema Linking in Text-to-SQL | |
US10671929B2 (en) | Question correction and evaluation mechanism for a question answering system | |
CN104462057B (zh) | 用于产生语言分析的词汇资源的方法和*** | |
Qin et al. | A survey on text-to-sql parsing: Concepts, methods, and future directions | |
Zhang et al. | SG-Net: Syntax guided transformer for language representation | |
CN112035730B (zh) | 一种语义检索方法、装置及电子设备 | |
CN110276071B (zh) | 一种文本匹配方法、装置、计算机设备及存储介质 | |
CN113064985A (zh) | 人机对话方法、电子设备及存储介质 | |
US11934781B2 (en) | Systems and methods for controllable text summarization | |
US20220343082A1 (en) | System and method for ensemble question answering | |
CN107656921B (zh) | 一种基于深度学习的短文本依存分析方法 | |
CN109271524B (zh) | 知识库问答***中的实体链接方法 | |
CN111651198A (zh) | 代码摘要自动化生成方法及装置 | |
Agrawal et al. | Semantic analysis of natural language queries using domain ontology for information access from database | |
US20230111052A1 (en) | Self-learning annotations to generate rules to be utilized by rule-based system | |
CN112905637B (zh) | 基于对话改写模型的多轮文本到sql方法及*** | |
van Cranenburgh | Rich statistical parsing and literary language | |
Noferesti et al. | A hybrid algorithm for recognizing the position of Ezafe constructions in Persian texts | |
Pisařovic et al. | Preprocessing of normative documents for interactive question answering | |
Cordeiro et al. | Rule induction for sentence reduction | |
CN117421392B (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 |