首页> 中国专利> 自动化助手功能的免热词调配

自动化助手功能的免热词调配

摘要

对自动化助手的一个或多个功能的免热词调配。来自提供自动化助手接口(图形的和/或可听的)的助手设备的一个或多个传感器组件的传感器数据被处理以确定接近于该助手设备的用户的各种属性的发生和/或置信度量度。是否对该自动化助手的一个或多个功能中的每一个进行调配是基于该各种属性中的一个或多个的发生和/或置信度。例如,可以发起对传感器数据中的至少一些的一定处理,诸如发起之前休眠的、对至少一些传感器数据的本地处理和/或向远程自动化助手组件的发起对至少一些音频数据的传输。

著录项

说明书

背景技术

人类可以与在本文被称作“自动化助手”(也被称作“数字代理”、“交互式个人助手”、“智能个人助手”、“助手应用”、“对话代理”等)的交互式软件应用进行人机对话。例如,人类(在他们与自动化助手交互时可以被称作“用户”)可以使用口头的自然语言输入(即,讲话)和/或通过提供文本(例如,键入的)自然语言输入向自动化助手提供命令和/或请求,所述口头的自然语言输入在一些情况下可以被转换为文本并然后被处理。自动化助手通过提供响应性用户接口输出而对请求作出响应,所述响应性用户接口输出可以包括可听和/或视觉用户接口输出。

如上文所提到的,许多自动化助手被配置为经由所说讲话来与之交互。为了保护用户隐私和/或保存资源,在自动化助手将对所说讲话完全处理之前,用户必须经常以明确方式调用该自动化助手。自动化助手的明确调用通常响应于在客户端设备处所接收的一定用户接口输入而进行。该客户端设备包括助手接口,其向该客户端设备的用户提供接口以用于与该自动化助手交互(例如,接收来自用户的输入,以及提供可听和/或图形响应)以及与实施该自动化助手的一个或多个附加组件(例如,处理用户输入并生成适当响应的设备上组件和/或远程服务器设备)对接。

一些可以经由客户端设备调用自动化助手的用户接口输入包括该客户端设备处的用于调用自动化助手(例如,对硬件按钮的敲击,对客户端设备所显示的图形界面要素的选择)的硬件和/或虚拟按钮。除此之外或替选地,许多自动化助手可以响应于一个或多个特定口头调用短语而被调用,所述调用短语也被称作“热词/短语”或“触发词/短语”。例如,可以讲出诸如“Hey Assistant”、“OK Assistant”和/或“Assistant”之类特定口头调用短语来调用自动化助手。

发明内容

许多促进与自动化助手——在本文也被称作“助手设备”——的交互的客户端设备使得用户能够与自动化助手进行免接触(touch-free)的接涉(engage)。例如,助手设备经常包括麦克风,其允许用户提供口头讲话来调用自动化助手和/或以其它方式与之交互。除此之外或替选地,本文所描述的助手设备整合一个或多个视觉组件(例如,相机、光检测和测距(LIDAR)组件、雷达组件等)和/或与之通信从而促进与自动化助手的免接触交互。

本文所公开的实施方式涉及自动化助手的一个或多个功能的免热词调配(adaptation)。那些实施方式处理来自提供自动化助手接口(图形的和/或可听的)的助手设备的一个或多个传感器组件的传感器数据以确定接近于该助手设备的用户的各种属性的发生和/或置信度量度。那些实施方式进一步基于该各种属性中的一个或多个的发生和/或置信度而确定是否对该一个或多个功能中的每一个进行调配。例如,那些实施例方式可以确定发起对至少一些传感器数据的一定处理,诸如发起之前休眠的对至少一些传感器数据的本地处理和/或发起至少一些音频数据(和/或基于该音频数据在本地辨识的文本)至远程自动化助手组件的传输。除此之外或替选地,在该数据这样的处理和/或传输已经部分或完全开始之后,实施方式能够确定停止处理至少一些传感器数据,例如通过停止至少一些传感器数据的本地处理器和/或通过停止至少一些数据至远程自动化助手组件的传输。确定停止处理和/或传送数据可以在该各种属性中的一个或多个的所确定置信度的时间演化之后发生。例如,可以根据与一个或多个第一属性相关联的初始传感器数据确定对自动化助手的一个或多个功能进行调配。然而,在附加的传感器数据变得可用时,诸如与一个或多个另外的属性相关联的传感器数据,可以确定停止调配该助手的一个或多个功能。在对是否开始处理和/或传送至少一些数据的初始肯定确定随后由于置信度量度随时间演化而被确定为已经不再正确的情况下,这可以减少助手设备处的计算资源的使用,以及该助手设备与远程定位的计算组件之间的数据传输网络的使用。

各种所利用的属性例如可以包括以下的一个或多个(例如,全部):(1)用户指向助手设备的注视(在本文也被称作“指向性注视”);(2)用户相对于助手设备的距离;(3)用户嘴部的运动(在本文也被称作“嘴部运动”);(4)语音活动;(5)用户的嘴部运动和语音活动的同时发生;(6)脸部辨识;(7)讲话者辨识;(8)存在辨识;(9)用户相对于助手设备的身体姿态(例如,是否朝向助手设备);和/或(10)用户的免接触手势。例如,一定处理的发起可以响应于在助手设备本地作出的、用户的注视指向该助手设备的确定,并且可选地进一步基于以下中的一个或多个:用户相对于助手设备的距离,所检测到的语音活动,所检测到的用户的嘴部运动(可选地与语音活动同时发生),和/或其它所检测到的属性以及可选地相对应的置信度。本文提供了对以下的附加描述:确定这些属性中的每一个和可选地相关联的置信度量度,以及在确定是否对一个或多个助手功能进行调配时利用该属性和多个置信度量度。

通常,在确定用户是否意图经由助手设备与自动化助手交互时利用各种属性。例如,确定用户是否意图经由经助手设备的麦克风所检测到的该用户的口头输入和/或经由经该助手设备的视觉组件所检测到的该用户的免接触手势输入来进行交互。所发生的调配可以包括一个或多个促进这样的交互的调配,诸如对传感器数据的一定本地和/或远程处理的发起,用于促进交互的一定传感器数据的传输,和/或为了向用户提供有关交互的反馈的人类可感知提示的提供。利用本文所公开的技术使得用户与自动化助手的交互能够被发起和/或引导,而用户无需通过讲出热词作为这样的交互的开端。这使得用户所要提供的用户输入能够有所减少(至少由于热词的省略),这直接缩短了交互的持续时间并且因此节省了原本将在延长的交互中被利用的各种网络资源和/或远程和/或本地处理资源。此外,热词经常是难以启齿的非自然规定短语。这种尴尬会增加用户-助手交互的摩擦和/或进一步延长交互。

如上文提到的,在一些实施方式中,可以基于一个或多个属性的发生和/或置信度量度而发生的调配可以包括对一定传感器数据(例如,音频数据、视频、图像等)的一定处理的发起,而该一定处理在此前并未被执行(即,其在此前处于休眠)。例如,在各种属性中的一个或多个的发生和/或置信之前,自动化助手可以仅执行诸如音频数据、视频/图像数据等的一定传感器数据的有限处理(或不执行处理)。

例如,在调配之前,该自动化助手可选地可以在本地以最低程度处理音频数据(例如,在监视语音活动的发生和/或明确调用短语的发生时),和/或可以临时在本地缓冲音频数据。在调配之前,该自动化助手将在本地处理和/或临时缓冲之后“丢弃”音频数据,而并不导致该音频数据被该自动化助手的一个或多个附加组件所处理。这样的附加组件例如可以包括本地和/或远程的话音转文本处理器、本地和/或远程的自然语言理解组件、验证音频数据中包括的所说讲话意图用于自动化助理(在本文也被称作“语义过滤”)和/或来自于某个讲话者——诸如与基于脸部辨识来在视觉上识别出的讲话者匹配的讲话者——(在本文也被称作“独立于文本的讲话者识别/辨识”)的本地和/或远程的组件。然而,响应于确定该各种属性中的一个或多个的发生和/或其置信,该调配可以包括使得音频数据被一个或多个附加组件所处理。以这些和其它方式,可以通过仅响应于确定一定条件的发生才传送音频数据和/或执行音频数据的一定处理而减少处理和/或网络资源。

而且,例如在调配之前,该自动化助手可选地可以仅出于一定目的而在本地处理视觉数据,诸如确定指向性注视的发生、嘴部运动和语音活动的同时发生、脸部辨识和/或对应的置信度量度。在这样的调配之前,该自动化助手可以避免视觉数据的一定处理,诸如避免将任何视觉数据传送至远程自动化助手的组件和/或避免针对这样的视觉数据中所捕获的用户的任何手势生成响应。然而,响应于确定该各种属性中的一个或多个的发生和/或其置信度,可以进行对视觉数据的这样的进一步处理。以这些和其它方式,可以通过仅响应于一定条件的发生才传送视觉数据和/或执行视觉数据的一定处理而减少处理和/或网络资源。

此外,在许多实施方式中,确定属性的发生和/或置信度量度是基于来自助手设备的视觉组件(相机)、助手设备的麦克风和/或助手设备的其它传感器组件的传感器设备而在该助手设备处执行。此外,在那些实施方式中的一些中,该助手设备基于发生和/或置信度量度确定而在本地确定是否对自动化助手的功能进行调配。因此,在那些实施方式中,确定是否调配自动化助手的功能可以在助手设备的本地进行,而没有来自助手设备的任何传感器数据和/或来自助手设备的其它数据通过网络被传送至一个或多个远程自动化助手组件。相反,这样的传输可选地可以是被调配的自动化助手的功能之一,并且可以仅响应于调配这样的功能的本地确定而发生。除了通过除非满足一定条件否则就防止传感器数据和/或其它本地助手设备数据的传输而保持其安全性之外,这样的实施方式通过这样的本地确定而进一步节省了网络资源以及远程设备的资源。进一步地,这样的实施方式使得能够快速作出确定而没有原本由于客户端-服务器传输而存在的附加时延。这样减少的时延同样可以减少用户-助手交互的总体持续时间。

更一般地,本文所描述的各种实施方式可以在用来实施自动化助手的计算资源和通信网络中提供效率。例如,如将从本文的描述所清楚的,实施方式的多个方面可以产生对数据网络上的通信更有选择的发起以及网络上的数据业务的相对应减少。对网络通信——例如,来自助手设备的网络通信——的更有选择的发起可以进一步导致对与之发起该通信的远程设备处的计算资源的更有效率使用,原因在于来自助手设备的各种潜在通信在与该远程系统的任何联系被发起之前都经过了过滤。同样,网络上的数据业务的减少和/或助手设备和/或远程系统处的计算资源的更有效率使用都可以由于在助手设备处确定停止在该助手设备处处理至少一些数据和/或停止通过网络传送至少一些数据而得以实现。如上文讨论的,随着更多传感器数据在助手设备处被接收并处理,这样的确定可以基于处于演化中的、与一个或多个属性相关联的置信度量度来作出。数据网络和远程系统上的计算资源的使用的效率改善可以导致网络中的发射器和接收器的功率使用方面以及远程系统处的存储器操作和处理使用方面的显著节省。如下文所描述的,在助手设备处也可以体验到相对应的效果。这些效果——尤其随着时间推移以及随着自动化助手的正在进行的操作——允许在网络中和计算装置中包括运行助手的设备和系统作为整体体验到明显的附加能力。该附加性能可以被用于数据网络中另外的通信,无论其是否与助手相关,而并不需要例如通过附加或升级的基础设施以及计算装置中的附加计算操作来扩充网络性能。其它技术改进将由于本文的描述而清楚明白。

在一些实施方式中,所发生的自动化助手的调配可以包括用户接口输出的渲染的调配。在那些实施方式中的一些中,助手设备对用户接口输出的渲染的调配可以包括一个或多个人类可感知提示的渲染。该一个或多个人类可感知提示的渲染可选地可以在进一步调配自动化助手之前被提供,并且可以(直接或间接)指示进一步调配即将发生。这样提供人类可感知提示可以向用户通知他/她与助手交互的状态。这使得用户能够确认自动化助手的状态从而在需要的情况下确保其正在处理来自用户的所说讲话和/或免接触手势,并且还使得用户能够在该用户并非意图这样的处理的情况下重新定向他/她的注视和/或提供明确的中止输入。如果用户重新定向他/她的注视或者提供了明确的中止输入,则对助手的功能的进一步调配可以被中止或者被防止进行,由此节省各种资源。在一些实施方式中,人类可感知提示包括(或者被限制为)来自助手设备的显示的视觉线索,这可以防止用户的任何口头输入被打断,由此使得用户与助手的交互更加简明。

作为一个示例,第一人类可感知提示可以响应于检测到用户的指向性注视(例如,检测用户注视达至少阈值持续时间和/或连续图像帧的阈值百分比)而被渲染。该第一人类可感知提示可以(直接或间接)通知用户已经检测到指向性注视并且可以进行一定传感器数据的进一步处理(例如,如果用户并未重新定向他/她的注视,发出视觉和/或言语停止命令,或者以其它方式指示想要中止进一步处理)。该第一人类可感知提示可以在进一步的调配之前被渲染,所述进一步调配诸如视觉和/或传感器数据的一定处理和/或视觉和/或传感器数据的传输。第一人类可感知提示的一种非限制性示例是在显示画面上渲染的发光,诸如显示画面的全部或部分上的白色发光(例如,围绕显示画面外围的白色发光)。

