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

基于意图识别的人机对话方法、装置、设备及存储介质与流程

2022-04-27 11:32:03 来源:中国专利 TAG:


1.本技术涉及人工智能技术领域,具体涉及一种基于意图识别的人机对话方法、装置、设备及存储介质。


背景技术:

2.人机对话是人工智能领域重要的领域。在人机对话众多应用领域中,往往应用到多轮对话的情况。具体对话的轮数取决于该应用领域的具体业务需求,部分领域甚至可能存在多分支、多层次、有随机性的话术设计。多轮对话对于人类来说是基本的沟通能力和技能,因此人工可以在众多交流场景多轮对话中做到自然、通畅的效果。而对于人工智能来说,却需要各个应用和系统协同配合来实现较好效果。
3.目前多轮对话中,往往设定都是一问一答固定模式,即用户说话,然后人工智能机器人及时响应用户的话语并输出话语,这种及时处理话术的方式,比较机械,容易造成对话的误判,导致对话的精准性较低。


技术实现要素:

4.本技术实施例提供了一种基于意图识别的人机对话方法、装置、设备及存储介质,通过对用户的当前对话的意图分析,提高多轮对话的精准性,提高用户在人机对话过程中的体验。
5.第一方面,本技术实施例提供一种基于意图识别的人机对话方法,包括:
6.获取用户在本次多轮对话过程中的当前对话语句;
7.对所述当前对话语句进行意图识别,得到所述用户的当前对话语句的对话意图,所述对话意图包括结束所述本次多轮对话或者保持所述本次多轮对话;
8.当所述对话意图为结束所述本次多轮对话时,获取所述本次多轮对话中位于所述当前对话语句之前的所有对话语句,将所述当前对话语句以及所述所有对话语句,作为一下次多轮对话的输入数据,以开启所述一下次多轮对话;
9.当所述对话意图为保持所述本次多轮对话时,获取所述用户在多个特征维度下的多个特征数据,根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长;
10.根据所述等待时长,获取所述用户在所述本次多轮对话中的一下个对话语句,并根据所述一下个对话语句继续保持所述本次多轮对话。
11.第二方面,本技术实施例提供一种基于意图识别的人机对话装置,包括:获取单元和处理单元;
12.所述获取单元,用于获取用户在本次多轮对话过程中的当前对话语句;
13.所述处理单元,用于对所述当前对话语句进行意图识别,得到所述用户的当前对话语句的对话意图,所述对话意图包括结束所述本次多轮对话或者保持所述本次多轮对话;
14.当所述对话意图为结束所述本次多轮对话时,获取所述本次多轮对话中位于所述当前对话语句之前的所有对话语句,将所述当前对话语句以及所述所有对话语句,作为一下次多轮对话的输入数据,以开启所述一下次多轮对话;
15.当所述对话意图为保持所述本次多轮对话时,获取所述用户在多个特征维度下的多个特征数据,根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长;
16.根据所述等待时长,获取所述用户在所述本次多轮对话中的一下个对话语句,并根据所述一下个对话语句继续保持所述本次多轮对话。
17.第三方面,本技术实施例提供一种电子设备,包括:处理器,所述处理器与存储器相连,所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,以使得所述电子设备执行如第一方面所述的方法。
18.第四方面,本技术实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序使得计算机执行如第一方面所述的方法。
19.第五方面,本技术实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机可操作来使计算机执行如第一方面所述的方法。
20.实施本技术实施例,具有如下有益效果:
21.可以看出,在本技术实施例中,在本次人机多轮对话的过程中,获取到当前对话语句之后,首先对该对话语句进行意图识别,得到该当前对话语句对应的对话意图;当对话意图为结束多轮对话时,才会结束该多轮对话,以便开启一个多轮对话;当对话意图为保持多轮对话时,结合用户的特征数据去预测用户的等待时长,并在等待时长内继续保持多轮对话,从而实现在多轮对话中结合意图识别去回复当前对话语句,并不是简单的及时处理当前对话语句,在整个多轮对话中的处理方式比较灵活,从而提高了多轮对话的精准性,进而提高了用户在多轮对话中的体验。
附图说明
22.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1为本技术实施例提供的一种基于意图识别的人机对话方法的流程示意图;
24.图2为本技术实施例提供的一种确定等待时长方法的流程示意图;
25.图3为本技术实施例提供的一种mome模型的示意图;
26.图4为本技术实施例提供的一种基于mome模型的示意图;
27.图5为本技术实施例提供的一种同步确定对话意图以及等待时长方法的流程示意图;
28.图6为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
29.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
30.本技术的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
31.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结果或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
32.本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
33.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
34.参阅图1,图1为本技术实施例提供的一种基于意图识别的人机对话方法的流程示意图。该方法应用于人机对话装置。该方法包括如下步骤内容:
35.101:获取用户在本次多轮对话过程中的当前对话语句。
36.示例性的,本次多轮对话为用户在整个人机对话流程中的任意一次多轮对话。其中,整个对话流程包括一次或多次多轮对话,该当前对话语句为用户在本次多轮对话过程中的当前的语音信息。
37.102:对所述当前对话语句进行意图识别,得到所述用户的当前对话语句的对话意图。
38.对话意图包括结束本次多轮对话或者保持本次多轮对话,其中,结束本次多轮对话表征将本次多轮对话整体进行结束,保持本次多轮对话表征继续保持本次多轮对话,后续的人机对话内容还需要围绕本次多轮对话的对话主题展开。
39.示例性的,对用户的当前对话语句进行语音识别,得到与该当前对话语句对应的待识别文本;然后,对待识别文本进行实体识别,得到待识别文本中的至少一个实体,以及至少一个实体中的每个实体在该待识别文本中的位置。然后,根据待识别文本、至少一个实体以及每个所述实体在待识别文本中的位置,确定当前对话语句的对话意图。
40.具体的,对每个实体以及每个实体在待识别文本中的位置进行编码,得到每个实体的第一特征向量。示例性的,对每个实体进行编码,得到每个实体对应的第三特征向量,
即对实体进行向量化,得到每个实体对应的第三特征向量;对每个实体在待识别文本中的位置进行编码,得到每个实体对应的第四特征向量,例如,可以通过one-hot编码对每个实体在待识别文本中的位置进行编码,得到每个实体对应的第四特征向量。举例来说,针对对话“我需要和家人商量一下”,识别出来的实体包括“我”、“家人”,针对实体“我”的编码结果为(1 0 0 0 0 0 0 0 0 0),则针对实体“家人”的编码结果为(0 0 0 0 1 1 0 0 0 0);将每个实体对应的第三特征向量以及第四特征向量进行融合(即将第三特征向量和第四特征向量进行叠加),得到每个实体的第一特征向量。
41.应说明,若第三特征向量和第四特征向量维度不同,则需要将第三特征向量和第四特征向量先映射到同一维度,再进行融合。
42.示例性的,对待识别文本进行分词,得到至少一个单词;对至少一个单词中的每个单词进行编码,得到每个单词的第二特征向量,例如,通过词嵌入的方式对每个单词进行编码,得到每个单词的第二特征向量。
43.进一步地,基于注意力机制,将每个实体对应的第一特征向量与每个所述单词对应的第二特征向量进行融合,得到每个单词对应的目标特征向量,其中,该注意力机制可以为自注意机制,也可以为交叉注意力机制或者多头注意力机制,等等,本技术不对注意力的形式进行限定;根据每个单词对应的目标特征向量,确定每个单词对应的槽位填充结果;根据每个单词对应的槽位填充结果,得到所述待识别文本的意图;根据待识别文本的意图,确定用户的当前对话语句的对话意图,即将该待识别文本的意图同步翻译为该当前对话语句的对话意图,比如,待识别文本的意图为“拒绝”,则确定该当前对话语句的对话意图为拒绝对话或者结束对话,等等。
44.举例来说,针对当前对话语句“我需要和家人商量一下是否购买”,识别出的意图为“和家人商量”,则可确定出用户需要和家人商量,并未直接拒绝,也就是说用户还有继续对话的需求,则确定当前对话语句的对话意图为保持本次多轮对话。再如,若当前对话语句为“我没有购买意向”,则确定出对话意图为“不购买”,因此,可确定出用户对当前的对话不感兴趣,则确定当前语句的对话意图为结束多轮对话。
45.在本技术的一个实施方式中,上述确定当前对话语句的对话意图可以通过训练好的意图识别模型实现。其中,该意图识别模型包括词嵌入层、映射层、注意力层和多层感知器。下面从模型的角度叙述确定出对话意图的实现方式。
46.示例性的,将待识别文本、至少一个实体以及每个实体在待识别文本中的位置作为输入数据输入到该意图识别模型,得到当前对话语句的对话意图。
47.具体的,首先对该待识别文本进行词分割,得到至少一个单词;通过词嵌入层对每个单词进行词嵌入处理,得到每个单词的词嵌入结果;然后,通过映射层对每个单词的词嵌入结果进行映射处理,得到每个单词对应的第二特征向量;同样的,通过编码层对每个实体进行词嵌入处理,得到每个实体的词嵌入结果;然后,通过映射层对每个实体的词嵌入结果进行映射处理,得到每个实体的第一特征向量;同样的,通过编码层对每个实体在待识别文本中的位置进行词嵌入处理(即one-hot编码),得到每个实体的one-hot编码结果;通过映射层对每个实体的one-hot编码结果进行映射处理,得到每个实体的第四特征向量;进一步地,对每个实体的第三特征向量和每个实体的第四特征向量进行融合,得到每个实体的第一特征向量;进一步地,通过注意力层将每个实体对应的第一特征向量与每个单词对应的
第二特征向量进行融合,得到每个单词对应的目标特征向量;最后,将每个单词对应的目标特征向量输入到多层感知器进行槽位填充,得到每个单词对应的槽位填充结果;最后,再通过该多层感知器对该每个单词对应的槽位填充结果进行后处理,得到该待识别文本的意图。
48.103:当所述对话意图为结束所述本次多轮对话时,获取所述本次多轮对话中位于所述当前对话语句之前的所有对话语句,将所述当前对话语句以及所述所有对话语句,作为一下次多轮对话的输入数据,以开启所述一下次多轮对话。
49.示例性的,在开启每次多轮对话时,为每次多轮对话生成一个标识,然后为每次多轮对话中的每次对话都添加该标识,并将每次多轮对话中的对话进行缓存。当确定当前对话语句的对话意图为结束本次多轮对话时,则根据本次多轮对话的标识,从缓存中获取位于该当前对话语句之前的所有对话语句,将位于当前对话语句之前的所有对话语句和当前对话语句拼接为一个完整的对话,比如,在缓存对话的时候,还为对话添加时间戳,时间戳用于记录对话的对话时间,然后可以根据每个对话的时间戳确定所有对话语句以及当前对话语句之间的对话顺序,根据该对话顺序将所有对话语句和当前对话语句拼接为一个完整的对话;然后将该完整的对话作为下一次多轮对话的输入数据,以便开启下一次多轮对话。比如,对该完整的对话进行内容识别,得到该完整的对话的对话主题;基于该对话主题,确定预设的多个对话主题除该对话主题之外的剩余对话主题,并从剩余对话主题中随机选取一个对话主题,将该随机选择的对话主题作为下一次多轮对话的对话主题;然后,基于该对话主题预先设定的开场白,开启下一次多轮对话。
50.104:当所述对话意图为保持所述本次多轮对话时,获取所述用户在多个特征维度下的多个特征数据,根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长。
51.示例性的,当确定当前对话语句的对话意图为保持本次多轮对话,也就是确定在当前对话语句之后还需要继续对话时,则可以获取用户在多个特征维度下的多个特征数据,其中,该多个特征维度包括但不限于:年龄、性别、职业、喜好、历史浏览记录,等等;然后,对用户在所述多个特征维度下的多个特征数据分别进行编码(即对每个特征维度下的特征数据进行向量化,比如,可以通过上述的词嵌入和映射实现,不再叙述),得到用户在每个特征维度下的特征向量;然后,将用户在多个特征维度的多个特征向量进行拼接,得到用户的目标特征向量,最后,将用户的目标特征向量输入到多层感知器,得到落入各个预设时长范围的概率,其中,各个预设时间范围可以理解为不同说话人的说话间隔;最后,将概率最大的预设时长范围的中位数作为所述当前对话语句的等待时长。当然,在实际应用中,也可以将概率最大的预设时长范围的最小值,或者,最大值,或者,随机选择一个取值作为该用户的等待时长。
52.在本技术的一个实施方式中,还可以通过参考用户的方式对用户等待时长进行预测,详细过程可以参阅图2示出的过程,在此不做过多的描述。
53.105:根据所述等待时长,获取所述用户在所述本次多轮对话中的一下个对话语句,并根据所述一下个对话语句继续保持所述本次多轮对话。
54.示例性的,在该等待时长内继续等待用户的对话,以便获取到用户在当前对话后的下一个对话语句,并基于该下一个对话语句生成相应的答复内容,从而实现基于该答复
内容继续保持本次多轮对话。
55.同样,针对该下一个对话语句,基于意图识别,确定该下个对话语句的对话意图,其确定过程,与当前对话语句的过程类似,不再叙述。
56.可以看出,在本技术实施例中,在本次人机多轮对话的过程中,获取到当前对话语句之后,首先对该对话语句进行意图识别,得到该当前对话语句对应的对话意图;当对话意图为结束多轮对话时,才会结束该多轮对话,以便开启一个多轮对话;当对话意图为保持多轮对话时,结合用户的特征数据去预测用户的等待时长,并在等待时长内继续保持多轮对话,从而实现在多轮对话中结合意图识别去回复当前对话语句,并不是简单的及时处理当前对话语句,在整个多轮对话中的处理方式比较灵活,从而提高了多轮对话的精准性,进而提高了用户在多轮对话中的体验。
57.参阅图2,图2为本技术实施例提供的一种确定用户的等待时长方法的流程示意图。该方法应用于人机对话装置。该实施例中与图1所示的实施例相同的内容,此处不再重复描述。本实施例的方法包括以下步骤:
58.201:根据所述用户在所述多个特征维度下的多个特征数据,从多个候选用户中选出多个目标用户。
59.其中,该多个候选用户为该人机对话装置所维护的数据库中的部分用户或者全部用户。示例性的,多个目标用户中的任意一个目标用户与用户至少在一个特征维度下的特征数据相同。比如,目标用户和该用户在性别这个特征维度下的特征都是男性,再如,在购买物品的维度下,买了相同的物品,等等。
60.应说明,针对任意一个候选用户来说,说话间隔是已知的,说话间隔为该候选用户两次说话的间隔。因此,针对每个目标用户来说,除了获取该目标用户在多个特征维度下的特征数据来说,还需要获取该目标用户的标签数据,其中,该标签数据用于表征该目标用户的说话间隔。针对该用户来说,该用户的说话间隔是未知,在对用户的多个特征数据进行编码的过程中,可以将该用户在标签维度下的数据可以通过填0的方式进行填补。
61.202:对所述用户在所述多个特征维度下的多个特征数据分别进行编码,得到所述用户在每个所述特征维度下的特征向量。
62.示例性的,按照上述编码的方式分别对用户在所述多个特征维度下的多个特征数据分别进行编码,得到用户在每个特征维度下的特征向量,不再叙述。
63.203:将所述用户在所述多个特征维度的多个特征向量进行拼接,得到所述用户的目标特征向量。
64.204:对每个所述目标用户在所述多个特征维度下的多个特征数据以及标签数据分别进行编码,得到每个所述目标用户在每个所述特征维度下的特征向量,以及与所述标签数据对应的特征向量,其中,所述标签数据用于表示每个所述目标用户的说话间隔。
65.同样,按照上述的编码方式,对每个目标用户在多个特征维度下的多个特征数据以及标签数据分别进行编码,得到每个所述目标用户在每个所述特征维度下的特征向量,以及与所述标签数据对应的特征向量,也不再叙述。
66.205:将每个所述目标用户在每个所述特征维度下的特征向量,以及与所述标签数据对应的特征向量进行拼接,得到每个所述目标用户对应的目标特征向量。
67.206:根据所述用户的权重和每个所述目标用户的权重,分别对所述用户的目标特
征向量和每个所述目标用户的目标特征向量进行加权,得到最终的目标特征向量。
68.示例性的,获取每个所述目标用户在所述多个特征维度下的多个特征数据和所述用户在所述多个特征维度下的多个特征数据相同的数量,针对任意一个特征维度,观察该用户以及目标用户在该特征维度下的特征数据是否相同,若相同,则将相同的数量加1,直至遍历完该多个特征维度之后,得到该用户和目标用户在多个特征维度下的相同的数量;然后,基于每个所述目标用户的相同的数量进行归一化处理,得到每个所述目标用户的初始权重;对每个所述目标用户的初始权重以及所述用户的初始权重进行归一化处理,得到每个所述目标用户的权重以及所述用户的权重,其中,所述用户的初始权重为1。
69.207:将所述最终的目标特征向量输入到多层感知器,得到所述当前对话语句的等待时长。
70.可以看出,在本实施方式中,使用与该用户特征相似的目标用户的已知的说话间隔,去预测该用户的说话间隔(等待时长),相当于使用了先验知识去预测等待时长,从而使预测出的等待时长的精度比较高,进而提高了用户在多轮对话的用户体验。
71.同样,图1中示出的预测等待时长的方式,以及图2示出的等待时长的方式均可以通过训练好的时长预测模型实现,两者只是在预测的过程中,输入数据的不同,针对图1示出的方式,只需要用户本身的特征数据即可完成预测,针对图2示出的方式,还需要目标用户的特征数据,但是,两者在编码和预测层面,并无本质上的差别,不去做详细的区分。
72.在本技术的一个实施方式中,确定用户的对话意图,以及等待时长,都是使用了与用户行为相关的数据,这些数据在底部可以共享,使用两个模型进行预测时,会降低预测效率。因此,可以通过多任务模型同步预测对话意图和等待时长,从而提高预测效率,提高人机对话的效率和精度,从而提高用户在多轮对话时的体验。应说明,在使用多任务模型时,上述的意图识别模型和时长预测模型均为该多任务模型的部分。
73.参阅图3,本技术的多任务模型可以为mmoe(modeling task relationships in multi-task learning with multi-gate)模型。该mmoe模型包括多个专家网络(expert)、多个门网络和多个塔网络(tower网络,且该tower网络相当于上述的多层感知器),其中,该多个门网络(gate)和多个tower网络一一对应。应说明,本技术主要用来预测对话意图,以及等待时长,即主要进行两个任务预测,所以,本技术中主要以两个tower网络,以及两个门网络为例进行说明,即图3示出的gate1、gate2、tower1和tower2,以n个专家网络为例进行说明,即图3示出的expert1、exper2、

