基于部分热词发起动作的制作方法

文档序号:21801324发布日期:2020-08-11 20:56阅读:106来源:国知局
基于部分热词发起动作的制作方法

分案说明

本申请属于申请日为2014年3月21日的中国发明专利申请no.201480066328.1的分案申请。

本公开讨论了基于部分热词而发起动作,并且更具体地说,响应于检测到部分热词而提供初始动作。



背景技术:

声音发声可以包括热词,即使得系统执行对应动作的预定保留词。电子设备上的语音识别服务通常从用户接收所说的词的声音发声,并且将所说的词转录成文本。为了实现此,语音识别服务可能试图使话语输入的声音与文本词的语音表示相匹配。



技术实现要素:

根据在该说明书中所描述的主题的一些创新方面,对热词的初始部分的检测使得将执行动作。用户可能会向移动计算设备说诸如"okgoogle(好的google)"这样的热词,这使得移动计算设备执行动作。例如,热词“okgoogle(好的google)”使得移动计算设备从睡眠或待机状态醒来。

一旦检测到热词的初始部分,例如一旦检测到热词“okgoogle(好的google)”的“ok(好的)”部分,则移动计算设备可使得与完整热词“okgoogle(好的google)”相关联的动作被执行。例如,一旦检测到部分热词“ok(好的)”,则移动计算设备可打开网络连接。通过在检测到热词的初始部分之后使得动作的与该热词相关联的子集被执行,可降低与热词相关联的等待时间,并且因而,与该热词相关联的处理时间降低了,同时这对用户是透明的。也就是说,用户感知到移动计算设备的速度提高。

在本说明书中所描述的主题的创新方法可以具体体现为下述方法,该方法包括动作:接收音频数据;确定音频数据的初始部分与热词的初始部分相对应;响应于确定音频数据的初始部分与热词的初始部分相对应,从当检测到整个热词时所执行的一个或多个动作的集合当中选择一个或多个动作的子集;并且使得该子集中的一个或多个动作被执行。

这些方面的其它实施例包括对应系统、装置、以及编码在计算机存储设备上的被配置为执行所述方法的动作的计算机程序。

这些及其它实施例每一个可以选择性地包括以下特征中的一个或多个。例如,识别音频数据的初始部分的一个或多个声学特征;将音频数据的初始部分的一个或多个声学特征与和存储在数据库中的一个或多个热词相关联的一个或多个声学特征进行比较;以及基于该比较,确定音频数据的初始部分与存储在数据库中的一个或多个热词中的热词的初始部分相对应。获得音频数据的初始部分的转录,该音频数据包括语音发声;将音频的初始部分的转录与和存储在数据库中的一个或多个热词相关联的一个或多个转录进行比较;以及基于该比较,确定音频的初始部分与存储在数据库中的一个或多个热词中的热词的初始部分相对应。热词的初始部分包括小于整个热词。子集中的一个或多个动作包括执行该动作的计算设备的用户不可见的动作。子集中的一个或多个动作包括在执行动作的计算设备的后台计算环境中执行的动作。将中断信号传送到在计算设备上执行的操作系统以执行一个或多个动作。中断信号使得操作系统对计算设备的照相机功能初始化。中断信号使得操作系统将计算设备从睡眠状态激活。中断信号使得操作系统对计算机设备上的网络连接初始化。中断信号使得操作系统预加载计算设备上与热词相关联的应用。

该特征进一步包括例如:接收音频数据的随后部分;确定音频数据的初始部分和音频数据的随后部分整体地与整个热词相对应;响应于确定音频数据的初始部分和音频数据的随后部分整体地与整个热词相对应,从当检测到整个热词时所执行的一个或多个动作的集合中选择一个或多个动作的附加子集;并且使得附加子集中的一个或多个动作被执行。一个或多个动作的集合包括该一个或多个动作的子集以及该一个或多个动作的附加子集。接收音频数据的随后部分;确定音频数据的初始部分和音频数据的随后部分整体地与整个热词不对应;并且响应于确定音频数据的初始部分和音频数据的随后部分整体地与整个热词不对应,使得附加子集中的一个或多个动作将被反转(reverse)。选择所述一个或多个动作的附加子集,所述一个或多个动作的附加子集用于当被执行时反转所述一个或多个动作的子集中的一个或多个动作;以及使得所述附加子集中的一个或多个动作将执行。在接收到音频数据之前,接收(i)指示音频数据的初始部分与热词的初始部分相对应的数据以及(ii)指示与热词相关联的动作的子集的数据。热词是特定项,所述特定项触发对在该特定项之后的一个或多个项的附加项的语义解释。

在附图及下面的描述中阐述了在该说明书中所描述的主题的一个或多个实施例的细节。从该描述、附图、以及权利要求将显而易见地得知该主题的其它潜在特征、方面、以及优点。

附图说明

图1描绘了用于检测部分热词的示例系统。

图2a-2f描绘了用于检测部分热词的示例过程的泳道图。

图3描绘了用于检测部分热词的示例流程图。

图4描绘了可以用于实现这里所描述的技术的计算机设备和移动计算机设备。

附图中的相同附图标记指示相同元件。

具体实施方式

图1描绘了用于检测部分热词的系统100。在一些示例中,系统100包括音频子系统102、部分热词动作启动器104、热词检测器106、热词至动作映射器108、热词至动作数据库110、以及动作引擎112。在一些示例中,系统100是例如移动计算设备100的移动计算设备。在一些示例中,移动计算设备包括智能电话、或者平板计算设备。移动计算设备100可包括例如麦克风的用于检测来自用户116的发声的任何音频检测装置。

在一些示例中,用户116说出移动计算设备100所检测的一个或多个词。在一些示例中,发声包括使得移动计算设备100执行动作的一个或多个热词或者部分热词。如在所图示的示例中所描述的,用户116说出“okgoogle(好的google)”。移动计算设备100利用适当地接收发声“okgoogle(好的google)”的音频数据的音频子系统102来检测“okgoogle(好的google)”。

