一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

任务型对话系统中的自然语言识别方法、装置及设备与流程

2022-04-16 13:49:04 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种任务型对话系统中的自然语言识别方法、装置及设备。


背景技术:

2.开放式对话平台中包括多个不同功能的任务型对话系统,任务型对话系统为可以帮助用户解决特定任务的对话系统,每个任务型对话系统对应一个相关技能,例如在机票领域帮助用户查询、预定相关机票的技能,任务型对话系统通过自然语言理解模型来正确理解技能相关的各种可能的用户输入,相关技术中,开放式对话平台允许开发者自主开发新的技能。开放式对话平台支持的技能数量大大影响用户的使用体验,因此,可以使开发者更快速、更容易的开发新技能已经成为开放式对话平台的核心能力。
3.在开发新的技能时,为了实现鲁棒的自然语言理解模型,需要开发者编写大量的技能相关的语料,并且将编写的语料进行标注,以此为自然语言理解模型提供样本数据,开发者通常需要撰写并标注成千上万条语料才可以训练得到一个较好的自然语言理解模型,从而实现对对话型任务的识别,这就需要开发者付出巨大的人力成本和时间成本,影响了开发效率。因此如何提高自然语言的标注效率和对话型任务识别效率,是一个需要考虑的问题。


技术实现要素:

4.本技术实施例提供一种任务型对话系统中的自然语言识别方法、装置及设备,用于提高自然语言的标注效率和任务型对话系统的开发效率。
5.本技术第一方面,提供一种任务型对话系统中的自然语言识别方法,包括:
6.根据待识别的自然语言的语义信息和任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与待识别的自然语言的语义相匹配的目标技能;
7.根据待识别的自然语言的语义信息和目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
8.根据目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
9.根据目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,获得待识别的自然语言的对话型任务识别结果。
10.在一种可能的实现方式中,还包括:
11.对识别为未训练对话型任务的自然语言进行标注;
12.获得未训练对话型任务的样本数据;
13.基于获得的样本数据对所述技能分类模型、意图识别模型和槽位提取模型进行更新训练;并
14.将所述未训练对话型任务更新为已训练对话型任务。
15.本技术第二方面,提供一种任务型对话系统中的自然语言标注方法,包括:
16.根据待识别的自然语言的语义信息和所述任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与所述待识别的自然语言的语义相匹配的目标技能;
17.根据所述待识别的自然语言的语义信息和所述目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与所述待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
18.根据所述目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从所述待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
19.根据所述目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,对所述待识别的自然语言进行标注,获得对话型任务的样本数据。
20.本技术第三方面,提供一种任务型对话系统中的自然语言识别装置,包括:
21.第一技能确定单元,用于根据待识别的自然语言的语义信息和所述任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与所述待识别的自然语言的语义相匹配的目标技能;
22.第一意图确定单元,用于根据所述待识别的自然语言的语义信息和所述目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与所述待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
23.第一槽位确定单元,用于根据所述目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从所述待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
24.识别单元,用于根据所述目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,获得所述待识别的自然语言的对话型任务识别结果。
25.在一种可能的实现方式中,所述目标技能是基于已训练的技能分类模型获得的,所述目标意图是基于已训练的意图识别模型获得的,所述槽位信息是基于已训练的槽位提取模型获得的,其中:
26.所述对话型任务包括已训练对话型任务和未训练对话型任务,所述技能分类模型、意图识别模型和槽位提取模型,是采用各个已训练对话型任务的样本数据训练得到的;
27.所述未训练对话型任务包括:技能描述信息、各个备选意图的意图描述信息,以及每个备选意图的备选槽位描述信息。
28.在一种可能的实现方式中,所述技能分类模型包括第一向量表示模块和第一分类模块,训练所述技能分类模型的技能分类语料样本对应每个已训练对话型任务至少包括一个样本,每个技能分类语料样本标注有所属对话型任务的相似概率值,所述已训练的技能
分类模型通过以下方式训练:
29.基于第一向量表示模块分别获得各个已训练任务的技能描述信息的第一目标向量表示;
30.针对每个技能分类语料样本,基于第一向量表示模块获得技能分类语料样本的第一参考向量表示;
31.基于第一分类模块分别获得第一参考向量表示和各个第一目标向量表示之间的第一相似度;
32.基于获得的各个第一相似度调整第一向量表示模块和第一分类模块的参数,直至第一相似度满足设定条件。
33.在一种可能的实现方式中,技能确定单元具体用于:
34.基于第一向量表示模块分别获得每个已训练对话型任务和未训练对话型任务的技能描述信息的第一对照向量表示;
35.基于所述第一向量表示模块获得所述待识别自然语料的第一待识别向量表示;
36.基于第一分类模块分别获得第一对照向量表示和各个第一待识别向量表示之间的第二相似度,以及基于第二相似度获得分类结果。
37.在一种可能的实现方式中,所述意图识别模型包括第二向量表示模块和第二分类模块,训练所述意图识别模型的意图识别语料样本对应每个已训练对话型任务至少包括一个样本,每个意图识别语料样本标注有所属备选意图的相似概率值,所述已训练的意图识别模型通过以下方式训练:
38.基于第二向量表示模块分别获得各个已训练任务中各个子任务对应的意图描述信息的第二目标向量表示;
39.针对每个意图识别语料样本,基于第二向量表示模块获得意图识别语料样本的第二参考向量表示;
40.基于第二分类模块分别获得第二参考向量表示和各个第二目标向量表示之间的第三相似度;
41.基于获得的各个第三相似度调整第二向量表示模块和第二分类模块的参数,直至第三相似度满足设定条件。
42.在一种可能的实现方式中,意图确定单元具体用于:
43.基于第二向量表示模块分别获得已训练对话型任务中各个子任务和未训练对话型任务中各个子任务的意图描述信息的第二对照向量表示;
44.基于所述第二向量表示模块获得所述待识别自然语料的第二待识别向量表示;
45.基于第二分类模块分别获得第二对照向量表示和各个第二待识别向量表示之间的第四相似度,以及基于第四相似度获得分类结果。
46.在一种可能的实现方式中,所述槽位提取模型包括第三向量表示模块和槽位提取模块,训练所述槽位提取模型的槽位提取语料样本对应每个已训练对话型任务至少包括一个样本,每个槽位提取语料样本标注有所属备选槽位的参考槽位信息,所述已训练的槽位提取模型通过以下方式训练:
47.针对每个槽位提取语料样本,基于第三向量表示模块获得槽位提取语料样本的第三参考向量表示;
48.基于槽位提取模块分别获得第三参考向量表示中对应各个备选槽位的槽位描述信息的第一目标槽位信息;
49.基于获得的各个第一目标槽位信息调整第三向量表示模块和槽位提取模块的参数,直至获得的第一目标槽位信息满足设定条件。
50.在一种可能的实现方式中,槽位确定单元具体用于:
51.基于所述第三向量表示模块获得所述待识别自然语料的第三待识别向量表示;
52.基于槽位提取模块分别获得第三待识别向量表示的第二目标槽位信息,以及基于所述第二目标槽位信息获得分类结果。
53.在一种可能的实现方式中,还包括第一标注单元,具体用于:
54.对识别为未训练对话型任务的自然语言进行标注;
55.获得未训练对话型任务的样本数据;
56.基于获得的样本数据对所述技能分类模型、意图识别模型和槽位提取模型进行更新训练;并
57.将所述未训练对话型任务更新为已训练对话型任务。
58.本技术第四方面,提供一种任务型对话系统中的自然语言标注装置,包括:
59.第二技能确定单元,用于根据待识别的自然语言的语义信息和所述任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与所述待识别的自然语言的语义相匹配的目标技能;
60.第二意图确定单元,用于根据所述待识别的自然语言的语义信息和所述目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与所述待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
61.第二槽位确定单元,用于根据所述目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从所述待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
62.第二标注单元,用于根据所述目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,对所述待识别的自然语言进行标注,获得对话型任务的样本数据。
63.在一种可能的实现方式中,所述目标技能是基于已训练的技能分类模型获得的,所述目标意图是基于已训练的意图识别模型获得的,所述槽位信息是基于已训练的槽位提取模型获得的,其中:
64.所述对话型任务包括已训练对话型任务和未训练对话型任务,所述技能分类模型、意图识别模型和槽位提取模型,是采用各个已训练对话型任务的样本数据训练得到的。
65.在一种可能的实现方式中,还包括训练单元,具体用于:
66.根据获得的样本数据,进一步对所述技能分类模型、意图识别模型和槽位提取模型进行更新训练,其中,当获得的样本数据中包括识别为未训练对话型任务的自然语言时,在更新训练后将所述未训练对话型任务更新为已训练对话型任务。
67.本技术第五方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现第一方面的方法。
68.本技术第六方面,提供一种计算机可读存储介质,计算机可读存储介质存储有计
算机指令,当计算机指令在计算机上运行时,使得计算机执行如第一方面的方法。
69.由于本技术实施例采用上述技术方案,至少具有如下技术效果:
70.本技术通过将待识别的自然语言的语义信息直接与任务型对话系统的技能描述信息之间进行匹配,这样可以在任务型对话系统对应的多个技能中确定待识别的自然语言所属的技能,且通过将识别的自然语言的语义信息直接与所属技能对应的意图描述信息之间进行匹配,就可以确定待识别的自然语言的所属意图,并通过备选槽位的槽位描述信息和槽位提取条件,确定待识别的自然语言中的槽位信息,进而对待识别的自然语言进行识别,在开发新技能时,可以根据新技能的技能描述信息、意图描述信息和槽位描述信息,从自然语言库中获得与新技能匹配的自然语言,进而自动完成对自然语言的标注,从而获得新技能的样本数据,不需要人工撰写并标注大量的样本数据,只需要定义好想要开发新技能的技能描述信息、意图描述信息及备选槽位描述信息,便能够使任务型对话系统获得新技能的样本数据,进而可以利用获得的样本数据训练对话型任务系统,从而简化了新技能开发的过程,节省了时间成本和人力成本,使得开发者能够更加快速、便捷的开发新的技能。
附图说明
71.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
72.图1为本技术实施例中一种机票领域的技能相关信息、意图相关信息及槽位相关信息的示例图;
73.图2为本技术实施例中一种对用户输入的自然语言进行标注的示例图;
74.图3为本技术实施例适用的一种应用场景的示意图;
75.图4为本技术实施例中的任务型对话系统中的自然语言识别方法的流程示例图;
76.图5为本技术实施例相关技术中多个自然语言理解模型示例图;
77.图6为本技术实施例中一种通用自然语言理解模型示例图;
78.图7为本技术实施例中一种通用自然语言理解模型的结构示例图;
79.图8为本技术实施例中一种技能分类模型的结构示例图;
80.图9为本技术实施例中一种基于bert的分类模型的结构示例图;
81.图10为本技术实施例中一种意图识别模型的结构示例图;
82.图11为本技术实施例中一种槽位提取模型的结构示例图;
83.图12为本技术实施例中一种基于bert的qa模型的结构示例图;
84.图13为本技术实施例提供的一种天气对话型任务的技能描述信息和部分样例的样本数据示例图;
85.图14为本技术实施例提供的一种航班对话型任务的技能描述信息和部分样例的样本数据示例图;
86.图15为本技术实施例提供的一种酒店对话型任务的技能描述信息和待识别的自然语言示例图;
87.图16为本技术实施例提供的一种酒店对话型任务的自然语言识别结果示例图;
88.图17为本技术实施例中的任务型对话系统中的自然语言标注方法的流程示例图;
89.图18为本技术实施例中的任务型对话系统中的自然语言识别装置的结构示意图;
90.图19为本技术实施例中的任务型对话系统中的自然语言标注装置的结构示意图;
91.图20为本技术实施例中的计算设备的结构示意图。
具体实施方式
92.为使本技术的目的、技术方案和优点更加清楚明白,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于申请保护的范围。在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互任意组合。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
93.本技术的说明书和权利要求书及上述附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术中的“多个”可以表示至少两个,例如可以是两个、三个或者更多个,本技术实施例不做限制。
94.本技术实施例涉及人工智能(artificial intelligence,ai)和机器学习技术,基于人工智能中的自然语言处理技术和机器学习(machine learning,ml)而设计。
95.人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术主要包括计算机视觉技术、自然语言处理技术、以及机器学习/深度学习等几大方向。
96.随着人工智能技术研究和进步,人工智能在多个领域展开研究和应用,例如常见的智能家居、智能客服、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、机器人、智能医疗等,相信随着技术的发展,人工智能将在更多的领域得到应用,并发挥越来越重要的价值。
97.机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。本技术实施例在视频标题的语义特征提取过程中,采用基于机器学习或深度学习的语义特征提取模型对具有类别标签的视频标题样本进行学习,从而可以提取输入的视频标题的语义特征的特征向
量。
98.自然语言处理技术,是计算机科学领域与人工智能领域中的一个重要方向。其研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本生成、文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。本技术实施例采用自然语言处理技术中的语义理解技术,对各个视频的视频标题进行语义理解,并基于得到的可以表征视频标题的语义特征的特征向量,对视频数据集中的每个视频进行聚类处理,得到多个视频集合。
99.为了便于本领域技术人员更好地理解本技术的技术方案,下面对本技术涉及的技术名词进行说明。
100.1)任务型对话系统:指帮助用户解决特定任务的对话系统,在特定条件下提供信息或服务。通常情况下是为了满足带有明确目的的用户,例如查流量,查话费,订餐,订票,咨询等任务型场景,区别于闲聊型对话系统。由于用户的需求较为复杂,通常情况下需分多轮互动,用户也可能在对话过程中不断修改与完善自己的需求,任务型对话系统需要通过询问、澄清和确认来帮助用户明确目的。任务型对话系统的核心模块主要包括自然语言理解模块(natural language understanding)、对话管理模块(dialog management)和自然语言生成模块(natural language generation)。
101.2)query:用户向任务型对话系统输入的自然语言,例如用户的需求为预定机票,则可以向任务型对话系统输入“我想预定一张今天晚上到北京的高铁”等请求。
102.3)自然语言理解(natural language understanding,nlu)、领域、意图以及槽位;
103.自然语言理解:任务型对话系统中的自然语言理解技术。当用户输入的自然语言经过自然语言理解模块时,即需要经过领域识别,用户意图识别以及槽位提取三个子模块;
104.领域:用户需要完成的特定任务所在的领域,如机票领域,餐厅领域,音乐领域等。在任务型对话系统中,领域通常由一组意图和槽位定义而成。
105.意图:在某个特定领域内,通常会有一些细分的用户意图,例如机票领域可以有查找机票意图,预定机票意图,退订机票意图等。
106.槽位:表示在特定领域内要完成任务时需要收集的关键信息,例如在机票领域中,有出发城市、目的城市、出发日期等槽位,每个槽位需要识别出相应的关键信息,例如出发城市:北京,目的城市:深圳,出发日期:*月*日等。
107.4)应用,即应用程序,可以完成某项或多项业务的计算机程序,一般具有可视的显示界面,能与用户进行交互,比如电子地图和日历等都可以称为应用。其中,有些应用需要用户安装到所使用的终端设备上才可以使用,有些则并不需要进行应用安装,例如,某些社交应用中的各个小程序、网页等。小程序不需要下载安装即可使用,用户扫一扫或者搜一下即可打开应用。
108.5)客户端(client)或称为用户端,是指与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端互相配合运行。因特网发展以后,较常用的用户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通信的客户端软件等。对于这一类应用程序,需要
网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,电子邮件服务等等,这样在客户机和服务器端,需要建立特定的通信连接,来保证应用程序的正常运行。
109.下面对本技术的设计思想进行说明。
110.相关技术中,不同的任务型对话系统是分别进行开发的,开放式对话平台配置一个新技能的自然语言理解能力通常需要三个主要步骤:
111.1)定义技能相关的意图和槽位:一个技能通常会包含一个或多个意图,在定义好一个技能的意图和槽位后,该技能对应的自然语言理解模块需要识别用户输入的自然语言中对应该技能的意图,并将用户输入的自然语言中的槽位信息提取出来,需要说明的是,相关技术中,自然语言理解模型与技能为一一对应关系,如图1所示为本技术实施例提出的机票领域的技能相关信息、意图相关信息及槽位相关信息。
112.2)编写和标注与技能相关的语料:目前开放式对话平台的自然语言理解模块通常基于机器学习的方法,为了训练出性能较好的自然语言理解模型,必须针对需要开发的对话型任务提供大量的标注数据。因此,开发者首先要编写可能触发该技能的用户自然语言,然后对用户自然语言中的意图和涉及的槽位进行标注。由于自然语言的多样性和丰富性,为了可以训练出鲁棒的自然语言理解模型,通常需要开发者编写大量且丰富多样的自然语言数据,并对这些数据进行标注,如图2所示为对用户输入的自然语言进行标注的示意图。
113.3)利用标注好的数据进行模型训练。在得到标注数据后,可以开始进行自然语言理解模型的训练,其中意图识别执行的是分类任务,可以但不限于采用textcnn、lstm(long short-term memory,长短期记忆网络)等分类模型;槽位提取是序列标注任务,可以但不限于采用lstm模型与crf(conditional random field,条件随机场)模型的结合。
114.在上述三个步骤中,每个对话型任务的样本数据的编写和标注工作通常耗费大量的人力成本和时间成本,为开发新技能造成障碍。
115.为了更快速、更便捷的开发任务型对话系统对应的技能,本技术实施例考虑到相关对话型任务的相似性,提出一种通用任务型对话系统,通用任务型对话系统的样本数据包括各个对话型任务分别训练时采用的样本数据,训练后的通用任务型对话系统可以学习到各个对话型任务的通用特征,然后在使用时,通过将待识别的自然语言的语义信息直接与各个对话型任务的描述信息进行匹配,根据相似度确定待识别的自然语言的识别结果,这样,既可以利用一套系统实现多个任务型对话系统的功能,还可以在需要开发新的任务型对话系统时,将需要开发的新任务型对话系统的描述信息和待识别的自然语言进行相似性匹配,将匹配到的自然语言作为训练新任务型对话系统的备选语料,对获得的备选语料进行整理和标注后,就可以作为样本数据训练新任务型对话系统。因此,本技术实施例提供的通用型任务型对话系统,既可以针对待识别自然语言进行对话型任务的识别,也可以为新任务型对话系统的训练找到样本数据,从而极大的提高了任务型对话系统的开发效率。
116.具体的,将待识别的自然语言的语义信息和不同对话型任务的技能描述信息之间进行匹配,这样可以在任务型对话系统对应的多个技能中确定待识别的自然语言所属的技能,且通过将识别的自然语言的语义信息直接与所属技能对应的意图描述信息之间进行匹配,就可以确定待识别的自然语言的所属意图,并通过备选槽位的槽位描述信息和槽位提取条件,确定待识别的自然语言中的槽位信息,进而对待识别的自然语言进行识别,与相关技术中任务型对话系统中每个自然语言理解模型对应一个技能相比,本技术的任务型对话
系统对应一个自然语言理解模型,该自然语言理解模型对应多个不同的技能,因此在开发新技能时,不需要撰写并标注大量的样本数据,只需要定义好想要开发新技能的技能描述信息、意图描述信息及备选槽位描述信息,便能够使任务型对话系统增加一项新的技能,简化了新技能开发的过程,节省了时间成本和人力成本,使得开发者能够更加快速、便捷的开发新的技能。
117.需要说明的是,本技术的任务型对话系统也可以在识别用户输入的自然语言对应技能、意图及槽位信息的基础上,将识别到的技能、意图及槽位信息标注用户输入的自然语言上,并将标注好的自然语言作为对应技能的样本数据,或者在通过任务型对话系统对自然语言进行预标注的基础上,再通过人工进行校对或标注,以进一步降低标注数据需要的人力成本。
118.特别需要说明的是,当需要开发新的对话型任务时,可以将对识别为未训练对话型任务的自然语言进行标注,获得未训练对话型任务的样本数据,基于获得的样本数据对所述技能分类模型、意图识别模型和槽位提取模型进行更新训练;并将所述未训练对话型任务更新为已训练对话型任务,其中,对识别为未训练对话型任务的自然语言进行标注,可以但不限于为识别到未训练对话型任务的自然语言后,通过人工进行标注,或者直接通过技能分类模型、意图识别模型和槽位提取模型确定未训练对话型任务的自然语言的目标技能、目标意图和槽位信息后进行标注,或者再通过人工进行校正标注;通过获得的样本数据对技能分类模型、意图识别模型和槽位提取模型进行更新训练,可以提高技能分类模型、意图识别模型和槽位提取模型的识别准确度。
119.为更好地理解本技术实施例提供的技术方案,下面对本技术实施例提供的技术方案适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
120.参考图3,其为本技术实施例提供的一种任务型对话系统中的自然语言识别方法的应用场景示意图。该应用场景包括多个终端设备301和服务器302。其中,终端设备301和服务器302之间通过无线或有线的通信网络连接,终端设备301包括但不限于桌面计算机、移动电话、移动电脑、平板电脑、媒体播放器、智能可穿戴设备、智能电视、车载设备、个人数字助理(personal digital assistant,pda)、等电子设备。服务器302可以是一台服务器、若干台服务器组成的服务器集群或云计算中心。
121.终端设备301中安装有客户端,该客户端可以由服务器302提供任务型对话系统中的自然语言识别服务、对话管理系统服务、及自然语言生成服务等,或者由服务器302提供自然语言中的标注服务,终端设备301中的客户端中包含一个通用的任务型对话系统,该通用任务型对话系统可以识别多个技能对应的自然语言,需要说明的是,自然语言识别服务中得到自然语言中的技能信息、领域信息及槽位信息作为对话管理系统的输入。对话管理系统包括两部分,状态追踪以及对话策略,状态追踪模块包括持续对话的各种信息,根据旧状态,自然语言识别服务的标注信息与系统状态(即通过与数据库的查询情况)来更新当前的对话状态,例如,针对“我想要订一张去北京的机票”的自然语言,状态追踪模块可以直接进行前往北京机票的查询并获得相关信息,而对话策略与所在任务场景息息相关,通常作为对话管理模块的输出,如对该场景下缺失槽位的反问策略等,例如上述自然语言中在预
定机票的相关服务中,缺少出行时间的槽位信息,则任务型对话系统可以向用户进行咨询或者提醒。
122.本技术实施例中,终端设备301的客户端在接收到用户的自然语言后,通过自然语言识别服务确定用户输入自然语言的技能、意图和槽位信息,进而为用户提供相应的服务,作为一种可选地实施方式,终端设备301的客户端在接收到用户的自然语言后,通过识别得到的技能、意图和槽位信息对自然语言进行标注,以得到新的样本数据,当然,终端设备301的客户端也可以在接收到用户的自然语言后,即为用户提供相关服务,同时将识别得到的技能、意图及槽位信息标注后作为样本数据。
123.当然,本技术实施例提供的方法并不限用于图3所示的应用场景中,还可以用于其它可能的应用场景,本技术实施例并不进行限制。对于图3所示的应用场景的各个设备所能实现的功能将在后续的方法实施例中一并进行描述,在此先不过多赘述。
124.为进一步说明本技术实施例提供的技术方案,下面结合附图以及具体实施方式对此进行详细的说明。虽然本技术实施例提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在方法中可以包括更多或者更少的操作步骤。在逻辑上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本技术实施例提供的执行顺序。方法在实际的处理过程中或者装置执行时,可按照实施例或者附图所示的方法顺序执行或者并行执行。
125.本技术提供一种任务型对话系统中的自然语言识别方法,该方法可以由任务型对话服务器执行,例如由图3中的服务器302执行。本技术实施例提供的任务型对话系统中的自然语言识别方法如图4所示,图4所示的流程图描述如下。
126.步骤s401,根据待识别的自然语言的语义信息和任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与待识别的自然语言的语义相匹配的目标技能;
127.本技术实施例中的待识别的自然语言为用户输入的自然语言,也即用户需要完成的特定任务,与相关技术相比,当前的任务型对话系统仅支持提前训练好的对话型任务,而本技术实施例中,只要开发者提前定义好对话型任务的技能描述信息、各个备选意图的意图描述信息,以及每个备选意图的备选槽位描述信息,就可以为用户提供相关服务,而无需提前进行一一训练。
128.如图5所示,相关技术中任务型对话系统中的每个领域都对应一个自然语言理解模型,且每个自然语言理解模型的领域已经确定,因此每个领域对应的自然语言理解模型都需要通过该领域标注好的样本数据进行训练,大大增加了样本数据撰写和标注的人力成本和时间成本,本技术实施例的任务型对话系统如图6所示,本技术实施例的任务型对话系统对应一个通用的自然语言理解模型,该通用的自然语言理解模型对应多个不同的技能,需要说明的是,每个对话型任务对应一个对应技能。本技术实施例中提前定义好对话型任务的技能描述信息,通过将待识别的自然语言的语义信息与任务型对话系统中各个对话型任务的技能描述信息之间进行匹配,根据待识别的自然语言的语义信息和任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与待识别的自然语言的语义相匹配的目标技能,其中,匹配条件可以但不限于确定待识别的自然语言的语义信息与任务型对话系统中各个对话型任务的技能描述信息之间的相似度,确定相似
度达到目标阈值的对话型任务为与待识别的自然语言相匹配的目标技能,或者,确定相似度最大的对话型任务为与待识别的自然语言相匹配的目标技能。
129.需要说明的是,本技术实施例中待识别的自然语言的语义信息可以但不限于为待识别的自然语言的向量表示,可选地,也可以确定任务型对话系统中各个对话型任务的技能描述信息的向量表示,通过对比待识别的自然语言的向量表示,和任务型对话系统中各个对话型任务的技能描述信息的向量表示之间的相似度,进而从各个对话型任务中确定与待识别的自然语言的语义相匹配的目标技能。
130.用户需要完成的特定任务所在的领域可能包括机票领域、酒店领域等,但是需要说明的是,由于开发者的不同,同一领域可能包括多个相似技能,但是同一领域中的多个相似技能提供的服务也可能相同,或者,同一领域中的多个技能仅仅在意图及槽位提取上有较小的区别,因此本技术实施中各个对话型任务直接对应技能,并且可以根据用户的历史操作数据来为用户选择相应技能。
131.步骤s402,根据待识别的自然语言的语义信息和目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
132.本技术实施例中每个目标技能对应多个备选意图,在确定待识别的自然语言对应的目标技能后,在该目标技能对应的多个备选意图中确定与待识别的自然语言相匹配的目标意图,本技术实施例中,根据待识别的自然语言的语义信息和目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与待识别的自然语言的语义相匹配的目标意图,其中,匹配条件可以但不限于确定待识别的自然语言的语义信息与目标技能对应的各个备选意图的意图描述信息之间的相似度,确定相似度达到目标阈值的备选意图为与待识别的自然语言相匹配的目标意图,或者,确定相似度最大的备选意图为与待识别的自然语言相匹配的目标意图。
133.需要说明的是,本技术实施例中待识别的自然语言的语义信息可以但不限于为待识别的自然语言的向量表示,可选地,也可以确定目标技能对应的各个备选意图的意图描述信息的向量表示,通过对比待识别的自然语言的向量表示,和目标技能对应的各个备选意图的意图描述信息的向量表示之间的相似度,进而确定与待识别的自然语言的语义相匹配的目标意图。本技术实施例中,将同一技能下的多个备选意图作为任务型对话系统中的多个子任务,例如机票任务下包括预定机票的子任务及查询机票的子任务等。
134.步骤s403,根据目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
135.本技术实施例中的每个意图对应至少一个备选槽位,例如在预定机票的意图中,需要知道预定机票的用户身份信息、机票的出行时间、出发城市以及目的地等,一般的,待识别的自然语言中通常包含对应意图下的所有槽位信息。本技术实施例中,槽位提取条件即查找与备选槽位的槽位描述信息相对应的待识别的自然语言中的槽位信息,例如,若槽位描述信息指示对应的备选槽位为查找出发城市,则根据槽位提取条件,从待识别的自然语言中查找与地点相对应的信息,且根据待识别的自然语言语义信息,确定为出发地的地点信息。在实施过程中,根据备选槽位的槽位描述信息以及槽位提取条件,从待识别的自然
语言中提取各个备选槽位的槽位信息。本技术实施例中,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息。
136.步骤s404,根据目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,获得待识别的自然语言的对话型任务识别结果。
137.本技术实施例中,根据目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,能够获得待识别的自然语言的任务识别结果,进而根据任务识别结果为用户提供服务,作为一种可选地实施方式,也可以根据目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息对待识别的自然语言进行标注,得到对应技能下的样本数据。
138.如图7所示,本技术实施例中的任务型对话系统中的自然语言理解模型包括三个子模型,分别为技能分类模型、意图识别模型以及槽位提取模型。其中,本技术实施例的目标技能是基于已训练的技能分类模型获得的,也即将待识别的自然语言输入训练好的技能分类模型,得到与待识别的自然语言相匹配的目标技能,目标意图是基于已训练的意图识别模型获得的,也即将待识别的自然语言输入训练好的意图识别模型中,得到与待识别的自然语言相匹配的目标技能,槽位信息是基于已训练的槽位提取模型得到的,也即将待识别的自然语言输入训练好的槽位提取模型中,从待识别的自然语言中提取各个备选槽位的槽位信息。
139.对话型任务包括已训练对话型任务和未训练对话型任务,技能分类模型、意图识别模型和槽位提取模型,是采用各个已训练对话型任务的样本数据训练得到的,其中技能分类模型是通过多个技能中包括的标注好的样本数据进行训练的,意图识别模型是通过多个意图中包括的标注好的样本数据进行训练的,槽位提取模型是通过多个槽位中包括的标注好的样本数据进行训练的。经过样本数据训练对应的任务为已训练对话型任务,未训练对话型任务包括:技能描述信息、各个备选意图的意图描述信息,以及每个备选意图的备选槽位描述信息。本技术实施例中训练后得到的技能分类模型为通用技能分类模型,当需要开发新技能时只需定义好新技能的技能描述信息,同理,本技术实施例中训练后得到的意图识别模型为通用意图识别模型,当需要开发新意图识别时只需定义好新意图的意图描述信息,本技术实施例中训练后得到的槽位提取模型为通用槽位提取模型,当需要开发新槽位时只需定义好新槽位的槽位描述信息。
140.下面具体介绍技能分类模型、意图识别模型和槽位提取模型的训练过程及使用过程:
141.1、技能分类模型
142.如图8所示,技能分类模型包括第一向量表示模块和第一分类模块,其中,第一向量表示模块用于对输入的数据进行向量表示,第一分类模型用于确定得到的至少两个向量之间的相似度;
143.训练技能分类模型的技能分类语料样本对应每个已训练对话型任务至少包括一个样本,每个样本包括对话型任务的技能描述信息,及标注有所属对话型任务的相似概率值,本技术实施例中,每个技能分类语料样本所属对话型任务的相似概率值可以但不限于为0和1,当技能分类语料样本与对话型任务的相似概率值为1时,则技能分类语料样本与对应的对话型任务相匹配,反之则不匹配。
144.具体的,若已有的样本数据包含n个技能,分别是d1,d2,
…dn
,技能dn包含in个意图,sn个槽位以及mn条带标注的技能分类语料样本,所有领域的所有自然语言数据构成的集合是m,则对于m中的任意一个自然语言数据q和任意一个技能di,都可以生成一条技能分类语料样本(l,di,q),如果q∈di,则l=1,反之l=0。
145.本技术实施例中,已训练的技能分类模型通过以下方式训练:
146.1)基于第一向量表示模块分别获得各个已训练任务的技能描述信息的第一目标向量表示;
147.其中,基于第一向量表示模块得到的向量表示可以但不限于为句向量表示,本领域技术人员可以根据实际需求进行设置,在此不再赘述。
148.2)针对每个技能分类语料样本,基于第一向量表示模块获得技能分类语料样本的第一参考向量表示;
149.3)基于第一分类模块分别获得第一参考向量表示和各个第一目标向量表示之间的第一相似度;
150.其中,第一参考向量表示和各个第一目标向量表示之间的第一相似度可以但不限于为0-1之间的数值,第一相似度越大,则第一参考向量表示和对应的第一目标向量表示越相似。
151.4)基于获得的各个第一相似度调整第一向量表示模块和第一分类模块的参数,直至第一相似度满足设定条件;
152.其中,相似度满足设定条件,可以但不限于设置一个相似度阈值,当第一相似度大于相似度阈值时,则认为第一相似度满足设定条件,作为一种可选地实施方式,可以将第一相似度的数值最高作为满足设定条件,本领域技术人员可以根据实际需求进行设置,在此不做赘述。
153.下面介绍基于技能分类模型得到目标技能的过程:
154.1)基于第一向量表示模块分别获得每个已训练对话型任务和未训练对话型任务的技能描述信息的第一对照向量表示;
155.2)基于第一向量表示模块获得待识别自然语料的第一待识别向量表示;
156.3)基于第一分类模块分别获得第一对照向量表示和各个第一待识别向量表示之间的第二相似度,以及基于第二相似度获得分类结果。
157.作为一种可选地实施方式,技能分类模型可以但不限于采用bert预训练模型,具体使用基于bert的分类模型的结构,基于bert的分类模型的结构的示意图如图9所示。
158.2、意图识别模型
159.如图10所示,意图识别模型包括第二向量表示模块和第二分类模块,其中,第二向量表示模块用于对输入的数据进行向量表示,第二分类模型用于确定得到的至少两个向量之间的相似度;
160.训练意图识别模型的意图识别语料样本对应每个已训练对话型任务至少包括一个样本,每个意图识别语料样本标注有所属备选意图的相似概率值,本技术实施例中,每个意图识别语料样本所属备选意图的相似概率值可以但不限于为0和1,当意图识别语料样本与备选意图的相似概率值为1时,则意图识别语料样本与对应的备选意图相匹配,反之则不匹配。
161.具体的,若已有的样本数据包含n个技能,分别是d1,d2,
…dn
,技能dn包含in个意图,sn个槽位以及mn条带标注的技能分类语料样本,所有领域的所有自然语言数据构成的集合是m,则意图识别语料样本包括:对于某个领域di的样本数据mi中的任意一个数据q和该领域中的任意一个意图ii,都可以生成一条意图分类模型的标注数据(l,ii,q),如果q的意图是ii,则l=1,反之l=0。
162.本技术实施例中,已训练的意图识别模型通过以下方式训练:
163.1)基于第二向量表示模块分别获得各个已训练任务中各个子任务对应的意图描述信息的第二目标向量表示;
164.其中,基于第二向量表示模块得到的向量表示可以但不限于为句向量表示,本领域技术人员可以根据实际需求进行设置,在此不做赘述。
165.2)针对每个意图识别语料样本,基于第二向量表示模块获得意图识别语料样本的第二参考向量表示;
166.3)基于第二分类模块分别获得第二参考向量表示和各个第二目标向量表示之间的第三相似度;
167.其中,第二参考向量表示和各个第二目标向量表示之间的第二相似度可以但不限于为0-1之间的数值,第二相似度越大,则第二参考向量表示和对应的第二目标向量表示越相似。
168.4)基于获得的各个第三相似度调整第二向量表示模块和第二分类模块的参数,直至第三相似度满足设定条件;
169.其中,相似度满足设定条件,可以但不限于设置一个相似度阈值,当第三相似度大于相似度阈值时,则认为第三相似度满足设定条件,作为一种可选地实施方式,可以将第三相似度的数值最高作为满足设定条件,本领域技术人员可以根据实际需求进行设置,在此不做赘述。
170.下面介绍基于意图识别模型得到目标意图的过程:
171.1)基于第二向量表示模块分别获得已训练对话型任务中各个子任务和未训练对话型任务中各个子任务的意图描述信息的第二对照向量表示;
172.2)基于第二向量表示模块获得待识别自然语料的第二待识别向量表示;
173.3)基于第二分类模块分别获得第二对照向量表示和各个第二待识别向量表示之间的第四相似度,以及基于第四相似度获得分类结果。
174.作为一种可选地实施方式,意图识别模型可以但不限于采用bert预训练模型,具体使用基于bert的分类模型的结构。
175.3、槽位提取模型
176.如图11所示,槽位提取模型包括第三向量表示模块和槽位提取模块,其中,第三向量表示模块用于对输入的数据进行向量表示,槽位提取模块用于对自然语言中的槽位信息进行提取;
177.训练槽位提取模型的槽位提取语料样本对应每个已训练对话型任务至少包括一个样本,每个槽位提取语料样本标注有所属备选槽位的参考槽位信息,已训练的槽位提取模型通过以下方式训练:
178.1)针对每个槽位提取语料样本,基于第三向量表示模块获得槽位提取语料样本的
第三参考向量表示;
179.其中,基于第三向量表示模块得到的向量表示可以但不限于为句向量表示、词向量表示或者字向量表示,本领域技术人员可以根据实际需求进行设置,在此不做赘述。
180.2)基于槽位提取模块分别获得第三参考向量表示中对应各个备选槽位的槽位描述信息的第一目标槽位信息;
181.其中,第一目标槽位信息也即槽位提取语料样本中的对应备选槽位的槽位信息,例如若备选槽位为具体的时间表示,则第一目标槽位信息为槽位提取语料样本中的具体的时间信息。
182.3)基于获得的各个第一目标槽位信息调整第三向量表示模块和槽位提取模块的参数,直至获得的第一目标槽位信息满足设定条件;
183.其中,第一目标槽位信息满足设定条件,及在槽位提取语料样本中能够准确得到备选槽位对应的槽位信息。
184.基于已训练的槽位提取模型获得的槽位信息的方法如下:
185.1)基于第三向量表示模块获得待识别自然语料的第三待识别向量表示;
186.2)基于槽位提取模块分别获得第三待识别向量表示的第二目标槽位信息,以及基于第二目标槽位信息获得分类结果。
187.作为一种可选地实施方式,槽位提取模型可以但不限于采用bert预训练模型,具体使用基于bert的qa模型的结构,基于bert的qa模型的结构的示意图如图12所示。
188.下面结合一种具体的实施方式详细介绍本技术实施例提供的一种任务型对话系统中的自然语言识别方法,假设现有开放型对话平台中,包含天气对话型任务技能和航班对话型任务技能两个技能以及相关的自然语言识别模型的样本数据。天气对话型任务的技能描述信息和部分样例样本数据如图13所示,航班对话型任务的技能描述信息和部分样例样本数据如图14所示。
189.通过这两个技能的技能描述信息及标注的样本数据,可以训练得到本发明提出的三个通用的自然语言识别模型,分别是:通用的技能分类模型、通用的意图识别模型和通用的槽位提取模型。这三个通用的自然语言识别模型的主要功能是发现技能的技能描述信息和用户输入的待识别的自然语言中在技能、意图和槽位这三个方面的语义相关性。
190.技能分类模型会学习出技能描述信息和用户输入的待识别的自然语言中的语义相关性。例如“机票”和用户输入的待识别的自然语言中的关键词“飞机”、“航班”等有显著的语义相关性;“天气”和用户输入的待识别的自然语言中的关键词“天气”、“热”、“湿度”等关键词有显著的语义相关性。
191.意图识别模型会学习出意图描述信息和用户输入的待识别的自然语言中的语义相关性,例如“查找”和用户输入的待识别的自然语言中的关键词“找”、“搜”有显著的语义相关性;“预定”和用户输入的待识别的自然语言中的关键词“预定”、“买”等有显著的语义相关性。
192.槽位提取模型会学习出槽位描述信息和用户输入的待识别的自然语言中语义相关性,例如“城市”和“北京”、“上海”这类城市名有语义相关性,“日期”和“今天”、“明天”等有语义相关性;“出发”和“从”有语义相关性;“到达”和“去”、“到”等有语义相关性;“人数”和“两”这类数词有语义相关性。
193.假设开发者新开发了一个酒店对话型任务的技能,技能的技能描述信息以及可能的用户输入的待识别的自然语言如图15所示。利用通用自然语言理解模型学到的技能描述信息和输入的待识别的自然语言之间的语义相关性,本发明提出的通用自然语言理解模型就可以在没有标注数据的条件下对该技能对应的用户输入的待识别的自然语言进行技能、意图和槽位的识别。
194.首先,技能分类模型会发现包含“酒店”、“宾馆”、“房间”等关键词的和用户输入的待识别的自然语言“航班”、“天气”等技能的语义相关性较低,和技能“酒店”的相关性较高,从而完成技能分类,得到用户输入的待识别的自然语言所属的技能为酒店。通过用户输入的待识别的自然语言中的“找”、“预定”等关键词,意图识别模型可以区分开“查询酒店”和“预定酒店”这两个不同的意图。槽位提取模型也可以根据“城市”、“日期”等槽位定义的关键词提取出用户输入的待识别的自然语言中相关的关键词。通用自然语言理解模型的识别结果如图16所示。
195.本技术提供的任务型对话系统中的自然语言识别方法的基础上,本技术还提供一种自然语言的标注方法,该标注方法可以由任务型对话服务器执行,例如由图3中的服务器302执行。本技术实施例提供的任务型对话系统中的自然语言标注方法如图17所示,图17所示的流程图描述如下。
196.步骤s1701,根据待识别的自然语言的语义信息和任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与待识别的自然语言的语义相匹配的目标技能;
197.步骤s1702,根据待识别的自然语言的语义信息和目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
198.步骤s1703,根据目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
199.步骤s1704,根据目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,对待识别的自然语言进行标注,获得对话型任务的样本数据。
200.其中,目标技能是基于已训练的技能分类模型获得的,目标意图是基于已训练的意图识别模型获得的,槽位信息是基于已训练的槽位提取模型获得的,对话型任务包括已训练对话型任务和未训练对话型任务,技能分类模型、意图识别模型和槽位提取模型,是采用各个已训练对话型任务的样本数据训练得到的。
201.由前所述,本技术实施例在得到通用自然语言理解模型后,可以直接通过通用自然语言理解模型对自然语言进行识别,同理也可以根据通用理解模型得到自然语言的技能、意图和槽位信息后,对自然语言进行标注,并将标注好的自然语言作为对话型任务的样本数据。根据获得的样本数据,进一步对技能分类模型、意图识别模型和槽位提取模型进行更新训练,需要说明的是,获得的样本数据可以包括已训练对话型任务的自然语言和未训练对话型任务的自然语言,通过获得的样本数据进一步对技能分类模型、意图识别模型和槽位提取模型进行更新训练,能够提高技能分类模型、意图识别模型和槽位提取模型针对
已训练对话型任务的处理精度,其次,当获得的样本数据中包括识别为未训练对话型任务的自然语言时,在更新训练后将未训练对话型任务更新为已训练对话型任务。
202.作为一种可选地实施方式,本技术实施例不仅可以通过通用自然语言理解模型对用户输入的自然语言进行标注,还可以分别通过相关技术中的技能语言理解模型、意图识别模型和槽位模型获得自然语言的技能、意图和槽位信息并进行标注。自然语言的识别和标注,以及模型的训练,可以根据自然语言库的更新定期进行,由于自然语言的识别和标注都可以自动完成,极大的提高了模型训练的效率,以及新技能开发的效率。
203.基于同一发明构思,本技术实施例提供一种任务型对话系统中的自然语言识别装置,该任务型对话系统中的自然语言识别装置可以是硬件结构、软件模块、或硬件结构加软件模块。该任务型对话系统中的自然语言识别装置例如是前述图3中的服务器302本身,或者可以是设置于服务器302内的功能装置,该任务型对话系统中的自然语言识别装置可以由芯片系统实现,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。请参见图18所示,本技术实施例中的任务型对话系统中的自然语言识别装置包括第一技能确定单元1801、第一意图确定单元1802、第一槽位确定单元1803、识别单元1804,其中:
204.第一技能确定单元1801,用于根据待识别的自然语言的语义信息和任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与待识别的自然语言的语义相匹配的目标技能;
205.第一意图确定单元1802,用于根据待识别的自然语言的语义信息和目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
206.第一槽位确定单元1803,用于根据目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
207.识别单元1804,用于根据目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,获得待识别的自然语言的对话型任务识别结果。
208.在一种可能的实现方式中,目标技能是基于已训练的技能分类模型获得的,目标意图是基于已训练的意图识别模型获得的,槽位信息是基于已训练的槽位提取模型获得的,其中:
209.对话型任务包括已训练对话型任务和未训练对话型任务,技能分类模型、意图识别模型和槽位提取模型,是采用各个已训练对话型任务的样本数据训练得到的;
210.未训练对话型任务包括:技能描述信息、各个备选意图的意图描述信息,以及每个备选意图的备选槽位描述信息。
211.在一种可能的实现方式中,技能分类模型包括第一向量表示模块和第一分类模块,训练技能分类模型的技能分类语料样本对应每个已训练对话型任务至少包括一个样本,每个技能分类语料样本标注有所属对话型任务的相似概率值,已训练的技能分类模型通过以下方式训练:
212.基于第一向量表示模块分别获得各个已训练任务的技能描述信息的第一目标向量表示;
213.针对每个技能分类语料样本,基于第一向量表示模块获得技能分类语料样本的第一参考向量表示;
214.基于第一分类模块分别获得第一参考向量表示和各个第一目标向量表示之间的第一相似度;
215.基于获得的各个第一相似度调整第一向量表示模块和第一分类模块的参数,直至第一相似度满足设定条件。
216.在一种可能的实现方式中,第一技能确定单元1801具体用于:
217.基于第一向量表示模块分别获得每个已训练对话型任务和未训练对话型任务的技能描述信息的第一对照向量表示;
218.基于第一向量表示模块获得待识别自然语料的第一待识别向量表示;
219.基于第一分类模块分别获得第一对照向量表示和各个第一待识别向量表示之间的第二相似度,以及基于第二相似度获得分类结果。
220.在一种可能的实现方式中,意图识别模型包括第二向量表示模块和第二分类模块,训练意图识别模型的意图识别语料样本对应每个已训练对话型任务至少包括一个样本,每个意图识别语料样本标注有所属备选意图的相似概率值,已训练的意图识别模型通过以下方式训练:
221.基于第二向量表示模块分别获得各个已训练任务中各个子任务对应的意图描述信息的第二目标向量表示;
222.针对每个意图识别语料样本,基于第二向量表示模块获得意图识别语料样本的第二参考向量表示;
223.基于第二分类模块分别获得第二参考向量表示和各个第二目标向量表示之间的第三相似度;
224.基于获得的各个第三相似度调整第二向量表示模块和第二分类模块的参数,直至第三相似度满足设定条件。
225.在一种可能的实现方式中,第一意图确定单元1802具体用于:
226.基于第二向量表示模块分别获得已训练对话型任务中各个子任务和未训练对话型任务中各个子任务的意图描述信息的第二对照向量表示;
227.基于第二向量表示模块获得待识别自然语料的第二待识别向量表示;
228.基于第二分类模块分别获得第二对照向量表示和各个第二待识别向量表示之间的第四相似度,以及基于第四相似度获得分类结果。
229.在一种可能的实现方式中,槽位提取模型包括第三向量表示模块和槽位提取模块,训练槽位提取模型的槽位提取语料样本对应每个已训练对话型任务至少包括一个样本,每个槽位提取语料样本标注有所属备选槽位的参考槽位信息,已训练的槽位提取模型通过以下方式训练:
230.针对每个槽位提取语料样本,基于第三向量表示模块获得槽位提取语料样本的第三参考向量表示;
231.基于槽位提取模块分别获得第三参考向量表示中对应各个备选槽位的槽位描述信息的第一目标槽位信息;
232.基于获得的各个第一目标槽位信息调整第三向量表示模块和槽位提取模块的参
数,直至获得的第一目标槽位信息满足设定条件。
233.在一种可能的实现方式中,第一槽位确定单元1803具体用于:
234.基于第三向量表示模块获得待识别自然语料的第三待识别向量表示;
235.基于槽位提取模块分别获得第三待识别向量表示的第二目标槽位信息,以及基于第二目标槽位信息获得分类结果。
236.在一种可能的实现方式中,还包括第一标注单元1805,具体用于:
237.对识别为未训练对话型任务的自然语言进行标注;
238.获得未训练对话型任务的样本数据;
239.基于获得的样本数据对技能分类模型、意图识别模型和槽位提取模型进行更新训练;并
240.将未训练对话型任务更新为已训练对话型任务。
241.前述的任务型对话系统中的自然语言识别方法的实施例中涉及的各步骤的所有相关内容均可以援引到本技术施例中的任务型对话系统中的自然语言识别装置所对应的功能模块的功能描述,在此不再赘述。
242.基于同一发明构思,本技术实施例提供一种任务型对话系统中的自然语言标注装置,该任务型对话系统中的自然语言标注装置可以是硬件结构、软件模块、或硬件结构加软件模块。该任务型对话系统中的自然语言识别装置例如是前述图3中的服务器302本身,或者可以是设置于服务器302内的功能装置,该任务型对话系统中的自然语言标注装置可以由芯片系统实现,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。请参见图19所示,本技术实施例中的任务型对话系统中的自然语言标注装置包括第二技能确定单元1901、第二意图确定单元1902、第二槽位确定单元1903、第二标注单元1904,其中:
243.第二技能确定单元1901,用于根据待识别的自然语言的语义信息和所述任务型对话系统中各个对话型任务的技能描述信息之间的匹配条件,从各个对话型任务中确定与所述待识别的自然语言的语义相匹配的目标技能;
244.第二意图确定单元1902,用于根据所述待识别的自然语言的语义信息和所述目标技能对应的各个备选意图的意图描述信息之间的匹配条件,确定与所述待识别的自然语言的语义相匹配的目标意图,每个意图描述信息用于描述对话型任务中包括的一个子任务;
245.第二槽位确定单元1903,用于根据所述目标意图对应的各个备选槽位的槽位描述信息以及槽位信息提取条件,从所述待识别的自然语言中提取各个备选槽位的槽位信息,各个备选槽位的槽位信息用于限定意图对应的子任务的各个关键信息;
246.第二标注单元1904,用于根据所述目标技能的技能描述信息、目标意图的意图描述信息,以及各个备选槽位的槽位描述信息及其槽位信息,对所述待识别的自然语言进行标注,获得对话型任务的样本数据。
247.在一种可能的实现方式中,所述目标技能是基于已训练的技能分类模型获得的,所述目标意图是基于已训练的意图识别模型获得的,所述槽位信息是基于已训练的槽位提取模型获得的,其中:
248.所述对话型任务包括已训练对话型任务和未训练对话型任务,所述技能分类模型、意图识别模型和槽位提取模型,是采用各个已训练对话型任务的样本数据训练得到的。
249.在一种可能的实现方式中,还包括训练单元1905,具体用于:
250.根据获得的样本数据,进一步对所述技能分类模型、意图识别模型和槽位提取模型进行更新训练,其中,当获得的样本数据中包括识别为未训练对话型任务的自然语言时,在更新训练后将所述未训练对话型任务更新为已训练对话型任务。
251.前述的任务型对话系统中的自然语言标注方法的实施例中涉及的各步骤的所有相关内容均可以援引到本技术施例中的任务型对话系统中的自然语言标注装置所对应的功能模块的功能描述,在此不再赘述。
252.本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本技术各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
253.基于同一发明构思,本技术实施例提供一种计算设备,该计算设备例如是前述图3中的服务器302,该计算设备能够执行本技术实施例提供的任务型对话系统中的自然语言识别方法,如图20所示,本技术实施例中的计算设备包括至少一个处理器2001,以及与至少一个处理器2001连接的存储器2002和通信接口2003,本技术实施例中不限定处理器2001与存储器2002之间的具体连接介质,图20中是以处理器2001和存储器2002之间通过总线2000连接为例,总线2000在图20中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线2000可以分为地址总线、数据总线、控制总线等,为便于表示,图20中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
254.在本技术实施例中,存储器2002存储有可被至少一个处理器2001执行的计算机程序,至少一个处理器2001通过执行存储器2002存储的计算机程序,可以执行前述的任务型对话系统中的自然语言识别方法中所包括的步骤。
255.其中,处理器2001是计算设备的控制中心,可以利用各种接口和线路连接整个计算设备的各个部分,通过运行或执行存储在存储器2002内的指令以及调用存储在存储器2002内的数据,计算设备的各种功能和处理数据,从而对计算设备进行整体监控。可选的,处理器2001可包括一个或多个处理模块,处理器2001可集成应用处理器和调制解调处理器,其中,处理器2001主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器2001中。在一些实施例中,处理器2001和存储器2002可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
256.处理器2001可以是通用处理器,例如中央处理器(cpu)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
257.存储器2002作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器2002可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带
电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性存储器、磁盘、光盘等等。存储器2002是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器2002还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
258.通信接口2003是能够用于进行通信的传输接口,可以通过通信接口2003接收数据或者发送数据,例如可以通过通信接口2003与其它设备进行数据交互以实现通信的目的。
259.进一步地,该计算设备还包括帮助计算设备内的各个器件之间传输信息的基本输入/输出系统(i/o系统)2004、用于存储操作系统2005、应用程序2006和其他程序模块2007的大容量存储设备2008。
260.基本输入/输出系统2004包括有用于显示信息的显示器2009和用于用户输入信息的诸如鼠标、键盘之类的输入设备2010。其中显示器2009和输入设备2010都通过连接到系统总线2000的基本输入/输出系统2004连接到处理器2001。基本输入/输出系统2004还可以包括输入输出控制器以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器还提供输出到显示屏、打印机或其他类型的输出设备。
261.大容量存储设备2008通过连接到系统总线2000的大容量存储控制器(未示出)连接到处理器2001。大容量存储设备2008及其相关联的计算机可读介质为该服务器包提供非易失性存储。也就是说,大容量存储设备2008可以包括诸如硬盘或者cd-rom驱动器之类的计算机可读介质(未示出)。
262.根据本技术的各种实施例,该计算设备包还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即该计算设备可以通过连接在系统总线2000上的通信接口2003连接到网络2011,或者说,也可以使用通信接口2003来连接到其他类型的网络或远程计算机系统(未示出)。
263.基于同一发明构思,本技术实施例还提供一种存储介质,该存储介质可以是计算机可读存储介质,该存储介质中存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行如前述的任务型对话系统中的自然语言识别方法的步骤。
264.基于同一发明构思,本技术实施例还提供一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现如前述的任务型对话系统中的自然语言识别方法的步骤。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
265.在一些可能的实施方式中,本技术实施例提供的推荐内容的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机上运行时,程序代码用于使计算机执行前文所描述的根据本技术各种示例性实施方式的更新内容推荐池中内容的控制方法中的步骤。
266.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
267.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精
神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献