、expertn。
74.针对图3示出的模型结构,图4为本技术实施例提供的一种同步确定对话意图以及等待时长方法的流程示意图。该方法应用于人机对话装置。该实施例中与图1和图2所示的实施例相同的内容,此处不再重复描述。本实施例的方法包括以下步骤:
75.401:对所述当前对话语句以及所述用户在多个特征维度下的多个特征数据进行编码,分别得到所述当前对话语句的特征向量以及所述用户在每个所述特征维度下的特征向量。
76.402:将所述当前对话语句的特征向量以及所述用户在每个所述特征维度下的特征向量进行拼接,得到mmoe模型的输入数据。
77.403:通过每个门网络分别对所述输入数据进行处理,得到每个门网络处理维度下的各个专家网络的概率。
78.示例性的,通过每个门网络对输入数据进行软分类(softmax),得到各个专家网络的概率。比如,通gate1对输入数据进行软分类,则可得到gate1处理维度下的各个专家网络的概率。
79.404:根据各个专家网络的概率从所述多个专家网络中选择与每个门网络对应的多个目标专家网络。
80.示例性的,可以按照各个专家网络的概率从高到低的顺序,从多个专家网络中选择预设数量的专家网络作为与每个门网络对应的多个目标专家网络。
81.405:通过每个门网络对应的所述多个目标专家网络分别输入数据进行特征提取,得到所述多个目标专家网络中的每个所述目标专家网络对应的目标特征。
82.406:对每个所述目标专家网络的目标特征进行加权,得到与每个所述门网络对应的tower网络的输入数据。
83.示例性的,可以对每个专家网络对应概率归一化处理,得到每个专家网络对应的权重;然后,基于每个专家网络对应的权重,对多个目标专家网络的目标特征进行加权,得到与每个所述门网络对应的tower网络的输入数据。
84.407:通过每个所述门网络对应的tower网络对该tower网络的输入数据进行任务预测,得到该tower网络对应的任务预测结果。
85.可选的,当该tower网络用来预测对话意图时,则该任务预测结果当前对话语句的对话意图,其确定对话意图的方式可参考上述通过多层感知器预测对话意图的方式,不再叙述;可选的,当该tower网络用来预测等待时长时,则该任务预测结果为该用户的等待时长,其预测等待时长的方式可参考上述多层感知器预测等待时长的过程,不再叙述。
86.参阅图5,图5本技术实施例提供的一种基于意图识别的人机对话装置的功能单元组成框图。人机对话装置500包括:获取单元501和处理单元502;
87.获取单元501,用于获取用户在本次多轮对话过程中的当前对话语句;
88.处理单元502,用于对所述当前对话语句进行意图识别,得到所述用户的当前对话语句的对话意图,所述对话意图包括结束所述本次多轮对话或者保持所述本次多轮对话;
89.当所述对话意图为结束所述本次多轮对话时,获取所述本次多轮对话中位于所述当前对话语句之前的所有对话语句,将所述当前对话语句以及所述所有对话语句,作为一下次多轮对话的输入数据,以开启所述一下次多轮对话;
90.当所述对话意图为保持所述本次多轮对话时,获取所述用户在多个特征维度下的多个特征数据,根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长;
91.根据所述等待时长,获取所述用户在所述本次多轮对话中的一下个对话语句,并根据所述一下个对话语句继续保持所述本次多轮对话。
92.在本技术的一个实施方式中,在对所述当前对话语句进行意图识别,得到所述用户的当前对话语句的对话意图方面,处理单元502,具体用于:
93.对所述用户的当前对话语句进行文本识别,得到待识别文本;
94.对所述待识别文本进行实体识别,得到所述待识别文本中的至少一个实体,以及所述至少一个实体中的每个所述实体在所述待识别文本中的位置;
95.根据所述待识别文本、所述至少一个实体以及每个所述实体在所述待识别文本中
的位置,确定所述用户的当前对话语句的对话意图。
96.在本技术的一个实施方式中,在根据所述待识别文本、所述至少一个实体以及每个所述实体在所述待识别文本中的位置,确定所述用户的当前对话语句的对话意图方面,处理单元502,具体用于:
97.对每个所述实体以及每个所述实体在所述待识别文本中的位置信息进行编码,得到每个所述实体的第一特征向量;
98.对所述待识别文本进行分词,得到至少一个单词;
99.对所述至少一个单词中的每个所述单词进行编码,得到每个所述单词的第二特征向量;
100.基于注意力机制,将每个所述实体对应的第一特征向量与每个所述单词对应的第二特征向量进行融合,得到每个所述单词对应的目标特征向量;
101.根据每个所述单词对应的目标特征向量,确定每个所述单词对应的槽位填充结果;
102.根据每个所述单词对应的槽位填充结果,得到所述待识别文本的意图;
103.根据所述待识别文本的意图,确定所述用户的当前对话语句的对话意图。
104.在本技术的一个实施方式中,在对每个所述实体以及每个所述实体在所述待识别文本中的位置信息进行编码,得到每个所述实体的第一特征向量方面,处理单元502,具体用于:
105.对每个所述实体进行编码,得到每个所述实体的第三特征向量;
106.对每个所述实体在所述待识别文本中的位置进行编码,得到每个所述实体的第四特征向量;
107.对每个所述实体的第三特征向量和每个所述实体的第四特征向量进行融合,得到每个所述实体的第一特征向量。
108.在本技术的一个实施方式中,在根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长方面,处理单元502,具体用于:
109.对所述用户在所述多个特征维度下的多个特征数据分别进行编码,得到所述用户在每个所述特征维度下的特征向量;
110.将所述用户在所述多个特征维度的多个特征向量进行拼接,得到所述用户的目标特征向量;
111.将所述用户的目标特征向量输入到多层感知器,得到落入各个预设时长范围的概率;
112.将概率最大的预设时长范围的中位数作为所述当前对话语句的等待时长。
113.在本技术的一个实施方式中,在根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长方面,处理单元,具体用于:
114.根据所述用户在所述多个特征维度下的多个特征数据,从多个候选用户中选出多个目标用户,其中,所述多个目标用户中的任意一个所述目标用户与所述用户至少在一个所述特征维度下的特征数据相同;
115.对所述用户在所述多个特征维度下的多个特征数据分别进行编码,得到所述用户在每个所述特征维度下的特征向量;
116.将所述用户在所述多个特征维度的多个特征向量进行拼接,得到所述用户的目标特征向量;
117.对每个所述目标用户在所述多个特征维度下的多个特征数据以及标签数据分别进行编码,得到每个所述目标用户在每个所述特征维度下的特征向量,以及与所述标签数据对应的特征向量,其中,所述标签数据用于表示每个所述目标用户的说话间隔;
118.将每个所述目标用户在每个所述特征维度下的特征向量,以及与所述标签数据对应的特征向量进行拼接,得到每个所述目标用户对应的目标特征向量;
119.根据所述用户的权重和每个所述目标用户的权重,分别对所述用户的目标特征向量和每个所述目标用户的目标特征向量进行加权,得到最终的目标特征向量;
120.将所述最终的目标特征向量输入到多层感知器,得到所述当前对话语句的等待时长。
121.在本技术的一个实施方式中,处理单元502根据所述用户的权重和每个所述目标用户的权重,分别对所述用户的目标特征向量和每个所述目标用户的目标特征向量进行加权之前,处理单元502,还用于:
122.获取每个所述目标用户在所述多个特征维度下的多个特征数据和所述用户在所述多个特征维度下的多个特征数据相同的数量;
123.基于每个所述目标用户的相同的数量进行归一化处理,得到每个所述目标用户的初始权重;
124.对每个所述目标用户的初始权重以及所述用户的初始权重进行归一化处理,得到每个所述目标用户的权重以及所述用户的权重,所述用户的初始权重为1。
125.参阅图6,图6为本技术实施例提供的一种电子设备的结构示意图。如图6所示,电子设备600包括收发器601、处理器602和存储器603。它们之间通过总线604连接。存储器603用于存储计算机程序和数据,并可以将存储器603存储的数据传输给处理器602。
126.处理器602用于读取存储器603中的计算机程序执行以下操作:
127.获取用户在本次多轮对话过程中的当前对话语句;
128.对所述当前对话语句进行意图识别,得到所述用户的当前对话语句的对话意图,所述对话意图包括结束所述本次多轮对话或者保持所述本次多轮对话;
129.当所述对话意图为结束所述本次多轮对话时,获取所述本次多轮对话中位于所述当前对话语句之前的所有对话语句,将所述当前对话语句以及所述所有对话语句,作为一下次多轮对话的输入数据,以开启所述一下次多轮对话;
130.当所述对话意图为保持所述本次多轮对话时,获取所述用户在多个特征维度下的多个特征数据,根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长;
131.根据所述等待时长,获取所述用户在所述本次多轮对话中的一下个对话语句,并根据所述一下个对话语句继续保持所述本次多轮对话。
132.在本技术的一个实施方式中,在本技术的一个实施方式中,在对所述当前对话语句进行意图识别,得到所述用户的当前对话语句的对话意图方面,处理器602具体用于执行以下操作:
133.对所述用户的当前对话语句进行文本识别,得到待识别文本;
134.对所述待识别文本进行实体识别,得到所述待识别文本中的至少一个实体,以及所述至少一个实体中的每个所述实体在所述待识别文本中的位置;
135.根据所述待识别文本、所述至少一个实体以及每个所述实体在所述待识别文本中的位置,确定所述用户的当前对话语句的对话意图。
136.在本技术的一个实施方式中,在根据所述待识别文本、所述至少一个实体以及每个所述实体在所述待识别文本中的位置,确定所述用户的当前对话语句的对话意图方面,处理器602具体用于执行以下操作:
137.对每个所述实体以及每个所述实体在所述待识别文本中的位置信息进行编码,得到每个所述实体的第一特征向量;
138.对所述待识别文本进行分词,得到至少一个单词;
139.对所述至少一个单词中的每个所述单词进行编码,得到每个所述单词的第二特征向量;
140.基于注意力机制,将每个所述实体对应的第一特征向量与每个所述单词对应的第二特征向量进行融合,得到每个所述单词对应的目标特征向量;
141.根据每个所述单词对应的目标特征向量,确定每个所述单词对应的槽位填充结果;
142.根据每个所述单词对应的槽位填充结果,得到所述待识别文本的意图;
143.根据所述待识别文本的意图,确定所述用户的当前对话语句的对话意图。
144.在本技术的一个实施方式中,在对每个所述实体以及每个所述实体在所述待识别文本中的位置信息进行编码,得到每个所述实体的第一特征向量方面,处理器602具体用于执行以下操作:
145.对每个所述实体进行编码,得到每个所述实体的第三特征向量;
146.对每个所述实体在所述待识别文本中的位置进行编码,得到每个所述实体的第四特征向量;
147.对每个所述实体的第三特征向量和每个所述实体的第四特征向量进行融合,得到每个所述实体的第一特征向量。
148.在本技术的一个实施方式中,在根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长方面,处理器602具体用于执行以下操作:
149.对所述用户在所述多个特征维度下的多个特征数据分别进行编码,得到所述用户在每个所述特征维度下的特征向量;
150.将所述用户在所述多个特征维度的多个特征向量进行拼接,得到所述用户的目标特征向量;
151.将所述用户的目标特征向量输入到多层感知器,得到落入各个预设时长范围的概率;
152.将概率最大的预设时长范围的中位数作为所述当前对话语句的等待时长。
153.在本技术的一个实施方式中,在根据所述用户在多个特征维度下的多个特征数据,确定所述当前对话语句的等待时长方面,处理器602具体用于执行以下操作:
154.根据所述用户在所述多个特征维度下的多个特征数据,从多个候选用户中选出多个目标用户,其中,所述多个目标用户中的任意一个所述目标用户与所述用户至少在一个
所述特征维度下的特征数据相同;
155.对所述用户在所述多个特征维度下的多个特征数据分别进行编码,得到所述用户在每个所述特征维度下的特征向量;
156.将所述用户在所述多个特征维度的多个特征向量进行拼接,得到所述用户的目标特征向量;
157.对每个所述目标用户在所述多个特征维度下的多个特征数据以及标签数据分别进行编码,得到每个所述目标用户在每个所述特征维度下的特征向量,以及与所述标签数据对应的特征向量,其中,所述标签数据用于表示每个所述目标用户的说话间隔;
158.将每个所述目标用户在每个所述特征维度下的特征向量,以及与所述标签数据对应的特征向量进行拼接,得到每个所述目标用户对应的目标特征向量;
159.根据所述用户的权重和每个所述目标用户的权重,分别对所述用户的目标特征向量和每个所述目标用户的目标特征向量进行加权,得到最终的目标特征向量;
160.将所述最终的目标特征向量输入到多层感知器,得到所述当前对话语句的等待时长。
161.在本技术的一个实施方式中,处理器602根据所述用户的权重和每个所述目标用户的权重,分别对所述用户的目标特征向量和每个所述目标用户的目标特征向量进行加权之前,处理器602还用于执行以下操作:
162.获取每个所述目标用户在所述多个特征维度下的多个特征数据和所述用户在所述多个特征维度下的多个特征数据相同的数量;
163.基于每个所述目标用户的相同的数量进行归一化处理,得到每个所述目标用户的初始权重;
164.对每个所述目标用户的初始权重以及所述用户的初始权重进行归一化处理,得到每个所述目标用户的权重以及所述用户的权重,所述用户的初始权重为1。
165.应理解,上述处理器602可以为图5所述的实施例人机对话装置500的处理单元502。
166.应理解,本技术中的电子设备可以包括智能手机(如android手机、ios手机、windows phone手机等)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备mid(mobile internet devices,简称:mid)或穿戴式设备等。上述电子设备仅是举例,而非穷举,包含但不限于上述电子设备。在实际应用中,上述电子设备还可以包括:智能车载终端、计算机设备等等。
167.本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现如上述方法实施例中记载的任何一种基于意图识别的人机对话方法的部分或全部步骤。
168.本技术实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种基于意图识别的人机对话方法的部分或全部步骤。
169.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知
悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本技术所必须的。
170.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
171.在本技术所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
172.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
173.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
174.所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储器包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
175.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:read-only memory,简称:rom)、随机存取器(英文:random access memory,简称:ram)、磁盘或光盘等。
176.以上对本技术实施例进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

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

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

相关文献