继续该示例,可以响应于继续检测到该指向性注视以及可选地基于确定附加属性的发生和/或置信度量度而渲染第二人类可感知提示,所述附加属性的发生和/或置信度量度诸如用户处于助手设备的阈值距离之内(例如,如基于图像分析所估计的处于4英尺或其它阈值之内)、语音活动的存在和/或嘴部运动和语音活动的同时发生。该第二人类可感知提示可以(直接或间接)通知用户已经检测到语音活动并且可以进行一定传感器数据的进一步处理。该第二人类可感知提示可以在进一步的调配之前被渲染,所述进一步的调配诸如视觉和/或传感器数据的一定处理和/或视觉和/或传感器数据的传输。第二人类可感知提示的一种非限制性示例是在显示上渲染的条栏,诸如以垂直或水平方式完全或部分跨越显示器的一部分进行渲染的白色条栏。可选地,条栏的宽度、条栏的颜色、条栏的亮度和/或条栏的其它特性可以取决于附加属性的数量和/或它们的置信度量度的量级,从而向用户指示所确定的用户意图与助手交互的置信度程度,以及相对应的可以进行进一步处理的置信度程度。

仍然继续该示例,可以响应于检测到语音活动的结束(例如,通过在助手设备本地的结束点检测)和/或其它条件而渲染第三人类可感知提示。该第三人类可感知提示可以(直接或间接)通知用户正在进行一定传感器数据的进一步处理(但是可选地可以仍然被中止)。这样的进一步处理可以包括音频数据的话音转文本处理、所转换文本的自然语言理解、基于视觉数据的处理的手势辨识和/或基于自然语言理解和/或手势辨识的实行。除此之外或替选地,这样的进一步处理可以包括附加处理来确认另外的传感器数据中所包括的任何讲话和/或手势是意图针对自动化助手并且应当被实行。第三人类可感知提示的一个非限制示例是在显示上渲染的多色条栏或弧形,诸如在显示器的一部分上渲染的多色弧形(例如,彩虹)。

同样地,一个或多个进一步调配可以在人类可感知提示的渲染之后以及响应于检测到属性和/或置信度量度的持续发生和/或附加属性和/或置信度量度的发生而进行。例如,该进一步调配可以包括由客户端设备向一个或多个远程自动化助手组件传送该客户端设备的一个或多个传感器组件所生成的一定传感器数据(但在该进一步调配之前不会传送来自传感器组件的传感器数据调配)。该一定传感器数据例如可以包括在确定指向性注视和/或其它属性发生之后捕获的视觉和/或音频数据,或者在这样的发生之前或期间所捕获的视觉和/或音频数据(例如,这样的视觉和/或音频数据可以被临时缓冲在客户端设备处,并且仅响应于确定该发生和/或置信度才被利用)。通过提供人类可感知提示,用户可以被警示即将发生进一步调配,并且被提供以防止该进一步调配的机会。例如,在进一步调配取决于用户持续的指向性注视的情况下,用户可以转移他/她的注视从而防止该进一步调配(例如,如果用户并不想要与自动化助手交互并且导致传感器数据被传送)。以这种方式,该进一步调配连同由于该进一步调配所导致的网络和/或计算资源的使用可以被防止。可以提供各种人类可感知提示,诸如可听的“ding”、可听的“口头输出”(例如,“Looks likeyou're talking to the Assistant,look away if you don't want to(看上去您想要与助手讲话,如果您不想请看向别处)”)、助手设备的显示屏上的视觉符号、助手设备的发光二极管点亮,等等。

在一些实施方式中,除此之外或替选地,该用户接口输出的渲染的调配包括:降低助手设备所渲染的可听用户接口输出的音量,和/或中止该可听用户接口输出和/或助手设备所视觉渲染的视频输出。作为一个示例,假设在用户开始讲出指向自动化助手的讲话之前检测到指向性注视和/或其它属性。进一步假设在检测到该指向性注视和/或其它属性之前,助手设备正在渲染可听和/或视觉内容。例如,助手设备的自动化助手客户端可以正导致歌曲的可听渲染以及该歌曲的视频的视觉渲染。响应于检测到该指向性注视和/或其它属性,该自动化助手客户端可以使得该歌曲的可听渲染的音量有所降低(同时仍然以降低后的音量继续该可听渲染以及该视频的视觉渲染)。音量的降低能够改善捕获所说讲话的音频数据—诸如经由助手设备的一个或多个麦克风所捕获的音频数据—的处理的表现。例如,音频数据的语音转文本处理可以由于音量减低而得到改善,基于音频数据的语音活动检测(VAD)可以由于音量减低而得到改善,基于音频数据的讲话者语音分划(diarization)可以由于音量减低而得到改善,等等。有所改善的音频数据处理可以提高自动化助手正确解释所说讲话并且以适当方式作出响应的可能性。这会导致所改善的用户-助手交互和/或缓解不当的自动化助手响应的风险,所述不当的自动化助手响应会导致用户重复所说讲话(并且因此要求花费计算资源来处理该重复的所说讲话并且生成和渲染另一个响应)。

作为以上示例的一种变化,替代音量降低,调配可以包括中止歌曲(以及可选地视频)的可听渲染。作为以上示例的另外一种变化,调配最初可以包括降低歌曲的可听渲染的音量,并且该调配可以进一步包括随后响应于一个或多个其它属性的发生和/或置信度而中止该歌曲的可听渲染。

在一些实施方式中,被发起的调配包括基于视觉数据处理的手势辨识和/或基于所辨识手势的实行。例如,在一些实施方式中,手势辨识和/或基于所辨识手势的实行(例如,生成响应)可以取决于检测到来自从其辨识出该手势的相同用户的指向性注视的发生。在那些或其它实施方式的一些中,针对手势的响应是基于用户的手势以及可选地基于客户端设备在该手势时所渲染的内容而生成。例如,手势可以被指派至多个响应性动作并且该响应性动作中单独的一个可以基于设备在此时正在渲染的内容而被选择作为响应。例如,竖起拇指的手势可以被指派至“增大音量”动作和“向上滚动”动作,并且这两个动作中的哪一个被选择则可以基于正在渲染的内容。例如,当正在渲染音频内容和/或音频视觉内容时可以选择“增大音量”动作,而在没有音频或音频视觉内容被渲染并且正在渲染已经被之前的“向下滚动”动作所影响的内容时可以选择“向上滚动”动作。作为另一个示例,“停止”手势可以被指派至“停止计时器闹钟”动作、“停止音乐”动作、“停止呼叫”动作和/或其它动作——并且哪一个被选择可以取决于该助手设备和/或其它助手设备当前正在渲染什么。例如,如果该助手设备当前正在渲染计时器闹钟,则可以选择“停止计时器闹钟”动作。更一般地,各种所辨识的手势可以依据在其检测到该手势的助手设备正在渲染的内容和/或可选地基于在其它助手设备处正在渲染的内容而以不同方式被解释。此外,辨识手势和/或根据手势作出动作可选地可以取决于确定来自做手势用户的指向性注视的发生、确定做手势用户处于助手设备的阈值距离之内和/或其它考虑。

在一些实施方式中,响应甚至可以独立于用户的任何手势、所说讲话和触摸输入而被生成,但是取决于该客户端设备(或者处于该客户端设备的生态系统中的另一个客户端设备)正在渲染的内容以及本文所讨论的非手势用户属性中的一个或多个。例如,如果助手设备当前正在渲染计时器闹钟,则可以响应于以下而执行“停止计时器闹钟”动作:计时器闹钟当前正在被渲染并且确定用户的指向性注视(例如,达到至少1秒钟或其它阈值持续时间的指向性注视)、确定该用户处于助手设备的阈值距离之内(例如,处于8英尺或其它阈值距离之内)、确定该用户正在更接近于助手设备移动和/或其它考虑。因此,所确定的属性可以在那些所确定的属性与助手设备处的一定条件同时发生时使得给定动作得以被实施,所述条件诸如助手设备对一定输出的渲染(例如,计时闹钟的渲染)。更一般地,所确定属性的各种组合可以被解释从而使得相对应的助手动作仅在一些情形中得以被执行,诸如其中一定相对应内容正由确定该属性的助手设备所渲染的情形。

在一些实施方式中,在确定各种属性的发生和/或它们的置信度(如果有)时,客户端设备利用在助手设备上本地存储的经训练的机器学习模型(例如,神经网络模型)以至少有选择地处理来自客户端设备的传感器组件的传感器数据的至少一部分(例如,来自客户端设备的相机的图像帧,来自该设备的麦克风的音频数据)。例如,响应于检测到一个或多个用户的存在(例如,经由存在传感器),在监视用户的指向性注视的发生、确定用户的距离、确定嘴部运动和语音活动的同时发生、确定语音活动、执行脸部辨识和/或确定其它属性的发生时,客户端设备可以至少在一定持续时间内(例如,在至少阈值持续时间内和/或直至不再检测到存在)利用本地存储的机器学习模型处理至少部分的视觉数据。该客户端设备可以使用以下来检测一个或多个用户的存在:专用的存在传感器(例如,被动红外传感器(PIR))、使用视觉数据和单独机器学习模型(例如,专门针对人类存在检测所训练的单独机器学习模型)和/或使用音频数据和单独机器学习模型(例如,使用VAD机器学习模型的VAD)。在确定属性的发生时的视觉数据和/或音频数据的处理取决于首次检测到一个或多个用户的存在的实施方式中,可以通过监视属性的发生时对视觉数据和/或音频数据的非连续处理而节省功率资源。相反地,在那些实施方式中,可以仅响应于经由一个或多个更低功耗的技术检测到一个或多个用户存在于助手设备的环境中而进行处理。

在利用本地机器学习模型监视指向性注视的发生、嘴部运动(可选地与语音运动同时发生)、距离、脸部辨识和/或手势的一些实施方式中,可以利用不同的模型,其中每个模型监视一个或多个不同属性的发生。在那些实施方式的一些变化形式中,一个或多个“上游”模型(例如,对象检测和分类模型)可以被用来检测视觉数据(例如,图像)的可能是脸、可能是眼睛、可能是嘴等等的部分——以及使用相应的机器学习模型所处理的那些部分。例如,图像的脸和/或眼睛部分可以使用上游模型来检测,并且使用注视机器学习模型被处理。而且,例如,图像的脸和/或嘴巴部分可以使用上游模型来检测,并且使用嘴部运动(可选地与语音运动同时发生)机器学习模型被处理。作为又另一个示例,图像的人类部分可以使用上游模型来检测,并且使用手势机器学习模型被处理。

在一些实施方式中,视频和/或图像的一定部分可以在检测一个或多个属性的发生时被过滤/忽略/赋予不太大的权重。例如,在视频和/或图像中捕获到的电视可以被忽略从而防止由于电视所渲染的人(例如,天气预报员)的错误检测。例如,图像的一部分可以响应于在针对该部分的多个帧上检测到该部分中的一定显示频率(即,与电视刷新率相匹配)而基于单独对象检测/分类机器学习模型而被确定为对应于电视,等等。这样的部分在本文所描述的一定技术中可以被忽略,从而防止来自电视或其它视频显示设备的那些各种属性的检测。作为另一个示例,相框可以被忽略。这些和其它技术可以减少自动化助手的误报性调配,而这会节省原本将在误报性调配中被消耗的各种计算和/或网络资源。而且,在各种实施方式中,一旦检测到电视、相框等位置,其能够可选地在多个帧内继续被忽略(例如,同时进行间歇性验证,直至检测到客户端设备或对象的移动,等等)。这也可以节省各种计算资源。

本文所公开的一些实施方式包括一个或多个计算设备,所述计算设备包括一个或多个处理器,诸如中央处理单元(CPU)、图形处理单元(GPU)和/或张量处理单元(TPU)。一个或多个处理器能够操作以执行存储在相关联存储器中的指令,并且该指令被配置为使得本文所描述的任何方法得以执行。该计算设备例如可以包括客户端助手设备,其具有麦克风、至少一个显示器、视觉组件和/或其它传感器组件。一些实施方式还包括一个或多个非暂时性计算机可读存储介质,其存储能够由一个或多个处理器所执行从而实行本文所描述的任何方法的计算机指令。

附图说明

图1是可以在其中实施本文所公开的实施方式的示例环境的框图。

图2A和2B描绘了依据各种实施方式的论证本公开的各个方面的示例处理流程。

图3A描绘了助手设备和提供指向性注视并讲话(由此导致嘴部运动)的用户的示例,并且还描绘了助手设备的相机在该用户提供指向性注视并讲话时所捕获的图像。

图3B1、3B2和3B1提供了均可以响应于确定相对应属性的发生和/或置信度而提供的可视觉感知提示的示例。

图4描绘了根据本文所公开实施方式的示例方法的流程图。

图5描绘了根据本文所公开实施方式的另一种示例方法的流程图。