在所图示的示例中,音频子系统102在时间t1接收与发声“ok(好的)”相关联的音频数据的初始部分。音频数据的初始部分可包括该发声的最初几个音频帧,或者与该发声相关联的音频数据的最初几百毫秒。在一些示例中,音频子系统102对发声进行处理以生成包括发声的一部分或者基本上发声的整个部分的波形数据。

在一些示例中,音频子系统102对所接收到的音频数据进行适当地处理。例如,音频子系统102识别音频数据的初始部分的一个或多个声学特征。在所说明的示例中,音频子系统102识别与和发声“ok(好的)”相关联的音频数据的初始部分相关联的声学特征。在一些示例中,音频子系统102获得与发声“ok(好的)”相关联的音频数据的初始部分的转录。在所说明的示例中,音频子系统102获得与发声“ok(好的)”相关联的音频数据的初始部分的转录。

在一些示例中,音频子系统102将经处理的音频数据提供给部分热词动作启动器104。例如,音频子系统102将与发声“ok(好的)”相关联的经处理的音频数据提供给部分热词动作启动器104。在一些示例中,经处理的音频数据可包括与发声“ok(好的)”相关联的声学特征、与发声“ok(好的)”相关联的转录、或者这两者。

部分热词动作启动器104接收来自音频子系统102的经处理的音频数据,例如,经处理的音频数据可包括与发声“ok(好的)”相关联的音频数据、与发声“ok(好的)”相关联的声学特征、与发声“ok(好的)”相关联的转录、或者其任何组合。部分热词动作启动器104将经处理的音频数据提供给热词检测器106。

热词检测器106接收来自部分热词动作启动器104的经处理的音频数据。在所图示的示例中,热词检测器106最初地接收与发声“ok(好的)”相关联的经处理的音频数据,例如音频数据的初始部分。热词检测器106确定所接收到的音频数据与热词的初始部分相对应。具体地说,热词检测器106包括部分热词检测器118。部分热词检测器118确定音频数据的初始部分与热词的初始部分相对应。在所图示的示例中,部分热词检测器118确定与发声“ok(好的)”相关联的音频数据的初始部分与热词“okgoogle(好的google)”的初始部分相对应。在一些示例中,热词的初始部分词包括小于整个热词。例如,初始部分“ok(好的)”小于整个热词“okgoogle(好的google)”。

在一些示例中,所接收到的音频数据包括例如由音频子系统102所识别出的相关联的声学特征。部分热词检测器118将与发声“ok(好的)”相关联的音频数据的初始部分的声学特征与和存储在数据库中的一个或多个热词相关联的声学特征进行比较。具体地说,每个热词与一个或多个声学特征(例如热词的发音)相关联。数据库或表存储热词与相关联的声学特征(多个声学特征)之间的映射。在一些示例中,一个热词与两个或更多声学特征相关联。在一些示例中,一个声学特征与两个或更多热词相关联。

基于对声学特征的比较,确定与发声“ok(好的)”相关联的音频数据的初始部分与存储在数据库中的热词的初始部分相对应。例如,基于对发声“ok(好的)”的声学特征与热词“okgoogle(好的google)”的声学特征的比较确定与发声“ok(好的)”相关联的音频数据的初始部分的声学特征与热词“okgoogle(好的google)”的初始部分相对应。

在一些示例中,经处理的音频数据包括例如由音频子系统102所获得的转录。部分热词检测器118将与发声“ok(好的)”相关联的音频数据的初始部分的转录与和存储在数据库中的热词相关联的转录进行比较。具体地说,热词与转录相关联。数据库或表存储热词与转录之间的映射。

基于对转录的比较,确定与部分发声“ok(好的)”相关联的音频数据的初始部分的转录与存储在数据库中的热词的初始部分相对应。例如,基于对发声“ok(好的)”的转录与热词“okgoogle(好的google)”的转录的比较确定与发声“ok(好的)”相关联的音频数据的初始部分的转录与热词“okgoogle(好的google)”的初始部分相对应。

热词检测器106将确定音频数据的初始部分与热词的初始部分相对应的结果提供给部分热词动作启动器104。具体地说,在所图示的示例中,热词检测器106将部分热词“ok(好的)”或者与部分热词“ok(好的)”相关联的信号提供给部分热词动作启动器104。

部分热词动作启动器104接收来自热词检测器106的确定的结果。具体地说,在所图示的示例中,部分热词动作启动器104接收来自热词检测器106的部分热词“ok(好的)”或者与部分热词“ok(好的)”相关联的信号。该信号可包括对与发声“ok(好的)”相关联的音频数据的初始部分和热词的初始部分相对应的指示。作为响应,部分热词动作启动器104将部分热词“ok(好的)”或者与部分热词“ok(好的)”相关联的信号提供给热词至动作映射器108。

热词至动作映射器108接收来自部分热词动作启动器104的确定音频数据的初始部分与热词的初始部分相对应的结果。具体地说,在所图示的示例中,热词至动作映射器108接收来自部分热词动作启动器104的部分热词“ok(好的)”或者与部分热词“ok(好的)”相关联的信号。热词至动作映射器108从当检测到整个热词时所执行的动作的集合中选择动作的子集。具体地说,每个热词与一个或多个动作相关联,例如当检测到整个热词时所执行的动作。热词至动作数据库110存储热词与相关联动作之间的映射。在一些示例中,将一个热词映射到两个或多个动作。在一些示例中,将一个动作映射到两个或更多热词。

