对话状态的识别方法、装置、电子设备和存储介质与流程

文档序号:24406795发布日期:2021-03-26 17:32阅读:107来源:国知局
对话状态的识别方法、装置、电子设备和存储介质与流程

1.本申请涉及计算机技术领域中的语音、自然语言处理、深度学习技术领域,尤其涉及一种对话状态的识别方法、装置、电子设备、存储介质和计算机程序产品。


背景技术:

2.目前,随着人工智能、自然语言处理等技术的发展,对话状态的识别技术也得到了广泛的应用,给人们生活带来很多便利。然而,相关技术中的对话状态的识别方法,需要人工标注大量的样本进行模型的训练,模型的迁移能力较差,在适配新领域的对话状态的任务识别时,需要重新训练模型,消耗较多的人力物力。


技术实现要素:

3.提供了一种对话状态的识别方法、装置、电子设备、存储介质和计算机程序产品。
4.根据第一方面,提供了一种对话状态的识别方法,包括:获取待识别对话;将所述待识别对话作为待解析问题输入至训练好的语义解析模型中,得到所述待识别对话对应的数据库查询语言;根据所述数据库查询语言生成所述待识别对话对应的对话状态。
5.根据第二方面,提供了一种对话状态的识别装置,包括:获取模块,用于获取待识别对话;输入模块,用于将所述待识别对话作为待解析问题输入至训练好的语义解析模型中,得到所述待识别对话对应的数据库查询语言;生成模块,用于根据所述数据库查询语言生成所述待识别对话对应的对话状态。
6.根据第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请第一方面所述的对话状态的识别方法。
7.根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请第一方面所述的对话状态的识别方法。
8.根据第五方面,提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现本公开第一方面所述的对话状态的识别方法。
9.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
10.附图用于更好地理解本方案,不构成对本申请的限定。其中:
11.图1是根据本申请第一实施例的对话状态的识别方法的流程示意图;
12.图2是根据本申请第二实施例的对话状态的识别方法中根据数据库查询语言生成待识别对话对应的对话状态的流程示意图;
13.图3是根据本申请第三实施例的对话状态的识别方法中训练好的语义解析模型的
获取的流程示意图;
14.图4是根据本申请第一实施例的对话状态的识别装置的框图;
15.图5是根据本申请第二实施例的对话状态的识别装置的框图;
16.图6是用来实现本申请实施例的对话状态的识别方法的电子设备的框图。
具体实施方式
17.以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
18.语音可包括语音识别、语音交互等技术领域,是人工智能领域中的一个重要方向。
19.语音识别(voice recognition)是一种让机器通过识别和理解过程把语音信号转变为相应的文本或命令的技术,主要包括特征提取技术、模式匹配准则及模型训练技术三个方面。
20.语音交互(voice interaction)是一种机器与用户以语音为信息载体进行互动、沟通、信息交换等交互行为的技术,相较于传统的人机交互,具有方便快捷、用户舒适性高的优点。
21.自然语言处理(natural language processing,nlp)是研究能有效地实现自然语言通信的计算机系统,特别是其中的软件系统的一门科学,是计算机科学领域与人工智能领域中的一个重要方向。
22.深度学习(deep learning,dl)是机器学习(machine learning,ml)领域中一个新的研究方向,是学习样本数据的内在规律和表示层次,使得机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据的一门科学,广泛应用于语音和图像识别。
23.图1是根据本申请第一实施例的对话状态的识别方法的流程示意图。
24.如图1所示,本申请第一实施例的对话状态的识别方法包括:
25.s101,获取待识别对话。
26.需要说明的是,本申请实施例的对话状态的识别方法的执行主体可为具有数据信息处理能力的硬件设备和/或驱动该硬件设备工作所需必要的软件。可选的,执行主体可包括工作站、服务器,计算机、用户终端及其他设备。其中,用户终端包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端等。
27.可选的,待识别对话可通过录制、网路传输等方式获取。
28.例如,当采用录制的方式获取待识别对话时,设备上具有对话采集装置,对话采集装置可为麦克风(microphone)、麦克风阵列(microphone array)等。或者,当采用网络传输的方式获取待识别对话时,设备上具有联网装置,可通过联网装置与其他设备或者服务器进行网络传输。
29.可以理解的是,待识别对话可为音频、文本等形式,这里不做过多限定。
30.s102,将待识别对话作为待解析问题输入至训练好的语义解析模型中,得到待识别对话对应的数据库查询语言。
31.本申请的实施例中,获取待识别对话之后,可将待识别对话作为待解析问题输入
至训练好的语义解析模型中,得到待识别对话对应的数据库查询语言。
32.其中,数据库查询语言可包括sql(structured query language,结构化查询语言)等,这里不做过多限定。可选的,当得到的待识别对话对应的数据库查询语言为sql时,此时语义解析模型可为文本转结构化查询语言模型。
33.可选的,将待识别对话作为待解析问题输入至训练好的语义解析模型中,得到待识别对话对应的数据库查询语言,可包括预先建立词语与数据库查询语言之间的映射关系或者映射表,语义解析模型可将待识别对话划分成多个槽位,之后查询映射关系或者映射表,得到每个槽位对应的数据库查询语言,按照预设规则组合之后可得到待识别对话对应的数据库查询语言。应说明的是,上述映射关系或者映射表可根据实际情况进行设置。
34.可以理解的是,不同的槽位可对应不同的数据库查询语言。可选的,槽位可包括信息槽位和请求槽位。
35.例如,若待识别对话为“北京的面积是多少”,数据库查询语言为sql时,则可获取“地点”、“查询属性”两个槽位,“地点”槽位为信息槽位,“查询属性”槽位为请求槽位,“地点”槽位的槽值为“北京”,“查询属性”槽位的槽值为“面积”,“地点”槽位可映射到sql中的“where”,“查询请求”槽位可映射到sql中的“select”。
36.或者,若待识别对话为“三年级人数最多的班级是哪个”,数据库查询语言为sql时,则可获取“年级”、“查询数量”、“汇总条件”、“查询属性”四个槽位,“年级”、“查询数量”、“汇总条件”这三个槽位为信息槽位,“查询属性”槽位为请求槽位,“年级”槽位对应的槽值为“03”,“查询数量”槽位对应的槽值为“最大的1个”、“汇总条件”槽位对应的槽值为“班级”、“查询属性”槽位对应的槽值为“班级”。“年级”槽位可映射到sql中的“where”,“查询数量”槽位可映射到sql中的“order by”,“汇总条件”槽位可映射到sql中的“group by”,“查询请求”槽位可映射到sql中的“select”。
37.可以理解的是,本申请中的语义解析模型可适用于所有领域的对话状态的识别,在适配新领域的对话状态的识别任务时,不需要重新训练模型,适用性较高,相较于相关技术中模型泛化能力差,在适配新领域的对话状态的识别任务时,需要人工标注大量样本重新训练模型,节省了大量的人力物力,成本较低。
38.s103,根据数据库查询语言生成待识别对话对应的对话状态。
39.本申请的实施例中,获取待识别对话对应的数据库查询语言之后,可根据数据库查询语言生成待识别对话对应的对话状态。
40.可选的,根据数据库查询语言生成待识别对话对应的对话状态,可包括预先建立数据库查询语言和对话状态之间的映射关系或者映射表,获取数据库查询语言之后,查询映射关系或者映射表,能够获取到对应的对话状态。应说明的是,上述映射关系或者映射表可根据实际情况进行设置。
41.综上,根据本申请实施例的对话状态的识别方法,可将待识别对话作为待解析问题输入至训练好的语义解析模型中,得到待识别对话对应的数据库查询语言,之后可根据数据库查询语言生成待识别对话对应的对话状态,该方法中语义解析模型可适用于所有领域的对话状态的识别,在适配新领域的对话状态的识别任务时,不需要重新训练模型,适用性较高,节省了大量的人力物力,成本较低。
42.在上述任一实施例的基础上,如图2所示,步骤s103中根据数据库查询语言生成待
识别对话对应的对话状态,包括:
43.s201,根据数据库查询语言获取待识别对话对应的对话意图和槽位。
44.本申请的实施例中,待识别对话的对话状态可包括对话意图和槽位。
45.例如,若待识别对话为“北京的面积是多少”,对应的数据库查询语言可为“select面积from城市信息表where地点=北京”,其中,对话意图对应的数据库查询语言为“from城市信息表”,可获取对话意图为地理信息查询,槽位的相关内容可参见上述实施例。
46.或者,若待识别对话为“三年级人数最多的班级是哪个”,对应的数据库查询语言可为“select班级from学生表where年级=03group by班级order by count(*)desc limit 1”,其中,对话意图对应的数据库查询语言可为“from学生表”,可获取对话意图为学生信息查询,槽位的相关内容可参见上述实施例。
47.s202,根据对话意图和槽位生成对话状态。
48.举例而言,若待识别对话为“北京的面积是多少”,则由上述分析可知,该对话对应的对话状态包括的对话意图为地理信息查询,包括的槽位为地点:北京、查询属性:面积。
49.或者,若待识别对话为“三年级人数最多的班级是哪个”,则由上述分析可知,该对话对应的对话状态包括的对话意图为学生信息查询,包括的槽位为查询属性:班级、年级:03、查询数量:最大的1个、汇总条件:班级。
50.由此,该方法可根据数据库查询语言获取待识别对话对应的对话意图和槽位,并根据对话意图和槽位生成对话状态,能够判断槽位之间的关系以及槽位与其他对话成分之间的关系,生成的对话状态更准确。
51.在上述任一实施例的基础上,如图3所示,步骤s102中训练好的语义解析模型的获取,可包括:
52.s301,获取语义解析任务对应的第一语义解析训练数据,第一语义解析训练数据包括第一样本问题和第一样本数据库查询语言。
53.本申请的实施例中,可获取大量的语义解析任务对应的第一语义解析训练数据,用于训练语义解析模型。
54.s302,获取对话任务对应的第二语义解析训练数据,第二语义解析训练数据包括第二样本问题和第二样本数据库查询语言。
55.本申请的实施例中,可获取大量的对话任务对应的第二语义解析训练数据,用于训练语义解析模型。
56.可以理解的是,对话任务可包括多个领域的对话任务,从而根据多个领域的对话任务对应的第二语义解析训练数据,训练语义解析模型,可提高语义解析模型的性能。
57.可选的,获取对话任务对应的第二语义解析训练数据,可包括获取对话任务对应的样本对话和样本对话状态,将样本对话作为第二样本问题,根据样本对话状态生成第二样本数据库查询语言。
58.可以理解的是,可将样本对话直接作为第二样本问题,样本对话状态可包括对话意图和槽位,则可根据样本对话状态中的对话意图和槽位,生成第二样本数据库查询语言。
59.例如,可在数据库中预先设置表格,每个对话意图可对应数据库中的一个表格,每个槽位可对应每个表格中的列,并将槽位对应的槽值作为该列下的值。以数据库查询语言为sql为例,请求槽位可对应表格中的select列,信息槽位中,若为“年级”、“地点”这样的具
体信息槽位,可对应表格中的where条件列,若为排序信息槽位,可对应表格中的order by列,若为分组信息槽位,可对应表格中的group by列。
60.由此,该方法可根据对话任务对应的样本对话和样本对话状态,生成对话任务对应的第二语义解析训练数据。
61.s303,根据第一语义解析训练数据和第二语义解析训练数据对待训练的语义解析模型进行训练,得到训练好的语义解析模型。
62.由此,可根据语义解析任务对应的第一语义解析训练数据和对话任务对应的第二语义解析训练数据,并根据上述第一语义解析训练数据和第二语义解析训练数据联合训练语义解析模型,可使得语义解析模型可满足对话任务的识别需求。
63.图4是根据本申请第一实施例的对话状态的识别装置的框图。
64.如图4所示,本申请实施例的对话状态的识别装置400,包括:获取模块401、输入模块402和生成模块403。
65.获取模块401,用于获取待识别对话;
66.输入模块402,用于将所述待识别对话作为待解析问题输入至训练好的语义解析模型中,得到所述待识别对话对应的数据库查询语言;
67.生成模块403,用于根据所述数据库查询语言生成所述待识别对话对应的对话状态。
68.在本申请的一个实施例中,所述语义解析模型为文本转结构化查询语言模型。
69.综上,本申请实施例的对话状态的识别装置,可将待识别对话作为待解析问题输入至训练好的语义解析模型中,得到待识别对话对应的数据库查询语言,之后可根据数据库查询语言生成待识别对话对应的对话状态,该方法中语义解析模型可适用于所有领域的对话状态的识别,在适配新领域的对话状态的识别任务时,不需要重新训练模型,适用性较高,节省了大量的人力物力,成本较低。
70.图5是根据本申请第二实施例的对话状态的识别装置的框图。
71.如图5所示,本申请实施例的对话状态的识别装置500,包括:获取模块501、输入模块502、生成模块503和训练模块504。
72.其中,获取模块501与获取模块401具有相同功能和结构,输入模块502与输入模块402具有相同功能和结构,生成模块503与生成模块403具有相同功能和结构。
73.在本申请的一个实施例中,所述生成模块503,包括:第一获取单元5031,用于根据所述数据库查询语言获取所述待识别对话对应的对话意图和槽位;生成单元5032,用于根据所述对话意图和槽位生成所述对话状态。
74.在本申请的一个实施例中,所述训练模块504,包括:第二获取单元5041,用于获取语义解析任务对应的第一语义解析训练数据,所述第一语义解析训练数据包括第一样本问题和第一样本数据库查询语言;第三获取单元5042,用于获取对话任务对应的第二语义解析训练数据,所述第二语义解析训练数据包括第二样本问题和第二样本数据库查询语言;训练单元5043,用于根据所述第一语义解析训练数据和所述第二语义解析训练数据对待训练的语义解析模型进行训练,得到所述训练好的语义解析模型。
75.在本申请的一个实施例中,所述第三获取单元5042,包括:获取子单元,用于获取所述对话任务对应的样本对话和样本对话状态;设置子单元,用于将所述样本对话作为所
述第二样本问题;生成子单元,根据所述样本对话状态生成所述第二样本数据库查询语言。
76.综上,本申请实施例的对话状态的识别装置,可将待识别对话作为待解析问题输入至训练好的语义解析模型中,得到待识别对话对应的数据库查询语言,之后可根据数据库查询语言生成待识别对话对应的对话状态,该方法中语义解析模型可适用于所有领域的对话状态的识别,在适配新领域的对话状态的识别任务时,不需要重新训练模型,适用性较高,节省了大量的人力物力,成本较低。
77.根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
78.如图6所示,是根据本申请实施例的对话状态的识别方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,智能语音交互设备、个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
79.如图6所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器601可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示gui的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器601为例。
80.存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的对话状态的识别方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的对话状态的识别方法。
81.存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的对话状态的识别方法对应的程序指令/模块(例如,附图4所示的获取模块401、输入模块402和生成模块403)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的对话状态的识别方法。
82.存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据对话状态的识别方法的电子设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至对话状态的识别方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
83.对话状态的识别方法的电子设备还可以包括:输入装置603和输出装置604。处理
器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式连接,图6中以通过总线连接为例。
84.输入装置603可接收输入的数字或字符信息,以及产生与对话状态的识别方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604可以包括显示设备、辅助照明装置(例如,led)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(lcd)、发光二极管(led)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
85.此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用asic(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
86.这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(pld)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
87.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
88.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
89.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端

服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务("
virtual private server",或简称"vps")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
90.根据本申请的实施例,本申请还提供了一种计算机程序产品,包括计算机程序,其中,所述计算机程序被处理器执行时实现本申请上述实施例所述的对话状态的识别方法。
91.根据本申请实施例的技术方案,可将待识别对话作为待解析问题输入至训练好的语义解析模型中,得到待识别对话对应的数据库查询语言,之后可根据数据库查询语言生成待识别对话对应的对话状态,该方法中语义解析模型可适用于所有领域的对话状态的识别,在适配新领域的对话状态的识别任务时,不需要重新训练模型,适用性较高,节省了大量的人力物力,成本较低。
92.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
93.上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1