图6描绘了根据本文所公开实施方式的另一种示例方法的流程图。

图7图示了计算设备的示例架构。

具体实施方式

图1图示了可以在其中实施本文所公开的技术的示例环境。该示例环境包括客户端设备101,其至少有选择地执行自动化助手客户端110。术语“助手设备”在本文也被用来引用至少有选择地执行自动化助手客户端110的客户端设备101。一个或多个基于云的自动化助手组件130可以在经由总体上以100指示的一个或多个局域网和/或广域网(例如,互联网)通信耦合至客户端设备101的一个或多个计算系统(被统称为“云”计算系统)上实施。基于云的自动化助手组件130例如可以经由高性能服务器的集群来实施。

在各种实施方式中,自动化助手客户端110的实例通过其与一个或多个基于云的自动化助手组件130的交互而可以形成从用户角度看上去是自动化助理120的逻辑实例的事物,用户可以利用其进行人机交互(例如,口头交互、基于手势的交互和/或基于触摸的交互)。图1中以虚线描绘了这样的自动化助手120的一个实例。因此,应当理解的是,与客户端设备101上执行的自动化助手客户端110接涉的每个用户实际上可以与其自己的自动化助手120的逻辑实例进行接涉。出于清楚和简明的原因,如本文所使用的为特定用户“服务”的术语“自动化助手”将是指在由用户所操作的客户端设备101上执行的自动化助手110与可选地一个或多个基于云的自动化助手组件130(其可以在多个自动化助手客户端110之间被共享)的组合。还应当理解的是,在一些实施方式中,自动化助手120可以对来自任何用户的一定请求作出响应,而无论该用户实际是否由自动化助手120的该特定实例所“服务”。

客户端设备101例如可以是:台式计算设备、膝上计算设备、平板计算设备、移动电话计算设备、用户的车辆的计算设备(例如,车内通信系统、车内娱乐系统、车内导航系统)、独立交互式扬声器(其在一些情况下可以包括视觉传感器)、诸如智能电视的智能电器(或者配备有具有自动化助手能力的联网软件狗(dongle)的标准电视),和/或用户的包括计算设备的可穿戴装置(例如,用户的具有计算设备的手表、用户的具有计算设备的眼镜、虚拟现实或增强现实计算设备)。可以提供附加和/或替选的客户端计算设备。如之前所提到的,客户端设备101可选地可以采用主要被设计为促进用户和自动化助手120之间的交互的助手设备的形式(例如,具有扬声器、麦克风、相机(和/或其它视觉组件)和显示器的独立交互式设备)。

客户端设备101可以配备以具有一个或多个视场的一个或多个视觉组件107。视觉组件107可以采用各种形式,诸如单像相机、立体相机、LIDAR组件、雷达组件等。该一个或多个视觉组件107例如可以由视觉捕获模块114用来捕获客户端设备101被部署在其中的环境的视觉帧(例如,图像帧(静止图像或视频))。客户端设备101还可以配备以一个或多个麦克风109。话音捕获模块112可以被配置为捕获用户的话音和/或经由麦克风109捕获的其它音频数据。

调配引擎115在确定一个或多个用户属性的发生和/或置信度量度时处理视觉捕获模块114所捕获的视觉数据和/或话音捕获模块112所捕获的音频数据。此外,调配引擎115基于属性的发生和/或置信度量度而确定是否对自动化助手120的一个或多个方面进行调配,诸如自动化助手客户端110的多个方面和/或基于云的自动化助手组件130的多个方面。这样的调配例如可以包括客户端设备101所渲染并且由自动化助手客户端110所控制的用户接口输出(例如,可听的和/或视觉的)的调配。除此之外或替选地,这样的调配例如包括由客户端设备101(例如,由自动化助手客户端的一个或多个组件)和/或由一个或多个基于云的自动化助手组件130所进行的传感器数据处理的调配。

客户端设备101还可以包括一个或多个存在传感器105和/或一个或多个显示器103(例如,触摸敏感显示器)。显示器103可以是在各种实施方式中在其中渲染用户接口输出的用户接口输出组件之一。显示器103可以进一步是通过其渲染来自自动化助手客户端110的响应的视觉部分的用户接口输出组件之一。存在传感器例如可以是PIR和/或其它被动存在传感器。在各种实施方式中,自动化助手客户端110的一个或多个组件和/或功能可以响应于基于来自存在传感器105的输出检测到人类存在而被启动。例如,视觉捕获模块114和/或话音捕获模块112可以仅响应于人类存在的检测而被激活,并且可选地可以响应于不再检测到人类存在而被去激活。而且,例如,视觉组件107和/或麦克风109可以仅响应于人类存在的检测而被激活,并且可选地可以响应于不再检测到人类存在而被去激活。作为又另一个示例,调配引擎115的一个或多个(例如,全部)模块可以仅响应于人类存在的检测而被激活,并且可选地可以响应于不再检测到人类存在而被去激活。在其中发起自动化助手客户端110的组件和/或功能取决于首次检测到一个或多个用户的存在的实施方式中,可以节省功率资源。

在图1中,调配引擎115包括注视模块1151、距离模块1152、嘴部/语音模块1153、脸部辨识模块1154、语音活动模块1155,以及一个或多个其它模块1156。

调配引擎115在确定是否调配自动化助手120的一个或多个方面时利用来自模块1151-1156中的一个或多个模块的确定和/或置信度量度。例如,在发起音频数据向基于云的自动化助手组件130的传输和/或执行音频数据的本地话音转文本处理之前,调配引擎115要求(由注视模块1151)检测指向性注视的发生,以及连同一个或多个其它属性的发生一起的、指向性注视的持续发生。该一个或多个其它属性的发生例如包括(距离模块1152所测量的)用户距离处于阈值距离之内,用户距离比之前针对该用户所确定的距离更加接近(例如,用户已经至少以阈值程度和/或至少以阈值速率更接近于助手设备),(嘴部/语音模块1153所确定的)嘴部运动和语音活动的同时发生,和/或(语音模块1155所确定的)语音活动的发生。作为另一个示例,在发起音频数据向基于云的自动化助手组件130的传输和/或执行音频数据的本地话音转文本处理之前,调配引擎115能够要求检测:指向性注视的发生,以及连同要求关于以下满足一个或多个标准一起的、指向性注视的持续发生:用户距离、嘴部运动和语音活动的共同发生和/或语音活动的发生。例如,该一个或多个其它标准包括对以下的考虑:距离,以及嘴部运动和语音活动的同时发生的置信度量度。例如,调配引擎115可以:在距离为6英尺且置信度量度为0.9的情况下发起处理;在距离为3英尺且置信度量度为0.7的情况下发起处理;在距离为6英尺且置信度量度为0.7的情况下抑制发起处理。而且,例如,调配引擎115可以:在用户相对于助手设备的距离被确定为与一个或多个之前所确定的距离相比更接近于该助手设备并且置信度量度为0.9的情况下发起处理;在该距离与一个或多个之前所确定的距离指示用户至少以阈值速率更接近于助手设备移动并且置信度量度为0.7的情况下发起处理;在该距离与一个或多个之前所确定的距离指示用户远离助手设备移动并且置信度量度为0.7的情况下抑制发起处理。在基于一个或多个属性是否存在和/或相关联的置信度量度而考虑是否发起进一步处理时,调配引擎115可以利用一个或多个规则和/或经训练的机器学习模型。例如,该机器学习模型可以基于训练示例而被训练,所述训练示例均包括具有各种属性和/或置信度量度的训练示例输入,以及指示是否应当进行进一步处理的相对应标签(有监督或半监督)。

注视模块1151处理来自视觉捕获模块114的视觉数据从而确定指向性注视的发生,以及可选地该指向性注视的置信度量度。如本文所描述的(例如,图2B),在一些实施方式中,注视模块1151可以基于使用上游检测和分类模型对视觉数据的人类和/或脸部区域的检测而仅对那些区域进行处理,所述上游检测和分类模型可以是其它模块1156之一。注视模块1151可以使用一个或多个注视机器学习模型1161来检测指向性注视。这样的机器学习模型例如可以是神经网络模型,诸如卷积神经网络(CNN)模型。这样的CNN模型的训练可以基于训练示例,所述训练示例包括作为训练示例输入的视觉帧(例如,图像)以及作为训练示例输出的该图像是否包括指向性注视的指示。例如,该训练示例输出可以是指示是否存在指向性注视的单值。例如,在不存在指向性注视时该单值可以为“0”,在存在直接指向捕获图像的传感器或者处于其5度(或者其它范围,这可以取决于显示器103的大小)之内的注视时该单值可以为“1”,在存在指向捕获图像的传感器的5-10度之内的注视时该单值可以为“0.75”,等等。

在那些和/或其它实施方式的一些中,注视模块1151仅在以至少阈值概率检测到指向性注视和/或检测到指向性注视至少达到阈值持续时间时才确定指向性注视。例如,可以使用CNN模型对图像帧的流进行处理,并且处理每一帧会产生该帧包括指向性注视的相对应概率。注视模块1151可以仅在(对应于阈值持续时间的)图像帧序列中的至少X%具有满足阈值的相对应概率的情况下才确定存在指向性注视。例如,假设X%是60%,概率阈值为0.7,并且阈值持续时间为0.5秒。进一步假设10个图像帧对应于0.5秒。如果图像帧被处理而生成概率[0.75,0.85,0.5,0.4,0.9,0.85,0.89,0.6,0.85],则可以检测出指向性注视,因为70%的帧都以大于0.7的概率指示了指向性注视。以这些和其它方式,甚至在用户短暂地转移他/她的注视方向,也可以检测到指向性注视。附加和/或替选的机器学习模型(例如,RNN模型)和/或技术可以被用来检测以至少阈值持续时间发生的指向性注视。

如本文所描述的,在各种实施方式中,与自动化助手120的免热词交互可以取决于确定用户的指向性注视的发生,以及可选地基于确定该指向性注视贯穿用户输入(例如,口头输入和/或免接触手势输入)全程的持续发生。例如,在各种实施方式中,调配引擎115将仅在用户的指向性注视被确定并且贯穿用户输入全程而持续(例如,直至确定结束点)的情况下才将会发起对捕获用户输入的视觉数据和/或音频数据的一定处理。

例如,为了生成基于视觉数据和/或音频数据的响应而向基于云的助手组件130传输视觉数据和/或音频数据可以取决于持续的指向性注视。另外,可以提供人类可感知提示以通知用户指向性注视正被检测到(可选地连同其它属性一起),由此为用户提供了转移他/她的眼睛从而防止一定处理被发起或者中止一定处理(如果已经被发起)的能力。以这些和其它方式,不必要的处理和/或传输可以被快速中止或者被防止发生。同样如本文所描述的,在各种实施方式中,调配引擎115的一个或多个其它模块可以仅在注视模块1151检测到指向性注视的情况下处理相对应的传感器数据和/或可以将处理限制于对应于指向性注视的传感器数据。那些实施方式还导致了如本文所描述的客户端设备101处的各种效率。

距离模块1152处理来自视觉捕获模块114的视觉数据和/或其它传感器数据,以确定提供(如注视模块1151所确定的)指向性注视的用户的估计距离。如本文所描述的(例如,图2B),在一些实施方式中,距离模块1152可以基于使用上游检测和分类模型对视觉数据的人类和/或脸部区域的检测而仅对那些区域进行处理。进一步地,在一些附加或替选实施方式中,距离模块1152可以仅响应于注视模块1151检测到指向性注视的发生而处理视觉数据。例如,距离模块1152可以可选地处理仅与被注视模块1151确定为具有指向性注视的用户的人类和/或脸部区域相对应的视觉数据。通过使用距离模块1152进行仅选择性处理(例如,仅响应于注视模块1151检测到指向性注视的发生)和/或仅处理视觉数据的一定区域(例如,仅对应于包括指向性注视的部分的那些区域),可以节省客户端设备101的资源。

距离模块1152可选地可以使用一个或多个距离机器学习模块1162来检测距离。这样的机器学习模型例如可以是神经网络模型,诸如卷积神经网络(CNN)模型。这样的CNN模型的训练可以基于训练示例,所述训练示例包括作为训练示例输入的视觉帧(例如,仅包括单个用户的脸部和/或身体区域的图像)以及作为训练示例输出的指示该用户的距离的值。例如,该训练示例输出可以是独热(one-hot)矢量,其中该矢量的值均对应于不同的距离(或距离的范围),并且“热”热量指示真实标定(ground truth)距离(或距离范围)。在其它实施方式中,距离模块1152可选地可以在并不直接利用距离机器学习模型1162的情况下确定距离。例如,距离模块1152可以被提供以视觉数据,所述视觉数据仅包括基于来自上游模型和/或注视模块1151的输出而被确定为对应于具有指向性注视的用户的脸部区域。进一步地,距离模块1152可以基于该视觉数据中的用户的眼睛之间的距离(眼睛的位置可选地可以由上游模型所指示)、该视觉数据中的用户的头部大小和/或该视觉数据中的用户的其它属性来估计距离。