在所图示的示例中,一旦检测到部分热词“ok(好的),”,热词至动作映射器108识别与整个热词“okgoogle(好的google)”相关联的动作的特定集合。也就是说,热词至动作映射器108与热词动作数据库110进行通信以识别出整个热词“okgoogle(好的google)”与动作的特定集合之间的映射,所述动作的特定集合来自与整个热词“okgoogle(好的google)”相关联的动作的多个集合。热词至动作映射器108从与整个热词“okgoogle(好的google)”相关联的动作的特定集合当中选择动作的子集。具体地说,热词至动作映射器108选择进一步与整个热词“okgoogle(好的google)”的部分热词“ok(好的)”相关联的动作的子集。在一些示例中,热词至动作映射器108识别出与部分热词“ok(好的)”相关联的动作的子集。

在一些示例中,热词至动作映射器108可使用用于选择动作的子集的多个准则。例如,热词至动作映射器108可从动作的特定集合选择对用户不可见的动作。也就是说,选择对用户不可见的动作,所述动作包括使得将由移动计算设备116执行的不容易被用户116注意到或者检测到(例如可由用户116在视觉上或听觉上检测到)的动作。例如,动作可包括未在移动计算设备100的用户界面上示出的动作,或者不会使移动计算设备100发出噪声的动作。在一些示例中,所选动作可包括在移动计算设备100的后台计算环境中执行的动作。在所图示的示例中,动作的子集包括例如与第三方计算服务器或者后端计算服务器建立网络连接的动作。在一些示例中,所选动作可包括不具有持久或永久效果的动作,即在移动计算设备上是可反转的。

热词至动作映射器108将识别动作的子集的数据提供给部分热词动作启动器104。具体地说,热词至动作映射器108将识别与热词“okgoogle(好的google)”相关联的动作的子集的数据提供给热词动作启动器104。

部分热词动作启动器104接收来自热词至动作映射器108的识别动作的子集的数据,并且作为响应,将识别动作的子集的数据提供给动作引擎112。具体地说,通过将识别动作的子集的数据提供给动作引擎112,部分热词动作启动器104使得动作的子集被执行。

动作引擎112接收来自部分热词动作启动器104的识别动作的子集的数据。在所图示的示例中,动作引擎112接收如由热词至动作映射器108所选择的识别与热词“okgoogle(好的google)”的初始部分相关联的动作的子集的数据。具体地说,在时间t1执行与整个热词“okgoogle(好的google)”的部分热词“ok(好的)”相关联的动作的子集。动作引擎112使得例如由在移动计算设备100上执行的操作系统来执行用于建立网络连接的动作。

在一些示例中,使得动作的子集被执行包括将中断信号传送到在移动计算设备100上执行的操作系统。在一些示例中,中断信号使得操作系统对移动计算设备100的照相机功能进行初始化。在一些示例中,中断信号使得操作系统将计算设备100从睡眠状态激活。也就是说,移动计算设备100的状态从睡眠状态或者“关闭”状态变为唤醒状态或“开启”状态。在一些示例中,中断信号使得操作系统预加载存储在移动计算设备100上的与热词相关联的应用。也就是说,可将应用预加载到移动计算设备100的存储器中。

在一些进一步的实施方式中,在接收到音频数据的初始部分之后,音频子系统102接收音频数据的随后部分。例如,音频子系统102接收例如在音频数据的初始部分之后的所检测到的发声的随后部分。在所图示的示例中,音频子系统102在时间t2接收与发声“google”相关联的音频数据的随后部分。音频子系统102对所接收到的音频数据进行适当处理。在一些示例中,音频子系统102接收包括初始部分和随后部分的音频的整个部分。

在一些示例中,热词是特定项,所述特定项触发对在所述特定项之后的一个或多个项的附加项的语义解释。例如,通过与和热词的初始部分相对应的发声“ok(好的)”相关联的音频数据的初始部分,音频子系统102提供对与发声“google”相关联的音频数据的随后部分的语义解释。

在一些示例中,音频子系统102将与整个发声相关联的经处理的音频数据提供给部分热词动作启动器104。例如,音频子系统102将与发声“okgoogle(好的google)”相关联的经处理的音频数据提供给部分热词动作启动器104。在一些示例中,经处理的音频数据可包括与发声“okgoogle(好的google)”相关联的声学特征、与发声“okgoogle(好的google),”相关联的转录、或者这两者。

部分热词动作启动器104接收来自音频子系统102的经处理的音频数据,例如,经处理的音频数据可包括与发声“okgoogle(好的google)”相关联的音频数据、与和发声“okgoogle(好的google)”相关联的音频数据相关联的声学特征、与发声“okgoogle(好的google)”相关联的音频数据相关联的转录、或者其任何组合。部分热词动作启动器104将经处理的音频数据提供给热词检测器106。

热词检测器106接收来自部分热词动作启动器104的经处理的音频数据。在所图示的示例中,热词检测器106接收与和发声“ok(好的)”相关联的音频的初始部分以及和发声“google”相关联的音频数据的随后部分相关联的经处理的音频数据。在其它词中,热词检测器106接收与整个发声“okgoogle(好的google)”相关联的音频数据。在所图示的示例中,热词检测器106确定音频数据的初始部分和随后部分整体地与整个热词“okgoogle(好的google)”相对应。

热词检测器106将确定与发声“okgoogle(好的google)”相关联的音频数据的初始部分和随后部分整体地与整个热词相对应的结果提供给部分热词动作启动器104。具体地说,在所图示的示例中,热词检测器106将整个热词“okgoogle(好的google)”或者与整个热词“okgoogle(好的google)”相关联的信号提供给部分热词动作启动器104。该信号可包括对音频数据的初始部分和随后部分整体地与整个热词相对应的指示。

部分热词动作启动器104接收来自热词检测器106的确定的结果。具体地说,在所图示的示例中,部分热词动作启动器104接收来自热词检测器106的整个热词“okgoogle(好的google)”或者与整个热词“okgoogle(好的google)”相关联的信号。作为响应,部分热词动作启动器104将整个热词“okgoogle(好的google)”或者与整个热词“okgoogle(好的google)”相关联的信号提供给热词至动作映射器108。

