在话音机器人和人类之间的对应对话期间解析唯一个人标识符
背景技术:1.人类可以利用本文称为“自动化助理”(也被称为“聊天机器人”、“交互式个人助理”、“智能个人助理”、“个人话音助理”、“对话代理”等)的交互式软件应用参与人机对话。例如,人类(当他们与自动化助理交互时可以被称为“用户”)可以使用口头自然语言输入(即,口头话语)向自动化助理提供命令和/或请求,在某些情况下可以将该口头自然语言输入转换为文本,然后对其进行处理。自动化助理通常通过提供响应用户界面输出(例如,可听和/或可视用户界面输出),控制智能设备和/或执行其它动作,来响应命令或请求。
2.自动化助理通常在解释和响应用户请求时依赖于组件的流水线。例如,自动语音识别(asr)引擎可以用于处理对应于口头话语的音频数据,生成用户话语的转录(即,项的序列和/或其它令牌)。然而,在执行asr时,某些项可能被误识别。当口头话语对应于不可预测和/或词汇之外的项的序列和/或其它令牌时,这种误识别会加剧。例如,电子邮件地址、物理地址、用户名等可以包括字母、数字和/或符号的序列,其对于用户是个人的和有意义的,但是它们经常被asr误识别。
3.由于这种误识别,自动化助理可能浪费地执行用户不希望的动作,或者阻止执行进一步动作。这可以使得用户重复相同的口头话语(这可能再次被误识别)或者使得用户执行一些其它动作,从而延长人机对话和/或使得在人机对话之外消耗另外计算资源。另外地或可替换地,这种误识别可以通过将电子邮件和/或其它电子通信错误地传送到误识别的电子邮件地址、用户名和/或其他个人标识符来使得自动化助理不必要地利用网络资源。这可以引起隐私问题,因为自动化助理可能错误地向不正确的用户传送对用户来说是个人的内容。另外地或可替换地,这种误识别可以使得自动化助理请求人类接管人机对话,从而延长人机对话和/或使得在请求人类接管人机对话时消耗另外计算资源。
技术实现要素:4.本文所公开的实施方式涉及使话音机器人利用多个机器学习(ml)层在话音机器人参与和对应人类的对应对话的同时解析用于对应人类的唯一个人标识符。唯一个人标识符可以包括对于人类是个人的唯一字母数字字符序列。唯一个人标识符可以是,例如,电子邮件地址、物理地址、用户名、口令、实体的名称、产品标识符、域名和/或任何其它唯一个人标识符。在一些实施方式中,可以使用多个ml层来处理对应于包括唯一个人标识符的口头话语的一个或多个自动语音识别(asr)语音假设,以生成一个或多个候选唯一个人标识符。一个或多个候选唯一个人标识符中的每个都可以包括一个或多个对应字母数字字符,每个对应字母数字字符都与对应预测测量相关联。此外,可以基于对应预测测量来选择候选唯一个人标识符的一个或多个对应字母数字字符,并且话音机器人可以生成具有对应澄清请求的一个或多个提示,该对应澄清请求请求关于用于唯一个人标识符的一个或多个对应的字母数字字符的澄清。基于来自人类的对应响应,可以细化一个或多个候选唯一个人标识符。话音机器人可以生成一个或多个另外提示,并且继续细化一个或多个候选唯一个人标
识符,直到预测到给定唯一个人标识符对应于由人类所提供的实际唯一个人标识符为止。给定唯一个人标识符然后可以由话音机器人用于一个或多个进一步动作,诸如利用给定唯一标识符来促进对应对话和/或诸如给定唯一标识符来促进在对应对话之后的另一动作。
5.作为一个示例,假设在由人类发起的电话呼叫期间进行人类与话音机器人之间的对应对话,并且该对应对话与公用事业公司(例如,水供应商、燃气和电力供应商、电缆或因特网供应商等)的人类呼叫客户服务相关联。在该示例中,话音机器人可以征求与人的电子邮件地址相对应的唯一个人标识符来验证人类的身份,查找与电子邮件地址相关联的服务,和/或执行由所人类在对应的对话期间所请求的任何其它动作。话音机器人可以使用asr模型来处理捕获来自人类的并且包括电子邮件地址的口头话语的音频数据,以生成多个asr语音假设。进一步假设在这个示例中包括人类的电子邮件地址的口头话语是“john and then p@exampleurl.com(john并且然后p@exampleurl.com)”。在该示例中,多个asr语音假设可以包括用于电子邮件地址的“johnp”部分的“jon and then p(jon并且然后p)”、“john and then p(john并且然后p)”、“jon and then d(jon并且然后d)”、“john and then d(john并且然后d)”的asr语音假设,和/或其它asr语音假设。在该示例中,话音机器人可以使用多个ml层来处理一个或多个asr语音假设,以生成一个或多个候选唯一个人标识符。
6.此外,话音机器人可以基于对应预测测量来生成一个或多个提示。例如,话音机器人可以生成提示“and is that john with an h or no h(并且它是具有h或没有h的john)?”。进一步假设人类提供另外口头话语“john with a h(具有h的john)”。在该示例中,话音机器人可以使用asr模型来处理捕获另外口头话语的另外音频数据,以生成多个另外asr语音假设,并且话音机器人可以使用多个ml层来处理一个或多个另外语音假设,以细化对应预测测量和/或一个或多个候选唯一个人标识符。在该示例中,话音机器人可以至少更新与字母数字字符“h”相关联的对应预测测量,以指示存在人类的电子邮件地址以字母数字字符“j o h n”的序列开始的高似然性(例如,使用二进制值、概率、对数似然性等)。在这样做时,话音机器人可以将一个或多个候选唯一个人标识符限制为子集,该子集被限制为从字母数字字符“j o h n”的序列开始的那些,从而消除排除字母数字字符“h”的任何候选唯一个人标识符。此外,话音机器人可以生成另外提示(例如,“j o h n and then was that p as in papa or d as in delta(j o h n,并且然后是如在papa中的p,或者如在delta中的d)”),并且继续细化对应预测测量和/或一个或多个候选唯一个人标识符,直到它被预测为对应于人类的电子邮件地址。
7.在一些实施方式中,话音机器人可以响应预测到捕获口头话语的音频数据包括唯一个人标识符而使用多个ml层来处理一个或多个asr语音假设。在那些实施方式的一些版本中,话音机器人可以基于包括由话音机器人先前生成的合成语音的特定合成语音音频数据来预测口头话语包括唯一个人标识符,该特定合成语音已经被提供用于在对应的对话期间呈现给人类。例如,如果话音机器人生成包括请求人类提供唯一个人标识符(例如,“what is your email address(你的电子邮件地址是什么)?”)的合成语音的合成语音音频数据,则话音机器人可以预测口头话语包括唯一个人标识符。在一些另外或可替换实施方式中,话音机器人可以基于使用asr模型所生成的多个asr语音假设来预测口头话语是否包括个人标识符。例如,如果多个asr语音假设中的一个或多个包括指示唯一个人标识符(例如,数
字或城市的串以及用于物理地址的状态信息、特定符号或字符(例如,“@”符号、下划线等)、和/或口头话语包括唯一个人标识符的任何其它指示符)的给定字母数字字符或字母数字字符串,则系统可以预测口头话语包括唯一个人标识符。
8.在一些实施方式中,多个ml层可以对应于变换器ml模型(例如,输入层、编码层、解码层、前馈层、注意层、输出层和/或其它ml层)、单向和/或双向rnn模型(例如,输入层、隐蔽层、输出层和/或其它ml层)和/或其它ml模型的其它ml层的那些。在一些实施方式中,多个ml层可以用于处理一个或多个asr语音假设,以生成用于唯一个人标识符的可能性树。可能性树可以包括多个节点和多个边缘。多个节点中的每个都可以与针对唯一个人标识符所预测的给定字母数字字符相关联(例如,包括该给定字母数字字符或者包括将节点映射到该给定字母数字字符的数据)。此外,多个节点中的每个可以包括与针对唯一个人标识符的对应节点的给定字母数字字符相关联的对应预测测量。多个边缘可以连接多个节点中的一个或多个节点。在其中通过利用多个ml层处理一个或多个asr语音假设来生成可能性树的实施方式中,可以基于可能性树来生成一个或多个候选唯一个人标识符,并且可以选择与具有预测为对应于唯一个人标识符的对应预测测量的节点相关联的候选唯一个人标识符中的给定一个候选唯一个人标识符。在另外或可替换的实施方式中,在处理一个或多个asr语音假设时,多个ml层可以直接使用多个ml层来生成一个或多个候选唯一个人标识符。
9.在各种实施方式中,话音机器人可以使用多个ml层处理与合成语音音频数据相关联的话音机器人的对应意图连同一个或多个asr语音假设,该合成语音音频数据被呈现用于在接收口头话语之前呈现给人类。话音机器人的意图可以包括,例如,请求人类提供唯一个人标识符,请求人类拼写唯一个人标识符,请求人类澄清唯一个人标识符的一个或多个字母数字字符,请求人类验证唯一个人标识符,和/或任何其它意图。通过处理话音机器人的意图连同一个或多个asr语音假设,可以利用多个ml层以更快速和有效的方式解析正确的个人标识符。例如,如果话音机器人生成请求关于给定字母数字字符的澄清的提示(例如,用于电子邮件地址“johnp@exampleurl.com”的“is that p as in papa or d as in delta(是如在papa中的p,或者如在delta中的d)”),则可以利用ml层来处理与先前呈现给人类的提示相关联的话音机器人的意图,从而利用该意图来细化关于特定字母数字字符的唯一个人标识符。在其中利用多个ml层来生成用于唯一个人标识符的可能性树的实施方式中,这使得话音机器人能够在关于特定字母数字字符的可能性树上执行波束搜索,并且快速且有效地更新可能性树,从而快速且有效地细化一个或多个候选唯一个人标识符。此外,在利用话音机器人的意图的实施方式中,与没有利用意图的情况相比,多个ml层能够利用较少训练实例获得较高水平的鲁棒性和/或准确性。
10.在一些实施方式中,话音机器人可以基于与一个或多个候选唯一个人标识符相关联的对应预测测量来确定是否生成一个或多个提示。在那些实施方式的一些版本中,如果与一个或多个字母数字字符相关联的对应预测测量未能满足阈值,则话音机器人可以生成请求人类拼写的提示,或者在逐个字符的基础上提供唯一个人标识符(例如,“can you spell that for me(您能为我拼写那个吗)?等”)。在那些实施方式的一些另外或可替换版本中,话音机器人可以生成请求人类澄清用于唯一个人标识符的一个或多个特定字母数字字符的提示(例如,“so it begins with t as in tango(因此它以如在tango中的t开始)?”、“was that f as in foxtrot or s as in sierra(它是如在foxtrot中的f或如在
sierra中的s)?”等)。在那些实施方式的一些另外或可替换版本中,话音机器人可以生成请求人类验证唯一个人标识符的提示(例如,“so the email address is j o h n p@exampleurl.com(所以电子邮件地址是jo h n p@exampleurl.com)”等)。在一些实施方式中,话音机器人可以基于与候选唯一标识符中的给定一个的每个字母数字字符相关联的对应预测测量中的每个满足阈值来预测一个或多个候选唯一个人标识符与实际唯一个人标识符相对应。
11.在一些实施方式中,可以在使用各种话音通信协议所执行的电话呼叫期间进行人类与话音机器人之间的对应对话。在另外的或可替换的实施方式中,可以在人类与话音机器人之间的人机对话会话期间进行人与话音机器人之间的对应对话。如上所述,在这些和其它实施方式中,话音机器人可以响应于确定候选唯一个人标识符中的给定一个的确与实际唯一个人标识符相对应,利用给定唯一个人标识符来促进对应对话。在话音机器人与人类之间的电话呼叫期间进行对应对话的实施方式中,话音机器人可以利用唯一个人标识符来继续执行由人类所请求的任务(例如,对于客户服务,对于与用户帐户相关的查询,和/或在电话呼叫期间可以执行的任何其它任务)。例如,话音机器人可以利用唯一个人标识符来验证或认证人的身份,搜索与唯一个人标识符相关的信息,和/或话音机器人可以利用唯一个人标识符来继续执行电话呼叫的任何其它方式。在话音机器人与人类之间的对话会话期间进行对应对话的实施方式中,话音机器人可以利用唯一个人标识符将唯一个人标识符并入到转录中(例如,在人类正在利用话音机器人来指示电子邮件、文本消息、sms消息、笔记、日历条目和/或以其它方式指示话音机器人的同时),代表用户执行动作(例如,代表用户进行购买,登录到用户的帐户,和/或代表用户的任何其他动作),向用户传送内容(例如,当唯一个人标识符对应于电子邮件时的电子内容和/或当唯一个人标识符对应于物理地址时的物理内容)和/或话音机器人可以利用唯一个人标识符来促进对应对话的任何其它方式。
12.在各种实施方式中,并且在话音机器人在对应对话期间利用多个ml层来确定唯一个人标识符之前,可以基于多个训练实例来训练多个ml层。多个训练实例中的每个都可以包括训练实例输入和训练实例输出。训练实例输入可以包括以下中的一个或多个:用于唯一个人标识符的一个或多个asr语音假设、对应于一个或多个asr语音假设的音频数据,或者与被呈现以用于在接收音频数据之前呈现给人类的合成语音音频数据相关联的话音机器人的意图。训练实例输出可以包括对应于唯一个人标识符的基准真相输出,该基准真相输出包括用于唯一个人标识符的基准真相字母数字字符和/或用于唯一个人标识符的基准真相字母数字字符的对应基准真相预测测量。在一些实施方式中,并且在来自参与者的适当许可的情况下,可以基于包括至少一个人类参与者的实际对话(例如,人类与话音机器人之间的实际对话或多个人类之间的实际对话)来生成多个训练实例中的一个或多个。在另外的或可替换的实施方式中,可以基于存储在一个或多个数据库中的实际唯一个人标识符来综合地生成多个训练实例中的一个或多个。
13.在那些实施方式的一些版本中,可以训练多个ml层以便在对应对话的单轮中利用。例如,对于给定训练实例,可以使用多个ml层来处理训练实例输入,以为包括在唯一个人标识符中的每个字母数字字符生成对应预测测量。此外,可以将包括在唯一个人标识符中的每个字母数字字符的对应预测测量与训练实例输出(例如,基于逐个字符)进行比较。基于此比较,可以生成一个或多个损失,且可以基于损失中的一个或多个来更新多个ml层
中的一个或多个。在那些实施方式的一些另外或可替换版本中,可以进一步训练多个ml层,以便经由模拟器在对应对话的n个另外轮中利用(例如,其中n是大于1的正整数)。例如,一个或多个候选唯一个人标识符可以基于对应预测测量(并且可选地使用可能性树)来生成,模拟器的模拟话音机器人部分可以处理一个或多个候选唯一个人标识符以生成模拟提示,模拟器的模拟人类部分可以基于模拟提示并且基于给定训练实例的基准真相输出来生成模拟响应,并且多个ml层可以处理模拟响应,以细化一个或多个候选唯一个人标识符。例如,假设唯一个人标识符是电子邮件地址“johnp@exampleurl.com”,并且用于电子邮件地址的预测的字母数字字符的对应预测测量指示其可以以“p”或“d”结束。在该示例中,使用模拟器的模拟话音机器人部分所生成的模拟提示可以是“was that p as in papa or d as in delta(它是如在papa中的p或者如在delta中的d)”,并且使用模拟器的模拟人类部分所生成的模拟响应可以基于该提示和基于包括对应的字母数字字符“p”的基准真相输出而是“p as in papa(如在papa中的p)”。模拟可以以这种迭代方式继续n轮,直到预测一个或多个候选唯一个人标识符对应于与给定训练实例相关联的实际唯一个人标识符。在各种实施方式中,可以基于用于对应对话的单轮的多个训练实例来训练多个ml层,直到在用于对应对话的n轮的进一步训练之前满足一个或多个条件。
14.在一些实施方式中,用于训练多个ml层的多个训练实例可以基于实际对话来获得和/或被综合地生成以反映唯一个人标识符的实际分布。这允许多个ml层在被话音机器人利用时获得用于实际使用中的唯一个人标识符的高水平的精度和/或可追溯性。此外,通过获得对唯一个人标识符的高精度和/或可追溯性,可以更快速和有效地结束包括唯一个人标识符的对应对话,因为由话音机器人利用并且使用本文描述的技术训练的多个ml层更能够理解人类语音的细微差别并且相应地响应以解析唯一个人标识符。此外,利用本文所描述的多个ml层的话音机器人是更可缩放的,且由于多个ml层可以在多个不同的话音机器人之中共享,因此降低存储器消耗。例如,多个第三方可以为特定任务开发相应的话音机器人,而不必训练相应的话音机器人来确定唯一个人标识符。相反,相应的话音机器人可以各自简单地使用多个ml层(或其相应的实例)。
15.提供以上描述仅作为本文所公开的一些实施方式的概述。在本文中更详细描述了那些实施方式和其它实施方式。
附图说明
16.图1描绘了展示了本公开的各个方面并且可以实现本文所公开的实施方式的示例环境的框图。
17.图2a描绘了根据各种实施方式的用于训练由话音机器人在确定唯一个人标识符时所利用的多个机器学习层的示例过程流。
18.图2b描绘了根据各种实施方式的用于由话音机器人在确定唯一个人标识符时利用多个机器学习层的示例过程流。
19.图3描绘了图示根据各种实施方式的获得用于训练由话音机器人在确定唯一个人标识符时所利用的多个机器学习层的训练实例的示例方法的流程图。
20.图4描绘了图示根据各种实施方式的训练由话音机器人在确定唯一个人标识符时所利用的多个机器学习层的示例方法的流程图。
21.图5描绘了图示根据各种实施方式的由话音机器人在确定唯一个人标识符时利用多个机器学习层的示例方法的流程图。
22.图6a,6b和6c描绘了根据各种实施方式的话音机器人与人类之间的包括确定唯一个人标识符的对应对话的各种非限制性示例。
23.图7描绘了根据各种实施方式的计算设备的示例架构。
具体实施方式
24.现在转到图1,描绘了展示本公开的各个方面并且可以实现本文所公开的实施方式的示例环境的框图。客户端设备110在图1中图示,并且在各种实施方式中包括用户输入引擎111、渲染引擎112和话音机器人客户端113。客户端设备110可以是例如独立辅助设备(例如,具有麦克风、扬声器和/或显示器)、智能电话、膝上型计算机、台式计算机、平板电脑、可佩戴计算设备、车辆计算设备和/或能够实现话音机器人开发系统客户端113的任何其它客户端设备。
25.用户输入引擎111可以检测客户端设备110处的各种类型的用户输入。在客户端设备110处检测到的用户输入可以包括经由客户端设备110的麦克风检测到的口头输入、经由客户端设备110的用户界面输入设备(例如,触摸屏)检测到的触摸输入,和/或经由客户端设备110的用户界面输入设备(例如,经由触摸屏上的虚拟键盘、物理键盘、鼠标、指示笔、和/或客户端设备110的任何其它用户界面输入设备)检测到的键入输入。渲染引擎112可以使得内容在客户端设备110处可视地和/或可听地渲染,以便经由用户界面输出设备呈现给用户(或人类)。输出可以包括,例如,可以经由客户端设备110的显示器可视地渲染和/或经由客户端设备110的扬声器可听地渲染的与话音机器人相关联的各种类型的用户界面和/或与话音机器人相关联的通知,和/或任何其它可以经由客户端设备110可视地和/或可听地渲染的本文描述的输出。
26.在各种实施方式中,话音机器人客户端113可以包括自动语音识别(asr)引擎130a1、自然语言理解(nlu)引擎140a1和文本到语音(tts)引擎150a1。此外,话音机器人开发客户端113可以通过一个或多个网络1991(例如wi-fi、蓝牙、近场通信(nfc)、局域网(lan)、广域网(wan)、以太网、因特网和/或其它网络的任何组合)与话音机器人系统120通信。从与客户端设备110交互的用户的角度来看,话音机器人客户端113和话音机器人系统120形成话音机器人的逻辑实例。尽管在图1中将话音机器人系统120描述为远离客户端设备110(例如,经由一个或多个服务器)来实现,但是应当理解,出于示例的目的而不是限制性的。例如,可选地,话音机器人开发120的一个或多个方面可以在客户端设备110处本地实现和/或通过一个或多个网络1992在一个或多个另外客户端设备195处实现。
27.开发者(例如,客户端设备110的用户)可以与话音机器人系统120(例如,经由客户端设备110)交互以训练存储在ml层数据库170a1中的一个或多个ml模型的多个机器学习(ml)层。多个ml层可以对应于变换器ml模型(例如,输入层、编码层、解码层、前馈层、注意层、输出层和/或其它ml层)、单向和/或双向rnn模型(例如,输入层、隐藏层、输出层和/或其它ml层)和/或其它ml模型的其它ml层的那些。此外,多个ml层可以随后由话音机器人使用,同时与对应人类进行对话,以确定在对话期间由对应人类所提供的对应唯一个人标识符。对应唯一个人标识符可以包括对于给定人类来说是个人的任何字母数字字符序列,并且可
以是例如以下中的一个或多个:电子邮件地址、物理地址、用户名、口令、产品标识符、实体的名称或域名。
28.在一些实施方式中,可以利用多个ml层的单个实例可以来解析唯一个人标识符。例如,可以训练和利用多个ml层的单个实例来解析电子邮件地址、物理地址等。在那些实施方式的一些版本中,可以可选地处理唯一个人标识符的类型(例如,电子邮件地址、物理地址、用户名等)连同如本文所述的一个或多个asr语音假设,从而解析唯一个人标识符。在另外的或可替换的实施方式中,可以训练多个ml层的多个实例并且将其用于解析唯一个人标识符。例如,可以训练第一多个ml层并且将其用于解析电子邮件地址,可以训练第二多个ml层并且将其用于解析物理地址,可以训练第三多个ml层并且将其用于解析用户名等。在这些实施方式中,可以仅基于与多个ml层被训练以解析的唯一个人标识符的类型相对应的一个或多个训练实例来训练不同的多个ml层,并且在对应对话期间遇到的唯一个人标识符的类型可以用于选择适当的多个ml层来处理一个或多个asr语音假设。
29.话音机器人可以对应于利用存储在话音机器人数据库170a2中的一个或多个ml模型的多个另外ml层的一个或多个处理器,并且可以是第一方话音机器人或第三方话音机器人。如本文所用,术语第一方指的是发布话音机器人系统的实体,而术语第三方指的是与和第一方相关联的实体不同并且不发布话音机器人系统的实体。训练多个ml层的开发者可以是与第一方实体相关联的第一方开发者或者与第三方实体相关联的第三方开发者。
30.在一些实施方式中,话音机器人可以是基于示例的话音机器人。例如,可以基于以对应对话为基础所获得的多个训练实例来训练基于示例的话音机器人。对应对话可以是,例如,由开发者出于训练话音机器人的目的而定义的说明性对话和/或先前推断的对话,该先前推断的对话可以包括或不包括作为先前推断的对话中的参与者的话音机器人的实例。在另外的或替换的实施方式中,话音机器人可以是基于规则的话音机器人。例如,基于规则的话音机器人可以与由开发者至少部分地定义的一个或多个意图模式相关联。意图模式例如可以定义话音机器人响应于确定包括在参与和话音机器人的对应对话的人类的口头话语中的人类的意图而应当提供的一个或多个响应。与基于规则的话音相反,可以训练基于示例的话音机器人来处理捕获口头话语(或与其相对应的语音假设)的音频数据,以直接预测话音机器人应该提供的一个或多个响应,而不直接确定人类的意图。
31.本文描述的其中话音机器人可以利用多个ml层的对应对话可以包括话音机器人和与客户端设备110和/或一个或多个另外客户端设备195相关联的人类之间的任何对话。在一些实施方式中,给定对应对话可以在其中话音机器人参与和人类的对应对话的对应电话呼叫期间进行。可以使用各种话音通信协议(例如,基于因特网协议的语音(voip)、公共交换电话网络(pstn)和/或其它电话通信协议)来执行本文所述的对应电话呼叫。如本文所述,合成语音由话音机器人被渲染为对应电话呼叫的一部分,其可以包括将合成语音注入到对应电话呼叫中,使得参与对应对话的人类可以感知到合成语音。合成语音可以由客户端设备生成和/或注入到对应电话呼叫的端点之一(例如,话音机器人系统120、客户端设备110和/或一个另外客户端设备195)。在另外的或可替换的实施方式中,给定对应对话可以在对应对话会话期间进行,在该对话会话中,与客户端设备110和/或一个另外客户端设备195相关联的人类调用话音机器人代表人类执行动作。下面(例如,参考图6a至6c)描述对应对话。
32.在各种实施方式中,话音机器人系统120包括asr引擎130a2、nlu引擎140a2、tts引擎150a2、ml训练引擎160和话音机器人引擎170。ml训练引擎160可以用于训练多个ml层,该多个ml层随后由话音机器人在对应对话期间用于确定对应唯一个人标识符,并且在各种实施方式中可以包括训练实例引擎161、训练引擎162和模拟引擎163。此外,话音机器人引擎170随后可以利用话音机器人来进行对应对话,并且在各种实施方式中可以包括响应引擎171和唯一个人标识符引擎172。
33.在一些实施方式中,客户端设备110(或一个另外客户端设备195)的asr引擎130a1可以使用asr模型130a来处理捕获口头话语的音频数据。在另外的或可替换的实施方式中,客户端设备110可以通过网络1991和/或1992将音频数据传送到话音机器人系统120,并且asr引擎130a2可以使用asr模型130a来处理捕获口头话语的音频数据。asr引擎130a1和/或130a2可以基于音频数据的处理来生成用于口头话语的多个asr语音假设,并且可以可选地基于与多个asr语音假设相关联的对应值(例如,二进制值、概率值、对数似然值和/或其它值)来选择特定语音假设作为用于口头话语的识别文本。在各种实施方式中,asr模型130a是端到端语音识别模型,使得asr引擎130a1和/或130a2可以直接使用该模型来生成多个asr语音假设。例如,asr模型130a可以是用于在逐个字符的基础上(或其它逐个令牌的基础上)生成多个asr语音假设中的每个的端到端模型。用于在逐个字符的基础上生成识别文本的这种端到端模型的一些非限制性示例是递归神经网络换能器(rnn-t)模型和变换器模型。rnn-t模型是不采用注意机制的序列到序列模型的形式,而变换器模型确实采用注意机制。在其它实施方式中,asr模型130a不是端到端语音识别模型,使得asr引擎130a1和/或130a2可以替代地生成预测音素(和/或其它表示)。例如,预测音素(和/或其它表示)然后可以由asr引擎130a1和/或130a2用于确定符合预测音素的多个asr语音假设。在这样做时,asr引擎130a1和/或130a2可以可选地采用解码图、词典和/或其它资源。在各种实施方式中,可以使用渲染引擎112经由客户端设备110(或一个另外客户端设备195)的显示器来可视地渲染任何检测到的口头话语的对应转录。
34.在那些实施方式的一些版本中,客户端设备110的nlu引擎140a1和/或话音机器人系统120的nlu引擎140a2可以使用nlu模型140a来处理由asr引擎130a1和/或130a2所生成的识别文本,以确定包括在口头话语中的意图。例如,如果客户端设备110检测到口头话语“tell branden to send the prize money to my quick cash account and i’ll see him later tonight(告诉branden将奖金发送到我的快速现金帐户,并且我将在晚上看见他)”,则客户端设备110和/或话音机器人系统120可以使用asr模型130a1和/或130a2来处理捕获口头话语的音频数据,以生成与口头输入相对应的识别文本,并且可以使用nlu模型140a来处理识别文本,以至少确定添加生成具有消息内容参数的值的消息“send the prize money to my quick cash account and i’ll you later tonight(将奖金发送到我的快速现金帐户,并且我将在晚上稍后见你)”的意图。在那些实施方式的一些版本中,客户端设备110的tts引擎150a1和/或话音机器人系统120的tts引擎150a2可以生成捕获合成语音的合成语音音频数据。可以经由客户端设备110(或一个另外客户端设备195)的一个或多个扬声器使用渲染引擎112可听地渲染合成语音。合成语音可以捕获由本文所述的话音机器人或话音机器人系统120生成的任何输出。
35.训练实例引擎161可以基于由开发者提供并且在客户端设备110处经由用户输入
引擎111检测到的用户输入来获得用于训练多个ml层的多个训练实例。多个训练实例可以存储在训练实例数据库161a中。多个训练实例中的每个都可以包括训练实例输入和训练实例输出。训练实例输入可以包括以下中的一个或多个:用于唯一个人标识符的至少一个asr语音假设、为其生成至少一个asr语音假设的音频数据,或者与音频数据所响应的合成语音相关联的话音机器人的意图。训练实例输出可以包括对应于唯一个人标识符的基准真相输出。
36.在一些实施方式中,可以基于包括用于对应人类的对应唯一个人标识符的对应先前进行的对话来获得多个训练实例中的一个或多个(例如,如关于图3的方法300a所述)。对应先前进行的对话可以在至少对应人类与另外人类之间和/或在至少对应人类与话音机器人的实例之间。在其中给定先前进行的对话在至少对应人类和另外人类之间的实施方式中,可以基于给定先前进行的对话的一个或多个部分来生成多个训练实例中的一个或多个。
37.例如,训练实例引擎161可以识别包括唯一个人标识符的给定先前进行的对话的一部分,并且利用包括唯一个人标识符的给定asr语音假设作为训练实例输入。训练实例引擎161可以通过使得asr引擎130a1和/或130a2使用asr模型130a处理用于给定先前进行的对话的音频数据的对应部分以生成多个asr语音假设来识别包括唯一个人标识符的给定先前进行的对话的部分。此外,训练实例引擎161可以分析给定先前进行的对话的多个asr语音假设中的一个或多个,以识别包括唯一个人标识符的部分。例如,假设给定asr语音假设包括对应于“my email address is
…
(我的电子邮件地址是
……
)”、“my home address is
…
(我的家庭地址是
……
)”、“my username is
…
(我的用户名是
……
)”等的令牌。在该示例中,训练实例引擎161可以将给定asr语音假设识别为包括唯一个人标识符(例如,其中椭圆指示跟随的唯一个人标识符)。作为另一示例,假设给定asr语音假设包括对应于“what is your email address(您的电子邮件地址是什么)?”、“can you please provide your home address(请您可以提供您的家庭地址吗)?”、“what’s the username(用户名是什么)?”等的令牌。在该示例中,训练实例引擎161可以将响应于该问题的后续音频数据的给定asr语音假设识别为包括唯一个人标识符。在这些示例中,包括至少用于唯一个人标识符的asr语音假设的给定asr语音假设可以被用作用于给定训练实例的训练实例输入。
38.此外,训练实例引擎161可以基于与给定先前进行的对话相关联的一个或多个监督信号来识别给定训练实例的基准真相输出。一个或多个监督信号可以包括,例如,在给定先前进行的对话期间将唯一个人标识符输入到系统中(并且可选地在系统中成功地找到与唯一个人标识符的匹配),至少一个人类(例如,经由键入的输入)手动地将唯一个人标识符输入到给定先前进行的对话中和/或至少一个人类(例如,经由触摸输入或键入的输入)将在给定先前进行的对话期间预测的唯一个人标识符编辑为唯一个人标识符,人类审阅者随后在给定先前进行的对话之后校正唯一个人标识符,和/或任何其它监督信号。用于给定训练实例的训练实例输入和训练实例输出可以被存储在训练实例数据库161a中,并且随后用于训练多个ml层(例如,如关于训练引擎162所述)。
39.在给定先前进行的对话在至少对应人类和话音机器人的实例之间的实施方式中,可以基于给定先前进行的对话的一个或多个部分来生成多个训练实例中的一个或多个。值得注意的是,在这些实施方式中,在给定先前进行的对话期间,多个asr语音假设可能已经
由话音机器人的实例生成。因此,训练实例引擎161可以以与上述相同或类似的方式分析多个asr语音假设,并且给定asr语音假设(其至少包括用于唯一个人标识符的asr语音假设)可以用作用于给定训练实例的训练实例输入。此外,可以基于上述监督信号中的一个或多个来识别对应于唯一个人标识符的基准真相输出,并且可以将其用作用于给定训练实例的训练实例输出。用于给定训练实例的训练实例输入和训练实例输出可以被存储在训练实例数据库161a中,并且随后用于训练多个ml层(例如,如关于训练引擎162所述)。
40.在另外的或可替换的实施方式中,可以基于存储在一个或多个数据库中的唯一个人标识符来获得多个训练实例中的一个或多个(例如,如关于图3的方法300b所述)。在那些实施方式的一些版本中,训练实例引擎161可以访问包括唯一个人标识符的数据库(未描绘)中的一个或多个(例如,电子邮件地址数据库、物理地址数据库、用户名数据库等),从数据库中的一个或多个检索给定唯一个人标识符,使得tts引擎150a1和/或150a2使用tts模型150a处理给定唯一个人标识符,以生成捕获至少给定唯一个人标识符的合成语音音频数据,并且使得asr引擎130a1和/或130a2使用asr模型130a处理合成语音音频数据,以生成用于给定唯一个人标识符的多个asr语音假设。在这些实施方式中,用于给定唯一个人标识符的多个asr语音假设中的至少一个可以用作用于给定训练实例的训练实例输入,并且给定唯一个人标识符(或与其相对应的令牌)可以用作与用于给定训练实例的给定唯一个人标识符相对应的基准真相输出。用于给定训练实例的训练实例输入和训练实例输出可以被存储在训练实例数据库161a中,并且随后用于训练多个ml层(例如,如关于训练引擎162所述)。
41.在那些实施方式的另外或可替换的版本中,训练实例引擎161可以基于从一个或多个数据库中检索的给定唯一个人标识符来合成一个或多个训练实例(例如,以保持与给定唯一个人标识符相关联的人类的隐私)。训练实例引擎161可以基于以n-gram的一个或多个分布为基础的给定唯一个人标识符来生成多个令牌。例如,假设从一个或多个数据库中检索的给定唯一个人标识符是电子邮件地址“tatortator13@exampleurl.com”。在该示例中,电子邮件地址可以至少由“tator”、“tator”、“13”和“exampleurl.com”的令牌构成。训练实例引擎161可以基于n-gram的一个或多个分布来替换一个或多个令牌,以修改给定唯一个人标识符。例如,一个或多个分布可以指示,对于唯一个人标识符,“james”、“john”、“robert”、“susan”和“karen”的令牌比“tator”更常见,并且因此当话音机器人利用多个ml层时更可能遇到。因此,训练实例引擎161可以生成修改的唯一个人标识符,其包括至少“john”、“tator”、“13”和“exampleurl.com”的令牌。
42.尽管仅将令牌“tator”描绘为相对于修改的唯一个人标识符被替换,但是应当理解,出于示例的目的而不是限制性的,并且训练实例引擎161可以针对给定唯一个人标识符替换任何数量的令牌。此外,可以基于相应分布来替换n-gram的一个或多个,以生成与唯一个人标识符相对应的多个令牌。例如,可以基于第一名字、姓氏、昵称和/或用户名的分布、非姓名字符(例如,特殊字符或符号)的分布、数字的分布和/或任何其它分布来替换n-gram中的一个或多个。例如,在唯一个人标识符对应于街道地址的情况下,不太流行的街道名称(例如,“keewood court”)可以利用更流行的街道名称(例如,“main street”)替换。因此,在合成一个或多个训练实例时生成的令牌可以更准确地反映当在多个训练实例上训练的多个ml层随后由话音机器人利用时遇到的令牌的速率或分布。
43.此外,训练实例引擎161可以处理多个令牌以基于用于修改的唯一个人标识符的多个令牌来生成合成文本。在一些实施方式中,训练实例引擎161可以将一个或多个填充符注入到多个令牌中。继续上述示例,系统可以在多个令牌中的一个或多个的前面追加一个或多个填充符或者将一个或多个填充符附加到多个令牌中的一个或多个。例如,训练实例引擎161可以在电子邮件地址之前预先添加填充符“oh sure it’s uhh(噢,确定它是uhh)”,从而得到合成文本“oh sure it’s uhh johntator13@exampleurl.com(噢,确定它是uhh johntator13@exampleurl.com)”,或者在一个或多个令牌之间附加填充符“then(然后)”或“as in(如在
……
中)”,从而得到合成文本“john then tator then 13as in the number and@exampleurl.com(john然后tator然后如在数字中的13并且@exampleurl.com)”等等。在一些另外的或可替换的实施方式中,训练实例引擎161可以针对包括在给定唯一个人标识符中的一个或多个字母数字字符注入语音拼写。继续上述示例,系统可以针对“tator”注入“t as in tango(如在tango中的t)”的语音拼写,得到合成文本“john then tator then 13as in the number and@exampleurl.com,that’s t as in tango(john然后tator然后如在数字中的13并且@exampleurl.com,它是如在tango中的t)”。系统可以基于包括在给定令牌中的字母数字字符可能被拼出的概率针对一个或多个字母数字字符注入语音拼写。例如,“t”和“d”的字母数字字符经常在语音识别中混淆,因此人类提供“t as in tango”或“d as in dog(如在dog中的d)”的语音拼写的概率可能大于人类提供“z as in zulu(如在zulu中的z)”的语音拼写的概率。在这些示例中,所得到的合成文本可以包括“my email is uhh john and then t as in tango a t o r 13and then@exampleurl.com(我的电子邮件是uhh john并且然后如在tango中的t a t o r 13并且然后@exampleurl.com)”。通过将填充符和/或语音拼写注入到多个令牌中以生成合成文本,系统可以学习忽略填充符并且在解释修改的唯一个人标识符时利用语音拼写。
44.此外,训练实例引擎161可以处理合成文本,以通过将一个或多个asr误差注入到给定语音假设中基于合成文本生成给定asr语音假设。在一些实施方式中,注入到给定asr语音假设中的一个或多个asr错误可以包括利用一个或多个对应的同音令牌替换包括在合成文本中的一个或多个令牌。继续上述示例,电子邮件地址中的令牌“13”可以利用“third teen”取代,令牌“tator”可以利用“date her”或“tate her”取代,和/或其它令牌可以利用对应同音令牌取代。在一些另外或可替换的实施方式中,注入到给定asr语音假设中的一个或多个asr误差可以包括利用一个或多个对应同音字母数字字符来替换合成文本的一个或多个字母数字字符。继续上面示例,令牌“tator”的字母数字字符“t”可以利用“d”替换,从而产生令牌“dator”,和/或其它字母数字字符可以利用对应同音字字母数字字符来取代。通过将asr误差注入到给定asr语音假设中,可以随后训练多个ml层来处理当部署多个ml层以供话音机器人使用时可能会遇到的这些asr误差。给定asr语音假设可以用作给定训练实例的训练实例输入,且所生成的令牌(例如,基于给定唯一个人识别符且在生成合成文本之前所生成的)可以用作给定训练实例的基准真相输出。给定训练实例可以被存储在训练实例数据库161a中,并且可以随后用于训练多个ml层(例如,如关于训练引擎162所述)。
45.训练引擎162可以利用由训练实例引擎161所获得的(例如,存储在训练实例数据库161a中的)多个训练实例来训练存储在ml层数据库170a1中的多个ml层。多个ml层可以对应于变换器ml模型(例如,输入层、编码层、解码层、前馈层、注意层、出层和/或其它ml层)、
单向和/或双向rnn模型(例如,输入层、隐藏层、输出层和/或其它ml层)和/或其它ml模型的其它ml层的那些。
46.例如,具体参考图2a,描绘了用于训练由话音机器人在确定唯一个人标识符时所利用的多个ml层的示例处理流程200a。在一些实施方式中,训练实例引擎161可以从存储在训练实例数据库161a中的多个训练实例当中获得给定训练实例。在一些实施方式中,用于给定训练实例的训练实例输入可以包括对应于唯一个人标识符或相应修改的唯一个人标识符(简称为唯一个人标识符)的一个或多个asr语音假设202a。在那些实施方式的一些版本中,可以在训练多个ml层之前将一个或多个asr语音假设202a存储在训练实例数据库161a中(例如,如上关于训练引擎161所述)。在那些实施方式的另外或可替换版本中,可以在训练期间生成一个或多个asr语音假设202a。例如,捕获包括至少唯一个人标识符的口头话语的音频数据201a可以用作训练实例输入。训练实例引擎可以使得asr引擎130a1和/或130a3使用asr模型130a处理音频数据201a以生成asr语音假设202a中的一个或多个。此外,用于给定训练实例的训练实例输出可以包括与对应于一个或多个语音假设202a的唯一个人标识符相对应的基准真相输出203a。
47.训练引擎162可以使得唯一个人标识符引擎172使用存储在ml层数据库170a1中的多个ml层来处理一个或多个asr语音假设202a,以生成与对应于一个或多个asr语音假设202a的唯一个人标识符的一个或多个字母数字字符相关联的对应预测测量204a。对应预测测量204a可以包括二进制值、概率、对数似然性、或其它与对应于唯一个人标识符的实际字母数字字符的一个或多个字母数字字符的似然性相对应的测量。此外,训练引擎162可以使得损失引擎162a1将与唯一个人标识符的一个或多个字母数字字符相关联的对应预测测量204a与对应于包括在基准真相输出203a中的一个或多个asr语音假设202a的唯一个人标识符的每个字母数字字符的基准真相测量进行比较。损失引擎162a1可以基于比较来生成一个或多个损失205a。此外,训练引擎162可以使得更新引擎162a2基于一个或多个损失205a来更新存储在ml层数据库170a1中的多个ml层。
48.例如,假设用于给定训练实例的唯一个人标识符是物理地址“1234keewood court”。进一步假设针对物理地址的“keewood”部分生成的一个或多个候选唯一个人标识符,并且基于针对包括在“key wood”、“leewood”、“key wraw”、“qi wood”和/或其它候选唯一个人标识符中的字母数字字符中的每个的对应预测测量204a。每个候选唯一个人标识符中的每个字母数字字符可以与对应预测测量中的给定一个相关联,该对应预测测量指示对应于唯一个人标识符的一个或多个字母数字字符的可能性。在该示例中,可以将物理地址的“keewood”部分的每个字母数字字符和/或与物理地址的“keewood”部分的每个字母数字字符相关联的对应的基准真相测量与一个或多个候选唯一个人标识符的对应字母数字字符中的每个字母数字字符和/或对应预测测量204a在逐个字符的基础上进行比较。此外,可以基于比较字母数字字符(例如,交叉熵损失)来生成一个或多个损失,并且可以利用这些损失来更新多个ml层。例如,一个或多个损失可以跨多个ml层中的一个或多个反向传播,以更新多个ml层中的一个或多个的相应权重。
49.训练引擎162可以基于存储在训练实例数据库161a中的一个或多个另外训练实例,以这种方式继续训练多个ml层。在一些实施方式中,训练引擎162以这种方式继续训练多个ml层,直到满足一个或多个条件为止。一个或多个条件可以包括,例如,更新的多个ml
层的验证,更新的多个ml层的收敛(例如,零损失或在零损失的阈值范围内),确定多个ml层比当前由话音机器人利用(如果有的话)的多个ml层的实例更好(例如,在精度和/或可追溯性方面)执行。基于多个训练实例中的至少一个阈值量的训练的发生,和/或基于多个训练实例的训练的持续时间。值得注意的是,通过以这种方式训练多个ml层,多个ml层可以处理一个或多个asr语音假设202a并且生成预测的唯一个人标识符。然而,即使利用无限的训练和训练资源,多个ml层也可能不能准确地预测从生成一个或多个候选唯一个人标识符的对应对话的这个初始轮中可能遇到的每个唯一个人标识符。
50.因此,在各种实施方式中,模拟引擎163可以配置利用模拟器163a模拟对应对话的另外轮的模拟环境。在一些实施方式中,并且如关于图2a所述,模拟器163a可以包括模拟的话音机器人部分163a1(例如,利用多个ml层的话音机器人的实例)和模拟的人类部分163a2(例如,利用多个ml层的话音机器人的另外实例)。在另外的或可替换的实施方式中,开发者可以替换模拟器163a的模拟的话音机器人部分163a1和/或模拟的人类部分163a2,并且可以在给定模拟期间经由客户端设备110的一个或多个用户界面输入设备提供输入。此外,模拟的话音机器人部分163a1和模拟的人类部分163a2可以具有对包括可以在生成本文所述的提示和/或响应时利用的候选语音的一个或多个数据库的访问。
51.例如,假设用于给定训练实例的唯一个人标识符是物理地址“1234keewood court”。进一步假设模拟引擎163使得唯一个人标识符引擎172使用多个ml层来处理对应于物理地址的一个或多个asr语音假设,以生成针对物理地址的至少“keewood”部分并且基于对应预测测量所生成的候选唯一个人标识符中的一个或多个。进一步假设唯一个人识别引擎172选择包括在一个或多个候选唯一个人标识符中的一个或多个字母数字字符206a,所述候选唯一个人标识符基于用于被预测为对应于物理地址的一个或多个字母数字字符的对应预测测量来生成。进一步假设一个或多个字母数字字符206a对应于用于唯一个人标识符的“keewood”的“kee”部分的“k e y”。唯一个人标识符引擎172可以基于与一个或多个给定字母数字字符206a相关联的对应预测测量来确定话音机器人应该在随后生成一个或多个模拟提示207a时利用的意图。例如,唯一个人标识符引擎172可以确定与请求关于一个或多个给定字母数字字符206a的澄清、请求人拼写唯一个人标识符相关联的意图和/或任何其它本文所述的意图。
52.此外,模拟引擎163可以使用模拟器163a的模拟的话音机器人部分163a1来处理一个或多个字母数字字符206a(以及可选的意图),以生成一个或多个模拟提示207a,该模拟提示207a包括请求关于唯一个人标识符的一个或多个字母数字字符的澄清的对应澄清请求。在一些实施方式中,一个或多个模拟提示207a可以由tts引擎150a1和/或150a2使用tts模型150a来处理,以生成合成语音音频数据,该合成语音音频数据可以被渲染以用于经由客户端设备110的一个或多个扬声器呈现给开发者。例如,假设模拟的话音机器人部分163a1基于与“k”相关联的指示话音机器人在所选择的字母数字字符“k”中不是高度确信的对应预测测量来生成“does that start with k as in kilo(它以如在kilo中的k开始)”的第一提示。
53.而且,模拟引擎163可以使用模拟器163a的模拟的人类部分163a2来处理模拟提示207a中的一个或多个,以生成一个或多个模拟响应208a。模拟器163a的模拟的人类部分163a2可以在生成一个或多个模拟响应208a时利用对应于唯一标识符的基准真相输出。在
一些实施方式中,一个或多个模拟响应208a可以对应于捕获使用tts引擎150a1和/或150a2所生成的一个或多个模拟响应208a的另外合成语音音频数据。继续上面示例,假设响应于第一提示而提供第一响应“yes,k as in kilo and then e e(是的,如在kilo中的k并且然后e e)”。此外,模拟引擎162可以使得唯一个人标识符引擎172使用多个ml层来处理对应于第一响应的一个或多个语音假设,以细化一个或多个字母数字字符206a。例如,唯一个人标识符引擎172可以更新对应预测测量,以指示“k e e”的字母数字字符非常可能是正确的,从而导致唯一个人标识符的“keewood”部分的“kee wood”的细化的唯一个人标识符。
54.模拟引擎163可以使得模拟的话音机器人部分163a1和模拟的人类部分163a2执行模拟对话的n个另外轮(例如,其中n是正整数),直到话音机器人直到一个或多个字母数字字符206a对应于用于唯一个人标识符的基准真相输出为止。例如,下一个提示可以是“is kee wood one word or two words?(kee wood是一个单词还是两个单词)?”,并且下一个响应可以是“yes(是)”,从而产生细化的唯一个人标识符“keewood”。此外,下一个提示可以是“so its k e e w o o d,all one word(所以它的k e ew o o d只有一个单词)?”,下一个响应可以是“yes(是的)”,从而产生细化的唯一个人标识符“keewood”,从而解析用于训练实例的唯一个人标识符。在一些实施方式中,当用于每个字母数字字符的对应预测测量满足阈值时,可以认为一个或多个字母数字字符206a对应于用于唯一个人标识符的基准真相输出。在另外的或可替换的实施方式中,诸如上述示例,当人类(或模拟的人类部分163a2)验证预测的唯一个人标识符是实际预测的唯一个人标识符时,可以认为一个或多个字母数字字符206a对应于用于唯一个人标识符的基准真相输出。在一些实施方式中,模拟引擎163以这种方式继续训练多个ml层,直到满足一个或多个条件(例如,如上所述)。
55.在各种实施方式中,唯一个人标识符引擎172可以使用多个ml层处理话音机器人的意图以及连同其它输入(例如,一个或多个asr语音假设202a和/或一个或多个模拟响应208a)。例如,用于预测唯一个人标识符(例如,与asr语音假设202a中的一个或多个相关联)的初始轮的与话音机器人相关联的意图可以包括请求提供唯一个人标识符,请求拼写唯一个人标识符的意图和/或其他意图。作为另一示例,用于细化唯一个人标识符(例如,与一个或多个模拟响应208a相关联)的随后轮的与话音机器人相关联的意图可以包括请求验证一个或多个字母数字字符,请求拼写唯一个人标识符,请求验证唯一个人标识符的意图和/或其它意图。通过处理意图以及其它输入,唯一个人标识符引擎172即话音机器人可以更好地处理由多个ml层处理的输入,这允许在维持相同水平的精度和可追溯性的同时更快速和有效地识别和细化一个或多个字母数字字符206a。
56.在另外的或可替换的实施方式中,唯一个人标识符引擎172可以使用多个ml层以及连同其它输入(例如,一个或多个asr语音假设202a和/或一个或多个模拟响应208a)一起处理一种类型的唯一个人标识符。唯一个人标识符的类型可以对应于它是否是电子邮件地址、物理地址、用户名等。在另外或可替换的实施方式中,该类型的唯一个人标识符可以在处理asr语音假设中的至少一个或多个之后由唯一个人标识符引擎172利用。通过处理该类型的唯一个人标识符以及另一个输入,话音机器人可以更好地处理由多个ml层处理的输入,这允许在维持相同水平的精度和可追溯性的同时更快速和有效地识别和细化一个或多个字母数字字符206a。尽管将多个ml层描述为以特定方式和使用特定架构来训练,但应了解,其出于实例的目的而不意味着限制。
57.在训练话音机器人之后,话音机器人引擎170可以随后利用存储在ml层数据库170a1中的经训练的多个ml层和存储在话音机器人数据库170a2中的话音机器人来在话音机器人正在进行对话的同时确定唯一个人标识符。例如,具体参考图2b,描绘了由话音机器人利用多个ml层来确定唯一个人标识符的示例处理流程200b。出于示例的目的,假设话音机器人与在与话音机器人系统120通信的另外客户端设备195之一处实现的超市自结帐系统相关联。进一步假设人类已经在超市自助结帐系统完成结帐,并且话音机器人已经提示人类提供超市自助结帐系统可以向其发送收据和/或其它内容(例如,优惠券、广告和/或其它促销材料)的电子邮件地址。在该示例中,捕获包括电子邮件地址的口头话语的音频数据201b可以由asr引擎130a1和/或130a2处理以生成一个或多个语音假设202b。
58.在一些实施方式中,在框203b,话音机器人可以确定语音假设202b中的一个或多个是否对应于唯一个人标识符。在那些实施方式的一些版本中,话音机器人可以基于语音假设中的一个或多个包括用于一个或多个字母数字字符的令牌和/或指示唯一个人标识符的字母数字字符的令牌的一个或多个字符串来确定语音假设202b中的一个或多个是否对应于唯一个人标识符。例如,如果一个或多个语音假设202b包括“dot com”,则可以确定它包括电子邮件地址,如果一个或多个语音假设202b包括城市和州,则可以确定它包括物理地址,并且针对各种唯一个人标识符的任何其它语言信号依此类推。在一些另外的或可替换的实施方式中,话音机器人可以确定是否一个或多个语音假设202b基于响应于征求唯一个人标识符而接收到的口头话语而生成。如果在框203b话音机器人确定音频数据201b不包括唯一个人标识符,则话音机器人可以继续分析另外音频以确定它是否包括唯一个人标识符。如果在框203b话音机器人确定音频数据201b包括唯一个人标识符,则话音机器人可以使得唯一个人标识符引擎172使用存储在ml层数据库170a1中的多个ml层来处理一个或多个asr语音假设202b。
59.在一些实施方式中,可以基于跨多个ml层生成的输出来生成可能性树172a。可能性树可以包括多个节点204b、205b、206b1、206b1、207b、208b1、208b2和/或其它节点,以及连接一个或多个节点的多个边缘。多个节点中的每个可以与字母数字字符以及关联于字母数字字符的对应预测测量相关联。此外,可以基于可能性树172生成一个或多个候选唯一个人标识符,并且可以基于对应预测测量从一个或多个候选唯一个人标识符当中选择给定候选唯一个人标识符。在另外或可替换的实施方式中,唯一个人标识符引擎172可以直接生成一个或多个候选唯一个人标识符,而不利用可能性树172a。
60.继续上述示例,假设在音频数据201b中捕获的电子邮件地址是“johnp@exampleurl.com”。在该示例中,并且集中于电子邮件地址的“johnp”部分,可能性树172a可以包括用于与0.87的对应预测测量相关联的字母数字字符“j”的第一节点204b、用于与0.90的对应预测测量相关联的字母数字字符“o”的第二节点205b、用于与0.5的对应预测测量相关联的字母数字字符“h”的第三节点206b1、用于与0.5的对应预测测量相关联的字母数字字符“[null]”的第三替换节点206b2、用于与0.95的对应预测测量相关联的字母数字字符“n”的第四节点207b、用于与0.6的对应预测测量相关联的字母数字字符“p”的第五节点208b1、用于与0.4的对应预测测量相关联的字母数字字符“d”的第五替换节点208b2。在该示例中,唯一个人标识符引擎可以选择给定唯一个人标识符“jonp”,而不是用户所期望的“johnp”。尽管图2b中所示的多个节点中的每个对应于单个字母数字字符,但是应当理
解,出于示例的目的而不是限制性的。例如,假设用于两个或更多个相邻字母数字字符的对应预测测量指示对应于唯一个人标识符。在该示例中,用于两个或更多个相邻字母数字字符的节点可以被组合成单个节点。作为又一示例,假设在音频数据201b中捕获的电子邮件地址是“johnp25@exampleurl.com”。在该示例中,电子邮件地址的数字部分“25”可以被表示为以下节点中的一个或多个:“2”、“5”、“25”、“twenty”、“five”、“twenty-five”、“two”、“five”和/或任何其它组合。
[0061]
响应引擎171可以处理由唯一个人标识符引擎172基于可能性树172a所选择的给定唯一个人标识符。例如,即使唯一个人标识符在字母数字字符“h”上选择了字母数字字符“[null]”,响应引擎171也可以确定在阈值范围内的可能性树中的这些节点(例如,第三节点206b1和可替换的第三节点206b2)的对应预测测量,并且生成提示209b“is that john with an h or jon without an h(它是具有h的john还是不具有h的jon)”。此外,tts引擎150a1和/或150a2可以使用tts模型150a处理提示209b以生成包括提示209b的合成语音音频数据210b。
[0062]
继续上述示例,假设人类提供了指示电子邮件地址包括“john with an h(具有h的john)”的另外口头话语。在该示例中,另外音频数据以与上述相同或类似的方式捕获另外口头话语,并且唯一个人标识符引擎172可以处理对应于“john with an h”的一个或多个另外asr语音假设。基于另外口头话语,唯一个人标识符引擎172可以更新可能性树172a。在该示例中,可以更新可能性树172a以移除第三替换节点206b2,并且将任何候选唯一标识符限制为包括“john with an h”的那些标识符。响应引擎171可以生成另外提示,以确定电子邮件地址是否以相同或类似方式包括“p”或“d”。可以重复该过程,直到确定了用于人类的唯一个人标识符。在该电子邮件中确定用于人类的唯一个人标识符之后,可以将该收据和/或其它内容传送到该人类的电子邮件地址,并且该收据被成功发送的通知可以被渲染以用于在该自结帐系统处呈现给该人类。
[0063]
在一些实施方式中,用于训练多个ml层的多个训练实例可以基于实际对话来获得和/或综合地生成以反映唯一个人标识符的实际分布。这允许多个ml层在由话音机器人利用时获得用于实际使用中的唯一个人标识符的高水平的精度和/或可追溯性。此外,通过获得用于唯一个人标识符的高水平的精度和/或可追溯性,可以更快速和有效地结束包括唯一个人标识符的对应对话,因为由话音机器人利用并且使用本文描述的技术而训练的多个ml层更能够理解人类语音的细微差别并且相应地响应以解析唯一个人标识符。此外,利用本文所描述的多个ml层的话音机器人是更可缩放的,且由于多个ml层可以在多个不同的话音机器人之中共享,因此存储器消耗被减小。例如,多个第三方可以针对特定任务开发相应话音机器人,而不必训练相应话音机器人来确定唯一个人标识符。相反,相应话音机器人可以各自简单地使用多个ml层(或其相应的实例)。
[0064]
现在转到图3,描绘了图示了获得用于训练由话音机器人在确定唯一个人标识符时所利用的多个ml层的训练实例的示例方法300a和300b的流程图。为方便起见,参考执行操作的系统来描述方法300a和300b的操作。方法300a和300b的该系统包括计算设备(例如,图1的客户端设备110、图1的话音机器人系统120、图7的计算设备710、服务器和/或其它计算设备)的至少一个处理器、至少一个存储器和/或其它组件。而且,虽然以特定顺序示出了方法300a和300b的操作,但这并不意味着是限制性的。可以重新排序,省略和/或添加一个
或多个操作。
[0065]
在一些实施方式中,可以基于处理包括至少人类参与者的先前进行的对话来获得一个或多个训练实例。例如,具体参考图3的方法300a的框352a,系统获得包括用于至少一个人类参与者的唯一个人标识符的对应先前进行的对话。唯一个人标识符可以被包括在由至少一个人类所提供的口头话语中。在一些实施方式中,对应先前进行的对话可以在多个人类(例如至少一个人类和另外人类)之间。例如,可以在多个人类位于不同环境中的电话呼叫期间,在多个人类共同位于相同环境中的人内对话期间,和/或在多个人类之间的其它对话期间进行对应先前进行的对话。
[0066]
在另外的或可替换的实施方式中,对应先前进行的对话可以在至少一个人类和话音机器人的实例之间。例如,可以在至少一个人类与话音机器人的实例之间的电话呼叫期间(例如,在话音机器人的实例由远程计算设备实现的情况下),在至少一个人类与话音机器人的实例之间的对话会话期间(例如,在话音机器人的实例由本地计算设备实现的情况下),和/或在至少一个人类与话音机器人的实例之间的其它对话期间,进行对应先前进行的对话。
[0067]
在框354a,系统获得由至少一个人类参与者所提供的唯一个人标识符的一个或多个asr语音假设。在其中对应先前进行的对话在多个人类之间的实施方式中,系统可以使用asr模型来处理由至少一个人类在对应先前进行的对话期间所提供的包括唯一个人标识符的口头话语,以生成用于唯一个人标识符的一个或多个asr语音假设。例如,可以基于由至少一个人类所提供的指示用于至少一个人的唯一个人标识符的口头话语的一个或多个项和/或基于请求至少一个人类提供包括唯一个人标识符的口头话语的先前口头话语的一个或多个项来识别由至少一个人类在对应先前进行的对话期间所提供的包括唯一个人标识符的口头话语。例如,
[0068]
在对应先前进行的对话在至少一个人类和话音机器人的实例之间的实施方式中,系统可以识别与包括在对应先前进行的对话期间生成的唯一个人标识符的口头话语相对应的一个或多个asr语音假设。系统可以基于由至少一个人类所提供的指示用于至少一个人类的唯一个人标识符的口头话语的一个或多个项来识别包括唯一个人标识符的一个或多个asr语音假设。例如,一个或多个asr语音假设可以包括特定字母数字字符(例如,用于电子邮件地址的“@”记号或符号)或特定字母数字字符序列(例如,用于物理地址的一串数字,紧跟着一串字母,紧跟着另一串数字)。这些asr语音假设可以被识别为指示对应于唯一个人标识符。
[0069]
在框356a,系统利用在框354a所获得的唯一个人标识符的一个或多个asr语音假设作为用于给定训练实例的训练实例输入,并且利用对应于唯一个人标识符的基准真相输出作为用于给定训练实例的训练实例输出。可以基于一个或多个监督信号来识别对应于唯一个人标识符的基准真相输出。一个或多个监督信号可以包括,例如,唯一个人标识符在对应先前进行的对话期间被输入到系统中(并且可选地在系统中成功地找到与唯一个人标识符的匹配),至少一个人类手动地将唯一个人标识符输入到对应先前进行的对话中,和/或至少一个人类(例如,经由触摸输入或键入输入)将在对应先前进行的对话期间预测的唯一个人标识符编辑为唯一个人标识符,人类审阅者随后在对应先前进行的对话之后校正唯一个人标识符,和/或任何其它监督信号。
r 13and then@exampleurl.com”。通过将填充符和/或语音拼写注入到多个令牌中以生成合成文本,系统可以学习忽略填充符并且在解释唯一个人标识符时利用语音拼写。
[0074]
在框358b,系统基于合成文本来生成一个或多个asr语音假设。系统可以通过将一个或多个asr误差注入到一个或多个asr语音假设中来生成一个或多个asr语音假设。在一些实施方式中,注入到一个或多个asr语音假设中的一个或多个asr误差可以包括利用一个或多个对应同音n-gram取代包括在合成文本中的一个或多个n-gram。继续上述示例,电子邮件地址中的n-gram“13”可以利用“third teen”替换,n-gram“john”可以利用“jon”取代,n-gram“tator”可以利用“date her”或“tate her”取代,和/或其它n-gram可以利用对应同音令牌取代。在一些另外或可替换的实施方式中,注入到一个或多个asr语音假设中的一个或多个asr错误可以包括利用一个或多个对应的同音字母数字字符取代合成文本的一个或多个字母数字字符。继续上述示例,n-gram“tator”的字母数字字符“t”可以用“d”替换,从而产生n-gram“dator”,和/或其它字母数字字符可以利用对应同音字字母数字字符来取代。通过将asr误差注入到一个或多个asr语音假设中,可以随后训练多个ml层来处理当部署多个ml层以供话音机器人使用时可能会遇到的这些asr误差。
[0075]
在框360b,系统利用在框358b所生成的一个或多个asr语音假设作为给定训练实例的训练实例输入,并且利用基准真相输出作为用于给定训练实例的训练实例输出。可以基于一个或多个监督信号来识别对应于唯一个人标识符的基准真相输出。一个或多个监督信号可以包括,例如,唯一个人标识符对应于由系统生成的多个令牌,人类审阅者随后提供唯一个人标识符的,和/或任何其它监督信号。
[0076]
可以将给定训练实例存储在一个或多个数据库(例如,图1的训练实例数据库161a)中,并且可以重复方法300b以获得另外训练实例。值得注意的是,方法300a和/或方法300b的多个实例可以以串行或并行方式执行,以生成多个训练实例,这些训练实例随后用于训练由话音机器人在确定在对应对话期间遇到的唯一个人标识符时所利用的多个ml层。
[0077]
现在转到图4,描绘了图示训练由话音机器人在确定唯一个人标识符时利用的多个机器学习层的示例方法400的流程图。为方便起见,参考执行操作的系统来描述方法400的操作。方法400的该系统包括计算设备(例如,图1的客户端设备110、图1的话音机器人系统120、图7的计算设备710、服务器和/或其它计算设备)的至少一个处理器、至少一个存储器和/或其它组件。此外,虽然以特定顺序示出了方法400的操作,但这并不意味着是限制性的。可以重新排序,省略和/或添加一个或多个操作。
[0078]
在框452,系统获得多个训练实例,多个训练实例中的每个包括训练实例输入和训练实例输出,训练实例输入包括用于唯一个人标识符的至少一个或多个asr假设,并且训练实例输出包括对应于唯一个人标识符的基准真相输出。可以以关于图3的方法300a和/或图3的方法300b所描述的相同或类似的方式来获得多个训练实例。唯一个人标识符可以包括对于给定人类来说是个人的字母数字字符序列。此外,唯一个人标识符可以是例如电子邮件地址、物理地址、用户名、口令、产品标识符、实体的名称和/或域名
[0079]
在框454,系统使用一个或多个ml模型的多个ml层并且针对给定训练实例,处理用于唯一个人标识符的一个或多个asr语音假设,以生成与唯一个人标识符的一个或多个字母数字字符相关联的对应预测测量。对应预测测量可以包括二进制值、概率、对数似然性、和/或任何其它对应于一个或多个字母数字字符的测量。例如,假设与给定训练实例相关联
的唯一个人标识符对应于用户名“example1”,并且假设用于用户名“example1”的一个或多个asr语音假设至少包括对应于令牌“x”、“a”、“m”、“p”、“l”、“e”和“one”的asr语音假设。此外,一个或多个字母数字字符中的每个都可以与作为对应预测测量的概率(例如与“x”相关联的第一概率、与“a”相关联的第二概率等)相关联。值得注意的是,一个或多个asr语音假设可以包括令牌和用于每个令牌的相应测量。然而,在处理多个asr语音假设中的一个或多个时,多个ml层可以重新加权相应测量,从而产生相应预测测量,并且可以分析对应预测测量以去除或滤除那些不被预测为对应于唯一个人标识符的令牌。在一些实施方式中,系统可以使用多个ml层处理话音机器人的意图连同一个或多个asr语音假设。在框454的实例中,话音机器人的意图可以是与请求唯一个人标识符相关联的意图。通过处理意图连同一个或多个asr语音假设,系统可以处理与最初请求唯一个人标识符相关联的asr误差,并且,当随后更新多个ml层时,系统可以学习这些asr误差并且基于这些asr误差来细化唯一个人标识符的预测。
[0080]
在框456,系统将与唯一个人标识符的一个或多个字母数字字符相关联的对应预测测量与对应于唯一个人标识符的基准真相输出进行比较,以生成一个或多个损失。继续上述示例,进一步假定对应于唯一个人标识符的基准真相输出包括基准真相令牌“e”、“x”、“a”、“m”、“p”、“l”、“e”和“l”,其中这些令牌中的每个与对应基准真相概率相关联。在该示例中,系统可以将asr语音假设的“x”、“a”、“m”、“p”、“l”、“e”和“one”的令牌以及对应预测测量与基准真相输出的基准真相令牌“e”、“x”、“a”、“m”、“p”、“l”、“e”和“l”和基准真相概率进行比较。例如,系统可以将“[null]”的令牌与基准真相字符“e”进行比较,因为系统不预测无声的“e”字符,而将“one”的令牌与基准真相字符“1”进行比较,因为系统预测单词“one”而不是字母“1”。此外,系统可以在逐个字符的基础上生成一个或多个损失(例如,一个或多个交叉熵损失)。
[0081]
在框458,系统基于一个或多个损失来更新多个ml层。例如,系统可以使得一个或多个损失跨多个ml层中的一个或多个反向传播,以更新多个ml层中的一个或多个的相应权重。
[0082]
在框460,系统确定是否满足一个或多个条件。一个或多个条件可以包括,例如,更新的多个ml层的验证,更新的多个ml层的收敛(例如,零损失或在零损失的阈值范围内),确定多个ml层比当前由话音机器人利用(如果有的话)的多个ml层的实例更好(例如,在精度和/或可追溯性方面)执行,基于多个训练实例中的至少一个阈值量的训练的发生,和/或基于多个训练实例的训练的持续时间。如果在框460的迭代中,系统确定不满足一个或多个条件,则系统可以返回到框454,以基于另外训练实例来更新多个ml层。换句话说,系统可以重复框454、456、458和460的过程,直到多个ml层被充分训练用于对应对话的单轮部分,在该对话期间,多个ml层用于生成用于唯一个人标识符的对应预测测量。如果在框460的迭代中,系统确定满足一个或多个条件,则系统可以前进到框462。
[0083]
在框462,系统使用多个更新的ml层并且针对给定训练实例,处理用于唯一个人标识符的一个或多个asr语音假设,以生成预测的唯一个人标识符。系统可以以与上面关于框454描述的相同或类似的方式处理一个或多个asr语音假设,但是利用更新的多个ml层。在一些实施方式中,系统可以使用多个层处理话音机器人的意图以及连同一个或多个asr语音。类似于框454,在框462处的话音机器人的意图可以包括请求唯一个人标识符的意图。在
一些实施方式中,在生成预测的唯一个人标识符时,系统可以使用多个更新的ml层来生成唯一个人标识符的可能性树。可能性树可以包括,例如,多个节点和多个边缘。多个节点中的每个都可以对应于预测的唯一个人标识符的给定字母数字字符,并且可以与给定字母数字字符的对应预测测量相关联,并且多个边缘可以连接多个节点中的一个或多个节点。在那些实施方式的一些版本中,系统可以遍历可能性树和/或在可能性树中执行波束搜索,以基于可能性树来生成预测的唯一个人标识符。
[0084]
在框464,系统使用话音机器人-人类模拟器来处理预测的唯一个人标识符,以生成用于预测的唯一个人标识符的模拟提示以及对模拟提示的模拟响应。话音机器人-人类模拟器可以对应于实现一个或多个ml模型的多个另外ml层的一个或多个处理器,并且可以包括话音机器人模拟器部分和人类模拟器部分。系统可以使用话音机器人-人类模拟器的模拟的语音部分来处理预测的唯一个人标识符和用于预测的唯一个人标识符的对应预测测量,以生成用于模拟人类的模拟提示。在生成模拟提示时,系统从用于预测的唯一个人标识符的一个或多个字母数字字符当中识别与未能满足阈值的相应预测测量相关联的给定字母数字字符,并且生成请求关于给定字母数字字符的澄清的澄清请求。例如,假设与给定训练实例相关联的唯一个人标识符对应于用户名“example1”,并且假设用户名“example1”的一个或多个asr语音假设至少包括对应于令牌“x”、“a”、“m”、“p”、“l”、“e”和“one”的asr语音假设。进一步假设系统不高度确信用户名以“x”开始。因此,在该示例中,系统可以生成模拟提示“so it starts with x as in x-ray(因此它以如在x-ray中的x开始)”。此外,系统可以使用话音机器人-人类模拟器的模拟的人类部分来处理模拟提示,以从模拟人类生成模拟响应。继续上面示例,系统可以生成模拟响应“no,it starts with e and then x(否,它以e开始,然后x)”。
[0085]
在框466,系统使用多个更新的ml层来处理模拟响应,以细化预测的唯一个人标识符。在细化预测的唯一个人标识符时,系统可以更新一个或多个字母数字字符和/或对一个或多个字母数字字符的对应预测测量。继续上面示例,系统可以处理模拟响应“no,it starts with e and then x”,从而产生令牌“e”、“x”、“a”、“m”、“p”、“l”、“e”和“one”。在该示例中,将用于字母数字字符“e”的令牌连同对应预测测量一起添加到一个或多个字母数字字符中,该预测测量指示系统高度确信“e”对应于唯一个人标识符的第一字母数字字符。此外,还可以更新与字母数字字符“x”的令牌相关联的对应预测测量,以指示系统高度确信“x”对应于唯一个人标识符的第二字母数字字符。在一些实施方式中,类似于框454和框462,系统可以使用多个ml更新的层处理话音机器人的意图连同一个或多个asr语音假设。然而,在框466的实例处,话音机器人的意图可以是与请求用于唯一个人标识符的澄清相关联的意图。通过处理意图连同一个或多个asr语音假设,系统可以通过修改可能性树(例如,添加新节点,去除现有节点,调整一个或多个现有节点的对应测量等)基于这些asr误差来细化对唯一个人标识符的预测。
[0086]
在框468,系统确定是否生成包括另外澄清请求的另外模拟提示,该另外澄清请求请求用于预测的唯一个人标识符的一个或多个对应字母数字字符的另外澄清。系统可以响应于确定与细化的预测唯一个人标识符的一个或多个字母数字字符相关联的对应预测测量未能满足阈值而确定生成另外模拟提示。尽管框468被描述为在框466之后出现,但是应当理解,出于示例的目的而不是限制性的。例如,框468的实例可以出现在框462之后,框464
之后和/或框466之后,如所描绘。因此,如果系统在用于给定训练实例的预测的唯一个人标识符的一个或多个字母数字字符中的每个中是足够可信的,则可以针对给定训练实例跳过框464和466。
[0087]
如果在框468的迭代处系统确定生成另外模拟提示,则系统可以返回到框464以生成另外模拟提示(例如,“is that the number 1or is it spelled out(它是数字1还是它被拼写出)”),并且可以重复该过程,直到系统在用于预测的唯一个人标识符的每个字母数字字符中高度确信。如果在框468的迭代处,系统确定不生成另外模拟提示,则系统可以返回到框462以基于另外训练实例执行另外模拟。系统可以重复框462、464、466和468的过程,直到满足一个或多个条件(例如,上面关于框460描述的相同或相似的条件)。换句话说,在通过上述框454、456、458和460的过程对多个ml层进行初始训练之后,可以多个ml层正在针对对应对话的多轮部分进一步训练,在该多轮部分期间,利用多个ml层来生成关于字母数字字符的澄清请求,并且基于对澄清请求的模拟响应来细化用于预测的唯一个人标识符的对应预测测量。
[0088]
响应于确定满足一个或多个条件,系统可以前进到框470。在框470,系统使得话音机器人利用多个ml层。话音机器人可以是先前训练的基于示例或基于规则的话音机器人,并且可以利用多个ml层来确定在话音机器人正在进行与对应人类的对话时遇到的唯一个人标识符。
[0089]
现在转到图5,描绘了图示由话音机器人利用多个机器学习层来确定唯一个人标识符的示例方法500的流程图。为方便起见,参考执行操作的系统来描述方法500的操作。方法500的该系统包括计算设备(例如,图1的客户端设备110、图1的话音机器人系统120、图7的计算设备710、服务器和/或其它计算设备)的至少一个处理器、至少一个存储器和/或其它组件。此外,虽然以特定顺序示出了方法500的操作,但这并不意味着是限制性的。可以重新排序,省略和/或添加一个或多个操作。
[0090]
在框552,系统接收在人类与话音机器人之间的对应对话期间捕获人类的口头话语的音频数据。音频数据可以由人类的客户端设备的一个或多个麦克风生成。在一些实施方式中,可以在人类和话音机器人之间的电话呼叫期间经由各种话音通信协议(例如,voip、pstn和/或其它电话通信协议)来进行对应对话。在一些另外的或可替换的实施方式中,可以在人类与话音机器人之间的对话会话期间进行对应对话。
[0091]
在框554,系统使用asr模型处理音频数据以生成多个asr语音假设。在一些实施方式中,asr是端到端语音识别模型,其可以直接使用该模型(例如,在逐个字符的基础上或在其它逐个令牌的基础上)生成多个语音假设。在其它实施方式中,asr模型不是端到端语音识别模型,并且可以替代地生成预测音素(和/或其它表示),并且可以可选地利用解码图形、词典和/或其它资源。
[0092]
在框556,系统预测口头话语是否包括唯一个人标识符。在一些实施方式中,系统可以基于合成语音音频数据来预测口头话语是否包括个人标识符,该合成语音音频数据包括先前被提供以用于由话音机器人在对应对话期间呈现给人类的合成语音。例如,如果话音机器人先前请求人类提供唯一个人标识符,则系统可以预测口头话语包括唯一个人标识符。在一些另外或可替换的实施方式中,系统可以基于使用asr模型所生成的多个语音假设来预测口头话语是否包括个人标识符。例如,如果多个asr语音假设中的一个或多个包括指
示唯一个人标识符(例如,一串数字、特定符号或字符(例如,“@”符号、下划线等)和/或口头话语包括唯一个人标识符的任何其它指示符)的给定字母数字字符,则系统可以预测口头话语包括唯一个人标识符。
[0093]
如果在框556的迭代处系统预测口头话语不包括唯一个人标识符,则系统可以返回到框552以接收另外音频数据并且重复框552、554和556的过程,以确定另外音频数据是否捕获包括唯一个人标识符的另外口头话语。可以对在对应对话期间接收到的任何进一步的另外音频数据重复该过程。如果在框556的迭代处系统预测口头话语包括唯一个人标识符,则系统可以前进到框558。
[0094]
在框558,系统使用一个或多个ml模型的多个ml层来处理多个asr语音假设中的一个或多个,以生成一个或多个候选唯一个人标识符以及与一个或多个候选唯一个人标识符的一个或多个对应字母数字字符相关联的对应预测测量。多个ml层可以基于多个训练实例以关于图4的方法400所述的相同或类似方式来训练。例如,假设包括在口头话语中的唯一个人标识符是电子邮件地址“johnp@exampleurl.com”。进一步假设系统生成至少具有与第一概率相关联的“j”、与第二概率相关联的“o”、与第三概率相关联的“n”、以及与第四概率相关联的“p”的令牌(例如,对应于字母数字序列“jonp”)的第一候选唯一个人标识符,生成至少具有与第一概率相关联的“j”、与第二概率相关联的“o”、与第三概率相关联的“h”、与第四概率相关联的“n”以及与第五概率相关联的“d”的令牌(例如,对应于字母数字序列“johnd”)的第二候选唯一个人标识符,依此类推。在一些实施方式中,系统生成可能性树,并且基于可能性树来生成一个或多个候选唯一个人标识符(例如,如关于图2b所述)。在另外的或可替换的实施方式中,系统生成一个或多个候选唯一个人标识符可以直接跨多个ml层生成。
[0095]
在框560,系统基于与用于一个或多个候选唯一个人标识符的一个或多个对应字母数字字符相关联的对应预测测量来选择用于唯一个人标识符的一个或多个给定字母数字字符。系统可以例如在逐个令牌(或其他逐个字符)的基础上,在逐个候选的基础上和/或在任何其他基础上选择用于唯一个人标识符的一个或多个给定字母数字字符。继续上述示例,系统可以在逐个令牌的基础上将至少令牌“j”、“o”、“h”、“n”、“p”和“d”识别为对应于给定唯一个人标识符,并且基于与这些令牌中的每个相关联的对应测量,并且可以选择给定字母数字字符中的一个或多个,诸如“j”、“o”、“n”和“p”,从而产生“jonp”的候选唯一个人标识符,作为基于与唯一个人标识符的这些令牌中的每个相关联的对应测量或与“jonp”在其整体中的候选唯一个人标识符相关联的对应测量而对应于给定唯一个人标识符。
[0096]
在框562,系统确定是否生成包括澄清请求的提示,该澄清请求请求用于给定唯一个人标识符的一个或多个给定字母数字字符的澄清。系统可以响应于确定与给定唯一个人标识符的一个或多个给定字母数字字符相关联的对应预测测量不能满足阈值而确定是否生成提示。如果在框562的迭代处,系统确定不生成提示,则系统可以抑制生成提示,并且前进到框574。下面描述框574。如果在框562的迭代处,系统确定生成提示,则系统可以生成提示,并且可以前进到框564。在生成提示时,系统从一个或多个给定字母数字字符当中识别与未能满足阈值的对应预测测量相关联的一个或多个特定字母数字字符,并且生成请求关于给定字母数字字符的澄清的澄清请求。继续上述示例,假设至少与令牌“h”相关联的对应预测测量不能满足阈值。在该示例中,系统可以识别令牌“h”,并且生成请求澄清的提示。例
如,提示可以包括澄清请求“is there an h or no h(是否存在h)”、“is that jon with an h(它是否具有h的jon)”、“is it j on or j o h n(它是j o n还是j o h n)”、“so its j o n(因此,它的j o n)”等等。
[0097]
在框564处,系统使得提示澄清要呈现给人类的一个或多个给定字母数字字符。提示可以经由人类的客户端设备或另外客户端设备的显示器可视地渲染和/或可以经由客户端设备或另外客户端设备的一个或多个扬声器可听地渲染。在框566,系统接收响应于提示而捕获人类的另外口头话语的另外音频数据。在框568,系统使用asr模型处理另外音频数据以生成多个另外asr语音假设。在框570,系统使用多个ml层来处理另外asr语音假设,以细化一个或多个给定唯一个人标识符。继续上述示例,假设提示包括澄清请求“is that jon with an
‘
h’(它是否具有“h”的jon)”,并且提示被可听地渲染以用于呈现给人类。进一步假设人类提供指示唯一个人标识符包括“john with an h”的另外口头话语。因此,在处理一个或多个另外asr语音假设时,系统可以细化给定唯一个人标识符包括令牌“h”,并且更新与令牌“h”相关联的对应预测测量以指示系统在包括令牌“h”的给定唯一个人标识符中高度确信。在基于可能型的树生成给定唯一个人标识符的实施方式中,可以从可能性树中去除用于令牌“h”的任何替换节点,例如“null(空)”节点。
[0098]
在框572,系统确定是否生成包括请求对一个或多个给定字母数字字符的另外澄清的另外澄清请求的另外提示。系统可以响应于确定与细化的给定唯一个人标识符的一个或多个给定字母数字字符相关联的对应预测测量未能满足阈值而确定生成另外提示。如果在框572的迭代处,系统确定不生成另外提示,则系统可以抑制生成另外提示,并且前进到框574。下面描述框574。如果在框562的迭代处,系统确定生成另外提示,则系统可以生成另外提示,并且可以前进到框564。在生成另外提示时,系统从一个或多个对应字母数字字符当中识别与未能满足阈值的对应预测测量相关联一个或多个另外特定字母数字字符,并且生成请求关于一个或多个另外特定字母数字字符的另外澄清的另外澄清请求。继续上面示例,进一步假定系统不确信给定唯一个人标识符是对应于“johnp”还是“johnd”。在该示例中,系统可以识别令牌“p”和/或令牌“d”,并且生成另外提示“and was that p as in papa or d as in delta(并且它是如在papa中的p还是如在delta中的d)”、“so it's j o h n and then p(所以它是j o h n并且然后p)”、“so it's j o h n and then d(所以它是j o h n并且然后d)”等。进一步假定提示包括澄清请求“and was that p as in papa or d as in delta”,假定提示被可听地渲染以用于呈现给人类,并且假定人类提供指示唯一个人标识符包括“p as in papa”的另外口头话语。因此,在处理一个或多个进一步另外asr语音假设时,系统可以细化给定唯一个人标识符以包括令牌“p”,并且更新与令牌“p”相关联的对应预测测量以指示系统在包括令牌“p”的给定唯一个人标识符中高度确信。在基于可能性树来生成给定唯一个人标识符的实施方式中,可以从可能性树中去除用于“p”的令牌的任何替换节点,例如“d”节点。
[0099]
系统可以重复框564、566、568、570和572的过程,直到系统确定与用于细化的给定唯一个人标识符的一个或多个给定字母数字字符中的每个相关联的对应预测测量满足阈值。换句话说,系统可以继续提示人类澄清一个或多个对应字母数字字符,直到系统充分确信,细化的给定唯一个人标识符实际上是最初由人类提供的人类的唯一个人标识符。
[0100]
在框574处,系统使得话音机器人利用唯一个人标识符来促进对应对话。在其中对
应对话话是在音机器人与人类之间的电话呼叫期间的实施方式中,话音机器人可以利用唯一个人标识符来继续执行由人类所请求的任务(例如,对于客户服务,对于与用户帐户相关的查询,和/或在电话呼叫期间可以执行的任何其它任务)。例如,话音机器人可以利用唯一个人标识符来验证或认证人类的身份,搜索与唯一个人标识符相关的信息,和/或其中话音机器人可以利用唯一个人标识符来继续执行电话呼叫的任何其它方式。在其中对应对话是在话音机器人与人类之间的对话会话期间的实施方式中,话音机器人可以利用唯一个人标识符将唯一个人标识符合并到转录中(例如,当人类正在利用话音机器人来指示电子邮件、文本消息、sms消息、笔记、日历条目和/或以其他方式指示话音机器人时),代表用户执行动作(例如,代表用户进行购买,登录到用户的帐户,和/或代表用户的任何其它动作),和/或话音机器人可以利用唯一个人标识符来继续执行对话的任何其它方式。
[0101]
现在转到图6a至6c,描绘了包括确定唯一个人标识符的在话音机器人与人类之间的对应对话的各种非限制性示例。图6a和6b各自描绘了具有图形用户界面680a的客户端设备610a,并且可以包括图1的客户端设备110、图1的一个另外客户端设备195、图7的计算设备710的组件和/或任何其它客户端设备的组件中的一个或多个。话音机器人的一个或多个方面可以在客户端设备610a上和/或与客户端设备610a进行网络通信的其它客户端设备上本地实现。为了简单起见,图6a和6b的操作在本文中被描述为由话音机器人执行。尽管图6a和6b的客户端设备610a被描述为智能电话,但是应当理解,并不意味着是限制性的。例如,图6c将客户端设备610c描绘为不具有任何显示器的独立辅助设备。作为其它示例,客户端设备610a和/或610c可以是具有显示器的独立辅助设备、膝上型计算机、台式计算机、车辆计算设备和/或任何其它能够进行电话呼叫和/或参与人机对话的客户端设备。
[0102]
图6a和6b的图形用户界面680a还包括用户可以选择以经由虚拟键盘或其它触摸和/或键入输入生成用户输入的文本回复界面元素684,以及用户可以选择以经由客户端设备610a的麦克风生成用户输入的话音回复界面元素685。在一些实施方式中,用户可以经由麦克风生成用户输入,而不选择话音回复界面元素685。例如,可以发生经由麦克风对可听用户输入的主动监视,以避免用户选择话音回复界面元素685的需要。例如,可以发生在电话呼叫期间对可听用户输入的主动监视和/或对包括特定单词或短语的可听用户输入的主动监视,以避免用户选择话音回复界面元素685的需要。在那些实施方式的一些中和/或在其它实施方式中,可以省略话音回复界面元素685。而且,在一些实施方式中,文本回复界面元素684可以另外地和/或可替换地被省略(例如,用户可以仅提供可听用户输入)。图6a和6b的图形用户界面680a还包括系统界面元素681、682、683,其可以由用户交互以使得客户端设备610a执行一个或多个动作。
[0103]
例如,具体参考图6a,假设与客户端设备610a相关联的人类发起了与被称为示例小部件的假设技术公司的客户服务的对应电话呼叫。进一步假设,示例小部件利用话音机器人,该话音机器人被训练来处理针对客户服务请求的呼入电话呼叫并且具有对一个或多个ml模型的多个ml层的访问,多个ml层根据本文描述的技术(例如,关于图2a和4)被训练并且在对应对话期间用于确定唯一个人标识符。在该示例中,可以使用包括例如voip、pstn和/或其它电话通信协议的各种话音通信协议来执行对应电话呼叫。如本文所述,合成语音可以由话音机器人并且代表示例小部件被渲染作为对应电话呼叫的一部分,其可以包括将合成语音注入到对应电话呼叫中,使得它由与客户端设备610a相关联的人类可感知。合成
语音可以由作为对应电话呼叫的端点之一的客户端设备610a生成和/或注入,和/或可以由与客户端设备610a通信并且还连接到对应电话呼叫的服务器生成和/或注入。
[0104]
进一步假设与客户端设备610a相关联的人类导航对应的电话呼叫到其中话音机器人使得合成语音652a1“thanks for contacting customer support,may i please have your username(谢谢联系客户支持,我可以拥有您的用户名以找到您的账户吗)?”被渲染以用于呈现给与客户端设备610a相关联的人类的点。例如,人类可以从经由交互式话音响应(ivr)系统呈现给用户的多个选项当中选择“客户服务”选项,人类可以当被提示提供用于发起对应电话呼叫的原因时提供“客户服务”的自由输入,和/或导航对应电话呼叫到话音机器人使得合成语音652a1被渲染以用于呈现给与客户端设备610a相关联的人类的点的任何其它方式。进一步假设人类响应于渲染合成语音652a1而提供口头话语654a1“yes,it’s tatortator13(好,它是tatortator13)”。在该示例中,由与客户端设备610a相关联的人类所提供的用户名“tatortator13”是与示例小部件相关联的人类的帐户的唯一个人标识符。
[0105]
话音机器人可以使用asr模型来处理与口头话语654a1相对应的音频数据,以生成用于口头话语654a1的多个asr语音假设。此外,响应于预测口头话语654a1包括唯一个人标识符,话音机器人可以使用利用本文(例如,关于图1、图2a和/或图4)所述的技术而训练的一个或多个ml模型的多个ml层来处理多个asr语音假设中的一个或多个,以生成一个或多个候选唯一个人标识符和与一个或多个候选唯一个人标识符中的每个的对应字母数字字符相关联的对应预测测量。在一些实施方式中,话音机器人可以基于包括人类提供唯一个人标识符的请求(例如,被包括在合成语音652a1中的“may i please have your username(我可以拥有您的用户名以找到您的账户吗)”)的合成语音652a1而预测口头话语654a1包括唯一个人标识符。在另外的或可替换的实施方式中,话音机器人可以基于多个asr语音假设中的一个或多个来预测口头话语654a1包括唯一个人标识符。
[0106]
在一些实施方式中,在生成一个或多个候选唯一个人标识符和对应预测测量时,话音机器人可以基于跨多个ml层生成的输出来生成包括在口头话语654a1中的唯一个人标识符的可能性树。例如,假设用于唯一个人标识符的给定asr语音假设对应于令牌“tator dater 13”(并且可选地与用于一个或多个令牌的相应应测量相关联)。在该示例中,话音机器人可以使用多个ml层来处理用于给定asr语音假设的令牌以生成输出。此外,话音机器人可以基于输出来生成可能性树。可能性树可以包括与用于唯一个人标识符的字母数字字符和关联于每个字母数字字符的对应预测测量相对应的多个节点,并且可以包括连接多个节点的多个边缘(例如,如关于图2b所述)。此外,话音机器人可以基于可能性树来生成候选唯一个人标识符中的一个或多个。例如,话音机器人可以识别与令牌“t”相对应的第一节点、通过第一边缘连接到第一节点的与令牌“a”相对应的第二节点、通过第二边缘连接到第二节点的与令牌“t”相对应的第三节点、通过第三边缘连接到第三节点的与令牌“o”相对应的第四节点、通过第四边缘连接到第四节点的与令牌“r”相对应的第五节点依此类推,以生成至少包括字母数字字符“t a t o r”的第一候选唯一个人标识符。在该示例中,话音机器人可以识别通过替换第一边缘连接到第二节点的与令牌“d”相对应的第一替换节点,并且可以利用第二到第五节点来生成至少包括字母数字字符“d a t o r”的第二候选唯一个人标识符。应当理解,节点和边缘是可缩放的,以包括对应于字母数字字符(并且包括对应预测
测量)的多个另外节点和多个另外边缘,并且该示例是为了说明的目的而提供的。值得注意的是,基于可能性树而生成的一个或多个候选唯一个人标识符可以包括字母数字字符的每个组合,其子集仅包括与满足阈值的对应预测测量相关联的字母数字字符,和/或跨可能性树响应于波束搜索而识别的那些字母数字字符。
[0107]
在另外的或可替换的实施方式中,在生成一个或多个候选唯一个人标识符和对应预测测量时,话音机器人可以基于跨多个ml层所生成的输出来生成一个或多个候选唯一个人标识符。例如,假设用于唯一个人标识符的给定asr语音假设对应于令牌“tator dater 13”(并且可选地与用于一个或多个令牌的相应测量相关联)。在该示例中,话音机器人可以使用多个ml层来处理用于给定asr语音假设的令牌以生成输出。在该示例中,跨模型所生成的输出可以是包括一个或多个候选唯一个人标识符的n维向量(例如,其中n是正整数)。例如,输出可以至少包括:至少包括字母数字字符“t a t o r”的第一候选唯一个人标识符、至少包括字母数字字符“d a t o r”的第二候选唯一个人标识符、和/或预测为对应于在口头话语654a1中捕获的唯一个人标识符的一个或多个部分的字母数字的其它字符串。
[0108]
话音机器人可以生成一个或多个提示,其包括请求对唯一个人标识符的澄清的对应澄清请求。例如,话音机器人可以生成以下提示:请求人类拼写唯一个人标识符或其一部分,请求人类澄清包括在唯一个人标识符中的特定字母数字字符,请求人类验证由话音机器人所感知的唯一个人标识符实际上是唯一个人标识符,和/或任何其它与确定唯一个人标识符相关的请求。例如,响应于与计算设备610a相关联的人类提供包括唯一个人标识符的口头话语654a1,假设话音机器人生成并且渲染合成语音652a2“okay,looking for that username,can you spell it for me(好的,查找那个用户名。你能帮我拼一下吗)?”。值得注意的是,合成语音652a2包括请求人类拼写用户名的提示。在一些实施方式中,话音机器人可以响应于确定用于一个或多个候选唯一个人标识符的第一字母数字字符的对应预测测量未能满足阈值而提示人类拼写唯一个人标识符。在另外的或可替换的实施方式中,话音机器人可以响应于确定一个或多个候选唯一个人标识符的每个字母数字字符的对应预测测量未能满足阈值而提示人类拼写唯一个人标识符。
[0109]
进一步假设,响应于渲染合成语音652a2,人类提供口头话语654a2“yes,t a t o r t a t o r 13(好,t a t o r t a t o r 13)”。话音机器人可以使用asr模型来处理对应于口头话语654a2的音频数据,以生成用于口头话语654a2的多个另外asr语音假设。此外,话音机器人可以使用多个ml层来处理多个另外asr语音假设中的一个或多个,以细化一个或多个候选唯一个人标识符和/或与一个或多个候选唯一个人标识符中的每个的对应字母数字字符相关联的对应预测测量。例如,话音机器人可以更新对应预测测量以指示话音机器人高度确信唯一个人标识符的字母数字字符对应于字母“t”。例如,话音机器人可以生成合成语音652a3“alright,so t a t o r and then d as in delta(好的,所以t a t o r并且然后如在delta中的d)?”。这指示话音机器人在对应于字母“t a t o r”的唯一个人标识符的字母数字字符中是高度可信的,但是在字母“r”之后是不可信的。值得注意的是,合成语音652a3包括请求人类澄清字母“r”之后的字母数字字符的提示(例如,“and then d as in delta(并且然后如在delta中的d)?”)。
[0110]
进一步假设人类响应于渲染合成语音652a3而提供口头话语654a3“no,it’s t a t o r and then t as in tango,a t o r,and then 13(不是,它是t a t or,并且然后如
在tango中的t,a t o r,并且然后13)”。话音机器人可以使用asr模型来处理对应于口头话语654a3的音频数据,以生成用于口头话语654a3的多个进一步的另外asr语音假设。此外,话音机器人可以使用多个ml层来处理多个进一步的另外asr语音假设中的一个或多个,以进一步细化一个或多个候选唯一个人标识符和/或与一个或多个候选唯一个人标识符中的每个的对应字母数字字符相关联的对应预测测量。例如,在其中话音机器人基于可能性树而生成一个或多个候选唯一个人标识符的实施方式中,话音机器人可以去除或忽略用于至少前六个字母数字字符(例如,t a t o r t)的替换节点。作为另一示例,在其中话音机器人基于跨模型所生成的输出来生成一个或多个候选唯一个人标识符的实施方式中,话音机器人可以修剪不利用至少前六个字母数字字符(例如,t a t or t)确认的任何候选唯一个人标识符。可以重复向人类提示对应澄清请求并且细化一个或多个候选唯一个人标识符的过程,直到话音机器人充分确信一个或多个候选唯一个人标识符中的给定一个是由人类所提供的唯一个人标识符。例如,话音机器人可以生成合成语音652a4“alright,so t a to r t a t o r,and then the number 13(好的,所以t a t o r t a t o r,并且然后数字13)?”。这指示话音机器人高度确信一个或多个候选唯一个人标识符中的给定一个实际上是由人类在口头话语654a1中所提供的唯一个人标识符(并且如由人类通过口头话语654a4“yes”所验证)。然后,话音机器人可以利用所确定的唯一个人标识符来促进对应电话呼叫。
[0111]
在各种实施方式中,以及连同在图6a的上述过程中描述的多个asr语音假设中的一个或多个,话音机器人可以使用多个ml层来处理话音机器人的意图。话音机器人的意图可以包括,例如,请求人类提供唯一个人标识符(例如,与上述合成语音652a1相关联),请求人类拼写唯一个人标识符(例如,与下述合成语音652a2相关联),请求人类澄清包括在唯一个人标识符中的一个或多个字母数字字符(例如,与上述合成语音652a2相关联),请求人类验证一个或多个候选唯一个人标识符中的给定一个作为人类的唯一个人标识符(例如,与上述合成语音652a4相关联),和/或与确定关联于客户端设备610a的人类的唯一个人标识符相关的任何其它意图。通过处理话音机器人的意图连同多个asr语音假设中的一个或多个,话音机器人可以通过基于话音机器人的意图限制一个或多个候选唯一个人标识符来更快速和有效地确定与客户端设备610a相关联的人类的唯一个人标识符。
[0112]
尽管关于在对应电话呼叫期间确定与客户端设备610a相关联的人类的唯一个人标识符来描述图6a,但是应当理解,其出于示例的目的而不是限制性的。例如,具体参考图6b,假设与客户端设备610a相关联的人类通过提供口头话语654b1“voice bot,email branden the tickets for the concert tonight(话音机器人,向branden电子邮件发送今晚音乐会的门票)”来发起与话音机器人的对应对话会话。在该示例中,话音机器人可以使用asr模型来处理对应于口头话语654b1的音频数据,以确定口头话语对应于对话音机器人向branden发送包括今天音乐会的门票的电子邮件的请求。然而,假设branden的电子邮件不容易由话音机器人可查明,并且假设话音机器人在客户端设备610a处生成并且渲染合成语音652b1“okay,what’s branden’s email(好的,branden的电子邮件是什么)?”。在该示例中,唯一个人标识符是另一个人类(例如,branden)的电子邮件地址,该电子邮件地址可以在口头话语654b2中提供,并且话音机器人可以经由进一步合成语音(例如,652b2和652b3)来提示与客户端设备610a相关联的人类,并且基于以关于图6a所述的相同或相似的方式响应于对应提示的人类的进一步口头话语(例如,654b3和654b4)来细化一个或多个候
选唯一个人标识符。此外,当执行动作(例如,成功地将门票电子邮件发送到branden)时,话音机器人可以使得生成合成语音652b4并且将其渲染以呈现给与客户端设备610a相关联的人类。
[0113]
而且,尽管描绘了关于图6a所述的对应电话呼叫和关于图6b所述的对应对话会话的转录,但是应当理解,为了说明对应对话并且不意味着限制。例如,具体参考图6c,客户端设备610c被描述为缺少显示器。此外,假设与客户端设备610c相关联的人类(例如,图6c中所示的人类601)通过提供合成语音654c1“voice bot,tell branden to send the prize money to my quick cash account and i’ll see him later tonight(话音机器人,告诉branden将奖金发送到我的快速现金账户,并且我晚上稍后见他)”来发起与话音机器人的对应对话会话。然而,假设人类的快速现金帐户不容易由话音机器人可查明,并且假设话音机器人在客户端设备610c处生成并且渲染合成语音652c1“okay,what is your quick cash account(好的,你的快速现金账户是什么)?”。在该示例中,唯一个人标识符是与客户端设备610c相关联的人类的账户,该账户可以在口头话语654c2中提供,并且话音机器人可以经由进一步合成语音(例如,652c2)来提示与客户端设备610a相关联的人类,并且基于以关于图6a所述的相同或类似的方式响应于对应提示的人类的进一步口头话语(例如,654c3)来细化一个或多个候选唯一个人标识符。此外,当执行动作(例如,消息被成功地发送到branden)时,话音机器人可以使得生成合成语音652c3并且将其渲染以用于提供给与客户端设备610a相关联的人类。
[0114]
应当理解,关于图6a至6c所描述的对应对话的示例唯一个人标识符、提示、响应和/或任何其它方面仅是为了说明的目的而提供的,而不意味着是限制性的。例如,唯一个人标识符可以包括对于人类来说是个人的人类的任何其它字母数字字符序列。作为另一示例,由话音机器人生成并且渲染以用于呈现给人类的提示可以取决于与一个或多个候选唯一个人标识符相关联的对应预测测量,并且由人类所提供的响应可以是自由形式键入的输入或口头输入。作为又一示例,对应对话(以及在对应对话期间由话音机器人所执行的任何任务)可以取决于参与对应对话的人类的需要。尽管如此,本文描述的技术可以由话音机器人在这些场景中的任何一个中利用,以确定由人类所提供的唯一个人标识符。
[0115]
图7是可以可选地用于执行本文所述技术的一个或多个方面的示例计算设备710的框图。在一些实施方式中,客户端设备、基于云的自动化助理组件和/或其它组件中的一个或多个可以包括示例计算设备710的一个或多个组件。
[0116]
计算设备710通常包括至少一个处理器714,其经由总线子系统712与多个外围设备通信。这些外围设备可以包括存储子系统724,例如包括存储器子系统725和文件存储子系统726,用户界面输出设备720,用户界面输入设备722和网络接口子系统716。输入和输出设备允许用户与计算设备710交互。网络接口子系统716提供到外部网络的接口并且耦合到其它计算设备中的对应接口设备。
[0117]
用户界面输入设备722可以包括键盘、指点设备(诸如鼠标、轨迹球、触摸板或图形平板)、扫描器、并入到显示器中的触摸屏、诸如话音辨识系统、麦克风这样的音频输入设备和/或其它类型的输入设备。通常,术语“输入设备”的使用旨在包括所有可能类型的设备以及用于将信息输入到计算设备710中或者输入到通信网络上的方式。
[0118]
用户界面输出设备720可以包括显示子系统、打印机、传真机或非视觉显示器(诸
如音频输出设备)。显示子系统可以包括阴极射线管(crt)、平板设备(诸如液晶显示器(lcd))、投影设备或者用于创建可见图像的一些其它机制。显示子系统还可以例如经由音频输出设备提供非视觉显示。通常,术语“输出设备”的使用旨在包括所有可能类型的设备以及用于从计算设备710向用户或者向另一个机器或计算设备输出信息的方式。
[0119]
存储子系统724存储提供本文中所描述的模块中的一些或全部的功能的编程和数据构造。例如,存储子系统724可以包括用以执行本文所公开的方法的所选方面以及用以实施图1中所描绘的各种组件的逻辑。
[0120]
这些软件模块通常由处理器714单独执行或者处理器714与其它处理器相组合地执行。存储子系统724中所使用的存储器725可以包括许多存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(ram)730以及存储有固定指令的只读存储器(rom)732。文件存储子系统726可以为程序和数据文件提供持久存储,并且可以包括硬盘驱动器、软盘驱动器以及相关联的可移动介质、cd-rom驱动器、光驱或可移动介质盒。实现某些实施方式的功能的模块可以由文件存储子系统726存储在存储子系统724中,或者存储在由处理器714可访问的其它机器中。
[0121]
总线子系统712提供用于让计算设备710的各种组件和子系统按预期彼此通信的机制。尽管总线子系统712被示意性地示出为单个总线,但是总线子系统712的替代实施方式可以使用多个总线。
[0122]
计算设备710可以是各种类型,包括工作站、服务器、计算集群、刀片式服务器、服务器机群或任何其它数据处理系统或计算设备。由于计算机和网络的不断变化的性质,对图7中所描绘的计算设备710的描述仅旨在作为出于示出一些实施方式的目的的具体示例。计算设备710的许多其它配置可以具有比图7中所描绘的计算设备更多或更少的组件。
[0123]
在本文所述的系统收集或以其它方式监视关于用户的个人信息,或可以利用个人和/或被监视的信息的情况下,可以向用户提供机会来控制程序或特征是否收集用户信息(例如,关于用户的社交网络、社交动作或活动、职业、用户的偏好、或用户的当前地理位置的信息),或控制是否和/或如何从内容服务器接收可能与用户更相关的内容。而且,在存储或使用某些数据之前,可以以一种或多种方式来处理这些数据,从而去除个人可识别信息。例如,可以处理用户的身份,从而不能为用户确定个人可识别信息,或者可以在获得地理位置信息的地方概括用户的地理位置(例如城市、邮政编码或州级),使得不能确定用户的特定地理位置。因此,用户可以控制如何收集和/或使用关于用户的信息。
[0124]
在一些实施方式中,提供了一种由一个或多个处理器实现的方法,并且该方法包括:接收捕获人类的口头话语的音频数据,口头话语由话音机器人在人类与话音机器人之间的对应对话期间被接收;利用自动语音识别(asr)模型处理音频数据,以生成多个asr语音假设;以及响应于预测口头话语包括唯一个人标识符,唯一个人标识符包括对人类来说是个人的唯一字母数字字符序列:使用一个或多个ml模型的多个机器学习(ml)层来处理多个asr语音假设中的一个或多个,以生成一个或多个候选唯一个人标识符,一个或多个候选唯一个人标识符中的每个包括与用于一个或多个候选唯一个人标识符中的每个的一个或多个对应字母数字字符相关联的对应预测测量;基于与用于一个或多个候选唯一个人标识符中的每个的一个或多个对应字母数字字符相关联的对应预测测量从对应字母数字字符中的一个或多个当中选择一个或多个给定字母数字字符;基于与给定字母数字字符中的一
个或多个相关联的对应预测测量来生成包括请求给定字母数字字符中的一个或多个的澄清的澄清请求的提示;以及使得提示被提供以用于呈现给人类。
[0125]
本文公开的技术的这些和其它实施方式可以可选地包括以下特征中的一个或多个。
[0126]
在一些实施方式中,该方法还可以包括,响应于提示被提供以用于呈现给人类:接收捕获人类的另外口头话语的另外音频数据,另外口头话语由话音机器人在对应对话期间被接收;使用asr模型来处理另外音频数据以生成多个另外asr语音假设;以及使用多个ml层来处理多个另外语音假设中的一个或多个以细化给定字母数字字符中的一个或多个。
[0127]
在那些实施方式的一些版本中,细化给定字母数字字符中的一个或多个可以包括基于响应于澄清请求而接收到的澄清,更新用于被预测为对应于唯一个人标识符的一个或多个给定字母数字字符的对应预测测量。
[0128]
在那些实施方式的一些版本中,该方法还可以包括,在一个或多个给定字母数字字符被预测为对应于人类的唯一个人标识符之前:基于与给定字母数字字符中的一个或多个相关联的对应预测测量来生成一个或多个对应另外提示,一个或多个对应另外提示中的每个都包括请求给定字母数字字符中的一个或多个的另外澄清的对应另外澄清请求;以及使得对应另外提示中的一个或多个被提供以用于呈现给人类。在那些实施方式的一些进一步版本中,预测一个或多个给定字母数字字符对应于人类的唯一个人标识符包括可以包括确定与给定字母数字字符中的每个相关联的对应预测测量满足阈值。在那些实施方式的又一些进一步版本中,该方法还可以进包括,响应于预测一个或多个给定字母数字字符对应于人类的唯一个人标识符:利用包括一个或多个给定字母数字字符的给定唯一个人标识符来促进话音机器人与人类之间的对应对话。
[0129]
在一些实施方式中,生成包括澄清请求的提示可以是响应于确定与给定字母数字字符中的一个或多个相关联的对应预测测量未能满足阈值。在那些实施方式的一些版本中,生成包括澄清请求的提示可以包括从给定字母数字字符中的一个或多个当中识别与未能满足阈值的对应预测测量相关联的一个或多个特定字母数字字符;以及生成请求关于特定字母数字字符中的一个或多个的澄清的澄清请求。
[0130]
在一些实施方式中,该方法还可以包括,响应于预测一个或多个给定字母数字字符对应于人类的唯一个人标识符:利用包括一个或多个给定字母数字字符的给定唯一个人标识符来促进话音机器人与人类之间的对应对话。在那些实施方式的一些版本中,预测一个或多个给定字母数字字符对应于人类的唯一个人标识符可以包括确定与用于给定候选唯一个人标识符的一个或多个给定字母数字字符中的每个相关联的对应预测测量满足阈值。
[0131]
在一些实施方式中,预测口头话语包括唯一个人标识符包括可以包括基于合成语音音频数据包括先前被提供以用于在对应对话期间由话音机器人呈现给人类的合成语音来预测音频数据将包括唯一个人标识符。
[0132]
在一些实施方式中,预测口头话语包括唯一个人标识符可以包括基于使用asr模型所生成的多个asr语音假设中的一个或多个来预测口头话语包括唯一个人标识符。
[0133]
在一些实施方式中,处理多个语音假设中的一个或多个以生成一个或多个候选唯一个人标识符可以包括使用多个ml层迭代地处理多个asr语音假设中的每个以迭代地生成
用于唯一个人标识符的可能性树,可能性树包括多个节点和多个边缘,多个节点中的每个对应于用于一个或多个对应字母数字字符中的每个的对应字母数字字符中的一个或多个,多个节点中的每个与用于一个或多个对应字母数字字符中的每个的对应预测测量相关联,并且多个节点中的每个通过多个边缘中的一个或多个连接。选择给定的候选唯一个人标识符可以基于可能性树。在那些实施方式的一些版本中,可能性树可以由多个asr语音假设来约束。在那些实施方式的一些进一步版本中,可能性树可以由存储在一个或多个数据库中的多个唯一个人标识符来约束。
[0134]
在一些实施方式中,处理多个语音假设中的一个或多个以生成一个或多个候选唯一个人标识符可以包括使用多个ml层处理多个asr语音假设中的每个以生成用于唯一个人标识符的可能性树,可能性树包括多个节点和多个边缘,多个节点中的每个对应于用于一个或多个对应字母数字字符中的每个的对应字母数字字符中的一个或多个,多个节点中的每个与用于一个或多个对应字母数字字符中的每个的对应预测测量相关联,并且多个节点中的每个通过多个边缘中的一个或多个连接。选择给定候选唯一个人标识符可以是基于可能性树。
[0135]
在一些实施方式中,唯一个人标识符可以是以下中的一个或多个:电子邮件地址、物理地址、用户名、口令、实体的名称或域名。
[0136]
在一些实施方式中,方法还可以包括获得话音机器人对话音机器人与人类之间的对应对话的一部分的意图。使用多个ml层处理多个asr语音假设中的一个或多个以生成候选唯一个人标识符中的一个或多个还可以包括使用多个ml层处理话音机器人的意图以生成候选唯一个人标识符中的一个或多个。在那些实施方式的一些版本中,话音机器人的意图包括以下中的一个或多个:请求人类提供唯一个人标识符;请求人类拼写唯一个人标识符;或者请求人类提供给定字母数字字符中的一个或多个的澄清。
[0137]
在一些实施方式中,提供了一种由一个或多个处理器实现的方法,并且该方法包括:接收捕获人类的口头话语的音频数据,口头话语由话音机器人在人类与话音机器人之间的对应对话期间被接收;利用自动语音识别(asr)模型处理音频数据,以生成多个asr语音假设;以及响应于预测口头话语包括唯一个人标识符,唯一个人标识符包括对给定用户来说是个人的唯一字母数字字符序列:使用一个或多个ml模型的多个机器学习(ml)层来处理多个asr语音假设中的一个或多个,以生成一个或多个候选唯一个人标识符,一个或多个候选唯一个人标识符中的每个包括与一个或多个对应字母数字字符相关联的对应预测测量;以及基于与用于一个或多个候选唯一个人标识符中的每个的对应字母数字字符中的一个或多个相关联的对应预测测量,从对应字母数字字符中的一个或多个当中选择一个或多个给定字母数字字符。方法还包括,在给定候选唯一个人标识符被预测为对应于唯一个人标识符之前:基于与用于给定候选唯一个人标识符的对应字母数字字符中的一个或多个相关联的对应预测测量来生成对应提示,对应提示包括请求用于给定候选唯一个人标识符的对应字母数字字符中的一个或多个的澄清的对应澄清请求;使得对应提示被提供以用于呈现给人类;以及基于处理捕获人类的对应另外口头话语并且响应于对应提示的对应另外音频数据来细化给定候选唯一个人标识符。方法还包括响应于预测给定候选唯一个人标识符对应于唯一个人标识符:利用包括一个或多个给定字母数字字符的给定唯一个人标识符来促进话音机器人与人类之间的对应对话。
[0138]
在一些实施方式中,提供了一种由一个或多个处理器实现的方法,并且该方法包括:获得多个训练实例,多个训练实例中的每个包括:训练实例输入,训练实例输入包括用于唯一个人标识符的至少一个自动语音识别(asr)语音假设,唯一个人标识符包括对于给定人类是个人的唯一字母数字字符序列,以及训练实例输出,训练实例输出包括与唯一个人标识符相对应的对应基准真相输出。方法还包括:基于多个训练实例来训练一个或多个ml模型的多个机器学习(ml)层;以及在基于多个训练实例来训练多个ml层之后:使得话音机器人利用多个ml层来处理在话音机器人正在进行对应对话的同时所生成的一个或多个asr语音假设,以确定唯一个人标识符。
[0139]
本文公开的技术的这些和其它实施方式可以可选地包括以下特征中的一个或多个。
[0140]
在一些实施方式中,基于多个训练实例中的给定训练实例来训练多个ml层可以包括使用多个ml层处理用于唯一个人标识符的至少一个asr语音假设,以生成包括在用于唯一个人标识符的至少一个asr语音假设中的字母数字字符中的每个的对应预测测量;将用于包括在唯一个人标识符中的字母数字字符中的每个的对应预测测量与用于包括在对应于唯一个人标识符的对应基准真相输出中的字母数字字符中的每个的对应基准真相测量进行比较,以生成一个或多个损失;以及使得多个ml层中的一个或多个的相应权重基于损失中的一个或多个而被更新。
[0141]
在一些实施方式中,方法还可以包括在基于多个训练实例来训练多个ml层之后并且在使得话音机器人利用多个ml层处理在话音机器人正在进行对应对话的同时遇到的唯一个人标识符之前,利用话音机器人-人类模拟器来进一步训练多个ml层。
[0142]
在那些实施方式的一些版本中,利用话音机器人-人类模拟器来进一步训练多个ml层可以包括,针对多个训练实例中的给定训练实例并且在预测的唯一个人标识符对应于与唯一个人标识符相对应的对应基准真相输出之前:访问模拟话音机器人与给定人类之间的对应对话的话音机器人-人类模拟器;使用多个ml层处理用于唯一个人标识符的至少一个asr语音假设,以生成预测的唯一个人标识符和用于字母数字字符中的每个的对应预测测量;使用话音机器人-人类模拟器的模拟话音机器人来处理预测的唯一个人标识符以及用于预测的唯一个人标识符的对应预测测量,以生成模拟人类的模拟提示;使用话音机器人-人类模拟器的模拟人类来处理模拟提示,以生成响应于模拟提示的来自模拟人类的模拟响应;以及使用多个ml层来处理来自给定人类的模拟响应,以细化预测的唯一个人标识符。
[0143]
在那些实施方式的一些进一步版本中,模拟提示可以包括请求用于预测的唯一个人标识符的字母数字字符中的一个或多个的澄清的澄清请求。在那些实施方式的又一些进一步版本中,响应于澄清请求的模拟响应可以包括用于预测的唯一个人标识符的字母数字字符中的一个或多个的澄清。在那些实施方式的甚至又一些进一步版本中,细化预测的唯一个人标识符可以包括:基于响应于澄清请求而接收到的澄清来更新用于字母数字字符中的一个或多个的对应预测测量。
[0144]
在那些实施方式的一些进一步版本中,在确定唯一个人标识符时使得话音机器人利用多个ml层来处理在话音机器人正在进行对应对话的同时所生成的asr语音假设中的一个或多个还可以在进一步训练多个ml层之后。
[0145]
在那些实施方式的一些进一步版本中,方法还可以包括获得与模拟提示相关联的模拟话音机器人的意图。使用多个ml层来处理来自给定人类的模拟响应以细化预测的唯一个人标识符还可以包括处理模拟话音机器人的意图连同模拟响应以细化预测的唯一个人标识符。
[0146]
在一些实施方式中,获得多个训练实例可以包括基于包括至少一个人类的对应先前进行的对话来生成多个训练实例中的一个或多个。基于包括至少一个人类的对应先前进行的对话来生成多个训练实例中的一个或多个可以包括:确定在先前进行的对话期间捕获唯一个人标识符的至少一个人类提供的音频数据;获得用于唯一个人标识符的至少一个asr语音假设,至少一个asr语音假设在先前进行的对话期间基于使用asr模型处理捕获唯一个人标识符的音频数据而生成;利用基于捕获用于至少一个人类的唯一个人标识符的音频数据所生成的至少一个asr语音假设作为训练实例输入;以及利用与唯一个人标识符相对应的对应基准真相输出作为训练实例输出。
[0147]
在那些实施方式的一些版本中,包括至少一个人类的对应先前进行的对话可以在至少一个人类与另外人类之间。
[0148]
在那些实施方式的一些版本中,包括至少一个人类的对应先前进行的对话可以在至少一个人类与话音机器人的实例之间。
[0149]
在一些实施方式中,获得多个训练实例可以包括基于存储在一个或多个数据库中的对应唯一个人标识符来合成多个训练实例中的一个或多个。基于存储在数据库中的一个或多个中的对应唯一个人标识符来合成多个训练实例中的一个或多个可以包括:访问数据库中的一个或多个以识别唯一个人标识符;基于唯一个人标识符来生成多个令牌;基于与唯一个人标识符相对应的多个令牌来生成合成文本;基于合成文本来生成用于唯一个人标识符的至少一个asr语音假设;利用基于合成文本而生成的至少一个asr语音假设作为训练实例输入;以及利用唯一个人标识符作为训练实例输出。
[0150]
在那些实施方式的一些版本中,生成与唯一个人标识符相对应的多个令牌可以包括识别包括在从数据库中的一个或多个中所识别的唯一个人识别符中的多个n-gram;以及基于用于多个n-gram的分布来生成多个令牌。在那些实施方式的一些进一步版本中,生成与至少唯一个人标识符相对应的合成文本可以包括以下中的一个或多个:将一个或多个填充符注入到多个令牌中;或者针对包括在唯一个人标识符中的字母数字字符中的一个或多个注入音素拼写。在那些实施方式的一些进一步版本中,针对唯一个人标识符生成至少一个asr语音假设可以包括利用一个或多个对应同音n-gram来取代合成文本的一个或多个n-gram。在那些实施方式的一些进一步版本中,生成用于唯一个人标识符的至少一个asr语音假设可以包括利用一个或多个对应同音字母数字字符来取代合成文本的一个或多个字母数字字符。
[0151]
在一些实施方式中,唯一个人标识符可以是以下中的一个或多个:电子邮件地址、物理地址、用户名、口令、实体的名称或域名。
[0152]
此外,一些实施方式包括一个或多个计算设备的一个或多个处理器(例如,中央处理单元(cpu))、图形处理单元(gpu)和/或张量处理单元(tpu),其中,一个或多个处理器可操作来执行存储在相关联的存储器中的指令,并且其中指令被配置为使得执行前述方法中任一个。一些实施方式还包括一个或多个非暂时性计算机可读存储介质,其存储由一个或
多个处理器可执行以执行前述方法中任一个的计算机指令。一些实施方式还包括计算机程序产品,其包括由一个或多个处理器可执行以执行前述方法中任一个的指令。
[0153]
应当理解,本文更详细描述的上述概念和另外概念的所有组合被认为是本文所公开的主题的一部分。例如,在本公开的末尾出现的所要求保护的主题的所有组合被认为是本文所公开的主题的一部分。