嘴部/语音模块1153可以使用一个或多个嘴部/语音机器学习模型1163来确定嘴部运动的发生和/或嘴部运动和语音活动的同时发生。在一些实施方式中,嘴部/语音模块1153仅确定嘴部运动的发生,以及可选地该嘴部运动的一个或多个置信度量度。

在一些实施方式中,除此之外或替选地,嘴部/语音模块1153确定嘴部运动和语音活动的同时发生以及可选地一个或多个相对应的置信度量度。在那些实施方式的一些中,所确定的嘴部运动和语音活动的同时发生是嘴部运动以及来自运动的嘴部的语音活动的同时发生。在那些实施方式的一些中,所利用的嘴部/语音机器学习模型1163例如可以是神经网络模型,诸如包括一个或多个记忆层的RNN模型。例如,该机器学习模型可以是被训练以处理来自视觉捕获模块114的视觉数据(例如,包括用户的脸部区域的视觉数据)和来自话音捕获模块112的音频数据以生成该视觉数据中所捕获的用户实际上是否正在讲话的概率(置信度量度)。

对这样的机器学习模型的训练可以基于训练示例,所述训练示例包括作为训练示例输入的视觉帧序列(例如,仅包括用户的脸部区域的图像序列)和音频数据帧序列。音频数据帧的序列在时间上可以与视觉帧的序列重叠,但是视觉帧的序列可选地可以具有不同于音频数据帧的序列的持续时间(例如,更短的持续时间)。该训练示例可以进一步包括作为训练示例输出的该序列是否包括与来自正在运动的嘴部的语音活动相结合的嘴部运动的指示。换句话说,其脸部被图像序列所捕获的用户是否正在讲话的指示。例如,训练示例输出可以是指示其脸部被图像序列所捕获的用户是否正在讲话的单值。例如,该单值可以在否的情况下为“0”并且在是的情况下为“1”。注意到,在视觉数据和重叠的音频数据二者上训练的这样的模型可以在以下之间加以区分:(1)与嘴部运动同时发生并且是该嘴部运动的结果的语音活动;与(2)并非来自嘴部运动而恰好与非讲话的嘴部运动同时发生的语音活动。例如,训练示例可以包括这样的训练示例,那些训练示例具有包括视觉数据中的非讲话的嘴部运动以及音频数据中的语音活动(例如,来自另一个用户、来自电视和/或来自其它来源的语音活动)的训练示例输入,并且那些训练示例包括指示脸部被图像序列所捕获的用户未在讲话的训练示例输出。在这样的训练示例上进行训练可以使得经训练的模型能够被用来在以下之间加以区别:(1)与嘴部运动同时发生并且是该嘴部运动的结果的语音活动;与(2)并非来自嘴部运动而恰好与非讲话的嘴部运动同时发生的语音活动。这可以减少由于恰好与来自用户(例如,被注视模块1151确定为具有指向性注视的用户)的嘴部运动同时发生的外来语音活动(例如,来自电视)和/或其它来源所导致的误报的发生,由此减少了由调配引擎115对各种计算和/或网络密集型的助手功能所进行的非必要调配的发生。

如本文所描述的(例如,图2B)在一些实施方式中,嘴部/语音模块1153可以基于使用上游检测和分类模型对视觉数据的人类和/或脸部区域的检测而仅对那些区域进行处理。进一步地,在一些附加或替选实施方式中,嘴部/语音模块1153可以仅响应于注视模块1151检测到指向性注视的发生而处理视觉数据。例如,嘴部/语音模块1153可以可选地处理仅与被注视模块1151确定为具有指向性注视的用户的人类和/或脸部区域相对应的视觉数据。通过使用嘴部/语音模块1153进行仅选择性处理(例如,仅响应于注视模块1151检测到指向性注视的发生)和/或仅处理视觉数据的一定区域(例如,仅对应于包括指向性注视的部分的那些区域),可以节省客户端设备101的资源。

在各种实施方式中,嘴部/语音模块1153可以仅在以至少阈值概率检测到嘴部运动和/或检测到嘴部运动至少达到阈值持续时间时才确定嘴部运动的发生。例如,可以使用嘴部/语音模型1163中的序列至序列RNN模型对图像帧和音频数据帧的流进行处理,并且处理每一帧可以产生嘴部运动和(来自运动的嘴部的)语音活动同时发生的相对应概率(例如,其由于网络的循环性质而可以基于先前的帧)。嘴部/语音模块1153可以仅在(对应于阈值持续时间的)帧序列中的至少X%具有满足阈值的相对应概率的情况下才确定存在嘴部运动和语音活动的同时发生。附加和/或替选的机器学习模型和/或技术可以被用来检测嘴部运动和/或嘴部运动和语音活动的同时发生。

脸部辨识模块1154可以使用一个或多个脸部辨识机器学习模型1164来确定所辨识的脸部的出现和/或确定与所辨识的脸部相关联的账户标识符。如本文所描述的(例如,图2B),在一些实施方式中,脸部辨识模块1154可以基于使用上游检测和分类模型对视觉数据的人类和/或脸部区域的检测而仅对那些区域进行处理。进一步地,在一些附加或替选实施方式中,脸部辨识模块1154可以仅响应于注视模块1151检测到指向性注视的发生而处理视觉数据。例如,脸部辨识模块1154可以可选地处理仅与被注视模块1151确定为具有指向性注视的用户的人类和/或脸部区域相对应的视觉数据。通过使用脸部辨识模块1154进行仅选择性处理(例如,仅响应于注视模块1151检测到指向性注视的发生)和/或仅处理视觉数据的一定区域(例如,仅对应于包括指向性注视的部分的那些区域),可以节省客户端设备101的资源。

脸部辨识模块1154可选地可以使用一个或多个脸部辨识机器学习模型1164。例如,这样的机器学习模型例如可以是神经网络模型,诸如CNN模型和/或RNN模型。在各种实施方式中,使用脸部辨识机器学习模型1164对来自视觉捕获模块114的图像进行处理以生成一个或多个脸部嵌入映射(embedding),并且该脸部嵌入映射与向客户端设备101注册的一个或多个用户账户/简档的、在本地存储的嵌入映射进行比较。在一些实施方式中,调配引擎对一个或多个功能的调配可以取决于脸部辨识模块确定提供指向性注视的用户是所辨识的用户(例如,在自动化助手客户端110注册的用户)。在一些附加或替选实施方式中,与所辨识脸部相关联的账户标识符可以与基于独立于文本的讲话者识别所确定的账户标识符进行比较,所述独立于文本的讲话者识别是基于对捕获所说讲话的音频数据的处理。在那些实施方式的一些中,针对所说讲话的响应的处理和/或提供可以取决于指示相同账户标识符的比较。以这些和其它方式,可以验证该所说讲话是由同样提供了指向性注视的相同用户所提供的(因为可以对提供指向性注视的用户执行脸部辨识)。这可以防止无意中针对来自并非提供指向性注视的用户的用户(或其它来源)的所说讲话生成和/或提供响应。该独立于文本的讲话者识别可以由(本文所描述的)TI-SID模块142所执行,其可以在基于云的自动化助手组件130处实施,或者可选地在客户端设备101自身处实施。

语音活动模块1155可以使用一个或多个语音活动机器学习模块1165来确定语音活动的发生以及可选地语音活动的相对应置信度量度。语音活动模块1155可以使用机器学习模型对来自话音捕获模块112的音频数据进行处理以生成该音频数据包括人类话音的相对应概率。在一些实施方式中,机器学习模型1165包括基于训练示例进行训练的RNN,所述训练示例均包括作为训练示例输入的音频帧的相对应序列以及作为训练示例输出的指示该音频帧序列中是否包括人类话音的相对应标签。在一些实施方式中,语音活动模块1155可以仅响应于注视模块1151检测到指向性注视的发生和/或响应于来自调配引擎115的其它模块的其它确定和/或发生而处理音频数据。

其它模块1156可以可选地利用一个或多个其它机器学习模型1166来确定一个或多个其它属性的发生。作为一个非限制性示例,其它模块1156可以包括手势模块,其处理来自视觉模块114的视觉数据并且使用一个或多个手势模型来确定一个或多个手势的发生(例如,一个或多个预定义手势中的任一种)以及可选地手势的标签或其它标识符。在一些实施方式中,这样的手势模块可以基于使用上游检测和分类模型对视觉数据的人类和/或脸部区域的检测而仅对那些区域进行处理。进一步地,在一些附加或替选实施方式中,手势模块可以仅响应于注视模块1151检测到指向性注视的发生而处理视觉数据。例如,手势模块可以可选地处理仅与被注视模块1151确定为具有指向性注视的用户的人类和/或脸部区域相对应的视觉数据。通过使用手势模块进行仅选择性处理(例如,仅响应于注视模块1151检测到指向性注视的发生)和/或仅处理视觉数据的一定区域(例如,仅对应于包括指向性注视的部分的那些区域),可以节省客户端设备101的资源。

作为调配引擎115所进行的调配传感器数据处理的非限制性示例,在由调配引擎115的模块确定一个或多个属性的发生之前,客户端设备101处所捕获的视觉数据和/或音频数据可以被处理和/或仅本地地临时缓冲在客户端设备101处(即,并不传输至基于云的自动化助手组件130)。然而,响应于确定属性的发生和/或相对应的置信度量度,可以通过以下来对这样的处理进行调配:使得音频数据和/或视觉数据(例如,最近缓冲的数据和/或在该确定之后接收的数据)传输至基于云的自动化助手组件130以便进一步处理调配。因此,可以无需为了使得用户的所说讲话和/或用户的免接触手势得以被自动化助手120完全处理而由用户讲出明确的调用短语(例如,“OK Assistant”),并且响应内容由自动化助手120所生成并向用户进行渲染。

例如,不同于用户需要讲出“OK Assistant,what’s today’s

forecast(OK助手,今天的预报如何)”来获得今天的预报,作为替代用户可以:看着客户端设备101并且仅在看着客户端设备101的期间或者时间上接近地(例如,在之前和/或之后的时间阈值之内)讲出“what’s today’s forecast”。对应于该所说讲话“what’stoday’s”的数据(例如,捕获该所说讲话的音频数据,或者其文本或其它语义转换)可以响应于检测到该指向性注视以及一个或多个其它条件而被客户端设备101传送至基于云的自动化助手组件130。该其它条件例如包括指向性注视期间的(由讲出“what's today'sweather forecast(今天的天气预报如何)”的全部或部分所导致的)嘴部运动和语音活动的同时发生,并且可选地基于用户在指向性注视和/或讲话期间的距离。在另一个示例中,不同于用户需要讲出“OK Assistant,turn up the heat(OK助手,调高暖气)”从而经由连接的恒温器增加他/她家中的温度,作为替代用户可以:看着客户端设备101并且仅在看着客户端设备101的期间或者时间上接近地(例如,在之前和/或之后的时间阈值之内)讲出“turn up the heat”。在另一个示例中,不同于用户需要讲出“OK Assistant,open thegarage door(OK助手,打开车库门)”来打开他/她的车库,作为替代用户可以:看着客户端设备101并且仅在看着客户端设备101的期间或者时间上接近地(例如,在之前和/或之后的时间阈值之内)讲出“open the garage door”。

在一些实施方式中,话音捕获模块112可以进一步被配置为例如使用话音转文本(“STT”)处理技术而将所捕获到的音频转换为文本和/或其它表示或嵌入映射。进一步地,自动化助手客户端110的单独模块可以被配置为对话音表示执行本地自然语言处理,并且可选地在本地基于该自然语言处理而生成响应。在那些实施方式中,本地话音处理、本地自然语言处理和/或本地响应生成可以是由调配引擎115所调配的功能。例如,本地话音处理、本地自然语言处理和/或本地响应生成可以休眠直至调配引擎115确定一个或多个属性发生。然而,由于客户端设备101可能在计算资源(例如,处理器周期、存储器、电池等)方面相对受限,所以其它话音输入可以被发送至基于云的自动化助手组件130,所述基于云的自动化助手组件130可以包括基于云的STT模块132。

基于云的STT模块132可以被配置为利用云端几乎无限的资源而将话音捕获模块112所捕获的音频数据转换为文本,所述文本随后可以被提供至自然语言理解模块135。在一些实施方式中,基于云的STT模块132可以将话音的音频记录转换为一个或多个音素,并且随后将该一个或多个音素转换为文本。除此之外或替选地,在一些实施方式中,STT模块132可以采用状态解码图。在一些实施方式中,STT模块132可以生成用户讲话的多种候选文本解释,并且利用一个或多个技术从该候选中选择给定解释。

基于云的TTS模块131可以被配置为利用云端几乎无限的资源而将文本数据(例如,自动化助手所规划的自然语言响应)转换为计算机生成的话音输出。在一些实施方式中,TTS模块可以将该计算机生成的话音输出提供至客户端设备101以便例如使用一个或多个扬声器直接输出。在其它实施方式中,自动化助手120所生成的文本数据(例如,自然语言响应)可以被提供至客户端设备101,并且客户端设备101的本地TTS模块随后可以将该文本数据转换为在本地输出的计算机生成的话音。