热词至动作映射器108接收来自部分热词动作启动器104的确定与发声“okgoogle(好的google)”相关联的音频数据的初始部分和随后部分整体地与整个热词相对应的结果(例如信号)。具体地说,在所图示的示例中,热词至动作映射器108接收来自部分热词动作启动器104的整个热词“okgoogle(好的google)”或者与整个热词“okgoogle(好的google)”相关联的信号。热词至动作映射器108从当检测到整个热词时所执行的动作的集合中选择动作的附加子集。

在所图示的示例中,一旦接收到整个热词“okgoogle(好的google)”或者与整个热词“okgoogle(好的google)”相关联的信号,则热词至动作映射器108识别与整个热词“okgoogle(好的google)”相关联的动作的特定集合。也就是说,热词至动作映射器108与热词动作数据库110进行通信以识别出整个热词“okgoogle(好的google)”与来自动作的多个集合的动作的特定集合之间的映射。热词至动作映射器108从与整个热词“okgoogle(好的google)”相关联的动作的特定集合当中选择动作的附加子集。在一些示例中,与整个热词“okgoogle(好的google)”相关联的动作的集合包括动作的子集以及动作的附加子集。在一些示例中,动作的附加子集包括动作的子集。在一些示例中,动作的附加子集包括动作的子集中的一个或多个动作。例如,在检测到整个热词“okgoogle(好的google)”时,动作的子集中的每个动作可能尚未完全由动作引擎112执行。因而,动作的附加子集可进一步包括与动作的子集相关联的任何未执行的动作。

热词至动作映射器108将识别动作的附加子集的数据提供给部分热词动作启动器104。也就是说,热词至动作映射器108将识别与对整个热词“okgoogle(好的google)”的检测相关联的动作的附加子集的数据提供给热词动作启动器104。

部分热词动作启动器104接收来自热词至动作映射器108的识别动作的附加子集的数据,并且作为响应,将识别动作的附加子集的数据提供给动作引擎112。具体地说,通过将识别动作的附加子集的数据提供给动作引擎112,部分热词动作启动器104使得动作的附加子集被执行。

动作引擎112接收来自部分热词动作启动器104的识别动作的附加子集的数据。在所图示的示例中,动作引擎112接收识别热词至动作映射器108所选择的与对整个热词的检测相关联的动作的附加子集的数据。具体地说,在时间t2执行与整个热词“okgoogle(好的google)”相关联的动作的附加子集。响应于接收到动作的附加子集,动作引擎112使得移动计算设备100的显示器或屏幕处于“开启”状态的动作。在一些示例中,响应于接收到动作的附加子集,动作引擎112引起显示用户界面的动作。在一些示例中,使得由动作引擎112并行地或者基本上同时地执行与对部分热词“ok(好的)”的检测相关联的动作的集合以及与对整个热词“okgoogle(好的google)”的检测相关联的动作的附加集合。

在一些进一步的实施方式中,在接收到音频数据之前,接收(i)指示音频数据的初始部分与热词的初始部分相对应的附加数据,以及(ii)指示与热词相关联的动作的子集的附加数据。例如,在接收到来自用户116的音频数据“okgoogle(好的google)”之前,对移动计算设备100进行“训练”(例如接收附加数据)使得部分热词检测器118能够确定音频数据的初始部分(例如“ok(好的)”发声)是否与热词的初始部分(例如“okgoogle(好的google)”)相对应。另外,例如,移动计算设备100接收附加数据,使得热词至动作映射器108和热词至动作数据库110能够识别与热词“okgoogle(好的google)”相关联的动作的子集。也就是说,热词至动作映射器108接收数据,使得热词动作数据库110映射热词(例如“okgoogle(好的google)”)与动作(例如建立网络连接动作和/或唤醒移动计算设备100)之间的相关性。

图2图示了音频子系统295、部分热词动作启动器296、热词检测器297、热词至动作映射器298、以及动作引擎299之间的交互的泳道图。在一些示例中,音频子系统295可包括图1的音频子系统102;部分热词动作启动器296可包括图1的部分热词启动器104;热词检测器297可包括图1的热词检测器106、部分热词检测器118、或者这两者;热词至动作映射器298可包括图1的热词至动作映射器108;并且动作引擎299可包括图1的动作引擎112。具体地说,在所图示的示例中,用户(例如用户116)将发声“okcomputerimeanokgooglecallmom(好的计算机我的意思是好的谷歌打电话给妈妈)”提供给移动计算设备(例如移动计算设备100)。

如在图2a中所图示的,在步骤201,音频子系统295接收部分发声“ok(好的)”并对其进行适当地处理。在步骤202,部分热词动作启动器296接收经处理的部分发声“ok(好的)”并将其转发到热词检测器297。在步骤203,热词检测器297确定部分发声“ok(好的)”至少与热词“okgoogle(好的google)”的初始部分相对应。在一些示例中,部分发声“ok(好的)”可与两个或更多热词的初始部分相对应。在步骤204,热词检测器297将该确定或结果提供给部分热词动作启动器296。例如,部分热词检测器296确定部分发声“ok(好的)”与热词“okgoogle(好的google)”的初始部分相对应。在步骤205,部分热词动作启动器296接收该确定或结果并且在步骤206,作为响应,触发热词至动作映射器298。例如,响应于与热词的初始部分相对应的部分发声“ok(好的)”,部分热词动作启动器296通过将部分热词“ok(好的)”或者与部分热词“ok(好的)”相关联的信号提供给热词动作启动器298来触发热词至动作映射器298。

