针对上下文数据选择性地使用传感器
文献发布时间:2024-01-17 01:27:33
本申请要求于2020年8月21日提交的名称为“SELECTIVELY USING SENSORS FORCONTEXTUAL DATA”的美国临时申请第63/068,589号的权益,该美国临时申请的内容据此全文以引用方式并入以用于所有目的。
技术领域
本公开整体涉及数字助理,并且更具体地讲,涉及在各种计算机生成的现实技术中使用数字助理来确定何时启用电子设备的各种传感器。
背景技术
智能自动化助理(或数字助理)可在人类用户与电子设备之间提供有利界面。此类助理可允许用户使用自然语言以语音形式和/或文本形式与设备或系统进行交互。例如,用户可向正在电子设备上运行的数字助理提供包含用户请求的语音输入。数字助理可从该语音输入解译用户意图并且将用户意图操作化成任务。随后可通过执行电子设备的一项或多项服务来执行这些任务,并且可将响应于用户请求的相关输出返回给用户。在一些情况下,用户可以提供模糊的请求,特别是当与各种计算机生成的现实技术一起使用时;例如,诸如“那是什么?”的用户请求。因此,数字助理可能难以确定对请求的适当响应。
发明内容
本文公开了示例性方法。一种示例性方法包括:在具有一个或多个处理器以及存储器的电子设备处,接收包括请求的口语输入,对该口语输入执行语义分析,基于该语义分析确定该电子设备需要附加上下文数据来满足该请求的可能性,以及根据所确定的可能性超过阈值,启用该电子设备的相机并且基于由该电子设备的该相机捕获的数据来确定对该请求的响应。
本文公开了示例性非暂态计算机可读介质。一种示例性非暂态计算机可读存储介质存储一个或多个程序。该一个或多个程序包括指令,这些指令当由电子设备的一个或多个处理器执行时,使该电子设备接收包括请求的口语输入,对该口语输入执行语义分析,基于该语义分析确定该电子设备需要附加上下文数据来满足该请求的可能性,以及根据所确定的可能性超过阈值,启用该电子设备的相机并且基于由该电子设备的该相机捕获的数据来确定对该请求的响应。
本文公开了示例性电子设备。一种示例性电子设备包括一个或多个处理器;存储器;以及一个或多个程序,其中该一个或多个程序存储在该存储器中并且被配置为由该一个或多个处理器执行,该一个或多个程序包括用于以下操作的指令:接收包括请求的口语输入;对该口语输入执行语义分析;基于该语义分析确定该电子设备需要附加上下文数据来满足该请求的可能性;以及根据所确定的可能性超过阈值,启用该电子设备的相机并且基于由该电子设备的该相机捕获的数据来确定对该请求的响应。
一种示例性电子设备包括:用于接收包括请求的口语输入的装置;用于对该口语输入执行语义分析的装置;用于基于该语义分析确定该电子设备需要附加上下文数据来满足该请求的可能性的装置;以及根据所确定的可能性超过阈值,用于启用该电子设备的相机并且基于由该电子设备的该相机捕获的数据来确定对该请求的响应的装置。
基于该语义分析确定该电子设备需要附加上下文数据来满足该请求的可能性允许数字助理有效地确定是否启用电子设备的一个或多个传感器。例如,以这种方式确定是否需要附加上下文数据允许数字助理选择性地确定哪些传感器可能是有帮助的并且以快速和有效的方式启用它们。因此,这提供了该电子设备的更有效使用(例如,通过仅启用将有帮助的传感器),这另外通过使用户能够更快速并且更有效地使用该设备来减少该设备的电力使用并且延长该设备的电池寿命。此外,仅在需要时启用该电子设备的一个或多个传感器提供了隐私益处,因为没有捕捉到用户所做的或与之交互的一切。相反,可以用启用的传感器捕捉对用户有帮助的特定活动,而不捕捉所有其他活动。
附图说明
图1A-图1B描绘了用于各种计算机生成的现实技术的示例性系统,这些技术包括虚拟现实和混合现实。
图2描绘了用于确定对用户请求的响应的示例性数字助理。
图3描绘了由电子设备接收的示例性上下文数据。
图4描绘了与电子设备的传感器相关联的示例性用户界面。
图5描绘了与电子设备的传感器相关联的示例性用户界面。
图6是示出用于确定对请求的响应的过程的流程图。
具体实施方式
描述了用于与各种计算机生成的现实技术相关地使用此类系统的电子系统和技术的各种示例。
物理环境(或真实环境)是指人们在没有电子系统帮助的情况下能够感测和/或交互的物理世界。物理环境诸如物理公园包括物理物品(或物理对象或真实对象),诸如物理树木、物理建筑物和物理人。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。
相反,计算机生成现实(CGR)环境是指人们经由电子系统感知和/或交互的完全或部分模拟的环境。在CGR中,跟踪人的物理运动的子集或其表示,并且作为响应,以符合至少一个物理定律的方式调节在CGR环境中模拟的一个或多个虚拟对象的一个或多个特征。例如,CGR系统可以检测人的头部转动,并且作为响应,以与此类视图和声音在物理环境中变化的方式类似的方式调节呈现给人的图形内容和声场。在一些情况下(例如,出于可达性原因),对CGR环境中虚拟对象的特征的调节可以响应于物理运动的表示(例如,声音命令)来进行。
人可以利用其感觉中的任一者来感测CGR对象和/或与之交互,包括视觉、听觉、触觉、味觉和嗅觉。例如,人可以感测音频对象和/或与音频对象交互,音频对象创建3D或空间音频环境,3D或空间音频环境提供3D空间中点音频源的感知。又如,音频对象可以使能音频透明度,该音频透明度在有或者没有计算机生成的音频的情况下选择性地引入来自物理环境的环境声音。在某些CGR环境中,人可以感测和/或只与音频对象交互。
CGR的示例包括虚拟现实和混合现实。
虚拟现实(VR)环境(或虚拟环境)是指被设计成对于一个或多个感官完全基于计算机生成的感官输入的模拟环境。VR环境包括人可以感测和/或交互的多个虚拟对象。例如,树木、建筑物和代表人的化身的计算机生成的图像是虚拟对象的示例。人可以通过在计算机生成的环境内人的存在的模拟和/或通过在计算机生成的环境内人的物理移动的一个子组的模拟来感测和/或与VR环境中的虚拟对象交互。
与被设计成完全基于计算机生成的感官输入的VR环境相比,混合现实(MR)环境是指被设计成除了包括计算机生成的感官输入(例如,虚拟对象)之外还引入来自物理环境的感官输入或其表示的模拟环境。在虚拟连续体上,MR环境是完全物理环境作为一端以及VR环境作为另一端之间的任何状况,但不包括这两端。
在一些MR环境中,计算机生成的感官输入可以对来自物理环境的感官输入的变化进行响应。另外,用于呈现MR环境的一些电子系统可以跟踪相对于物理环境的位置和/或取向,以使虚拟对象能够与真实对象(即,来自物理环境的物理物品或其表示)交互。例如,系统可以导致运动使得虚拟树木相对于物理地面看起来是静止的。
MR的示例包括增强现实和增强虚拟。
增强现实(AR)环境是指其中一个或多个虚拟对象叠加在物理环境或其表示之上的模拟环境。例如,用于呈现AR环境的电子系统可具有透明或半透明显示器,人可以透过该显示器直接查看物理环境。该系统可以被配置为在透明或半透明显示器上呈现虚拟对象,使得人利用该系统感知叠加在物理环境之上的虚拟对象。另选地,系统可以具有不透明显示器和一个或多个成像传感器,该成像传感器捕获物理环境的图像或视频,这些图像或视频是物理环境的表示。系统将图像或视频与虚拟对象组合,并在不透明显示器上呈现组合物。人利用系统经由物理环境的图像或视频而间接地查看物理环境,并且感知叠加在物理环境之上的虚拟对象。如本文所用,在不透明显示器上显示的物理环境的视频被称为“透传视频”,意味着系统使用一个或多个图像传感器捕获物理环境的图像,并且在不透明显示器上呈现AR环境时使用那些图像。进一步另选地,系统可以具有投影系统,该投影系统将虚拟对象投射到物理环境中,例如作为全息图或者在物理表面上,使得人利用该系统感知叠加在物理环境之上的虚拟对象。
AR环境也是指其中物理环境的表示被计算机生成的感官信息进行转换的模拟环境。例如,在提供透传视频中,系统可以对一个或多个传感器图像进行转换以施加与成像传感器所捕获的视角不同的选择视角(例如,视点)。又如,物理环境的表示可以通过图形地修改(例如,放大)其部分而进行转换,使得经修改部分可以是原始捕获图像的代表性的但不是真实的版本。再如,物理环境的表示可以通过以图形方式消除其部分或将其部分进行模糊处理而进行转换。
增强虚拟(AV)环境是指其中虚拟或计算机生成的环境结合来自物理环境的一个或多个感官输入的模拟环境。感官输入可以是物理环境的一个或多个特性的表示。例如,AV公园可以具有虚拟树木和虚拟建筑物,但人的脸部是从对物理人拍摄的图像逼真再现的。又如,虚拟对象可以采用一个或多个成像传感器所成像的物理物品的形状或颜色。再如,虚拟对象可以采用符合太阳在物理环境中的定位的阴影。
有许多不同类型的电子系统使人能够感测和/或与各种CGR环境交互。示例包括头戴式系统、基于投影的系统、平视显示器(HUD)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为被设计用于放置在人眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入系统(例如,具有或没有触觉反馈的可穿戴或手持控制器)、智能电话、平板电脑、和台式/膝上型计算机。头戴式系统可以具有一个或多个扬声器和集成的不透明显示器。另选地,头戴式系统可以被配置为接受外部不透明显示器(例如,智能电话)。头戴式系统可以结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式系统可以具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、OLED、LED、uLED、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一个示例中,透明或半透明显示器可被配置为选择性地变得不透明。基于投影的系统可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影系统也可以被配置为将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。
图1A和图1B描绘了在各种计算机生成的现实技术中使用的示例性系统100。
在一些示例中,如图1A所示,系统100包括设备100a。设备100a包括各种部件,诸如处理器102、RF电路104、存储器106、图像传感器108、取向传感器110、麦克风112、位置传感器116、扬声器118、显示器120和触敏表面122。这些部件任选地通过设备100a的通信总线150进行通信。
在一些示例中,系统100的元件在基站设备(例如,计算设备,诸如远程服务器、移动设备或膝上型计算机)中实现,并且系统100的其他元件在设计成由用户佩戴的头戴式显示器(HMD)设备中实现,其中HMD设备与基站设备通信。在一些示例中,设备100a在基站设备或HMD设备中实现。
如图1B所示,在一些示例中,系统100包括两个(或更多个)通信中的设备,诸如通过有线连接或无线连接。第一设备100b(例如,基站设备)包括处理器102、RF电路104和个存储器106。这些部件可选地通过设备100b的通信总线150进行通信。第二设备100c(例如,头戴式设备)包括各种部件,诸如处理器102、RF电路104、存储器106、图像传感器108、取向传感器110、麦克风112、位置传感器116、扬声器118、显示器120和触敏表面122。这些部件可选地通过设备100c的通信总线150进行通信。
在一些示例中,系统100为移动设备。在一些示例中,系统100为头戴式显示器(HMD)设备。在一些示例中,设备100为可穿戴HUD设备。
系统100包括处理器102和存储器106。处理器102包括一个或多个通用处理器、一个或多个图形处理器、和/或一个或多个数字信号处理器。在一些示例中,存储器106是存储计算机可读指令的一个或多个非暂态计算机可读存储介质(例如,闪存存储器、随机存取存储器),所述计算机可读指令被配置为由处理器102执行以执行下述技术。
系统100包括RF电路104。RF电路104可选地包括用于与电子设备、网络(诸如互联网、内联网)和/或无线网络(诸如蜂窝网络和无线局域网(LAN))通信的电路。RF电路104可选地包括用于使用近场通信和/或短程通信(诸如
系统100包括显示器120。在一些示例中,显示器120包括第一显示器(例如,左眼显示器面板)和第二显示器(例如,右眼显示器面板),每个显示器用于向用户的相应眼睛显示图像。对应的图像同时显示在第一显示器和第二显示器上。可选地,对应的图像包括来自不同视点的相同虚拟对象和/或相同物理对象的表示,从而产生视差效应,该视差效应向用户提供显示器上对象的立体感效应。在一些示例中,显示器120包括单个显示器。对于用户的每只眼睛,对应的图像同时显示在单个显示器的第一区域和第二区域上。可选地,对应的图像包括来自不同视点的相同虚拟对象和/或相同物理对象的表示,从而产生视差效应,该视差效应向用户提供单个显示器上对象的立体感效应。
在一些示例中,系统100包括用于接收用户输入的触敏表面122,诸如轻击输入和轻扫输入。在一些示例中,显示器120和触敏表面122形成触敏显示器。
系统100包括图像传感器108。图像传感器108可选地包括一个或多个可见光图像传感器(诸如电荷耦合设备(CCD)传感器)和/或可操作以从真实环境获得物理对象的图像的互补金属氧化物半导体(CMOS)传感器。图像传感器还可选地包括一个或多个红外(IR)传感器,诸如无源IR传感器或有源IR传感器,用于检测来自真实环境的红外光。例如,有源IR传感器包括IR发射器,诸如IR点发射器,用于将红外光发射到真实环境中。图像传感器108还可选地包括一个或多个事件相机,这些事件相机被配置为捕获真实环境中的物理对象的移动。图像传感器108还可选地包括一个或多个深度传感器,这些深度传感器被配置为检测物理对象与系统100的距离。在一些示例中,系统100组合使用CCD传感器、事件相机和深度传感器来检测系统100周围的物理环境。在一些示例中,图像传感器108包括第一图像传感器和第二图像传感器。第一图像传感器和第二图像传感器可选地被配置为从两个不同的视角捕获真实环境中的物理对象的图像。在一些示例中,系统100使用图像传感器108来接收用户输入,诸如手势。在一些示例中,系统100使用图像传感器108来检测系统100和/或显示器120在真实环境中的位置和取向。例如,系统100使用图像传感器108来跟踪显示器120相对于真实环境中的一个或多个固定对象的位置和取向。
在一些示例中,系统100包括麦克风112。系统100使用麦克风112来检测来自用户和/或用户的真实环境的声音。在一些示例中,麦克风112包括麦克风阵列(包括多个麦克风),其任选地串联操作,以便识别环境噪声或在真实环境的空间中定位声源。
系统100包括用于检测系统100和/或显示器120的取向和/或移动的取向传感器110。例如,系统100使用取向传感器110来跟踪系统100和/或显示器120的位置和/或取向的变化,诸如关于真实环境中的物理对象。取向传感器110可选地包括一个或多个陀螺仪和/或一个或多个加速度计。
图2描绘了用于确定对用户请求的响应的示例性数字助理200。在一些示例中,如图2所示,数字助理200包括输入分析器202、传感器接口204和输出发生器206。在一些示例中,数字助理200可以可选地包括指代消解模块,下文将进一步讨论。在一些示例中,数字助理200在电子设备100上实现。在一些示例中,数字助理200除了在电子设备100上之外还在其他设备(例如,服务器)上实现。在一些示例中,数字助理的模块和功能中的一些模块和功能被划分成服务器部分和客户端部分,其中客户端部分位于一个或多个用户设备(例如,电子设备100)上并通过一个或多个网络来与服务器部分进行通信。
应当指出,数字助理200仅为数字助理的一个示例,并且该数字助理200可具有比所示更多或更少的部件,可组合两个或更多个部件,或者可具有部件的不同配置或布置。图2中所示的各种部件在硬件、用于在由一个或多个处理器执行的软件指令、固件(包括一个或多个信号处理集成电路和/或专用集成电路)或它们的组合中实现。在一些示例中,数字助理200连接到电子设备100的一个或多个部件和/或传感器,下文将进一步讨论。
数字助理200接收包括来自用户的请求的口语输入201,并将口语输入201提供给输入分析器202。在接收到口语输入201之后,输入分析器202对口语输入201执行语义分析。在一些示例中,执行语义分析包括对口语输入201执行自动语音识别(ASR)。具体地,输入分析器202可以包括一个或多个ASR系统,该一个或多个ASR系统处理通过电子设备100的输入设备(例如,麦克风)接收的口语输入201。ASR系统从语音输入中提取代表性特征。例如,ASR系统预处理器对口语输入201执行傅立叶变换,以提取表征语音输入的频谱特征作为代表性多维向量的序列。
另外,输入分析器202的每个ASR系统包括一个或多个语音识别模型(例如,声学模型和/或语言模型)并且实现一个或多个语音识别引擎。语音识别模型的示例包括隐马尔可夫模型、高斯混合模型、深层神经网络模型、n元语法语言模型以及其他统计模型。语音识别引擎的示例包括基于动态时间规整的引擎和基于加权有限状态变换器(WFST)的引擎。使用一个或多个语音识别模型和一个或多个语音识别引擎来处理前端语音预处理器的所提取的代表性特征以产生中间识别结果(例如,音素、音素串和子词),并且最终产生文本识别结果(例如,字、字串或符号序列)。
在一些示例中,执行语义分析包括对口语输入201执行自然语言处理。具体地,一旦输入分析器202通过ASR产生包含文本串(例如,字或字序列或符号序列)的识别结果,输入分析器202就可以推断口语输入201的意图。在一些示例中,输入分析器202产生语音输入的多个候选文本表示。每个候选文本表示是对应于口语输入201的字或符号序列。在一些示例中,每个候选文本表示与语音识别置信度得分相关联。基于语音识别置信度得分,输入分析器202对候选文本表示进行排序,并将n个最佳(例如,n个排名最高)候选文本表示提供给数字助理200的其他模块以供进一步处理。
在一些示例中,执行语义分析包括确定口语输入201的请求是否包括不明确术语。在一些示例中,不明确术语是指示性指代。指示性指代是不明确地指诸如对象、时间、人或地点等某物的单词或短语。示例性指示性指代包括但不限于“那个”、“这个”、“这里”、“那里”、“然后”、“那些”、“它们”、“他”、“她”等,特别是当与诸如“这是什么?”、“那是什么?”和“他是谁?”的问题一起使用时。因此,输入分析器202确定该请求是否包括这些单词中的一个或类似于它们的单词,从而确定该单词的使用是否模糊。例如,在口语输入“那是什么?”中,输入分析器202可以通过ASR和/或NLP来确定“那”是指示性指代。类似地,在口语输入201“这是何时建立的?”中,输入分析器202确定“这”是指示性指代。在这两个示例中,输入分析器202可以确定“那”和“这”是模糊的,因为用户输入不包括可以用“那”或“这”来指代的主题或对象。
在执行语义分析之后,输入分析器202确定需要附加上下文数据来满足该请求的可能性。在一些示例中,需要附加上下文数据来满足该请求的可能性是基于在接收口语输入201期间电子设备100的移动。例如,当电子设备100是头戴式设备时,用户可以移动他们的头部,从而移动电子设备100,同时提供口语输入201的单词“那”。因此,输入分析器202可以确定用户正在用指代“那”指示可能的对象,因为电子设备100在用户在口语输入201中提供“那”几乎相同的时间移动。输入分析器然后可以确定由于指示对象的模糊指代“那”和同时提供的移动而需要附加上下文数据来满足该请求的可能性高。
应当理解,在与口语输入201中提供的单词几乎相同的时间检测到的手势或其他信息可以与口语输入201中的单词同时或与口语输入201中的单词基本上同时被检测。例如,下文讨论的手势和其他信息可以在与口语输入201相同的时间、口语输入201之前的短时间(例如,2秒、1秒、10毫秒、5毫秒等)或口语输入201之后的短时间(例如,2秒、1秒、10毫秒、5毫秒等)接收。
又如,当电子设备100是诸如智能电话的手持电子设备时,用户可以通过在提供口语输入201的单词“那”的同时朝向对象移动电子设备100来用电子设备100做手势。因此,类似于上面的示例,输入分析器202可以确定用户正在用指代“那”指示可能的对象,因为电子设备100在用户在口语输入201中提供“那”几乎相同的时间向对象移动。输入分析器然后可以确定由于模糊指代“那”和移动而需要附加上下文数据来满足该请求的可能性高。
在一些示例中,当电子设备100是诸如智能电话的手持电子设备时,用户可以向电子设备100的屏幕(例如,指向屏幕的一部分)或在电子设备的屏幕上做手势(例如,轻敲屏幕的一部分),同时提供口语输入201的“那”。因此,输入分析器202可以确定用户正在用指代“那”指示可能的对象,因为电子设备100在用户在口语输入201中提供“那”几乎相同的时间检测到朝向电子设备100的屏幕或在该屏幕上的手势。例如,电子设备100的屏幕可以显示多个地标,并且用户可以在说“那”时指向一个地标,并且因此,输入分析器202可以确定用户正在向该一个对象做手势,并且因此打算指代那个对象。输入分析器202然后可以确定由于模糊指代“那”以及朝向电子设备100的屏幕或在其上的移动而需要附加上下文数据来满足该请求的可能性高。
在一些示例中,需要附加上下文数据的可能性是基于在接收口语输入201期间电子设备100的移动是否停止。例如,在接收口语输入“那边是什么?”时,在用户提供口语输入201的“那”的同时,电子设备100可以在短时间内停止移动(例如,逗留)。因此,输入分析器202可以确定用户正在用指代“那”指示可能的对象,因为电子设备100在口语输入201中说出“那”几乎相同的时间停止移动。输入分析器然后可以确定由于模糊指代“那”和停止电子设备100的移动而需要附加上下文数据来满足该请求的可能性高。
相反,在接收口语输入“那边是什么?”时,电子设备100可以连续移动,因为例如用户在提供口语输入201的同时正在扫描范围。因此,输入分析器202可以确定移动或停止移动没有指示用户指代的任何潜在对象,并且因此确定需要附加上下文数据来满足该请求的可能性低。
在一些示例中,需要附加上下文数据的可能性是基于电子设备100在接收到口语输入201之后的预定时间内的移动。因此,如上文参考在接收口语输入201期间检测到的移动或移动的停止所述,输入分析器202可以确定电子设备100是否在接收口语输入201之后的预定时间(例如,1秒、2秒、5秒、10秒等)期间移动。如果电子设备100在该预定时间期间移动,则输入分析器202可以确定该移动指示了对象,从而确定需要附加上下文数据的可能性高。
在一些示例中,确定电子设备100的移动是否停止包括确定电子设备100的移动是否在预定时间内低于阈值。移动阈值包括六英寸的移动、一英尺的移动、两英尺的移动或用于确定用户是否想要移动电子设备100的任何其他量的移动。预定时间包括一秒、五秒、十秒等。例如,当电子设备100接收口语输入201时,电子设备100可以检测指示用户在不打算提供电子设备100的手势或任何其他有意义的移动时所做的正常移动的小移动。因此,移动可以低于五秒钟内移动一英尺的阈值。因此,输入分析器202可以确定电子设备100已经停止移动,因为移动在预定时间内低于阈值。
在一些示例中,需要附加上下文数据的可能性是基于在时间上接近接收口语输入201的电子设备100的视野。具体地,用户可以通过从观看近处的某物移动到观看远处和近处的某物来改变电子设备100的视野,并且几乎同时提供口语输入“那是什么?”。例如,电子设备100可以接收树的视野,并且用户可以在提供口语输入“那是什么?”的同时在塔处看树的后面。因此,输入分析器202可以确定用户正在用指代“那”指示塔,因为电子设备100检测到电子设备100的视野在与用户在口语输入201中提供“那”几乎相同的时间从树变到塔。
在一些示例中,需要附加上下文数据的可能性是基于在接收到口语输入201之后电子设备100的姿态。例如,在接收到“在那个方向上是什么?”的口语输入201之后,输入分析器202可以确定电子设备100以指向新方向的姿态旋转。因此,输入分析器202可以确定需要指示方向的附加上下文数据来帮助确定对口语输入201的响应的可能性高。
在一些示例中,需要附加上下文数据的可能性是基于在接收口语输入201期间检测到的用户的凝视。在一些示例中,数字助理200基于电子设备100的移动或取向来检测用户的凝视。例如,当电子设备100是诸如头戴式显示器的可穿戴设备时,电子设备100的视图也是穿戴电子设备100的用户的视图。因此,数字助理200可将与口语输入201相关联的用户凝视确定为电子设备100正面向或被定向朝向的方向。因此,数字助理200可以确定用户正在特定方向上看,因此输入分析器202可以确定需要附加上下文数据的可能性高。
在一些示例中,数字助理200基于电子设备100的正面相机或其他传感器来检测用户凝视。因此,当电子设备100是电话时,用户可以观看电子设备100的显示器。因此,电子设备100可以用正面相机接收用户面部的图像,并且基于该图像,数字助理200可以在提供口语输入201的同时确定用户正在看哪里,从而确定与口语输入201相关联的用户凝视。因此,数字助理200可以确定用户凝视正在观看显示器上的特定点,并且因此输入分析器202可以确定需要附加上下文数据的可能性低。相反地,输入数字助理200可以确定用户目光正在远离显示器观看,并且因此输入分析器202可以确定需要附加上下文数据的可能性高,因为用户可能指代未显示的某物。
在一些示例中,需要附加上下文数据的可能性是基于在接收口语输入201期间或之后电子设备100的位置。例如,当数字助理200接收口语输入201“那是什么?”时,数字助理200还可以接收指示用户靠近若干地标(例如布鲁克林大桥和自由女神像)的数据。因此,输入分析器202可以确定因为用户靠近若干地标并且已经提供了“那是什么?”的口语输入201,所以需要附加上下文数据来确定用户想要用“那”的地标的可能性高。相反,数字助理200可以在用户直接站在艾菲尔铁塔旁边时接收相同的口语输入201“那是什么?”。因此,输入分析器202可以确定因为用户直接靠近艾菲尔铁塔(并且如上所述可能面向艾菲尔铁塔或向它做手势),所以需要附加上下文数据来满足用户的请求的可能性低。
在一些示例中,需要附加上下文数据的可能性是基于数字助理200和用户之间的历史交互数据。例如,数字助理200可以在提供“那只动物是一只负鼠”的输出之后接收“他们吃什么?”的口语输入201。因此,输入分析器202然后可以确定因为用户输入201包括“他们”,所以口语输入201可能指的是数字助理200和与负鼠相关的用户之间的最近交流。因此,输入分析器202可以确定需要附加上下文来满足用户请求的可能性低。
在一些示例中,需要附加上下文数据的可能性是基于电子设备100的虚拟现实模式或增强现实模式是否激活。在一些示例中,数字助理200基于是否正在生成和/或显示一个或多个虚拟现实或增强现实对象来确定电子设备100的虚拟现实模式或增强现实模式是否激活。例如,数字助理200可以确定诸如飞机的虚拟现实对象正在生成并显示给用户,从而虚拟现实模式是激活的。因此,当数字助理200接收到口语输入201“谁做出这个?”时,输入分析器202可以确定口语输入201可能指的是虚拟现实飞机,并且因此确定需要附加上下文数据来满足用户请求的可能性低。
相反地,在一些示例中,需要附加上下文数据的可能性不是基于电子设备100的虚拟现实模式是否激活,而是基于本文所述的其他因素之一。例如,数字助理200可以确定电子设备100正在生成包括若干绘画的虚拟现实环境。数字助理200然后可以接收口语输入201“谁画了那幅画?”。因此,输入分析器202可以确定口语输入201的“那幅画”是含糊的,因为不清楚用户指的是哪一幅虚拟画。因此,输入分析器202可以确定需要附加上下文数据来满足用户请求的可能性高。另外,在一些示例中,输入分析器202可检测用户的手势、用户的凝视等,以进一步通知需要附加上下文数据的可能性,如上所述。
应当理解,上述用于确定需要附加上下文数据来满足口语输入201的请求的可能性的因素可以由输入分析器202以一个或多个因素的组合来检查,以基于一次可从电子设备100获得的数据来确定该可能性。
在确定需要附加上下文数据的可能性之后,输入分析器202确定需要附加上下文数据的可能性是否超过预定阈值。在一些示例中,预定阈值是指示需要附加上下文数据的可能性足够高以至于数字助理200应当获取附加数据以便确定如何响应用户请求的阈值。预定阈值可以是指示该重要性的任何数字,包括例如5、10、25、50、100等。
在一些示例中,当数字助理200接收到更多请求并成功地回答这些请求时,基于附加上下文数据对于响应用户的口头输入201的请求是否是必需的,可以调整预定阈值。例如,如果输入分析器202确定需要附加上下文数据,因为需要附加上下文数据的可能性超过预定阈值50,并且由一个或多个传感器接收的上下文数据203对于响应用户的请求不是必需的,则预定阈值可以增加到例如60。相似地,如果输入分析器202确定不需要附加上下文数据,因为需要附加上下文数据的可能性低于预定阈值50,并且数字助理200随后确定由传感器之一接收的上下文数据203对于响应用户的请求是必须的,则预定阈值可以降低到例如45。
如果需要附加上下文数据的可能性超过预定阈值,则数字助理200使传感器接口204启用电子设备100的一个或多个传感器,诸如图像传感器108、取向传感器110和位置传感器116。电子设备100的传感器包括一个或多个相机(例如,图像传感器108)、陀螺仪(例如,取向传感器110)、加速度计(例如,取向传感器110)、高度计(例如,取向传感器110)、GPS传感器(例如,位置传感器116)和网络检测器(例如,位置传感器116)。因此,当数字助理200确定该可能性超过预定阈值时,数字助理200使传感器接口204启用电子设备100的相机、陀螺仪、加速度计、高度计、GPS传感器或网络检测器中的一者。因此,所接收的上下文数据包括图片、视频流、加速度数据、高度数据、GPS数据、网络数据、旋转数据、速度数据等。
在一些示例中,在上述可能性确定之前或之后,输入分析器202可以确定口语输入201的一个或多个不明确术语或指示性指代是否指代对象。例如,如图3所示,电子设备100和数字助理200可以接收口语输入301“那是什么动物?”,并且输入分析器202可以确定需要附加上下文数据来满足口语输入301的请求的可能性超过如上所述的预定阈值。因此,数字助理200启用电子设备100的相机(例如,图像传感器108),以接收图片300作为上下文数据203。输入分析器202然后可以确定口语输入301的指示性指代指的是对象302和303中的哪一个。具体地,输入分析器202可以基于口语输入301中“动物”的使用来确定口语输入301可能指的是对象302,该对象是图片300中的负鼠。在一些示例中,可以由数字助理200的不同模块或由输入分析器202和数字助理200的一个或多个其他模块来执行对口语输入201的一个或多个不明确术语或指示性指代是否指代对象的确定。
在一些示例中,确定口语输入201的一个或多个不明确术语或指示性指代是否指代对象包括执行诸如边缘检测、边缘提取、光学字符识别、图像分割、纹理分析,运动分析等图像处理技术。这些图像处理技术可以通过使用机器学习模型、神经网络、深度学习网络或任何其他可接受的图像处理软件和/或模块来执行。这些图像处理技术可以允许输入分析器202确定图像中的对象、图像中的文本、图像中的边缘等。
在一些示例中,当传感器被传感器接口204启动时,电子设备100的传感器自动接收上下文数据203。例如,当电子设备100是头戴式设备时,数字助理200可以使传感器接口204启用电子设备100的相机。因此,电子设备100的相机可以自动接收用户/电子设备100的视图的图片的上下文数据203。又如,当电子设备100是智能电话时,数字助理200可以使传感器接口204启用电子设备100的相机。因此,电子设备100的相机可以自动接收电子设备100的视图的图片的上下文数据203,其在该示例中不同于用户的视图。作为又一示例,数字助理200可以使传感器接口204启用电子设备100的加速度计。因此,电子设备100的加速度计可以自动接收电子设备100的速度的上下文数据203。
在一些示例中,在背景中启动电子设备100的传感器。因此,不向电子设备100的用户提供传感器的用户界面或者传感器被启动的任何其他指示。如上所述,数字助理200可以使传感器接口204启用电子设备100的相机,并且因此电子设备100的相机可以接收背景中的图片的上下文数据203,而不提供任何用户界面或其他指示。这也可以在电子设备100的陀螺仪、加速度计、高度计、GPS传感器、网络检测器或其他传感器的情况下发生。
在一些示例中,启动电子设备100的传感器包括在电子设备100的显示器上显示与传感器相关联的用户界面,如图4所示。例如,当传感器接口204启动电子设备400的相机时,电子设备400可以在电子设备400的显示器401上显示与相机相关联的用户界面402。在一些示例中,显示与传感器相关联的用户界面包括在与传感器相关联的用户界面上显示与接收上下文数据203相关联的一个或多个示能表示。例如,如图4所示,用户界面402包括与拍摄包括对象302和303的图片300相关联的示能表示403。在一些示例中,用户界面402的示能表示403或另一示能表示可以作为拍摄图片300的补充或替代与拍摄视频流相关联。
在一些示例中,电子设备100的传感器在被用户提示时接收上下文数据。在一些示例中,提示电子设备100的传感器接收上下文数据包括选择电子设备100的按钮。在一些示例中,提示电子设备100的传感器接收上下文数据包括选择与传感器相关联的用户界面的示能表示。继续上述示例,当电子设备400显示与相机相关联的用户界面402时,在用户界面402中显示用于拍摄图片的示能表示403。因此,用户可以选择用于拍摄照片的示能表示403,从而提示电子设备400的相机接收图片300的上下文数据203。因此,当用户提示时,电子设备400的相机接收上下文数据203(例如,图片300)。
又如,当传感器接口204启动电子设备100的加速度计时,电子设备100可以显示与加速度计相关联的用户界面,该用户界面可包括获取电子设备100的速度的示能表示。因此,用户可以选择该示能表示并提示电子设备100的加速度计接收电子设备100的速度的上下文数据203。因此,当用户提示时,电子设备100的加速度计接收电子设备100的速度的上下文数据203。
在一些示例中,输入是确认该提示的声音输入。例如,数字助理200可以提供“你想拍摄图片吗?”的口语输出作为对用户的提示。因此,用户可以用“是”来响应以确认电子设备100的相机应当接收图片的上下文数据203,或者用“否”来响应以阻止电子设备100的相机接收图片的上下文数据203。
在一些示例中,与传感器相关联的用户界面显示在与数字助理200相关联的另一用户界面中。例如,如图5所示,电子设备400可在显示器401上显示用户界面502,该用户界面包括与数字助理200相关联的用户界面内的相机界面。这样,数字助理系统200可以在用户和数字助理系统200之间的交互期间保持连续性。因此,图片300的上下文数据203也可以显示在用户界面502中,从而向用户提供上下文数据203。
在一些示例中,与传感器相关联的用户界面属于与传感器相关联的应用程序。在一些示例中,该应用程序是第一方应用程序。例如,电子设备100可以具有预先安装的相机应用程序。因此,与相机相关联的用户界面可以属于预先安装的相机应用程序。在一些示例中,该应用程序是第三方应用程序。例如,作为第一方相机应用程序的替代或补充,电子设备100还可以安装有第三方相机应用程序。因此,与相机相关联的用户界面可以属于第三方相机应用程序。
在一些示例中,数字助理200提供确认应当接收上下文数据203的提示。数字助理200还接收确认应当接收上下文数据203或停止接收上下文数据203的输入。在一些示例中,输入是对电子设备100的按钮的选择或用户界面的示能表示。例如,如图5所示,数字助理200可以在电子设备400的显示器401上的用户界面502中提供询问“你想拍摄图片吗?”的提示503。提示503还可包括分别包括“是”和“否”作为供用户选择的选项的示能表示504和505。用户可以提供选择示能表示504和505之一的输入,以确认应当拍摄图片300或停止拍摄图片300。因此,如果用户选择包括“是”的示能表示504,则电子设备400接收图片300。相反地,如果用户选择包括“否”的示能表示505,则电子设备400不接收图片300。
在接收到上下文数据之后,数字助理200向响应生成器206提供口语输入201和上下文数据203,并且响应生成器206基于上下文数据203确定对请求的响应207。例如,响应于口语输入201“那是什么动物?”,在基于包括负鼠的图片的上下文数据203进行搜索之后,响应生成器206可以提供“那只动物是负鼠”的响应207,如下所述。又如,响应于口语输入“这是哪里?”,在基于电子设备100的GPS坐标的上下文数据203进行搜索之后,响应生成器206可以提供响应207“Paris,France”。
在一些示例中,响应生成器206通过基于上下文数据203执行搜索来确定响应207。在一些示例中,搜索包括对电子设备100或所连接的电子设备(例如,服务器)的一个或多个数据库的搜索。在一些示例中,搜索包括使用搜索引擎、网站或类似工具在因特网上的搜索。在一些示例中,搜索包括使用图像分类器、对象检测器或其他神经网络或机器学习模型来处理上下文数据203以获得附加信息。例如,当上下文数据203是包括动物的图片时,响应生成器206可以在本地数据库中和在因特网上对图片中的动物执行搜索,以确定对口语输入201的请求的响应207。因此,响应生成器206可以基于图像分类器和图片中的动物的数据库搜索结果来确定该动物是负鼠,并且生成响应207“那只动物是负鼠”。
在一些示例中,搜索除了基于上下文数据203外还基于其他数据。例如,当上下文数据203是艾菲尔铁塔的图片时,响应生成器206可以连同电子设备100的位置数据(例如,GPS坐标)一起执行对图片的搜索,以基于该图片通知搜索结果。因此,响应生成器206可以确定指示类似于上下文数据203的图片的搜索结果和所确定的位置数据可能是对用户请求的正确响应。因此,响应生成器206可以生成响应207“Paris,France”来提供给用户。
在一些示例中,响应生成器206生成包括基于上下文数据203执行的搜索的结果的响应207。例如,当响应生成器206生成“那只动物是负鼠”的响应207时,响应生成器206还可以在响应207中包括对该动物的因特网搜索的结果。因此,响应207可以包括到网站的超链接,该网站提供关于负鼠或其他指代的信息或用户在回答他们的请求时可能发现有帮助的信息。
数字助理200然后提供对该请求的响应207。在一些示例中,对请求的响应作为音频输出提供。例如,数字助理200可以提供响应207“那只动物是负鼠”作为音频输出。在一些示例中,在电子设备100的显示器上提供对该请求的响应。例如,数字助理200可以在电子设备100的显示器上提供响应207“那只动物是负鼠”。在一些示例中,数字助理200在电子设备100的显示器上提供响应,并将所显示的响应回送为音频输出。因此,数字助理200可以在电子设备100的显示器上显示响应207“那只动物是负鼠”,同时提供响应207“那只动物是负鼠”作为音频输出。
在一些示例中,数字助理200在提供响应207作为音频输出的同时在电子设备100的显示器上提供除了响应207之外的其他信息。例如,数字助理200可以提供响应207“那只动物是负鼠”作为音频输出,然后在电子设备100的显示器上提供除了与负鼠相关的搜索结果之外的相同响应,该搜索结果包括一个或多个事实、超链接或可能对用户有帮助的其他信息。
在一些示例中,在提供对该请求的响应后,数字助理200存储(例如,保存)上下文数据203。例如,在提供响应207“那只动物是负鼠”之后,数字助理200可以存储或保存包括负鼠的图片的上下文数据203以供数字助理200和/或用户将来参考。在一些示例中,数字助理200除了存储上下文数据203之外还存储搜索结果和/或响应。继续上面的示例,数字助理200还可存储或保存与负鼠相关的搜索结果,以供数字助理200和/或用户进一步参考,以应答进一步的请求或提供进一步的信息。
在一些示例中,数字助理200丢弃(例如,删除)上下文数据203。例如,在提供响应之后,数字助理200可以确定上下文数据203对于进一步的响应是无用的或不必要的,并且因此可以丢弃或删除上下文数据203。
基于以上公开内容,应当理解,所述方法和结构允许数字助理和电子设备使用一个或多个传感器来确定是否应当启用额外的传感器以及是否应当接收数据来对由用户提供的一个或多个请求做出响应。这样,可以根据需要选择性地激活传感器,从而减少一次所需的处理并节省了电量。
图6是示出根据各种示例的用于确定对请求的响应的过程的流程图。方法600在具有一个或多个输入设备(例如,触摸屏、麦克风、相机)和无线通信无线电(例如,蓝牙连接、WiFi连接、移动宽带连接诸如4GLTE连接)的设备(例如,设备100、400)处执行。在一些实施方案中,电子设备包括多个相机。在一些实施方案中,电子设备包括仅一个相机。在一些示例中,该设备包括一个或多个生物识别传感器,其任选地包括相机,诸如红外相机、热成像相机或它们的组合。方法600中的一些操作可选地被组合,一些操作的次序可选地被改变,并且一些操作可选地被省略。
在框602处,接收包括请求的口语输入(例如,口语输入201)。在一些示例中,请求包括不明确术语。
在框604处,对口语输入(例如,口语输入201)执行语义分析。在一些示例中,对口语输入执行语义分析还包括确定请求是否包括不明确术语。在一些示例中,根据确定请求包括不明确术语,确定不明确术语是否指代对象(例如,对象302、对象303)。
在框606处,基于该语义分析确定需要附加上下文数据(例如,上下文数据203、图片300)来满足该请求的可能性。在一些示例中,基于该语义分析确定需要附加上下文数据来满足该请求的可能性还包括确定在接收口语输入(例如,口语输入201)期间电子设备(例如,电子设备100、电子设备400)的移动。在一些示例中,基于该语义分析确定需要附加上下文数据来满足该请求的可能性还包括确定在接收到口语输入之后的预定时间内电子设备的移动低于阈值。
在一些示例中,基于该语义分析确定需要附加上下文数据(例如,上下文数据203、图片300)来满足该请求的可能性还包括在接收到口语输入(例如,口语输入201)之后确定电子设备(例如,电子设备100、电子设备400)的姿态。在一些示例中,基于该语义分析确定需要附加上下文数据来满足该请求的可能性还包括在接收口语输入的同时确定用户的凝视。在一些示例中,基于该语义分析确定需要附加上下文数据来满足该请求的可能性还包括在接收到口语输入之后确定电子设备的位置。
在框608处,根据所确定的可能性超过阈值,启用电子设备(例如,电子设备100、电子设备400)的相机(例如,图像传感器108)。在一些示例中,在背景中启用该电子设备的相机。在一些示例中,用该电子设备的相机拍摄照片(例如,图片300)。
在一些示例中,显示与电子设备(例如,电子设备100、电子设备400)的相机(例如,图像传感器108)相关联的用户界面(例如,用户界面402、用户界面502)。在一些示例中,与电子设备的相机相关联的用户界面属于相机应用程序。在一些示例中,提供确认应当拍摄图片(例如,图片300)的提示(例如,提示503)。在一些示例中,接收确认应当拍摄图片的用户输入。在一些示例中,用电子设备的相机拍摄照片。
在框610处,基于由电子设备(例如,电子设备100、电子设备400)的相机(例如,图像传感器108)接收的上下文数据(例如,上下文数据203、图片300)来确定对请求的响应(例如,响应207)。在一些示例中,基于由电子设备的相机接收的上下文数据来确定对请求的响应还包括基于由相机接收的数据来执行搜索,以及基于搜索的结果来提供对请求的响应。在一些示例中,该搜索除了基于由相机接收的上下文数据之外还基于其他上下文数据。在一些示例中,保存由相机接收的上下文数据。在一些示例中,在提供对请求的响应之后,丢弃由相机接收的上下文数据。
如上所述,本技术的一个方面是收集和使用可从各种来源获得的数据以指代和确定请求的对象。本公开预期,在一些实例中,这些所采集的数据可包括唯一地识别或可用于联系或定位特定人员的个人信息数据。此类个人信息数据可以包括人口统计数据、基于位置的数据、电话号码、电子邮件地址、推特ID、家庭地址、与用户的健康或健身水平有关的数据或记录(例如,生命体征测量、药物信息、锻炼信息)、出生日期或任何其他识别或个人信息。
本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,个人信息数据可用于递送用户更感兴趣的请求的准确响应。因此,使用此类个人信息数据使得用户能够计算出对响应消解的控制。此外,本公开还预期个人信息数据有益于用户的其他用途。例如,健康和健身数据可用于向用户的总体健康状况提供见解,或者可用作使用技术来追求健康目标的个人的积极反馈。
本公开设想负责采集、分析、公开、传输、存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,此类实体应实施并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。此类政策应该能被用户方便地访问,并应随着数据的采集和/或使用变化而被更新。来自用户的个人信息应当被收集用于实体的合法且合理的用途,并且不在这些合法使用之外共享或出售。此外,应在收到用户知情同意后进行此类采集/共享。另外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保有权访问个人信息数据的其他人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。另外,应当调整政策和实践,以便采集和/或访问的特定类型的个人信息数据,并适用于包括管辖范围的具体考虑的适用法律和标准。例如,在美国,对某些健康数据的收集或获取可能受联邦和/或州法律的管辖,诸如健康保险流通和责任法案(HIPAA);而其他国家的健康数据可能受到其他法规和政策的约束并应相应处理。因此,在每个国家应为不同的个人数据类型保持不同的隐私实践。
不管前述情况如何,本公开还设想用户选择性地阻止使用或访问个人信息数据的示例。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,在启用传感器的情况下,本技术可被配置为在注册服务期间或之后任何时候允许用户选择“选择加入”或“选择退出”参与对个人信息数据的收集。又如,用户可以选择限制所捕获的数据和/或请求被保持的时间长度,或完全禁止保存数据或请求的开发。除了提供“选择加入”和“选择退出”选项外,本公开还设想提供与访问或使用个人信息相关的通知。例如,可在下载应用时向用户通知其个人信息数据将被访问,然后就在个人信息数据被应用访问之前再次提醒用户。
此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据收集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用程序中,数据去标识可用于保护用户的隐私。可在适当时通过移除特定标识符(例如,出生日期等)、控制所存储数据的量或特异性(例如,在城市级别而不是在地址级别收集位置数据)、控制数据如何被存储(例如,在用户之间聚合数据)、和/或其他方法来促进去标识。
因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的示例,但本公开还设想各种示例也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种示例不会由于缺乏此类个人信息数据的全部或一部分而无法正常进行。例如,可基于非个人信息数据或绝对最小量的个人信息(诸如数字助理可用的非个人信息)或公开可用信息来推断偏好而启用传感器。
- 选择性地激活设备上语音识别并且在选择性地激活设备上的NLU和/或设备上履行中使用识别的文本
- 用于选择性地切割蛋白质的合成催化剂和使用它选择性地切割蛋白质的方法