自动化助手120(例如,基于云的自动化助手组件130)可以包括意图理解模块135、上述TTS模块131和上述STT模块132,以及在本文更详细描述的其它组件。在一些实施方式中,所述模块和/或自动化助手120的模块中的一个或多个可以被省略、组合,和/或在与自动化助手120分离的组件中实施。在一些实施方式中,自动化助手120的组件中的一个或多个——诸如意图理解模块135、TTS模块131、STT模块132等——可以至少部分在客户端设备101上实施(例如,与基于云的实施方式组合或者不包括基于云的实施方式)。

意图理解模块135的自然语言处理器133处理用户经由客户端设备101所生成的自然语言输入,并且可以生成带注释输出(例如,以文本形式)以便由自动化助手120的一个或多个其它组件所使用。例如,自然语言处理器133可以处理由用户经由客户端设备101的一个或多个用户接口输入设备所生成的自然语言的自由形式输入。所生成的带注释输出包括该自然语言输入的一个或多个注释以及该自然语言输入的词项中的一个或多个(例如,全部)。

在一些实施方式中,自然语言处理器133被配置为识别并注释自然语言输入中的各种类型的语法信息。例如,自然语言处理器133可以包括形态学模块,其可以将个体词拆分为词素和/或注释该词素,例如利用它们的类别。自然语言处理器133还可以包括被配置为利用它们的语法角色来注释词项的词性标记器。而且,例如在一些实施方式中,除此之外和/或替选地,自然语言处理器133可以包括依存句法剖析器(未绘出),其被配置为确定自然语言诸如中的词项之间的句法关系。

在一些实施方式中,除此之外和/或替选地,自然语言处理器133可以包括实体标记器(未绘出),其被配置为注释一个或多个分段中的实体引用,诸如对人(例如,包括文学角色、名人、公众人物等)、组织、位置(真实的和虚构的)等的引用。在一些实施方式中,除此之外和/或替选地,自然语言处理器133包括共指关系解析器(未绘出),其被配置为基于一个或多个上下文线索来将对相同实体的引用分组或“聚类”。在一些实施方式中,自然语言处理器133的一个或多个组件可以依赖于来自自然语言处理器133的一个或多个其它组件的注释。

意图理解模块135还可以包括意图匹配器134,其被配置为确定与自动化助手120进行交互的用户的意图。虽然与图1中的自然语言处理器133分开描绘,但是在其它实施方式中,意图匹配器134可以是自然语言处理器133(或者更一般地,包括自然语言处理器133的管线)的组成部分。在一些实施方式中,自然语言处理器133和意图匹配器134可以共同形成上述意图理解模块135。

意图匹配器134可以使用各种技术来确定用户的意图,例如基于来自自然语言处理器133的输出(其可以包括自然语言输入的注释和词项),基于客户端设备101的触摸敏感显示器处的用户触摸输入,和/或基于在视觉数据中检测到的免接触手势和/或其它视觉线索。在一些实施方式中,意图匹配器134可以访问一个或多个数据库(未绘出),所述数据库例如包括语法和响应性动作(或者更一般地,意图)、视觉线索和响应性动作和/或触摸输入和响应性动作之间的多个映射。例如,映射中所包括的语法可以随时间推移而被选择和/或学习,并且可以表示用户的常见意图。例如,一个语法“play(播放<艺术家>)”可以映射至调用使得的音乐在用户所操作的客户端设备101上被播放的响应性动作的意图。另一个语法“[weather|forecast]today([天气|预报]今天)”可以能够匹配至诸如“what's the weather today”和“what's the forecast for today?”的用户查询。作为另一个示例,视觉线索到动作的映射可以包括可应用于多个用户(例如,所有用户)的“一般”映射和/或用户专有映射。视觉线索到动作的映射的一些示例包括针对手势的映射。例如,“挥手”手势可以被映射至使得定制内容(针对提供该手势的用户所定制)向用户进行渲染的动作,“竖起拇指”手势可以被映射至“播放音乐”动作;并且“击掌”手势可以被映射至所要执行的自动化助手动作的“例程”,诸如启动智能咖啡机、启动一定智能灯以及以可听方式渲染新闻概述。如本文所描述的,一些手势至动作的映射可以针对给定手势而包括与之映射的多个动作。在那些实施方式的一些中,意图匹配器134可以至少部分基于客户端设备101在给定手势的时间所渲染的内容而针对该给定手势选择该多个动作之一。

除了语法之外或者作为其替代,在一些实施方式中,意图匹配器134可以单独采用一个或多个经训练的机器学习模型,或者采用一个或多个经训练的机器学习模型与一个或多个语法、视觉线索和/或触摸输入的组合。这些经训练的机器学习模型也可以被存储在一个或多个数据库中,并且可以被训练以识别意图,例如通过将指示用户讲话和/或任何所检测到的用户所提供视觉线索的数据嵌入到降维空间中,并且例如使用诸如欧氏距离、余弦相似度等的技术随后确定哪些其它嵌入映射(以及因此的意图)最为接近。

如在上文的“play”示例中所看到的,一些语法具有可以填充以槽值(或“参数”)的槽位(例如)。槽值可以以各种方式来确定。用户经常将会前摄性地提供槽值。例如,对于语法“Order me apizza(为我预定一个<配料>披萨)”,用户可能会讲出短语“order me a sausage pizza(为我预定一个香肠披萨)”,在这种情况下槽位被自动填充。除此之外或替选地,如果用户调用了包括要利用槽值填充的槽位的语法,而用户并未前摄性地提供该槽值,则自动助手120可以从用户征求那些槽值(例如,“what type of crust do you want on your pizza?(您的披萨上想要哪种外皮?)”)在一些实施方式中,槽位可以基于视觉线索而被填充以槽值,所述视觉线索基于视觉组件107所捕获的视觉数据而被检测。例如,用户可以在向客户端设备101的视觉组件107竖起三根手指的同时讲出类似“Order me this many cat bowls(为我订购这么多猫碗)”的话。或者,用户可以在拿起特定电影的DVD盒子的同时讲出类似“Find me more movies like this(为我找出更多这样的电影)”的话。

在一些实施方式中,自动化助手120可以促进(或者“协调(broker)”)用户和代理体(agent)之间的事务,所述代理体可以是接收输入并提供响应性输出的独立软件过程。一些代理体可以采用第三方应用的形式,所述第三方应用可能在或不在与那些例如操作基于云的自动化助手组件130的计算系统分离的计算系统上操作。可能被意图匹配器134所识别的一种用户意图是想要接涉第三方应用。例如,自动化助手120可以提供针对披萨送货服务的应用编程接口(API)的访问。用户可以调用自动化助手120并且提供诸如“I'd like toorder a pizza(我想要订披萨)”之类的命令。意图匹配器134可以将该命令映射至触发自动化助手120与第三方披萨送货服务接涉的语法。该第三方披萨送货服务可以向自动化助手120提供为了实现披萨送货订购所需填充的最小槽位列表。自动化助手120可以生成征求槽位的参数的自然语言输出并且将其(经由客户端设备101)提供给用户。

实行模块138可以被配置为接收意图匹配器134所输出的预测/估计意图,以及相关联的槽值(由用户前摄性提供或者从用户所征求)并且实行(或“解决”)该意图。在各种实施方式中,用户意图的实行(或“解决”)会导致各种实行信息(也被称作“响应性”信息或数据)得以例如被实行模块138所生成/获得。

实行信息可以采用各种形式,因为意图可以以各种方式被实行。假定用户请求单纯的信息,诸如“Where were the outdoor shots of'The Shining'filmed?‘闪灵’的户外取景地在哪里?”。用户的该意图例如可以被意图匹配器134确定为搜索查询。该搜索查询的意图和内容可以被提供至实行模块138,如图1中所描绘的,所述实行模块138可以与被配置为向文档语料库和/或其它数据源(例如,知识图等)搜索响应性信息的一个或多个搜索模块150进行通信。实行模块138可以将指示搜索查询的数据(例如,查询的文本、降维嵌入映射等)提供至搜索模块150。搜索模块150可以提供响应性信息,诸如GPS坐标或其它更加明确的信息,诸如“Timerline Lodge,Mt.Hood,Oregon”。该响应性信息可以形成实行模块138所生成的实行信息的一部分。

除此之外或替选地,实行模块138可以被配置为例如从意图理解模块135接收用户的意图以及用户所提供或使用其它手段确定的任何槽值(例如,用户的GPS坐标、用户偏好等),并且触发响应性动作。响应性动作例如可以包括订购商品/服务、对计时器定时、设定提醒、发起电话呼叫、播放媒体、发送消息、发起多个动作的例程,等等。在一些这样的实施方式中,实行信息可以包括与实行相关联的槽值、确认响应(其在一些情况下可以从预定响应中选择),等等。

除此之外或替选地,实行模块138可以被配置为推断用户的意图(例如,基于每日时间、过往交互等)并且获得针对那些意图的响应性信息。例如,实行模块138可以被配置为获取针对用户的每日日历概要、针对用户的天气预报和/或针对用户的其它内容。实行模块138可以进一步使得这样的内容被“推送”以便向用户进行图形和/或可听渲染。例如,这样的内容的渲染可以是响应于调配引擎115检测到指向性注视和/或一个或多个其它属性的发生而进行的调配。

自然语言生成器136可以被配置为基于从各种来源所获得的数据而生成和/或选择自然语言输出(例如,被设计以模仿人类话音的词/短语)。在一些实施方式中,自然语言生成器136可以被配置为接收作为输入的与意图的实行相关联的实行信息,并且基于该实行信息生成自然语言输出。除此之外或替选地,自然语言生成器136可以从诸如第三方应用的其它来源接收信息,自然语言生成器136可以使用所述信息来编纂自然语言输出和/或其它内容以便经由自动化助手客户端110向用户渲染。

语义过滤模块140可以确定所说讲话和/或所检测手势是否意图针对助手120。实行模块138可以在确定是否响应于用户输入而生成和/或提供响应时利用来自语义过滤模块140的输出。例如,语义过滤模块140可以提供置信度量度,其指示所说讲话和/或所检测手势意图针对助手120的可能性,并且实行模块138可以基于来自语义过滤模块140的置信度量度来确定是否生成和/或提供响应。来自语义过滤模块140的置信度量度可选地可以结合一个或多个其它置信度量度被考虑,诸如来自调配引擎115和/或TI-SID模块142的量度。虽然语义过滤模块140在图1中被图示为由基于云的自动化助手组件130所实施,但是在各种实施方式中,除此之外或替选地,其可以被实施为调配引擎115的模块之一,并且在确定是否调配一个或多个助手功能时被加以利用。

在一些实施方式中,语义过滤模块140在确定所说讲话和/或所检测手势是否意图针对助手120利用了一个或多个语义机器学习模型141。在那些实施方式的一些中,语义机器学习模型141在确定所说讲话和/或所检测手势意图针对助手120的置信度量度时可以处理对应于所说讲话的音频数据、来自STT模块132的文本输出和/或来自意图理解模块135的输出。语义机器学习模型141可以使用有监督或半监督训练示例进行训练。例如,用户向自动化助手讲话的实例可以利用第一标签(例如,“1”)进行标记,并且用户向其它人讲话的实例可以利用第二标签(例如,“0”)进行标记。通常,对于具有针对助手输入而言非典型的(或非常的(non-occurring))相对应文本和/或NLU输出的所说讲话,置信度量度应当为低。例如,如果该文本并不符合针对助手输入的任何模式,则置信度量度应当为低。除此之外或替选地,如果NLU输出将不会导致助手响应,或者导致“忽略(punt)”响应或仅仅“个性(personality)”响应,则置信度量度应当为低。此外,音频数据自身可以指示输入是否意图作为助手输入,因为用户在对助手设备讲话时(与在对另一人讲话时的那些语音属性相比)经常利用不同的语音属性(例如,语调变化、语气、抑扬顿挫)来讲话。

TI-SID模块142使用TI-SID机器学习模型143处理包含所说讲话的音频数据,以确定所说讲话是否来自所辨识语音和/或用于确定与所辨识语音相关联的账户标识符。这样的辨识是“独立于文本的”,因为其可以对各种语音输入来执行,而并非仅局限于一定语音输入——诸如包括热词的那些语音输入。在一些实施方式中,TI-SID模块142确定与所辨识语音相关联的账户标识符,并且将其与脸部辨识模块1154所确定的账户标识符进行比较。在那些实施方式的一些中,TI-SID模块142提供该账户标识符对于脸部和语音辨识是否相同的指示,并且在它们并不匹配的情况下防止和/或中止响应的一定处理和/或提供。例如,TI-SID模块142可以在它们不匹配的情况下防止实行模块138生成和/或提供响应。以这些和其它方式,可以验证所说讲话是由同样提供了指向性注视的相同用户所提供(因为可以对提供指向性注视的用户执行脸部辨识)。这可以防止不经意地针对来自并非提供指向性注视的用户的用户(或其它来源)的所说讲话而生成和/或提供响应。虽然在图1中被图示为在基于云的自动化助手组件130处实施,但是TI-SID模块142可选地可以作为调配引擎115的一部分而在客户端设备101处实施,并且在确定是否调配一个或多个助手功能时被加以利用。

现在参考图2A和2B,描绘了依据各种实施方式的例示本公开各个方面的示例处理流程。