在步骤207,热词至动作映射器298例如利用数据库将整个热词“okgoogle(好的google)”的部分热词“ok(好的)”映射到动作。例如,热词至动作映射器298将热词“okgoogle(好的google)”的部分热词“ok(好的)”映射到网络连接动作(例如初始化或打开网络连接)。在步骤208,热词至动作映射器298将与网络连接动作相关联的信息提供给部分热词动作启动器296。在步骤209,部分热词动作启动器296接收与网络连接动作相关联的信息。在步骤210,部分热词动作启动器296使得网络连接动作被执行。也就是说,部分热词动作启动器296将与网络连接动作相关联的信息提供给动作引擎299。在步骤211,动作引擎299对网络连接动作信息进行适当地处理,包括将中断信号传送到在移动计算设备上执行的操作系统以执行网络连接动作。

如在图2b中所图示的,在步骤215,音频子系统295接收部分发声“computer(计算机)”并对其进行适当地处理。在步骤216,部分热词动作启动器296接收经处理的部分发声“computer(计算机)”并同样将其转发到部分热词检测器118。在步骤217,热词检测器297确定整个发声“okcomputer(好的计算机)”至少与整个热词“okgoogle(好的google)”或者任何其它热词不对应。具体地说,在所图示的示例中,热词检测器297确定发声“okcomputer(好的计算机)”的初始部分和随后部分与整个热词不对应。

在一些示例中,经处理的音频数据包括例如由音频子系统102所识别出的相关联的声学特征。热词检测器297可将与整个发声“okcomputer(好的计算机)”相关联的音频数据的声学特征与和存储在数据库中的一个或多个热词相关联的声学特征进行比较。基于对声学特征的比较,确定与整个发声“okcomputer(好的计算机)”相关联的音频数据与存储在数据库中的热词不对应。

在一些示例中,经处理的音频数据包括例如由音频子系统295所获得的转录。热词检测器297可将与整个发声“okcomputer(好的计算机)”相关联的音频数据的转录与和存储在数据库中的热词相关联的转录进行比较。基于对转录的比较,确定与整个发声“okcomputer(好的计算机)”相关联的音频数据与存储在数据库中的热词不对应。

在步骤218,热词检测器297将该确定或结果提供给部分热词动作启动器296。例如,热词检测器297确定整个发声“okcomputer(好的计算机)”与热词不对应。在步骤219,部分热词动作启动器296接收该确定或结果,并且在步骤220,作为响应,触发热词至动作映射器298。例如,响应于发声“okcomputer(好的计算机)”与热词不对应,部分热词动作启动器297触发热词至动作映射器298。在步骤221,热词至动作映射器298选择当执行时使得打开网络连接动作将被反转或取消的动作的附加子集。例如,与热词相对应的每个特定动作可进一步与一个或多个附加动作相关联,所述一个或多个附加动作当被选择时用于反转先前所执行的特定动作。例如,在步骤211所执行的打开网络连接动作可与关闭网络连接动作相关联使得当未检测到热词“okgoogle(好的google)”时(例如在检测到部分热词“ok(好的)”之后)反转打开网络连接动作。在一些示例中,每个特定动作可与用于反转特定动作的两个或更多附加动作(例如使特定动作无效)相关联。

在步骤222,热词至动作映射器298将与关闭网络连接动作相关联的信息提供给部分热词动作启动器296。在步骤223,部分热词动作启动器296接收与关闭网络连接动作相关联的信息。在步骤224,部分热词动作启动器296使得关闭网络连接动作被执行。也就是说,部分热词动作启动器296将与关闭网络连接动作相关联的信息提供给动作引擎299。在步骤225,动作引擎299对关闭网络连接动作信息进行适当地处理,包括将中断信号传送到在移动计算设备上执行的操作系统以执行关闭网络连接动作。

如在图2c所图示,在步骤230,音频子系统295接收发声“imean(我的意思是)”并对其进行适当处理。在步骤231,部分热词动作启动器296接收经处理的发声“imean(我的意思是)”并将其转发到热词检测器297。在步骤232,热词检测器297确定发声“imean(我的意思是)”至少与热词的初始部分或者整个热词不对应。在步骤233,热词检测器297将该确定或结果提供给部分热词动作启动器296。在步骤234,部分热词动作启动器296接收该确定或结果,并且响应于发声“imean(我的意思是)”与热词的初始部分或者整个热词相不对应,不采取进一步动作。

在步骤235,音频子系统295接收部分发声“ok(好的)”并对其进行适当处理。在步骤236,部分热词动作启动器295接收已处理的部分发声“ok(好的)”并且将其转送到热词检测器297。在步骤237,热词检测器297确定部分发声“ok(好的)”至少与热词“okgoogle”的初始部分相对应。在步骤238,热词检测器297将该确定或结果提供给部分热词动作启动器296。例如,热词检测器297确定部分发声“ok(好的)”与热词“okgoogle”的初始部分相对应。在步骤239,部分热词动作启动器296接收该确定或结果并且在步骤240,作为响应,触发热词至动作映射器298。例如,响应于部分发声“ok(好的)”与热词的初始部分相对应,部分热词动作启动器296通过将部分热词“ok(好的)”或者与部分热词“ok(好的)”相关联的信号提供给热词至动作映射器298来触发热词至动作映射器298。

在步骤241,热词至动作映射器298例如利用数据库将部分热词“ok(好的)”映射到动作。例如,热词至动作映射器298将整个热词“okgoogle(好的google)”的部分热词“ok(好的)”映射到网络连接动作(例如初始化或打开网络连接)。在步骤242,热词至动作映射器298将与网络连接动作相关联的信息提供给部分热词动作启动器296。在步骤243,部分热词动作启动器296接收与网络连接动作相关联的信息。在步骤244,部分热词动作启动器296使得网络连接动作被执行。也就是说,部分热词动作启动器296将与网络连接动作相关联的信息提供给动作引擎299。在步骤245,动作引擎299对网络连接动作信息进行适当地处理,包括将中断信号传送到在移动计算设备上执行的操作系统以执行网络连接动作。