首先转向图2A,视觉捕获模块114将视觉帧提供至注视模块1151、距离模块1152、脸部辨识模块1154、嘴部/语音模块1152和其它模块1156。在一些实施方式中,视觉捕获模块114向那些模块中的一个或多个提供视觉帧的实时流。在一些附加或替选实施方式中,视觉捕获模块114响应于来自单独的存在传感器105的、指示有人存在于具有客户端设备101的环境之中的信号而开始向至少一些模块提供视觉帧。在那些实施方式的一些中,视觉帧最初仅被提供至注视模块1151和/或其它模块,随后仅响应于注视模块1151确定指向性注视的发生才被提供至附加模块。

话音捕获模块112将音频数据提供至语音活动模块1144、嘴部/语音模块1153和其它模块1156。在一些实施方式中,话音捕获模块112向那些模块中的一个或多个提供音频数据的实时流。在一些附加或替选实施方式中,话音捕获模块112响应于来自单独的存在传感器105的指示有人存在于具有客户端设备101的环境之中的信号而开始向至少一些模块提供视觉帧。在一些附加或替选实施方式中,音频数据仅响应于注视模块1151确定指向性注视的发生才被提供至各个块。

模块1151-1156中的每一个至少部分基于该视觉帧和/或音频数据并且可选地利用一个或多个相对应模型(图2A中为了简明而并未图示)而确定相对应的属性是否发生和/或相对应的置信度量度。该相对应的属性和/或置信度量度被提供至调配引擎115以确定一个或多个调配201是否应当进行。如本文所描述的,调配引擎115可以响应于仅针对一些属性的发生和/或置信度量度而发起一些调配,并且响应于针对附加属性的发生和/或置信度量度(可选地连同其它属性的持续发生一起)而发起其它调配。例如,调配引擎115可以使得第一人类可感知提示仅响应于指向性注视而被渲染。而且,例如,调配引擎115可以响应于指向性注视的持续检测以及基于距离、嘴部运动和语音活动的同时发生和/或语音活动的发生而使得另一个人类可感知提示得以被渲染和/或进行传感器数据的一定处理和/或传输。

在一些实施方式中以及如图2B中所示,上游的检测和分类模块1157可选地可以作为调配引擎115的一部分在客户端设备101上被提供。检测和分类模块1157可以处理来自视觉捕获模块114的视觉帧,利用一个或多个检测和分类模块1167来确定那些视觉帧的一个或多个区域,该一个或多个检测和分类模块1167将每个视觉帧的各个区域进行对应分类。例如,检测和分类模块1157可以对每个视觉帧中对应于人类的人类区域(如果有)进行分类,并且针对每个视觉帧将这样的人类区域或者这样的人类区域的指示提供至模块1151-1154中的一个或多个。而且,例如,检测和分类模块1157可以对每个视觉帧中对应于多个脸部区域的区域(如果有)进行分类,并且针对每个视觉帧将这样的脸部区域或者这样的脸部区域的指示提供至模块1151-1154中的一个或多个。而且,例如,检测和分类模块1157可以对每个视觉帧中对应于人类的眼睛区域的区域(如果有)进行分类,并且针对每个视觉帧将这样的眼睛区域或者这样的眼睛区域的指示提供至模块1151-1154中的一个或多个。进一步地,检测和分类模块1157可选地可以仅针对被检测为提供指向性注视(如由注视模块1151所确定的)的人提供这样的区域。

作为一个示例,注视模块1151可以利用所提供的区域仅对每个视觉帧的相对应部分进行处理。例如,注视模块1151可以“裁切”视觉帧并重定大小以便仅对包括人类区域或脸部区域或眼睛区域的那些部分进行处理。在那些实施方式中的一些中,注视机器学习模型1161可以基于“被裁切”的视觉帧被训练,并且重定大小可以是定为符合这样的模型的输入尺寸的大小。在一些附加或替选实施方式中,注视模块1151可以利用所提供的区域来一起跳过对一些视觉帧(例如,被指示为并不包括人和/或脸部区域的那些)处理。在再其它的实施方式中,注视模块1151可以利用所提供的区域作为注意力机制(例如,作为针对注视机器学习模型1161的单独注意力输入)来聚焦每个视觉帧的处理。

作为另一个示例,距离模块1152可以利用眼睛区域的指示来有效率地确定那些眼睛区域之间的距离,以用于估计相对应用户的距离。如本文所描述的,所提供的眼睛区域可选地可以仅针对如注视模块1151所确定的提供了指向性注视的用户来提供。

作为又另一个示例,嘴部/语音模块1153可以利用所提供的区域仅对每个视觉帧的相对应部分进行处理。例如,嘴部模块1153可以“裁切”视觉帧并重定其大小以仅对包括人类区域或脸部区域或嘴部区域的那些部分进行处理。在那些实施方式的一些中,嘴部/语音模块机器学习模型1163可以基于“被裁切”的视觉帧被训练,并且重定大小可以是定为符合这样的模型的输入尺寸的大小。在一些附加或替选实施方式中,嘴部/语音模块1153可以利用所提供的区域来一起跳过对一些视觉帧(例如,被指示为并不包括人和/或脸部区域的那些)处理。在再其它的实施方式中,嘴部/语音模块1153可以利用所提供的区域作为注意力机制(例如,作为针对注视机器学习模型1161的单独注意力输入)来聚焦每个视觉帧的处理。

在一些实施方式中,除此之外或替选地,检测和分类模型1157向其它条件模块1156(图2B中为了简明而并未图示)提供一定区域的指示以便由其它条件模块1156所使用。例如,在手势的检测是用于调配自动化助手的附加条件时,手势模块可以在利用相对应的手势机器学习模型检测手势时使用身体区域。而且,例如,在确定是否调配自动化助手功能时可以考虑用户的身体相对于助手设备的姿态。在那些实施方式的一些中,身体区域可以在通过使用一个或多个姿态确定技术处理这样的身体区域来确定身体的姿态时被加以利用。

在一些实施方式中,除此之外或替选地,检测和分类模型1157可以向模块1151-1154中的一个或多个提供被分类为电视或其它视频显示源的区域的指示。在那些实施方式的一些中,模块可以将那些区域从所处理的视觉帧中裁切出去,将注意力远离那些区域,和/或以其它方式在检测中忽略那些区域或者减少检测将以这样的区域为基础的机会。以这些和其它方式,可以缓解自动化助手的误报性调配。

图3描绘了图1的客户端设备101、显示器103和视觉组件107的示例。在图3中,示例客户端设备被表示为101A、示例显示器103被表示为103A,并且示例视觉组件107被表示为107A。客户端设备101可以进一步包括扬声器和麦克风。图3还描绘了提供指向相机107A的注视的用户301。图3还描绘了相机107A在用户提供指向性注视时所捕获的示例图像360。可以看出,该用户以及该用户身后(因此在图3的透视图中看不到)的电视机在图像360中被捕获。

在图像360中,边界框362被提供并且表示该图像中可以(例如,由图2B的检测和分类模块1157)确定为对应于脸部的区域。在一些实施方式中,在客户端设备101A上操作的调配引擎115的一个或多个模块可以在检测注视、距离、嘴部和语音活动的同时发生时和/或执行脸部辨识时,基于该图像中的边界框362的部分被指示为对应于脸部的部分而仅处理该部分(或者将注意力集中于该部分)。虽然图3中仅描绘了单个图像,但是在各种实施方式中,确定各种属性的发生可以如本文所描述基于图像序列。

在图像360中,还提供了边界框363并且表示该图像中可以被确定为对应于视频显示器且可能出现视觉线索的误报的区域。例如,电视机可能渲染表现一个或多个个体在谈话、看向相机等的视频,其中任何一个都可能被错误解释为嘴部活动和/或指向性注视的发生。在一些实施方式中,图2B的检测和分类模块1157可以确定这样的区域(例如,基于检测电视分类)和/或这样的区域可以基于对图像360和在前图像的分析而被确定,所述分析用于确定该区域具有对应于视频显示器的显示频率的显示频率(例如,大约60Hz、120Hz和/或其它典型的视频显示频率)。在一些实施方式中,一个或多个模块可以将该区域从所处理的视频帧中裁切出去,将注意力远离那些区域,和/或以其它方式在检测中忽略那些区域或者减少检测将以这样的区域为基础的机会。以这些和其它方式,可以缓解自动化助手的误报性调配。

图3B1、3B2和3B1提供了可视觉感知提示的示例,它们均可以响应于确定相对应属性的发生和/或置信度而被提供。图3B1、3B2和3B1的可视觉感知提示是能够由调配引擎115单独地或者与诸如音频和/或视觉数据处理和/或传输之类的其它调配相结合地发起的调配的一个非限制性示例。

在图3B1中,第一视觉可感知提示由显示器103A所渲染并且由阴影171A指示。该视觉可感知提示可以是围绕显示器103A外围的白色(或其它颜色)发光,并且可选地可以连同显示器103A所渲染的其它内容(例如,周边图片、天气预报、即将到来的事件,等等)一起显示。在一些实施方式中,第一视觉可感知提示被使得由调配引擎115响应于注视模块1151检测到用户301的指向性注视所渲染。该第一视觉可感知提示可以(直接或间接)通知用户301已经检测到指向性注视并且可以进行一定传感器数据的进一步处理。如果用户301并不想进行进一步处理,则该用户可以重新定向他/她的注视,这将使得注视模块1151不再检测到注视,并且作为结果,调配引擎115停止第一视觉可感知提示的渲染。

在图3B2中,第二视觉可感知提示由显示器103A所渲染并且由阴影171B指示。该第二视觉可感知提示可以是跨显示器103A的一部分水平渲染的白色(或其它颜色)发光,并且可选地可以在显示器103A所渲染的其它内容的之上渲染。可选地,该第二视觉可感知提示可以是部分透明的从而使得能够继续观看到显示器103A所渲染的其它内容。在一些实施方式中,该第二视觉可感知提示被使得由调配引擎115响应于注视模块1151继续检测到用户301的指向性注视并且可选地基于确定附加属性的发生和/或置信度量度所渲染,诸如用户处于助手设备101A的阈值距离之内(例如,处于4英尺之内,或者如基于图像分析所估计的其它阈值)、语音活动的存在和/或嘴部运动和语音活动的同时发生。该第二视觉可感知提示可以(直接或间接)通知用户301已经检测到语音活动并且可以进行一定传感器数据的进一步处理。该第二视觉可感知提示可以在诸如视觉和/或传感器数据的一定处理和/或视觉和/或传感器数据的传输之类的进一步调配之前被渲染。如果用户301并不想进行进一步处理,则该用户可以重新定向他/她的注视,这将使得注视模块1151不再检测到注视,并且作为结果,调配引擎115停止该第二视觉可感知提示的渲染。可选地,条栏的宽度、条栏的颜色、条栏的亮度和/或条栏的其它特性可以取决于附加属性的数量和/或它们的置信度量度的量级,从而向用户指示所确定的该用户意图与助手交互的置信度程度以及相对应的可以进行进一步处理的置信度程度。

在图3B3中,第三视觉可感知提示由显示器103A所渲染并且由阴影171C指示。该第三视觉可感知提示可以是跨显示器103A的一部分渲染的多色(或其它颜色)弧形,并且可选地可以在显示器103A所渲染的其它内容之上渲染。可选地,该第三视觉可感知提示可以是部分透明的从而使得能够继续观看到显示器103A所渲染的其它内容。在一些实施方式中,调配引擎115使得该第三视觉可感知提示响应于指向性注视的持续检测以及检测到语音活动的结束(例如,通过助手设备101A本地的结束点检测)和/或其它条件而被渲染。该第三视觉可感知提示可以(直接或间接)通知用户正在进行一定传感器数据的进一步处理(但是可选地仍然可以被中止)。这样的进一步处理可以包括音频数据的话音转文本处理、所转换文本的自然语言理解、基于视觉数据的处理的手势辨识,和/或基于自然语言理解和/或手势辨识的实行。除此之外或替选地,这样的进一步处理可以包括用于确认另外的传感器数据中包括的任何讲话和/或手势意图用于自动化助手并且应当被实行的附加处理。

图4、5和6均图示出流程图,所述流程图图示了根据本文所公开实施方式的可以被执行的示例方法。虽然被图示为单独的流程图,但是所要理解的是,单个自动化助手可以执行这些方法中的多个(例如,全部)。为了方便,图4-6的流程图中的操作参考执行该操作的系统来描述。该系统可以包括各种计算机系统的各种组件,诸如实施自动化助手120的计算机系统(例如,客户端设备和/或远程计算系统)的一个或多个组件。此外,虽然方法的操作是以特定顺序被示出,但是这并不意味着限制。一个或多个操作可以被重新排序、省略或增加。

首先转向图4的方法400,在框402,该系统接收基于来自视觉组件的输出的视觉数据以及基于来自麦克风的输出的音频数据。在一些实施方式中,视觉组件和/或麦克风可以与包括助手客户端的客户端设备(在本文也称作“助手设备”)整合。在一些实施方式中,视觉组件和/或麦克风可以与该客户端设备分离但是与之通信。例如,视觉组件可以包括独立的智能相机,其与包括助手客户端的客户端设备进行有线和/或无线通信。

在框404,该系统处理视觉数据和/或音频数据以确定各种属性的发生和/或置信度。框404的处理可以对视觉数据和/或音频数据的多个帧进行,诸如对视觉数据的流和音频数据的流进行。在一些实施方式中,框404的处理可以响应于来自存在传感器的指示人存在的输出而被发起。在各种实施方式中,各种单独模块执行单独的处理,每一个确定相对应的属性是否已经发生和/或相对应属性的置信度量度。单独模块中的一个或多个均可以在处理中利用相对应的经训练的机器学习模型。模块的非限制示例是图1的模块1151-1156中的一个或多个。如本文所描述的,单独模块中的一个或多个可以与其它模块并行执行处理。还如本文所描述的,单独模块中的一个或多个的处理的发起可选地可以取决于一个或多个其它模块首先确定属性(例如,指向性注视)的发生。

框406和/或框410可以在框404的处理期间(例如,与之并行地)被执行,并且均依赖于在这样的处理期间所确定的属性和/或置信度量度。

在框406,该系统基于在框404的处理期间所作出的确定而确定是否调配用户接口输出。如果否,则该系统并不调配用户接口输出,而是继续执行框406。如果是,则该系统继续进行至框408并且调配用户接口输出,但是可选地继续执行框406以确定是否进一步调配用户接口输出。

作为框406的一个示例,该系统可以确定最初响应于框404的处理指示指向性注视的发生而调配用户接口输出。例如,在框408,该系统可以渲染第一人类可感知提示。继续该示例,该系统可以继续执行框406。如果框404的继续处理指示指向性注视不再发生,则该系统可以继续进行至框408并且移除第一人类可感知提示(并且不渲染任何其它的人类可感知提示)。在另一方面,如果框404的继续处理指示指向性注视持续并且还指示一个或多个其它属性发生,则该系统可以继续进行至框408并且提供第二人类可感知提示。

作为框408的一个示例,该系统可以响应于框404的处理指示指向性注视的发生,基于框404的处理所指示的用户的距离和/或可选地基于一个或多个其它条件而发起对音频数据和/或视觉数据的一定之前休眠的本地处理。这样的条件例如可以包括:框404的处理指示语音活动、嘴部运动和语音活动的同时发生,和/或指示语音活动的结束点。作为框408的另一个示例,该系统可以响应于框404的处理指示指向性注视的发生并且基于框404的处理所指示的用户的距离而确定向远程助手组件传送音频数据和/或视觉数据。

框402、404、406、408和/或410可选地可以继续进行直至一个或多个条件被满足。这样的条件例如可以包括:不再检测到人类存在,方法400基于请求停止的用户输入而停止,和/或其它条件。

现在转向图5,另一示例方法500被图示并且是方法400的一个特定实施方式。

在框502,该系统接收基于来自视觉组件的输出的视觉数据,以及基于来自麦克风的输出的音频数据。框502可以与图4的框402共享一个或多个方面。

在框504,该系统处理该视觉数据和/或音频数据以确定各种属性的发生和/或置信度。框504的处理可以在视觉数据和/或音频数据的多个帧上进行,诸如在视觉数据的流和音频数据的流上进行。在一些实施方式中,框504的处理可以响应于来自存在传感器的输出指示人类存在而被发起。框504的处理可以与图4的框404共享一个或多个方面。

框506、508和/或510可以在框504的处理期间(例如,与之并行地)被执行,并且均依赖于在这样的处理期间所确定的属性和/或置信度量度。

在框506,该系统基于框504的处理而确定是否已经确定了指向性注视的发生(例如,至少具有阈值置信度量度)。如果是,则该系统继续进行至框510,并且还可选地在框508渲染第一人类可感知提示。如果否,则该系统继续执行框506。

在框510,该系统确定指向性注视是否持续,以及一个或多个其它属性是否发生。例如,该其它属性可以包括:(提供该指向性注视的)用户处于助手设备的阈值距离之内,确定语音活动的发生,和/或确定语音活动和(提供该指向性注视的用户的)嘴部运动的同时发生。在一些实施方式中,在框510,该系统在该指向性注视持续并且其它属性中的一个或多个满足一定约束(例如,距离满足阈值(或至少基于距离的量级)和/或语音活动和/或语音活动和嘴部运动的同时发生具有至少阈值的置信度量度)的情况下继续进行至“是”。

如果框510的决策为“否”,则该系统返回至框506。如果框510的决策为“是”,则该系统继续进行至框518或框514,并且可选地还在框512渲染第二人类可感知提示。如果该系统在框510处的“是”确定之后继续进行至框518,则该系统可以执行视觉数据和/或音频数据的进一步本地处理(即,相对于已经在框504执行的处理的进一步处理),和/或可以将该视觉数据和/或音频数据(和/或在本地确定的其转换——诸如从音频数据转换的文本)传送至远程自动化助手组件以便进一步处理。

如果该系统在框510处的“是”确定之后继续进行至框514,则该系统在框514等待指示用户输入的完成的本地结束点。例如,该结束点可以基于音频数据的分析并且可以指示当前的口头输入完成。作为另一个示例,除此之外或替选地,该结束点可以基于视觉数据的分析并且可以指示当前手势输入完成。在作出这样的结束点确定时可以利用各种结束点技术。如果本地结束点指示当前用户输入完成,则系统可以继续进行至框516并且渲染第三可感知提示和/或可以继续进行至框518。如果从框514继续进行至框518,则该系统可以执行视觉数据和/或音频数据的进一步本地处理,和/或可以将该视觉数据和/或音频数据传送至远程自动化助理组件以便进一步处理。例如,如果该系统在框510的“是”确定之后并未继续进行至框518并且在框518传送视觉数据和/或音频数据,则该系统可以在框514的“是”确定之后继续进行至框518并且传送视觉数据和/或音频数据。而且,例如,如果该系统在框510的“是”确定之后并未继续进行至框518,而是仅执行视觉数据和/或音频数据的进一步本地处理,则该系统可以在框514的“是”确定之后继续进行至框518并且传送视觉数据和/或音频数据。

在可选框520,该系统在确定是否针对视觉数据和/或音频数据中捕获的口头输入和/或手势输入提供响应时执行进一步的处理。在一些实施方式中,框520可以在远程自动化助手组件处实施,而方法500的其它框可以由自动化助手客户端在助手设备本地执行。该进一步处理例如可以包括:本文所描述的语义过滤和/或确定独立于文本的讲话者识别是否指示口头输入与提供指向性注视的用户的脸部辨识所指示的用户相匹配。例如,如果语义过滤指示该输入可能并非意图针对自动化助手,和/或如果TI-SID指示该口头输入与脸部辨识所指示的用户并不匹配,则响应生成可以被中止和/或防止响应被传送至客户端设备和/或由其所渲染。

现在转向图6的方法600,在框602,该系统接收基于来自视觉组件的输出的视觉数据,所述视觉组件诸如与助手设备整合的视觉组件。

在框604,该系统处理该视觉数据以确定用户的指向性注视和/或用户的免接触手势的发生和/或置信度。框604的处理可以在视觉数据的多个帧上进行,诸如对视觉数据的流进行。在一些实施方式中,框604的处理可以响应于来自存在传感器的指示人类存在的输出而被发起。

框606和/或框610可以在框604的处理的期间(例如,与之并行地)被执行,并且均依赖于框604的处理。

在框606,该系统确定是否已经基于对框604的视觉数据的处理而确定了用户的指向性注视的发生。如果否,则该系统继续执行框606。如果是,则该系统继续进行至框610,并且可选地在框608调配用户接口输出(例如,渲染人类可感知提示)。

在框610,该系统确定是否已经基于对框604的视觉数据的处理而确定了用户(提供指向性注视的同一用户)的手势,并且确定该手势的标签或其它标识符。在一些实施方式中,在确定是否发生指向性注视时以及在确定是否已经确定了手势时,可以在框604执行单独的处理。如果框610处的确定结果为“否”,则该系统返回至框606,确定指向性注视是否继续(并且可选地还确定是否继续框608的用户接口输出调配)。

如果框610处的确定结果为“是”,则该系统继续进行至框612并且基于该手势以及可选地基于客户端设备在该手势的时候所渲染的内容而生成响应。在一些实施方式中,为了进行至框612,该系统还基于框604对视觉数据的处理而确定(提供指向性注视和手势的)用户的距离满足阈值。

在一些实施方式中,框612包括确定该手势被指派给多个响应性动作。例如,手势至动作映射可以指示该手势被指派给多个候选响应性动作。在那些实施方式中,框612进一步包括基于客户端设备在该手势的时候所渲染的内容而从该多个响应性动作中选择单个响应性动作,并且生成响应以使得所选择的单个响应性动作被执行。例如,左划(即,将手水平向左移动)手势可以被指派给“下一轨”动作和“降低智能恒温器温度”动作,并且这两个动作中的哪一个被选择可以基于正在渲染的内容。例如,在渲染音频内容时可以选择“下一轨”动作,而在并未渲染音频或音视觉内容并且正渲染恒温器控件(例如,响应于之前所说出的讲话“what is the current thermostat temperature(当前的恒温器温度怎样)”)时则可以选择“降低智能恒温器温度”动作。

在框614,该系统随后实施该响应。这可以包括与一个或多个第三方系统对接(例如,以便实施“降低智能恒温器温度”动作和/或“下一轨”动作)和/或控制助手设备(例如,从而实施“降低音量”动作)。

图7是示例计算设备710的框图,所述计算设备710可选地可以被用来执行本文所描述技术的一个或多个方面。在一些实施方式中,客户端设备、基于云的自动化助手组件和/或其它组件中的一个或多个可以包括示例计算设备710的一个或多个组件。

计算设备710通常包括至少一个处理器714,其经由总线子系统712与多个外围设备进行通信。这些外围设备可以包括存储子系统724—例如包括存储器子系统725和文件存储子系统726、用户接口输出设备720、用户接口输入设备722和网络接口子系统716。输入和输出设备允许用户与计算设备710进行交互。网络接口子系统716提供了与外部网络的接口并且耦合至其它计算设备中相对应的接口设备。

用户接口输入设备722可以包括键盘,指示设备—诸如鼠标、轨迹球、触摸板或图形板,扫描仪,整合到显示器中的触摸屏,音频输入设备—诸如语音识别系统、麦克风,和/或其它类型的输入设备。通常,使用术语“输入设备”意图包括向计算设备710中或者计算机网络上输入信息的所有可能类型的设备和方式。

用户接口输出设备720可以包括显示子系统、打印机、传真机,或者诸如音频输出设备的非视觉显示器。显示子系统可以包括阴极射线管(CRT),诸如液晶显示器(LCD)的平板设备、投影设备,或者用于创建可见图像的一些其它机制。该显示子系统还可以经由音频输出设备提供非视觉显示。通常,使用术语“输出设备”意图包括从计算设备710向用户或者另一个机器或计算设备输出信息的所有可能类型的设备和方式。

存储子系统724存储提供本文所描述的一些或全部模块的功能的程序和数据结构。例如,存储子系统724可以包括执行图4、5和/或6的方法的所选择方面以及用于实施图1、2A、2B和3A中所描绘的各种组件的逻辑。

这些软件模块通常由处理器714单独或者结合其它处理器一起来执行。在存储子系统724中所使用的存储器725可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机访问存储器(RAM)730以及在其中存储固定指令的只读存储器(ROM)732。文件存储子系统726可以为程序和数据文件提供持久性存储,并且可以包括硬盘驱动器、带有相关联的可移除介质的软盘驱动器、CD-ROM驱动器、光学驱动器,或者可移除介质卡盒。实施一定实施方式的功能的模块可以被文件存储子系统726存储在存储子系统724中,或者存储在处理器714所能够访问的其它机器中。

总线子系统712提供了使得计算设备710的各个组件和子系统如所期望的那样互相通信的机制。虽然总线子系统712被示意性地示为单个总线,但是总线子系统的替选实施方式可以使用多个总线。

计算设备710可以为各种类型,包括工作站、服务器、计算集群、刀片式服务器、服务器群,或者任意其它数据处理系统或计算设备。由于计算机和网络不断变化的性质,图7中所描绘的计算设备710的描述仅意图作为为了说明一些实施方式的具体示例。计算设备710的许多其它配置是可能的,它们具有比图7所描绘的计算设备更多或更少的组件。

在本文所描述的系统收集或以其它方式监视有关用户的个人信息或者可以对个人信息和/或所监视信息加以利用的情况下,用户可以被提供机会来控制程序或特征是否收集用户信息(例如,有关用户的社交网络、社交动作或活动、职业、用户的偏好或用户的当前位置的信息),或者对是否和/或如何从内容服务器接收可能与用户更为相关的内容进行控制。而且,某些数据可以在其被存储或使用之前以一个或多个方式被加以处理,而使得个人可识别信息得以被去除。例如,用户的身份可以被处理而使得无法针对用户确定个人可识别信息,或者可以在获得位置信息的情况下对用户的地理位置进行一般化处理(诸如处理为城市、邮政编码或州的级别),而使得用户的特定位置无法被确定。因此,用户可以对如何收集和/或使用有关该用户的信息加以控制。例如,用户在使得能够与自动化助手进行免热词交互时能够选择取消助手设备使用视觉组件107和/或使用来自视觉组件107的数据。