如在图2d中所说明的,在步骤250,音频子系统295接收部分发声“google”并对其进行适当处理。在步骤251,部分热词动作启动器296接收经处理的部分发声“google”并且将其转发到热词检测器297。在步骤252,热词检测器297确定发声“okgoogle(好的google)”至少与热词“okgoogle(好的google)”相对应。在步骤253,热词检测器297将该确定或结果提供给部分热词动作启动器296。例如,部分热词检测器297确定初始发声“ok(好的)”以及随后发声“google”整体地与热词“okgoogle(好的google)”相对应。在步骤254,部分热词动作启动器296接收该确定或结果并且在步骤255,作为响应,触发热词至动作映射器298。例如,响应于初始发声“ok(好的)”和随后发声“google”整体地与热词“okgoogle(好的google)”相对应,部分热词动作启动器296通过将整个热词“okgoogle(好的google)”或者与整个热词“okgoogle(好的google)”

相关联的信号提供给热词至动作映射器298来触发热词至动作映射器298。

在步骤256,热词至动作映射器298例如利用数据库将热词映射到动作。例如,热词至动作映射器298将热词“okgoogle(好的google)”映射到唤醒移动设备动作,例如将移动计算设备从睡眠状态或“关闭状态”唤醒到唤醒状态或“开启”状态。在步骤257,热词至动作映射器298将与唤醒移动设备动作相关联的信息提供给部分热词动作启动器296。在步骤258,部分热词动作启动器296接收与唤醒移动设备动作相关联的信息。在步骤259,部分热词动作启动器296使得唤醒移动设备动作被执行。也就是说,部分热词动作启动器296将与唤醒移动设备动作相关联的信息提供给动作引擎299。在步骤260,动作引擎299对唤醒移动设备动作信息进行适当地处理,其包括将中断信号传送到在移动计算设备上执行的操作系统以执行唤醒移动设备动作。

如在图2e所图示的,在步骤265,音频子系统295接收部分发声“call(打电话)”并对其进行适当处理。在步骤246,部分热词动作启动器296接收经处理的部分发声“call(打电话)”并且将其转发到热词检测器297。在步骤267,热词检测器297确定部分发声“call(打电话)”至少与热词的初始部分相对应。在步骤268,热词检测器297将该确定或结果提供给部分热词动作启动器296。例如,热词检测器297确定部分发声“call(打电话)”与热词的初始部分相对应。在步骤269,部分热词动作启动器296接收该确定或结果并且在步骤270,作为响应,触发热词至动作映射器298。例如,响应于部分发声“call(打电话)”与热词的初始部分相对应,部分热词动作启动器296通过将部分热词“call(打电话)”提供给热词至动作映射器108来触发热词至动作映射器298。

在步骤271,热词至动作映射器298例如利用数据库将热词的部分热词映射到动作。例如,热词至动作映射器298将热词“call(打电话)”映射到启动电话应用动作,例如预加载移动计算设备上的应用。在步骤272,热词至动作映射器298将与启动电话应用动作相关联的信息提供给部分热词动作启动器296。在步骤273,部分热词动作启动器296接收与启动电话应用动作相关联的信息。在步骤274,部分热词动作启动器296使得启动电话应用动作被执行。也就是说,部分热词动作启动器296将与启动电话应用动作相关联的信息提供给动作引擎299。在步骤275,动作引擎299对启动电话应用动作信息进行适当地处理,其包括将中断信号传送到在移动计算设备上执行的操作系统以执行启动电话应用动作。

如在图2f所示,在步骤280,音频子系统295接收部分发声“mom(妈妈)”并对其进行适当地处理。在步骤281,部分热词动作启动器296接收已处理的部分发声“mom(妈妈)”并将其转送到热词检测器297。在步骤282,热词检测器297确定出初始发声“call(打电话)”和随后发声“mom(妈妈)”至少整体地与热词“callmom(打电话给妈妈)”相对应。在步骤283,热词检测器297将该确定或结果提供给部分热词动作启动器296。例如,部分热词检测器296确定出初始发声“call(打电话)”和随后发声“mom(妈妈)”整体地与整个热词相对应。在步骤284,部分热词动作启动器296接收该确定或结果并且在步骤285,作为响应,触发热词至动作映射器298。例如,响应初始发声“call(打电话)”和随后发声“mom(妈妈)”至少整体地与整个热词相对应,部分热词动作启动器296通过将整个热词“callmom(打电话给妈妈)”提供给热词动作启动器298来触发热词至动作映射器298。

在步骤286,热词至动作映射器298例如利用数据库将整个热词“callmom(打电话给妈妈)”映射到动作。例如,热词至动作映射器298将热词“callmom(打电话给妈妈)”映射到分配有发声“mom(妈妈)”的联系人。用户可以事先已经使发声“mom(妈妈)”与移动计算设备所存储的联系人相关联。在步骤287,热词至动作映射器298将与打电话给“mom(妈妈)”动作相关联的信息提供给部分热词动作启动器296。在步骤288,部分热词动作启动器296接收与打电话给“mom(妈妈)”动作相关联的信息。例如,该信息可包括与联系人“mom(妈妈)”相关联的联系人信息。在步骤289,部分热词动作启动器296使得打电话给“mom(妈妈)”动作被执行。也就是说,部分热词动作启动器296将与打电话给“mom(妈妈)”动作相关联的信息提供给动作引擎299。在步骤290,动作引擎299对打电话给“mom(妈妈)”动作信息进行适当地处理,包括将中断信号传送到在移动计算设备上执行的操作系统以执行打电话给“mom(妈妈)”动作。

图3描绘了用于识别部分热词的示例过程300的流程图。示例过程300可以是利用一个或多个计算设备来执行的。例如,音频子系统102、部分热词动作启动器104、热词检测器106、热词至动作映射器108、热词动作数据库110、动作引擎112、以及部分热词检测器118可用于执行示例过程300。