在一些实施方式中,提供了一种由一个或多个处理器实施的方法,并且包括:在客户端设备处接收基于来自该客户端设备的一个或多个相机的输出的图像帧的流。该方法进一步包括在该客户端设备处使用在该客户端设备本地存储的至少一个经训练的机器学习模型处理该流的图像帧以检测指向该客户端设备的用户注视的发生。该方法进一步包括在该客户端设备处确定该用户相对于该客户端设备的距离。确定该用户相对于该客户端设备的距离可以基于该图像帧中的一个或多个和/或来自该客户端设备的附加传感器的附加传感器数据。该方法进一步包括在该客户端设备处基于检测到该用户的注视的发生并且基于该用户相对于该客户端设备的距离而确定执行对该客户端设备的一个或多个麦克风所检测的音频数据的一定处理。该方法进一步包括在该客户端设备处响应于确定执行该音频数据的一定处理而发起该音频数据的一定处理。

本文所公开的这些和其它实施方式可选地可以包括一个或多个以下特征。

在一些实施方式中,发起该音频数据的一定处理可以包括:在该客户端设备处发起该音频数据的本地自动话音辨识;向与该自动化助手相关联的远程服务器发起对该音频数据的传输;和/或向该远程服务器发起对来自该本地自动话音辨识的所辨识文本的传输。

在一些实施方式中,该音频数据的至少一部分是在检测用户的注视之前缓冲在该客户端设备本地的临时缓冲器中的缓冲音频数据。

在一些实施方式中,该方法进一步包括在发起该音频数据的一定处理之前:经由该客户端设备的输出组件渲染至少一个人类可感知提示。在那些实施方式的一些版本中,该至少一个人类可感知提示包括响应于检测到指向该客户端设备的用户注视的发生而渲染的第一队列。

在一些实施方式中,使用该至少一个经训练的机器学习模型处理该图像帧以检测指向该客户端设备的一个或多个相机的用户注视的发生包括:使用至少一个经训练的机器学习模型处理该图像帧的序列以针对该序列中的每个图像帧确定该用户的注视是否指向该客户端设备;并且基于该序列中用户的注视针对其被确定为指向该一个或多个相机的图像帧的数量而检测指向该客户端设备的用户注视的发生。

在一些实施方式中,该方法进一步包括在发起经由该客户端设备的一个或多个麦克风所检测的音频数据的一定处理之前:在该客户端设备处:基于该音频数据的至少一部分的本地处理检测语音活动;和/或基于该图像帧中的一个或多个和该音频数据的至少一部分的本地处理检测该用户的嘴部运动和语音活动的同时发生。在那些实施方式的一些中,发起该音频数据的一定处理进一步响应于检测到语音活动以及该用户的嘴部运动和语音活动的同时发生之一或二者。在那些实施方式的一些版本中,检测该用户注视的发生在第一时间进行,检测语音活动以及该用户的嘴部运动和语音活动的同时发生之一或二者在该第一时间之后的第二时间进行。在那些版本的一些中,该方法进一步包括:在发起该音频数据的一定处理之前以及在该第二时间之前:响应于检测到指向该客户端设备的一个或多个相机的用户注视的发生而经由该客户端设备的输出组件渲染第一人类可感知提示;并且在发起该音频数据的一定处理之前以及渲染该第一人类可感知提示之后:响应于检测到语音活动以及该用户的嘴部运动和语音活动的同时发生之一或二者而经由该客户端设备的该输出组件或附加输出组件渲染第二人类可感知提示。该第一人类可感知提示例如可以包括经由该客户端设备的显示器渲染的第一视觉线索,并且该第二人类可感知提示例如可以包括经由该客户端设备的显示器渲染的第二视觉线索。进一步地,在那些版本的一些中,该方法可以进一步包括响应于发起该音频数据的一定处理以及在该第二时间之后:经由该客户端设备的该输出组件或该附加输出组件渲染第三人类可感知提示。

在一些实施方式中,确定该用户相对于该客户端设备的距离是基于该图像帧中的一个或多个。在那些实施方式的一些中,确定该用户的距离是基于所确定的图像帧中的一个或多个中所检测到的该用户的眼睛之间的眼睛距离。

在一些实施方式中,基于检测到该用户的注视以及基于该用户相对于该客户端设备的距离而确定执行该音频数据的一定处理包括:基于该用户的距离满足阈值距离而确定执行该一定处理。

在一些实施方式中,基于检测到该用户的注视并且基于该用户相对于该客户端设备的距离而确定执行该音频数据的一定处理包括:基于该用户的距离的量级并且基于该用户的注视的注视置信度量度而确定执行该音频数据的一定处理。该注视置信度量度可以基于使用该至少一个经训练的机器学习模型对该流的图像帧的处理来生成。

在一些实施方式中,该方法进一步包括基于在该客户端设备本地对图像帧中的一个或多个的处理而确定该用户是所辨识的用户。在那些实施方式的一些中,确定执行该音频数据的一定处理进一步基于确定该用户是所辨识的用户。

在一些实施方式中,该音频数据的一定处理包括该音频数据的自动话音辨识以生成所辨识话音。在那些实施方式的一些中,该方法进一步包括:至少部分基于该所辨识话音而确定指示该所辨识话音是针对自动化助手的请求的概率的助手请求量度;并且至少部分基于该助手请求量度确定是否经由该客户端设备渲染针对该所辨识话音的响应。在那些版本的一些中,确定是否渲染针对该所辨识话音的响应进一步基于:该用户的距离;该用户是否是所辨识的用户;和/或用户的注视的注视置信度量度。

在一些实施方式中,提供了一种由客户端设备的一个或多个处理器实施的方法,并且包括:接收基于来自该客户端设备的一个或多个相机的输出的图像帧的流;在该客户端设备处使用在该客户端设备本地存储的至少一个经训练的机器学习模型处理该流的图像帧以检测指向该客户端设备的用户注视的发生。该方法进一步包括响应于检测到指向该客户端设备的用户注视的发生而在该客户端设备的显示器处渲染第一人类可感知队列。该方法进一步包括在渲染该第一人类可感知队列的同时,在该客户端设备处进行以下操作中的一个或多个:基于对该客户端设备的一个或多个麦克风所捕获的音频数据的至少一部分检测本地处理的语音活动;基于对图像帧中的一个或多个以及该音频数据的至少一部分的本地处理检测该用户的嘴部运动和该语音活动的同时发生;和基于对图像帧中的一个或多个的本地处理检测该用户的手势。该方法进一步包括响应于继续检测到该注视的发生以及检测到该语音活动、该用户的嘴部运动和该语音活动的同时发生以及该用户的手势中的一个或多个:在该客户端设备的显示器处利用第二人类可感知队列的渲染替代该第一人类可感知队列的渲染。该方法进一步包括在渲染该第二人类可感知队列之后:在该客户端设备处发起该音频数据和/或该图像帧中的一个或多个的一定附加处理。

本文所公开的这些和其它实施方式可选地可以包括一个或多个以下特征。

在一些实施方式中,该方法进一步包括响应于发起该音频数据和/或图像帧中的一个或多个的一定附加处理:在该客户端设备的显示器处利用第三人类可感知队列的渲染替代该第二人类可感知队列的渲染。

在一些实施方式中,发起该音频数据和/或图像帧中的一个或多个的一定附加处理包括:向与该自动化助手相关联的远程服务器发起对该音频数据和/或该图像数据的传输。

在一些实施方式中,该方法进一步包括确定分别与以下中的一个或多个相关联的一个或多个置信度量度:检测该注视的发生,检测该语音活动,检测该嘴部运动与该语音活动的同时发生,和检测该手势。在那些实施方式的一些中,该第二人类可感知队列的大小基于该一个或多个置信度量度,和/或发起该音频数据和/或图像帧中的一个或多个的一定附加处理基于该一个或多个置信度量度满足一个或多个阈值。

在一些实施方式中,提供了一种由一个或多个处理器实施的方法,并且包括:在客户端设备处接收基于来自该客户端设备的一个或多个相机的输出的图像帧的流。该方法进一步包括在该客户端设备处使用在该客户端设备本地存储的至少一个经训练的机器学习模型处理该流的图像帧以检测指向该客户端设备的用户注视的发生。该方法进一步包括基于检测到该用户注视的发生而生成针对由该流的图像帧中的一个或多个所捕获的该用户的手势的响应。该方法进一步包括生成针对该用户的手势的响应。生成该响应可以包括基于对该流的图像帧中的一个或多个的处理而确定该用户的手势,并且基于该用户的手势以及基于该客户端设备在该手势的时候所渲染的内容而生成该响应。该方法进一步包括在该客户端设备处实施该响应。

本文所公开的这些和其它实施方式可选地可以包括一个或多个以下特征。

在一些实施方式中,基于该用户的手势以及基于该客户端设备在该手势的时候所渲染的内容而生成该响应包括:确定该手势被指派至多个响应性动作;基于该客户端设备在该手势的时候所渲染的内容从该多个响应性动作中选择单个响应性动作;并且生成该响应以使得执行所选择的单个响应性动作。

在一些实施方式中,该方法进一步包括在该客户端设备处确定该用户相对于该客户端设备的距离,并且确定生成针对该用户的手势的响应进一步基于该用户的距离的量级。在那些实施方式的一些中,基于该用户的距离而确定生成针对该用户的手势的响应包括基于该用户的距离满足距离阈值而确定生成该响应。

在一些实施方式中,该方法进一步包括基于在该客户端设备处本地对该图像帧中的一个或多个的处理而确定该用户是所辨识的用户。在那些实施方式的一些中,确定生成针对该用户的手势的响应进一步基于确定该用户是所辨识的用户,并且可选地进一步基于确定相同的所辨识用户发起了该客户端设备所渲染内容的提供。

在一些实施方式中,提供了一种由一个或多个处理器实施的方法,并且包括:在客户端设备处接收基于来自该客户端设备的一个或多个相机的输出的图像帧的流以及该客户端设备的一个或多个麦克风所检测到的音频数据。该方法进一步包括在该客户端设备处处理该图像帧和该音频数据以确定以下的同时发生:图像帧中的一个或多个所捕获的用户的嘴部运动,和该用户的语音活动。该方法进一步包括在该客户端设备处以及基于确定该用户的嘴部运动和该用户的语音活动的同时发生而执行:该音频数据的一定处理,和/或经由该客户端设备的输出组件对至少一个人类可感知提示的渲染。该方法进一步包括在该客户端设备处发起该音频数据的一定处理和/或该至少一个人类可感知提示的渲染。该发起响应于确定执行该音频数据的一定处理和/或该至少一个人类可感知提示的渲染。

本文所公开的这些和其它实施方式可选地可以包括一个或多个以下特征。

在一些实施方式中,该音频数据的一定处理响应于确定执行该音频数据的一定处理和/或该至少一个人类可感知提示的渲染而被发起,并且发起该音频数据的一定处理包括:在该客户端设备处发起该音频数据的本地自动话音辨识;向与该自动化助手相关联的远程服务器发起对该音频数据的传输;和/或向该远程服务器发起对来自该本地自动化话音辨识的所辨识的文本的传输。

在一些实施方式中,在该客户端设备处处理该图像帧和该音频数据以确定该用户的嘴部运动和该用户的语音活动的同时发生包括:使用本地存储的机器学习模型处理该图像帧和该音频数据。该本地存储的机器学习模型可以被训练以在以下之间加以区分:与嘴部运动同时发生并且作为该嘴部运动的结果的语音活动;和并非来自该嘴部运动但是与该嘴部运动同时发生的语音活动。

在一些实施方式中,该方法进一步包括在该客户端设备处确定该用户相对于该客户端设备的距离,并且确定执行该音频数据的一定处理和/或该至少一个人类可感知提示的渲染进一步基于该用户相对于该客户端设备的距离。在那些实施方式的一些版本中,进一步基于该用户相对于该客户端设备的距离确定执行该音频数据的一定处理和/或该至少一个人类可感知提示的渲染包括:确定该用户相对于该客户端设备的距离满足阈值。在一些附加或替选版本中,进一步基于该用户相对于该客户端设备的距离确定执行该音频数据的一定处理和/或该至少一个人类可感知提示的渲染包括:确定与一个或多个之前所确定的该用户相对于该客户端设备的距离相比,该用户相对于该客户端设备的距离更加接近于该客户端设备。

在一些实施方式中,该方法进一步包括在该客户端设备处并且基于该图像帧中的一个或多个确定该用户的注视指向该客户端设备。在那些实施方式的一些中,确定执行该音频数据的一定处理和/或该至少一个人类可感知提示的渲染进一步基于确定该用户的注视指向该客户端设备。

在一些实施方式中,该方法进一步包括在该客户端设备处并且基于该图像帧中的一个或多个确定该用户的身体姿态指向该客户端设备。在那些实施方式的一些中,确定执行该音频数据的一定处理和/或该至少一个人类可感知提示的渲染进一步基于确定该用户的身体姿态指向该客户端设备。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号