接收音频数据(302)。例如,音频子系统102接收来自移动计算设备114的发声“okgoogle(好的google)”的音频数据。确定音频数据的初始部分与热词的初始部分相对应(304)。例如,热词检测器106、部分热词检测器118、或者这两者确定音频数据“okgoogle(好的google)”的初始部分“ok(好的)”与热词的初始部分相对应。响应于确定音频数据的初始部分与热词的初始部分相对应,从当检测到整个热词时所执行的一个或多个动作的集合当中选择一个或多个动作的子集(306)。例如,热词至动作映射器108识别与整个热词“okgoogle(好的google)”相关联的动作的特定集合。热词至动作映射器108选择进一步与整个热词“okgoogle(好的google)”的部分热词“ok(好的)”相关联的动作的子集。使得子集中的一个或多个动作被执行(308)。例如,动作引擎112接收与整个热词“okgoogle(好的google)”相关联的使得被执行的动作的子集。

图4示出了可以与这里所描述的技术一起使用的通用计算设备400和通用移动计算设备450的示例。计算设备400旨在表示诸如膝上型计算机、桌面型计算机、工作站、个人数字助理、服务器、刀片服务器、主机、以及其它适当计算机的各种形式的数字计算机。计算设备450旨在表示诸如个人数字助理、蜂窝电话、智能电话、以及其它类似计算设备的各种形式的移动设备。这里所示的组件、其连接和关系、以及其功能意在仅是示例性的,并且不意味着对在该文档中所描述的和/或所要求保护的本发明的实施方式做出限制。

计算设备400包括处理器402、存储器404、存储设备406、与存储器404和高速扩展端口410相连的高速接口408、以及与低速扩展端口414和存储设备406相连的低速接口412。组件402、404、406、408、410、和412的每一个利用各种总线互连,并且可以安装在公共主板上或者视情况按照其它方式安装。处理器402可以对在计算设备400之内执行的指令进行处理,该指令包括存储在存储器404中的或者存储在存储设备406上的指令以在诸如与高速接口408相耦合的显示器416的外部输入/输出设备上显示gui的图形信息。在其它实施方式中,多个处理器和/或多个总线可以视情况与多个存储器和存储器类型一起使用。此外,多个计算设备400可以与用于提供必要操作的部分的每个设备相连(例如作为服务器库、刀片服务器组、或者多处理器系统)。

存储器404存储计算设备400内的信息。在一个实施方式中,存储器404是易失性存储器单元或多个易失性存储器单元。在另一实施方式中,存储器404是非易失性存储器单元或多个非易失性存储器单元。存储器404还可以是诸如磁盘或光盘的另一形式的计算机可读介质。

存储设备406能够为计算设备400提供大容量存储。在一个实施方式中,存储设备406可以是或者包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备、或者磁带设备、闪存或其它类似固态存储器设备、或者包括存储区域网络中的或其它配置的设备的设备阵列。计算机程序产品可以有形地体现为信息载体。计算机程序产品包含指令,该指令当被执行时执行诸如如上所述的那些这样的一个或多个方法。信息载体是诸如存储器404、存储设备406、或者处理器402上的存储器这样的计算机或机器可读介质。

高速接口408对计算设备400的带宽密集型操作进行管理,同时低速接口412对低带宽密集型操作进行管理。这种任务的分配仅是示意性的。在一个实施方式中,高速接口408与存储器404、显示器416(例如通过图形处理器或加速器)、以及可以接受各种扩展卡(未示出)的高速扩展端口410相耦合。在该实施方式中,低速接口412与存储设备406和低速扩展端口414相耦合。可以包括各种通信端口(例如usb、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器与诸如键盘、指示设备、扫描仪的一个或多个输入/输出设备或者诸如交换机或路由器的组网设备相耦合。

如图所示,计算设备400可以以多种不同的形式来实现。例如,可以作为标准服务器420实现或者在一组这种服务器中多次实现。还可以作为机架服务器系统424的一部分实现的。另外,还可以在诸如膝上型计算机422的个人计算机中实现。替选地,可以将来自计算设备400的组件与诸如计算设备450的移动设备中的其它组件(未示出)进行组合。这种设备的每一个可以包含一个或多个计算设备400、450,并且整个系统可以是由彼此进行通信的多个计算设备400、450组成的。

计算设备450包括处理器452、存储器464、诸如显示器454的输入/输出设备、通信接口476、收发器468、以及其它组件。计算设备450还可以具有诸如微驱动或其它设备的用于提供辅助存储的存储设备。组件452、464、454、476、468的每一个利用各种总线互连,并且可以将若干组件安装在公共主板上或者视情况以其它方式安装。

处理器452可对在计算设备450之内执行的指令进行处理,所述指令包括存储在存储器464之中的指令。处理器可以是作为包括单独的以及多个模拟和数字处理器的芯片的芯片组来实现的。处理器可以提供例如对计算设备450的其它组件的协作,诸如对用户接口、通过计算设备450运行的应用、以及通过计算设备450的无线通信的控制。

处理器452可以通过控制接口458以及与显示器454相耦合的显示器接口456与用户进行通信。显示器454例如可以是tftlcd(薄膜晶体管液晶)显示器或oled(有机发光二极管)显示器或者其它适当显示器技术。显示器接口456可以包括用于驱动显示器454以向用户呈现图形和其它信息的适当电路。控制接口458可以接收来自用户的命令并且对其进行转换以提交给处理器452。另外,可以提供与处理器452进行通信的外部接口462,以便使得计算设备450与其它设备进行近区通信。外部接口462可以提供例如,有线通信(在一些实施方式中)或者无线通信(在其他实施方式中),并且还可以使用多个接口。

存储器备464存储计算设备450内的信息。存储器464可以是作为计算机可读介质或媒介、易失性存储器单元、或者易失性存储器单元中的一个或多个实现的。还可以提供扩展存储器474并且通过扩展接口472与其可以包括例如simm(单列直插内存模块)卡接口的计算设备450相连。这种扩展存储器474可以提供用于计算设备450的额外存储空间,或者还可以存储用于计算设备450的应用或其它信息。具体地说,扩展存储器474可以包括用于执行或补充上述处理的指令,并且还可以包括安全信息。因而,例如,扩展存储器474可以是作为计算设备450的安全模块提供的,并且可以用允许计算设备450安全使用的指令进行编程。另外,与附加信息一起,安全应用可以是通过simm卡提供的,诸如以非破解的方式将识别信息放置于simm卡上。

存储器可以包括例如如下所述的闪速存储器和/或nvram存储器。在一个实施方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含指令,所述指令在被执行时执行诸如如上所述的那些这样的一个或多个方法。信息载体是诸如存储器464、扩展存储器474、或者处理器452上的存储器的计算机或机器可读介质,或者是可以例如通过收发器468或外部接口462接收的传播信号。

计算设备450可以通过通信接口476进行无线通信,所述通信接口476在必要时可以包括数字信号处理电路。通信接口476可以提供在诸如gsm语音呼叫、sms、ems、或mms信息、cdma、tdma、pdc、wcdma、cdma2000、或gprs及其他的各种模式或协议之下的通信。这种通信例如可以通过射频收发器468发生。另外,近距离通信可以诸如利用蓝牙、wifi、或者其它这种收发器(未示出)而发生。另外,gps(全球定位系统)接收器模块470可以向计算设备450提供额外的与导航和定位有关的无线数据,其可以视情况由运行在计算设备450上的应用使用。

计算设备450还可以利用音频编解码器460进行可听地通信,所述音频编解码器460可以接收来自用户的所说信息并且将其转换成可用的数字信息。音频编解码器460可以同样地生成用户诸如通过例如计算设备450的电话听筒中的扬声器而可听的声音。这种声音可以包括来自语音电话呼叫的声音,可以包括所记录的声音(例如语音消息、音乐文件等等),并且还可以包括由在计算设备450上操作的应用所生成的声音。

如图所示,计算设备450可以以多种不同形式实现。例如,它可以是作为蜂窝式电话480实现的。还可以是作为智能电话482、个人数字助理、或者其他类似的移动设备的一部分实现的。

这里所述的系统和技术的各种实施方式可以是在数字电子电路、集成电路、专门设计的asic(专用集成电路)、计算机硬件、固件、软件、和/或其组合中实现的。这些各种实施方式可包括可在可编程系统上执行和/或解释的一个或多个计算机程序中的实施方式,所述可编程系统包括可以是专用或通用的至少一个可编程处理器,这至少一个可编程处理器被耦合以接收来自存储系统、至少一个输入设备、以及至少一个输出设备的数据和指令并且将数据和指令传送到存储系统、至少一个输入设备、以及至少一个输出设备。

这些计算机程序(还被称为程序、软件、软件应用或代码)包括可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或汇编/机器语言实现。如这里所使用的,术语“机器可读介质”、“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置、和/或设备(例如磁盘、光盘、存储器、可编程逻辑器件(pld)),其包括用于接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。

为了提供与用户的交互,这里所述的系统和技术可以是在具有用于向用户显示信息的显示器设备(例如crt(阴极射线管)或lcd(液晶显示器)监视器)以及通过其用户可提供输入到计算机的键盘和指示设备(例如鼠标或轨迹球)的计算机上实现。其它类型的设备也可用于提供与用户的交互;例如,提供给用户的反馈可是任何形式的传感反馈(例如视觉反馈、听觉反馈、或者触觉反馈);以及可接收任何形式的来自用户的包括声音、语音、或者触觉输入的输入。

这里所述的系统和技术可在下述计算系统上实现,所述计算系统包括后端组件(例如作为数据服务器)或者包括中间件组件(例如应用服务器)或者包括前端组件(例如具有用户通过其可与这里所述的系统和技术的实现相交互的图形用户界面或web浏览器的客户端计算机)或者这种后端、中间件、或者前端组件的任何组合。该系统的组件可通过任何形式或介质的数字数据通信(例如通信网络)互连。通信网络的示例包括局域网(“lan”)、广域网(“wan”)、以及因特网。

计算系统可包括客户端和服务器。客户端和服务器通常彼此远离并且典型地通过通信网络交互。客户端与服务器的关系是借助于在相应计算机上运行的并且彼此具有客户端-服务器关系的计算机程序而产生的。

虽然本公开包含了许多细节,但是这些不应被解释为对本公开的范围或者权利要求的主张做出限制,而是应解释为对本公开的示例实施方式的特征的描述。可以在单个实施方式中组合地提供在本公开中的单独实现的上下文中描述的某些特征。相反地,在单个实施方式的上下文中所描述的各个特征也可单独提供于多个实施方式中或者以任何适当的子组合提供。此外,虽然在上面可以将特征描述为以特定组合起作用并且甚至可以最初如此主张,但是来自所主张的组合的一个或多个特征在一些情况下可从该组合移除,并且所主张的组合可以是指子组合或者子组合的变型。

类似地,虽然在附图中描述了特定顺序的操作,但是这不应当被理解为需要以所示的特定顺序或以连续顺序来执行该操作或者需要执行所有图示的操作才能达到期望结果。在某些情况下,多任务和并行处理可能是有利的。此外,在上述实施方式中的各个系统组件的分离不应被理解为在所有实施方式中需要这样的分离,并且应该理解的是通常可将所述的程序组件和系统集成在单个软件产品中或者打包到多个软件产品中。

因而,已对本发明的特定实施方式进行了描述。其它实施方式在随后权利要求的范围之内。例如,在权利要求中所述的动作可是以不同顺序执行的并且仍可实现期望结果。已对多个实施例进行了描述。然而,应该理解的是在不脱离本公开的精神和范围的情况下可做出各种修改。例如,可以使用上面示出的步骤被重新排列、添加、或者移除的各种形式的流程。因此,其它实施方式在以下权利要求的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1