首页> 中国专利> 多模态同步结构中的用户接口和动态语法

多模态同步结构中的用户接口和动态语法

摘要

同步第一模态(modality)网关(165)和第二模态网关(185),而两个网关在用户和服务器系统间连接。描述对于通过限制搜索的语法量来结构化语音识别的语法的各种方法,从而使识别事件的错误最小化。与用户通信可包括将第一组选项和第二组选项呈现给用户,其中第二组选项是基于用户从第一组选项的选择而限制的。图形用户界面(2410)可包括带有多个字段的表,各字段与预定类别关联。每个类别可具有其自身的、独立的、分立的与之关联的语法,而独立语法(2420,2430,2440)可与其各自的类别同时被单独地激活。

著录项

  • 公开/公告号CN1997976A

    专利类型发明专利

  • 公开/公告日2007-07-11

    原文格式PDF

  • 申请/专利权人 SAP股份公司;

    申请/专利号CN03806289.5

  • 发明设计人 翁捷;龚立;理查德·斯旺;

    申请日2003-02-07

  • 分类号G06F13/00(20060101);G09G5/00(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人吕晓章;马莹

  • 地址 德国瓦尔多夫

  • 入库时间 2023-12-17 18:50:31

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-02-24

    专利权有效期届满 IPC(主分类):G06F13/00 专利号:ZL038062895 申请日:20030207 授权公告日:20100106

    专利权的终止

  • 2010-01-06

    授权

    授权

  • 2007-09-05

    实质审查的生效

    实质审查的生效

  • 2007-07-11

    公开

    公开

说明书

技术领域

本发明一般涉及通信,尤其涉及用于各种环境中有助于通信的系统和方法。

背景技术

用户可按例如机械模式、听觉模式和视觉模式等许多不同模式与机器连接。机械模式可包括例如使用键盘来输入。听觉模式可包括例如使用语音输入或输出。视觉模式可包括例如使用显示器输出。当使用计算机来访问万维网(WWW)上的数据时,可使用浏览器,其一般允许将键盘、鼠标器或硬笔(stylus)用于输入并允许将显示器用于输出。或者,语音输入和输出可被用来访问WWW上的数据。

用户接口可允许用户访问例如类目数据库中的产品的数据,或将数据输入系统,例如,将顾客信息输入顾客数据库。用户接口被用于位于台式机等相对固定的计算设备上的应用,以及用于位居膝上、掌上和便携电子组织者等移动计算设备上的应用。可创建语音激活的用户接口来提供到系统的数据访问和输入,而语音输入特别地适宜于移动设备。

存在着用于识别语音命令和其它语音输入的现有系统。然而这些系统输入数据却相对缓慢和/或不精确,特别是当存在处理和/或存储器限制时,例如像在移动应用中的情形。在某些数据输入场合中,可通过使用键盘或硬笔等物理输入来避免语音命令。然而,在更着重文本的数据输入中,这种物理输入特别是在移动应用的环境中,可能过分迟钝或耗费时间。

发明内容

同步第一模态网关和第二模态网关,这两个网关在用户和服务器系统间连接。该同步允许用户在给定时刻使用第一模态网关或第二模态网关与服务器系统中的具体信息连接。一种方法包括访问从第一模态网关发送的通信,并提供同步机制以响应访问该通信。另一种方法包括从第一模态实体接收对第一模态数据的请求,确定第二模态数据,并将第二模态数据提供给第二模态实体,其中第二模态数据对应于第一模态数据。一种装置包括第一模态接口、第二模态接口和控制器接口。控制器接口包括这样的指令:当由机器执行该指令时,结果是将第一模态接口和第二模态接口与提供同步的控制器连接。

一方面,第一模态网关和第二模态网关被同步。两个网关在用户和服务器系统间连接,而同步允许用户在给定时刻使用第一模态网关或第二模态网关与服务器系统中的具体信息连接。

浏览器和语音网关可被同步,而服务器系统可包括网页。第一模态网关和第三模态网关可被同步,其中第三模态网关在用户和服务器系统间连接。

第一模态页面可从服务器系统发送至第一模态网关以响应于在服务器系统处接收来自第一模态网关的输入。可确定第二模态页面,其对应于第一模态页面。第二模态页面可从服务器系统发送至第二模态网关。

将第一模态页面从服务器系统发送至第一模态网关可包括由网页服务器将语音扩展标记语言(VXML)页面发送至语音网关以响应于在网页服务器处接收来自语音网关的输入。确定第二模态页面可包括由网页服务器确定超文本标记语言(HTML)页面,其对应于VXML页面。发送第二模态页面可包括由网页服务器将确定后的HTML页面发送至浏览器。该网页服务器可在网页服务器发送确定后的HTML页面之前从浏览器接收刷新请求。

将第一模态页面从服务器系统发送至第一模态网关可包括由网页服务器将VXML页面发送至语音网关以响应于在网页服务器处接收来自语音网关的输入。确定第二模态页面可包括由网页服务器确定HTML页面,其对应于VXML页面。将第二模态页面发送至第二模态网关可包括由网页服务器通过将确定后的HTML页面发送至发行/预定系统而将确定后的HTML页面发送至浏览器,结果是该发行/预定系统将确定后的HTML页面发送至浏览器。

将第一模态页面从服务器系统发送至第一模态网关可包括由网页服务器将HTML页面发送至浏览器以响应于在网页服务器处接收来自浏览器的输入。确定第二模态页面可包括由网页服务器确定VXML页面,其对应于HTML页面。将第二模态页面发送至第二模态网关可包括由网页服务器通过将VXML页面发送至页面发送至发行/预定系统而将确定后的VXML页面发送至语音网关,结果是该发行/预定系统将该VXML页面发送至语音网关。

将第一模态页面从服务器系统发送至第一模态网关可包括由网页服务器将HTML页面发送至浏览器以响应于在网页服务器处接收来自浏览器的输入。确定第二模态页面可包括由网页服务器确定VXML页面,其对应于HTML页面。将第二模态页面发送至第二模态网关可包括由网页服务器将确定后的VXML页面发送至语音网关。当语音网关在指定量的时间内未接收到语音输入时,网页服务器可从语音网关接收请求,而该网页服务器可在网页服务器向语音网关发送确定后的VXML页面之前接收该请求。

同步可包括从第一模态网关接收对第一模态页面的请求,确定对应于第一模态页面的第二模态页面,和请求第二模态页面。从第一模态网关接收对第一模态页面的请求可包括由控制器从浏览器接收对HTML页面的请求,该控制器与浏览器物理地分离。确定第二模态页面可包括由控制器确定VXML页面,其对应于HTML页面。请求第二模态页面可包括由控制器从语音网关请求确定后的VXML页面,该控制器与语音网关物理地分离并与服务器系统物理地分离。

从第一模态网关接收对第一模态页面的请求可包括由控制器从语音网关接收对VXML页面的请求,该控制器和语音网关位于移动设备上。确定第二模态页面可包括由控制器确定HTML页面,其对应于VXML页面。请求第二模态页面可包括由控制器从网页服务器请求确定后的HTML页面。

同步可包括从第一模态网关接收对第一模态页面的请求,确定对应于第一模态页面的第二模态页面,和将第二模态页面的标识发送至第二模态网关。从第一模态网关接收对第一模态页面的请求可包括由控制器从浏览器接收对HTML页面的请求,该控制器和浏览器位于移动设备上。确定第二模态页面可包括由控制器确定对应于HTML页面的VXML页面。将第二模态页面的标识发送至第二模态网关可包括由控制器将确定后的VXML页面的统一资源定位器(URL)发送至语音网关,该语音网关位于移动设备上。

同步可包括从第一模态接口接收对第一模态页面的请求,访问第二模态页面的标识,其中第二模态页面对应于第一模态页面,以及请求第二模态页面。从第一模态接口接收对第一模态页面的请求可包括由控制器从语音接口接收对VXML页面的请求,该控制器与语音接口物理地分离。访问第二模态页面的标识可包括由控制器访问HTML页面的URL,该HTML页面对应于VXML页面,其中URL是由与控制器物理地分离的语音网关供给的。请求第二模态页面可包括由控制器从网页服务器请求浏览器的对应HTML页面,该控制器与网页服务器物理地分离并与浏览器物理地分离。

同步第一模态网关和第二模态网关可包括从第一模态接口接收与第一数据相关的第一项目,以及确定第二数据,该第二数据对应于第一数据。从第一模态接口接收与第一数据相关的第一项目可包括由控制器从语音接口接收对VXML页面的请求,该第一项目包含请求而第一数据包含VXML页面,该控制器与语音接口物理地分离。确定第二数据(该第二数据对应于第一数据)可包括由控制器确定HTML页面,其对应于VXML页面。控制器可从网页服务器为浏览器请求确定后的HTML页面,该控制器与浏览器物理地分离并与网页服务器物理地分离。第二数据可提供给第二模态接口。

接收第一项目可包括接收对第一网页的请求,该第一网页由第一统一资源定位器(URL)来识别而第一数据包括第一URL。确定第二数据可包括确定第二网页的第二URL,第二网页对应于第一网页,而第二数据包括第二URL。

同步第一模态网关和第二模态网关可包括从第一模态网关接收与第一数据相关的第一项目,和确定第二数据,该第二数据对应于第一数据。控制器可接收第一项目,而控制器可确定第二数据。第二数据可提供给第二模态网关。第二数据可在等待第二模态网关请求第二数据后提供给第二模态网关。第二模态网关可被通知以便请求第二数据。通知第二模态网关可包括由控制器通过发行/预定系统来通知第二模态网关,而控制器可提供第二数据。通知第二模态网关可包括由控制器通过发送刷新查询响应来通知第二模态网关,而提供第二数据可包括由控制器提供第二数据。

可以维持第二数据的标识。第二模态网关可设有指向第二数据的标识的指针。第二数据可从服务器系统请求。从服务器系统请求第二数据可包括由控制器从相对于控制器的本地的存储介质而请求第二数据,其中服务器系统包括存储介质。从服务器系统请求第二数据可包括由控制器从相对于控制器的异地的存储介质而请求第二数据,其中服务器系统包括存储介质。可将第二数据的标识提供给第二模态网关。确定第二数据可包括从第一模态网关接收第二数据的标识。

另一方面,访问从第一模态网关发送的通信,并提供同步机制以响应于访问该通信。同步机制能够用于第一模态网关和第二模态网关的同步,而两个网关在用户和服务器系统间连接。访问通信可包括接收对第一项目的请求,以及提供同步机制可包括确定第二项目,该第二项目对应于第一项目,并将第二项目发送至第二模态网关。访问通信可包括接收对第一项目的请求,并提供同步机制可包括确定第二项目,该第二项目对应于第一项目,确定第二项目的标识,并将该标识发送至第二模态网关。访问通信可包括接收项目,并提供同步机制可包括确定第二模态网关的身份,并将该项目发送至第二模态网关。接收该项目可包括接收由用户输入的文本条目。

另一方面,从第一模态实体接收对第一模态数据的请求,确定第二模态数据,其中第二模态数据对应于第一模态数据,并将第二模态数据提供给第二模态实体。第一模态实体可包括第一模态网关,而第二模态实体可包括第二模态网关。

另一方面,存储介质在其上存储了这样的指令:当由机器执行该指令时,结果是同步第一模态网关和第二模态网关。两个网关都适宜于在用户和服务器系统间连接。该同步允许用户在给定时刻使用第一模态网关或第二模态网关与服务器系统中的具体信息连接。第一模态接口适宜于耦合至第一模态网关,而第二模态接口适宜于耦合至第二模态网关。

另一方面,控制器接口包括这样的指令:当由机器执行该指令时,结果是将第一模态接口和第二模态接口与提供第一模态接口和第二模态接口的同步的控制器相接口。第一模态接口可包括浏览器接口。

另一方面,以硬件、固件或软件实施的一个或多个组件适宜于从第一模态网关接收对第一模态页面的请求,确定第二模态页面,其对应于第一模态页面,和请求第二模态页面。第一模态网关可包括浏览器,而第二模态网关可包括语音网关。所述实施方式的优点可包括:(I)允许用户使用多个模态与例如WWW等网络上的数据接口,(II)使这种多模态能够用在移动设备中,(III)允许这种移动设备被设计成不内置同步功能,(IV)通过在用户设备和服务器间执行同步功能而使网页服务器设计成保持相对恒定,(V)使能同步多台设备的分布式结构,(VI)使能多模态交互,其在例如个人数字助理等客户设备处需要最少安装时间或甚至零安装时间,和(VII)提供多模态的同步,其使用基于标准的数据内容呈现,例如HTML和VXML。

对于搜索字串自动搜索一个或多个匹配包括访问搜索字串的第一部分和第二部分。为搜索字串的第一部分的匹配搜索第一搜索空间,并基于在第一搜索空间搜索的结果来限制第二搜索空间。为搜索字串(string)的第二部分的匹配搜索受限的第二搜索空间。为结构化语音识别引擎的语法说明了各种方法,以便允许高效、快速的识别,并通过限制被搜索的语法量来增强识别,于是最小化错误识别的事件。搜索字串可使用多簇法来识别和搜索。识别和搜索也可使用多级别、多参数级联法来执行。这些方法也可应用于其他输入模式的识别。

在各种实施方式中,可书写对于给定语音驱动应用、移动或其它的话音识别的语法,以便能够精确和高效地识别。后述特定的实施方式提供了一种用户接口,其允许用户以一个或多个不同的模式,例如包括硬笔和语音输入等来输入数据。输出也可以是一个或多个不同的模式,例如显示器或语音。特别的实施方式可用于例如掌上电脑等移动设备,而语音和硬笔输入加上语音和显示输出的组合可允许这种移动设备对用户更有用。实施方式也可用于在合并于此的待审申请中描述的多模态同步系统。

这些实施方式允许增强的语音识别精度和/或速度,其部分由于使用了结构性语法,其允许语法局限于特别语音识别操作的相关部分。例如,局限完整搜索字串上语音识别操作的语法可通过使用对完整搜索字串组成部分的更早或并列的语音识别操作的结果而达到。其它实施方式可通过以特别的次序从用户处接收搜索字串的参数来局限语法,并可选择地使用初始参数来局限后续参数的语法。示例包括(I)将接收街道地址信息的标准次序倒转,从而例如国家在州之前接收到,而用来识别州的语法局限于选定国家的州,(II)给电子邮件地址或网址分段,从而用户分离地提供例如“com”等域标识,或(III)自动将“@符”和“圆点”插入电子邮件地址并仅提示用户输入其余术语,以免识别这些说话字串的通常很复杂的处理。

实施方式也可通过扩大可能搜索字串或发音的语法来增加识别精度和速度,从而降低语音识别系统需要通过其拼写来标识输入的可能性。在这种情形中,语音识别系统也毋需询问用户拼写出说话时未识别的术语。例如,用户在电子邮件地址中输入“com”作为域标识后,语音识别系统可将例如全部“fortune 100”公司的名称和各种知名商业网址等包括在电子邮件地址的服务器标识的语法中。于是,若用户输入“amazon”作为服务器标识,并且若“amazon”已被包括在语法中,则系统将识别该输入而不必询问用户将其拼写出来了。

实施方式还允许增强的数据库搜索。这可通过例如使用结构性语法并将语法条目与具体数据库1目相关联而达到。在此方式下,当结构性语法被用来识别搜索字串时,则可同时识别特别数据库条目或数据库的相关部分。

根据一个一般方面,对于搜索字串自动搜索一个或多个匹配包括访问搜索字串的第一部分和第二部分。为搜索字串的第一部分的匹配搜索第一搜索空间,并基于在第一搜索空间搜索的结果来限制第二搜索空间。为搜索字串的第二部分的匹配搜索受限的第二搜索空间。

搜索第一搜索空间可包括搜索数据库。搜索受限的第二搜索空间可包括搜索至少一部分数据库。限制所述第二搜索空间包括限制部分数据库,该部分数据库是针对匹配搜索字串的第一部分的数据库条目而搜索的,于是允许比搜索整个所述数据库更快速的搜索。搜索字串的第二部分可包括语音输入或手动输入。在第一搜索空间搜索和在受限的第二搜索空间搜索可至少部分并列地执行。搜索字串可包括地址。

访问搜索字串的第一部分可包括访问语音输入。在第一搜索空间搜索匹配可包括对搜索字串的第一部分执行语音识别。至少访问搜索字串的第二部分可包括访问语音输入。限制第二搜索空间可包括将第二搜索空间限制在与搜索字串的第一部分关联的语法条目。搜索受限的第二搜索空间可包括至少对使用受限的第二搜索空间的搜索字串的第二部分执行语音识别,从而,与执行使用不限的第二搜索空间的语音识别相比,允许搜索字串的第二部分的增强语音识别。

与搜索字串的第一部分关联的语法条目可包括完整搜索字串的语法条目,每个完整搜索字串都包括搜索字串的第一部分。与搜索字串的第一部分关联的语法条目可包括完整搜索字串的组成部分的语法条目,每个组成部分都是包括第一部分的完整搜索字串的一部分。对第一部分执行语音识别可产生识别字串,而该识别字串可与来自搜索空间的一组可识别搜索字串关联。限制第二搜索空间可包括将第二搜索空间限制在该组可识别搜索字串或其组成部分。对语音输入的第二部分执行语音识别可包括将第二部分与受限的第二搜索空间中的一组高出现率式样做比较,然后再将第二部分与受限的第二搜索空间中的一组低出现率式样做比较。可使用第三搜索空间对全体语音输入执行语音识别。基于对语音输入的第一部分执行语音识别的结果并基于至少对语音输入的第二部分执行语音识别的结果,可限制第三搜索空间。

搜索字串的第一部分可与一组可搜索条目关联,受限的第二搜索空间中的各条目可与该组可搜索条目中的一个或多个条目关联。可将第一组选项提供给用户,该第一组选项与搜索字串的第一部分相关,并在页面中提供给用户。至少访问搜索字串的第一部分可包括从用户处接收第一输入,该第一输入是从第一组选项中选择的。限制第二搜索空间可包括基于接收的第一输入来限制第二组选项,该第二组选项与搜索字串的第二部分相关。第二组选项可在页面中提供给用户,从而将提供第一组选项和第二组选项的单个页面呈现给用户。至少访问搜索字串的第二部分可包括从用户处接收第二输入,该第二输入是从第二组选项中选择的。

接收第一输入可包括接收第一语音输入并对第一输入执行语音识别,其中对第一输入隔离地执行语音识别与对搜索字串执行语音识别相比,允许增强的语音识别。第一组选项可包括制造商指定,以及第二组选项可包括来自第一输入所指定的制造商的产品指定。搜索字串可包括地址。

接收第一输入可包括以听觉形式从用户处接收第一输入。可对第一输入隔离地执行语音识别,其中对第一输入隔离地执行语音识别与对搜索字串执行语音识别相比,允许增强的语音识别。提供第二组选项可包括为第一输入搜索一组数据项目,并在第二组选项中包括那些仅包括第一输入的来自数据项目组的数据项目的参考。接收第二输入可包括以听觉形式从用户处接收第二输入。可对第二输入隔离地执行语音识别,其中对第二输入隔离地执行语音识别与对搜索字串执行语音识别相比,允许增强的语音识别。

可将第三组选项提供给用户,该第三组选项与搜索字串的第三部分相关,并在页面中提供给用户。可从用户处接收第三输入,该第三输入是从第三组选项中选择的,其中提供给用户的第二组选项也基于所接收的第三输入。第二组选项可基于第三输入而修正。第一组选项可包括制造商指定。第三组选项可包括价格范围指定。第二组选项可包括来自第一输入所指定的制造商的产品指定,该第一输入在由第三输入指定的价格范围内。

执行语音识别可包括访问至少包括第一部分和第二部分的语音输入,对语音输入的第一部分执行语音识别,使用搜索空间对第一部分和第二部分的组合执行语音识别,并基于对语音输入的第一部分执行语音识别的结果来限制搜索空间。与用户通信可包括将第一组选项和第二组选项呈现给用户,其中第二组选项是基于用户从第一组选项的选择而限制的。两组选项可在单个页面中呈现。用户从第一组选项的选择可被用来选择识别用户对第二组选项的响应所用的词汇。

根据一个一般方面,执行语音识别包括访问至少包括第一部分和第二部分的语音输入,对语音输入的第一部分执行语音识别,使用搜索空间对第一部分和第二部分的组合执行语音识别,并基于对语音输入的第一部分执行语音识别的结果来限制搜索空间。限制搜索空间与对不限的搜索空间执行语音识别相比,允许组合的增强语音识别。

对第一部分执行语音识别可产生识别字串,而该识别字串可与来自搜索空间的一组可识别发音关联。限制搜索空间可包括将搜索空间限制在一组可识别发音。对第一部分执行语音识别可与对组合执行语音识别相并列,从而直到对组合执行语音识别开始后搜索空间才受限。对第一部分执行语音识别可在对组合执行语音识别之前,从而在对组合执行语音识别前使搜索空间受限。对语音输入的第一部分执行语音识别可包括将第一部分与搜索空间中的一组高出现率式样做比较,然后再将第一部分与搜索空间中的一组低出现率式样做比较。

对语音输入的第一部分执行语音识别可包括使用第二搜索空间。可对语音输入的第二部分执行语音识别。基于对语音输入的第二部分执行语音识别的结果可限制第二搜索空间。基于对语音输入的第二部分执行语音识别的结果也可限制搜索空间。

访问电路可被用来访问至少包括第一部分和第二部分的语音输入。识别电路可被用来对语音输入的第一部分和对第一部分和第二部分的组合执行语音识别,其中可对使用搜索空间的组合执行语音识别。可使用识别引擎并且其包括识别电路。限制电路可被用来基于对语音输入的第一部分执行语音识别的结果来限制搜索空间。限制搜索空间与对不限的搜索空间执行语音识别相比可允许语音输入的增强语音识别。

一个或多个访问电路、识别电路和限制电路可包括存储器,其带有执行访问语音输入、执行语音识别和基于对语音输入的第一部分执行语音识别的结果来限制搜索空间等一个或多个操作的指令。一个或多个访问电路、识别电路和限制电路可包括处理器,以执行访问语音输入、执行语音识别和基于对语音输入的第一部分执行语音识别的结果来限制搜索空间等一个或多个操作。该电路可被用来执行为这个或另一方面而说明的其它特征之一。

根据另一个一般方面,从用户处接收输入包括将第一组选项提供给用户,该第一组选项与搜索字串的第1参数相关,并在页面中提供给用户。从用户处接收第一输入,该第一输入是从第一组选项中选择的。基于被接收的第一输入来限制第二组选项,该第二组选项与搜索字串的第二参数相关。第二组选项可在页面中提供给用户,从而将提供第一组选项和第二组选项的单个页面呈现给用户。

从用户处接收第一输入可包括接收听觉输入和执行语音识别。对第一输入隔离地执行语音识别与对搜索字串执行语音识别相比,允许增强的语音识别。从用户处接收第一输入可包括接收数字输入。

可从用户处接收第二输入,该第二输入是从第二组选项中选择的。接收第一输入可包括以听觉形式从用户处接收第一输入。可对第一输入隔离地执行语音识别。对第一输入隔离地执行语音识别与对搜索字串执行语音识别相比,允许增强的语音识别。提供第二组选项可包括读于第一输入搜索一组数据项目,并在第二组选项中包括到那些仅包括第一输入的数据项目的参考。接收第二输入可包括以听觉形式从用户处接收第二输入。可对第二输入隔离地执行语音识别,其中对第二输入隔离地执行语音识别与对搜索字串执行语音识别相比,允许增强的语音识别。

可将第三组选项提供给用户,而该第三组选项与搜索字串的第3参数相关,并在页面中提供给用户。可从用户处接收第三输入,该第三输入可从第三组选项中选择。提供给用户的第二组选项也可基于所接收的第三输入。提供给用户的第二组选项可基于所接收的第三输入而修正。

提供第二组选项可包括对于第一输入搜索一组数据,并仅提供来自包括第一输入的数据组的数据项目。第一输入可包括识别制造商的制造商指定。提供第二组选项可限制在仅提供由所标识的制造商制造的数据项目。

电路可被用来(I)将第一组选项提供给用户,该第一组选项与搜索字串的第1参数相关,并在页面中提供给用户,(II)从用户处接收第一输入,该第一输入是从第一组选项中选择的,(III)基于被接收的第一输入来限制第二组选项,该第二组选项与搜索字串的第二参数相关,和/或(IV)将第二组选项在页面中提供给用户,从而将提供第一组选项和第二组选项的单个页面呈现给用户。电路可包括存储器,其上存储了这样的指令:当由机器执行该指令时,结果是至少执行了所列举的操作之一。电路可包括可操作的处理器,以至少执行所列举的操作之一。该电路可被用来执行为这个或另一方面而说明的其它特征之一。

根据另一个一般方面,从用户处接收地址项目包括将地址的第一项目的第一组选项提供给用户,从用户处接收从第一组选项取出的第一地址项目,基于被接收的第一项目来限制地址的第二项目的第二组选项,将受限的第二地址项目的第二组选项提供给用户,以及接收第二地址项目。

接收第一地址项目可包括以听觉形式接收第一地址项目。可对第一地址项目隔离地执行识别。对第一地址项目隔离地执行语音识别与对地址执行语音识别相比,允许增强的语音识别。接收第二地址项目可包括以听觉形式接收第二地址项目。可对第二地址项目隔离地执行识别。对第二地址项目隔离地执行语音识别与对第一地址项目和第二地址项目的组合或对地址执行语音识别相比,允许增强的语音识别。

第一地址项目可包括州标识。第二地址项目可包括识别城市的城市标识。可将邮政编码标识的第三选项列表提供给用户。第三选项列表可排除不在识别的城市内的邮政编码。可以听觉形式从用户处接收邮政编码标识。用户可从第三选项列表选择邮政编码标识。邮政编码标识可识别邮政编码。可对以听觉形式接收的邮政编码标识执行语音识别。在第三选项列表内排除邮政编码与不排除邮政编码相比,允许增强的语音识别。可将街道地址标识的第四选项列表提供给用户。第四选项列表可排除不在标识邮政编码中的街道。可以听觉形式从用户处接收街道地址标识。用户可从第四选项列表选择街道地址标识。街道地址标识可识别街道地址。可对以听觉形式接收的街道地址标识执行语音识别。在第四选项列表内排除街道与不排除街道相比,允许增强的语音识别。

将第一选项列表提供给用户可包括在显示器上提供第一列表。将第二选项列表提供给用户可包括以听觉形式提供第二列表。

电路可被用来(I)将地址的第一项目的第一组选项提供给用户,(II)从用户处接收从第一组选项取出的第一地址项目,(III)基于被接收的第一项目来限制地址的第二项目的第二组选项,(IV)将受限的第二地址项目的第二组选项提供给用户,和/或(V)接收第二地址项目。电路可包括存储器,其上存储了这样的指令:当由机器执行该指令时,结果是至少执行了所列举的操作之一。电路可包括可操作的处理器,以至少执行所列举的操作之一。该电路可被用来执行为这个或另一方面而说明的其它特征之一。

根据另一个一般方面,从用户处接收因特网地址包括对于因特网地址的第一部分提示用户。以听觉形式从用户处接收因特网地址的第一部分。对接收的第一部分执行语音识别。仅对因特网地址的第一部分执行语音识别与对大于因特网地址的第一部分执行语音识别相比,允许增强的识别。对于因特网地址的第二部分提示用户。以听觉形式从用户处接收因特网地址的第二部分。对接收的第二部分执行语音识别。仅对因特网地址的第二部分执行语音识别与对大于因特网地址的第二部分执行语音识别相比,允许增强的识别。

因特网地址可包括电子邮件地址。第一部分可包括电子邮件地址的域标识。第二部分可包括电子邮件地址的服务器标识。对于电子邮件地址的用户标识部分可提示用户。可以听觉形式从用户处接收用户标识部分。对接收的用户标识部分执行语音识别。仅对用户标识部分执行语音识别与对大于电子邮件地址的用户标识部分执行语音识别相比,允许增强的识别。

对域标识执行语音识别可包括使用含普通三个字母域标识的域词汇,其可允许增强的识别。对服务器标识执行语音识别可包括使用含普通服务器标识的服务器词汇,其可允许增强的识别。对用户标识执行语音识别可包括使用含普通用户标识的用户词汇,其可允许增强的识别。服务器词汇可基于域标识。

因特网地址可包括网页地址。第一部分可包括网页地址的域标识。第二部分可包括网页地址的服务器标识。对于网页地址的网络标识部分可提示用户。可以听觉形式从用户处接收网络标识部分。可对接收的网络标识部分执行语音识别。仅对网络标识部分执行语音识别与对大于网页地址的网络标识部分执行语音识别相比,允许增强的识别。

电路可被用来(I)对于因特网地址的第一部分提示用户,(II)以听觉形式从用户处接收因特网地址的第一部分,(III)对接收的第一部分执行语音识别,其中仅对因特网地址的第一部分执行语音识别与对大于因特网地址的第一部分执行语音识别相比,允许增强的识别,(IV)提示用户输入因特网地址的第二部分,(V)以听觉形式从用户处接收因特网地址的第二部分;和/或(VI)对被接收的第二部分执行语音识别,其中仅对因特网地址的第二部分执行语音识别与对大于因特网地址的第二部分执行语音识别相比,允许增强的识别。电路可包括存储器,其上存储了这样的指令:当由机器执行该指令时,结果是至少执行所列举的操作之一。电路可包括可操作的处理器,其至少执行所列举的操作之一。该电路可用来执行为这个或另一方面而说明的其它特征之一。

图形用户界面可包括带有多个字段的表,各字段与预定类目关联。各类目可具有其自身独立、分立的与之关联的语法,而独立语法可与其各自类目同时被单个激活。以这种方式,为各字段输入说话数据的语音识别系统当试图将特别语音输入与表中特别字段的条目相匹配时可搜索受限的语法。而且,具有独立语法之一而激活的全局语法可被用来在字段间移动或执行不与任一独立语法关联的其它高级功能。

实施方式提供了即使在移动应用中也允许快速、精确输入和语音数据识别的技术。而且,所公开的技术允许用户在语音和物理输入之间如自己所欲地选择。实施方式包括多个独立语法,各与诸如图形用户界面的表内的字段等类目关联。语法可被动态地激活或不激活,这取决于当前哪个类目或字段正在从用户处输入数据。当前活动的语法可借助与例如显示在图形用户界面上的字段关联的视觉提示而指示给用户。于是,在给定时刻,所选字段是仅仅对于数据输入和语音识别结果的后续显示而活动的,而视觉提示被用来指示活动字段。而且,全局语法用来输入与全部类目和/或实施图形用户界面的设备或应用相关的命令,该全局语法可与独立的、与类目关联的语法之一同时保持活动。

根据一个一般方面,实施方式可包括从多个独立语法中激活的第一语法,该第一语法是以第一输入类目来识别的。从多个独立语法中不激活至少第二语法,输入与第一输入类目相关的说话数据,而说话数据与第一语法内的存储数据匹配。

实施方式可包括下列特征中的一个或多个。例如,多个独立语法可定义第一级别语法,而在激活第一语法时,可激活独立于多个独立语法的第二级别语法。此时,在不激活第二语法时,第一语法以外的全部第一级别语法都可不激活。

同步第一模态网关和第二模态网关可,其中两个网关可在用户和服务器系统间连接。该同步可允许第一模态网关或第二模态网关任一在给定时刻与服务器系统中的具体信息连接。此时,该具体信息可以是字段识别命令,用来识别图形用户界面的表内的第一字段,其中第一字段可与第一输入类目关联。该具体信息可以是存储的数据。

而且,在同步第一模态网关和第二模态网关时,浏览器和语音网关也可被同步,其中服务器系统包括网页。此时,可激活第一语法以响应于表内所识别的第一字段。

多个独立语法的每一个可分别被单独存储。

在激活第一语法时,或许以听觉形式可向用户指示第一语法已被激活。此时,在向用户指示第一语法已被激活时,可显示识别诸如网页等图形用户界面内第一字段的视觉提示,该第一字段与第一输入类目关联。而且,在将说话数据与第一语法内的存储数据匹配后,视觉提示可自动前进至第二字段。或者,在将说话数据与第一语法内的存储数据匹配后,通过输入字段前进语音命令也可使视觉提示前进至第二字段,其中字段前进语音命令可根据第一语法同时活动的全局语法匹配。

此外,可不激活第一语法,接着可激活第二语法。第二语法可以第二输入类目来识别。可输入与第二输入类目相关的第二说话数据,而第二说话数据可与第二语法内的第二存储数据匹配。

而且,可激活全局语法,从而第一语法和全局语法在一段时间内都活动,可输入从多个输入类目中识别第二输入类目的全局说话数据,该全局说话数据可与全局语法的一部分匹配,并激活第二语法以响应于全局说话数据的匹配,其中第二语法可以第二输入类目来标识。

根据另一个一般方面,设备包括其上存储了指令的存储介质,而该指令包括第一代码段,用来激活与第一类目关联的第一语法,第二代码段,用来激活与第一类目关联的第一数据输入机制,第三代码段,用来接收第一语音数据,第四代码段,用来选择与输入第一数据输入机制的第一语音数据对应的第一语法的一部分,第五代码段,用来不激活第一语法,第六代码段,用来激活与第二类目关联的第二语法,第七代码段,用来激活与第二类目关联的第二数据输入机制,第八代码段,用来接收第二语音数据,和第九代码段,用来选择与输入第二数据输入机制的第二语音数据对应的第二语法的一部分。

实施方式可包括下列特征中的一个或多个。例如,第一数据输入机制可以是网页等图形用户界面中的字段,此时第二代码段可附加地用来以视觉方式指示该字段。

第一数据输入机制可以是录音。

第六代码段可附加地用来自动激活第二语法以响应于不激活第一语法。或者,第六代码段可附加地用来从用户处输入第二语法激活信号。此时第二语法激活信号可激活与数据输入的第二类目关联的第二数据输入机制。

第二语法激活信号可包括第三语音数据,并可包括第十代码段,用来将第三语音数据与第三语法的一部分匹配,其中第三语法无论第一语法或第二语法是否激活都保持活动。或者,第二语法激活信号可包括物理输入。

根据另一个一般方面,系统可包括可操作的第一存储区域,以存储第一语法,可操作的第二存储区域,以存储第二语法,该第二语法独立于第一语法,可操作的语法激活和不激活系统,以激活第一语法并同时确保第二语法不活动,可操作的语音识别系统,以输入说话数据并将该说话数据与第一语法的对应部分匹配,以及可操作的输入指示系统,以向用户指示第一语法的对应部分。

实施方式可包括下列特征中的一个或多个。例如,可包括可操作的第三存储区域,以存储第三语法,该第三语法独立于第一语法和第二语法并可操作来由激活和不激活系统激活,从而第三语法和第一语法在一段时间内都活动。

输入指示系统可在可操作的图形用户界面内包括字段,以显示第一语法的对应部分。语法激活和不激活系统可进一步可操作,以向用户输出语法标识,其标识第一语法和第二语法其中哪个当前是活动的。此时语法标识可包括视觉提示,其识别图形用户界面内的第一字段或第二字段,该第一字段和第二字段分别与第一语法和第二语法关联。

在附图和以下说明书中规定了一个或多个实施方式的细节。从说明书、附图和权利要求书中,其他特征将会变得更加清楚。

附图说明

图1是用来同步多种模式的集中系统的示例;

图2是图1的系统的示例实施方式;

图3是用来在语音网关请求VXML页面后同步浏览器的服务器推动处理的示例;

图4是用来在语音网关请求VXML页面后同步浏览器的浏览器拉动处理的示例;

图5是用来在浏览器请求HTML页面后同步语音网关的语音中断听者处理的示例;

图6是用来在浏览器请求HTML页面后同步语音网关的无输入标签处理的示例;

图7是用来同步多种模式的融合系统的示例;

图8是用来在浏览器输入后同步图7的系统中的浏览器和语音模式的处理的示例;

图9是用来在语音输入后同步图7的系统中的浏览器和语音模式的处理的一例;

图10是用来同步多种模式的代理系统的示例;

图11是用来在浏览器输入后同步图10的系统中的浏览器和语音模式的处理的示例;

图12是用来在语音输入后同步图10的系统中的浏览器和语音模式的处理的示例;

图13是用来与用来同步多种模式的代理系统中的同步控制器通信的设备的示例;

图14是使用多簇(multi-cluster)法来识别搜索字串的处理流程图;

图15是描述图14的处理的原理流程图;

图16是使用多级别、多参数级联法来执行对搜索字串的搜索的处理流程图;

图17是用来实施图16的处理的页面图;

图18是用来识别地址的流程图;

图19是用来输入地址信息的弹出向导的框图;

图20是用来输入电子邮件地址的格式的框图;

图21是用来输入网页地址的格式的框图;

图22是用来搜索与搜索字串匹配的一个或多个匹配的处理流程图;

图23是用来执行一个或多个上述处理的系统的框图;

图24是用来实施两个级别、动态语法的结构的框图;

图25是用来输入用户信息的网页;

图26是用来输入用户信息的网页。

具体实施方式

根据一实施方式,以下参考图2更充分地讨论,用户可使用多种模式来与WWW连接。例如,用户可使用浏览器并同时使用听觉输入和输出。可同步听觉接口和浏览器,从而允许用户选择是否使用浏览器或特别输入的语音。该实施可通过以对应数据来更新浏览器和语音网关两者而保持同步。例如,当用户点击一处链接时,浏览器将显示想要的网页,而语音网关将接收对应的基于语音的网页,从而用户可接收到对应于所显示页面的语音提示,而且用户可输入对应于所显示页面的语音输入。

集中实施方式

用来同步多种模式的系统100包括服务器系统110和同步控制器120,其经连接器130彼此通信,并包括在通用单元140中。服务器系统110和/或同步控制器120可经连接器130与发行/预定系统150通信。

系统100包括设备160。设备160包括第一网关165,第一接口170和第2接口175。第一网关165和第一接口170可经连接器180通信。系统100包括第2网关185,其经连接器190与第2接口175通信。第1和第2网关165、185两者或其中之一可经连接器130与服务器系统110和/或同步控制器120通信。第1和第2网关可分别经连接器194、196与发行/预定系统150通信。

“接口”指的是从用户处接收输入或向用户提供输出的组件。例如包括显示器、打印机、扬声器、麦克风、触摸屏、鼠标、滚动球、游戏杆、键盘、温度传感器、光传感器、光、热和空气质量传感器如烟传感器等和压力传感器。组件可以是例如硬件、软件或其组合。

“网关”指的是在用户输入/输出和某些其它数据格式之间转换的组件。例如,浏览器是网关,它将用户的点击和打字转换成超文本传送协议(HTTP)消息,并将接收到的HTML转换成用户可以理解的格式。

系统100可选择地包括第3网关198和第3接口199。第3网关可选择地经连接器130直接与单元140通信。第3网关198代表可用于不同实施方式的多种不同模式,以及这些模式的网关和接口可以彼此远离并远离其它网关和接口的事实。输入或输出的各种模式例如包括手动、视觉(例如显示或打印)、听觉(例如语音或警铃)、触觉、压强、温度和嗅觉。手动模式可包括例如键盘、硬笔、数字键盘、按钮、鼠标、触摸(例如触摸屏)和其它手工输入。

模态网关或模态接口指的是特别适宜输入和/或输出的具体模式的网关(或接口)。例如,浏览器是一个模态网关,其中模态包括主要的手动输入模式(键盘、鼠标、硬笔)、视觉的输出模式(显示器)和可能的听觉输出模式(扬声器)。于是,可在给定模态网关中呈现多种模式。因为系统可包括数种不同的模态网关和接口,故这种网关和接口被称作第一模态网关、第一模态接口、第二模态网关、以及第二模态接口等。

更广泛地,第一模态实体指的是特别适宜输入和/或输出的具体模式的组件。第一模态实体可包括例如第一模态网关或第一模态接口。

第一模态数据项目指的是由第一模态实体使用的数据项目。数据项目不必以第一模态实体所支持的模式之一来提供,而是由第一模态实体以所支持的模式之一来与用户连接。例如,若语音网关是第一模态网关,则第一模态数据项目可以是例如VXML页面。VXML自身不是语音数据,但可用来提供语音接口给用户。

参考图2,系统200是系统100的实施例。控制单元140是以含同步控制器(参见120)的网页服务器240来实施的。第一网关165和第一接口170分别是以浏览器265和浏览器接口270来实施的。第一网关185和第一接口175分别是以语音网关285和语音接口275来实施的。设备160是以可以是例如计算机或移动设备等设备260来实施的。发行/预定系统250与发行/预定系统150类似。连接器230、280、290、294和296与连接器130、180、190、194和196类似。

语音网关275可包括例如麦克风和扬声器。语音网关275可被用来经连接器290将语音命令发送至语音网关285并从语音网关285接收语音提示。命令和提示可使用例如网际协议(IP)连接上的语音电话服务(称作IP上的语音或VoIP)经连接器290传输。语音网关285可为到来的语音数据执行语音识别功能。语音网关285还可从网页服务器240接收VXML页面,该网页服务器240包括用来使用语音与用户连接的对话条目。语音网关285可将从用户处接收的识别词与对话条目相关,以确定如何响应用户的输入。可能的响应可包括提示用户进行附加输入或基于用户输入而执行命令。

浏览器265与语音网关285以类似的方式操作。然而,浏览器265使用HTML页面而非VXML页面。而且,浏览器265和用户经常使用例如键盘、鼠标和显示器等手动和视觉模式来通信,而非使用语音。尽管浏览器265能够使用听觉模式,但一般限于输出,例如经扬声器提供音乐。尽管系统200显示出为手动和语音输入、以及显示和语音输出而定做的实施方式,但也支持替代或附加的模式。

发行/预定系统250可充当例如用于所预定条目的路由器。例如,若预定了网关265、285,则发行/预定系统250可将消息从网页服务器240导入网关265、285。

系统200的操作将参考图3~6来说明,其绘出了可使用系统200来实现的处理的示例。说明了四个这种处理,它们全都在用户使用两个网关之一漫游至新页面后应对两个网关的同步。这四个处理是:服务器推动(server push)、浏览器拉动(browser pull)、语音中断听者(voice interrupt listener)和无输入标签。

参考图3,称作服务器推动的用于系统200的处理300包括浏览器265向发行/预定系统250预定(310)。预定可由网页服务器240将功能调用插入HTML页面来实现。当浏览器265接收和载入页面时,执行功能调用并将预定投寄至发行/预定系统250。预定包括返回调用指针或基准,其插入预定,从而在接收到所发行的消息时,发行/预定系统250可将该消息提供给浏览器265。在预定后,浏览器265接着收听发行/预定系统250的任何消息。在一实施方式中,浏览器265使用包括内容分栏、接收分栏和发送分栏的多分栏。发送分栏用来预定。接收分栏用来收听。而内容分栏是仅显示内容的分栏。预定(310)可在处理300中延迟,但是出现在浏览器265接收消息(见350)之前。

处理300包括语音网关285请求VXML页面(320)和网页服务器240将VXML页面发送至语音网关285(330)。注意到浏览器265和语音网关285是在正在说明的处理300的实施方式中被同步的网关。操作320和330例如可由用户将语音命令提供给语音网关285以令语音网关285漫游至新网页而开始的。网页服务器240可延迟发送VXML页面,直到处理300的后期。这种延迟有利于具有将所请求的VXML页面到达语音网关285与对应的HTML页面到达浏览器265更好的时间。

页面可以是例如内容页面或服务器页面。内容页面包括网页,即用户浏览网络时所通常看到或听到的。网页包括例如HTML和VXML页面。服务器页面包括例如Java服务器页面(JSP)等编程页面。服务器页面也可包括内容。

处理300包括网页服务器240,其将该消息发送至发行/预定系统250,以指示对应于发送至语音网关285的VXML页面的HTML页面(340)。网页服务器240可识别或可假设由于正在发送至语音网关285的VXML页面而使语音网关285和浏览器265不同步,或两个网关265、285将变得不同步。相应地,网页服务器240将该消息发送至发行/预定系统250(意图用于浏览器265)以将两个网关265和285带入同步。网页服务器240可通过使用例如HTTP投寄消息(其带有指示对应的HTML页面的嵌入的JavaScript命令)来发送该消息。网页服务器240不必指定消息所意图的特别的浏览器265(通过例如指定IP地址和端口号)。相反,网页服务器240发送为具体“话题”(通常是字串参数)而配置的消息。当由网页服务器240经发行/预定系统250发行消息时,该话题的全部预定者将接收到该消息。

网页服务器240可有多种途径来确定对应的HTML页面。例如,若VXML页面请求是等效于语音的点击链接,则VXML数据可包含对应的HTML页面的统一资源定位器(URL)。或者,例如,网页服务器240可访问含对应的VXML和HTML页面的URL的数据库,或若对应的页面已知具有类似的URL则执行URL转换。

本公开中所使用的“同步”指的是将2个实体带入同步或在2个实体间保持同步。为了公开的目的,当在给定时刻用户可使用两种模式与具体信息连接时就认为两个网关同步,该连接包括输入或输出。

在本公开中若两个个项目都可被不同的模态网关所使用以允许用户与具体信息连接,则这两个项目“对应”。例如,若HTML页面和VXML页面允许用户与某些相同信息连接,则HTML页面对应于VXML页面。若两个网关可使用项目以允许用户使用不同模态与项目中的信息连接,则该项目对应于其自身。

处理300包括由发行/预定系统250从网页服务器240接收消息和将消息发送至浏览器265(350)。发行/预定系统250可使用另一HTTP投寄消息以将消息发送至具体话题的全部预定者。在这种实施方式中,发行/预定系统250可利用返回调用指针或基准,其可从浏览器265插入预定。

处理300包括由浏览器265接收消息(360)。浏览器265假设处在流HTTP模式,意味着在浏览器265和发行/预定系统250之间HTTP连接保持打开。由于预定了浏览器265,故在发行/预定系统250和网页服务器240间HTTP连接也保持打开。网页服务器240通过发行/预定系统250反复指示浏览器265“保持有效”并继续显示当前的HTML页面。这些“保持有效”的通信由浏览器265的接收分栏以中断方式接收。当网页服务器消息到达以指示对应的HTML页面时,浏览器265在浏览器接收分栏中接收消息并执行嵌入的JavaScript命令。执行该命令通过将内容分栏重定向至另一HTML页面而更新浏览器265的内容分栏。

参考图4,称作浏览器拉动的用于系统200的处理400包括语音网关285请求VXML页面(410),和网页服务器240将所请求的VXML页面发送至语音网关285(420)。网页服务器240可延迟发送VXML页面,直到处理400的后期,以便例如所请求的VXML页面到达语音网关285与对应的HTML页面到达浏览器265具有更好的时间。

处理400包括网页服务器240,注意到语音网关285的状态已改变和确定浏览器265为了保持同步所需要的对应页面(430)。于是,网页服务器240跟踪网关265和285的状态。

处理400包括由浏览器265将请求发送至网页服务器240,从而进行任何更新(440)。该请求是刷新请求或更新请求,而浏览器265使用HTTP获取消息从发送分栏发送基于多发的请求。

处理400包括由网页服务器240发送响应以更新浏览器265(450)。一般地,网页服务器240通过将回复消息发送至浏览器接收分栏以指示“无变动”而响应于刷新请求。然而,当语音网关285请求了新的VXML页面时,网页服务器240将刷新回复中的JavaScript命令嵌入浏览器265,其当由浏览器265执行时将导致浏览器265进入同步状态。JavaScript命令例如指令浏览器265载入新的HTML页面。

处理400包括由浏览器265接收响应和执行嵌入命令(460)。在执行嵌入命令后,浏览器265内容分栏以对应的HTML页面来更新。该命令提供对应页面的URL。在另一实施方式中,网页服务器240发送标准响应以指示“无变动”,并指令浏览器265从网页服务器240重新载入当前的HTML页面。然而,网页服务器240也将命令嵌入网页服务器240上的当前HTML页面,而该命令指示对应的HTML页面。于是,当请求、接收和载入当前的HTML页面时,浏览器265将执行嵌入命令并更新HTML页面。

参考图5,称作语音中断听者的用于系统200的处理500包括语音网关285向发行/预定系统250预定(510)。在从网页服务器240接收的VXML页面中可嵌入函数调用,而该函数调用可由语音网关285执行以向发行/预定系统250预定。语音网关285可在各种时刻预定,例如,当语音网关285运行时或接收到VXML页面后。与浏览器相反,语音网关不使用分栏。预定(510)可在处理500中延迟,但是出现在语音网关285接收消息(见550)之前。

处理500包括由浏览器265从网页服务器240请求HTML页面(520)和网页服务器240将所请求的HTML页面发送至浏览器265(530)。这可以例如通过用户从浏览器265的“收藏夹”下拉菜单中选择新的URL而初始化。网页服务器240可延迟发送所请求的HTML页面(530),直到处理500的后期,以便例如将所请求的HTML页面到达浏览器265与对应的VXML页面到达语音网关285具有更好的时间。

处理500包括由网页服务器240,其将消息发送至发行/预定系统250以指示对应的VXML页面(540)。网页服务器240将HTTP投寄的消息发送至发行/预定系统250,而此消息包括语音网关285预定的话题。网页服务器240还将参数嵌入该消息,而非将JavaScript命令嵌入该消息。该嵌入参数指示对应的VXML页面。

处理500包括由发行/预定系统250将消息发送至语音网关285(550)。发行/预定系统250可使用另一HTTP投寄消息而简单地将消息导入所预定的语音网关285。

处理500包括由语音网关285接收消息(560)。语音网关285被假设处于流HTTP模式,收听消息并从发行/预定系统250接收多发的“保持有效”消息。当语音网关285从网页服务器240接收新消息时,语音网关285分析嵌入的参数并基于该参数而执行命令。该命令可以是例如来自网页服务器240的对应VXML页面的请求。

参考图6,称作无输入标签的用于系统200的处理600包括由网页服务器240将嵌入了无输入标签的VXML页面发送至语音网关285(610)。每个VXML页面可具有无输入标记标签(<no input>),其在语音网关285上指定了若语音网关285在指定时间量内未接收任何用户输入则运行的代码。JSP的URL被嵌入代码,而该代码令语音网关285下达HTTP获取命令以复原(retrieve)JSP。在每个发送至语音网关285的VXML页面内嵌入同样的无输入标签,而相应地,无输入标签每次指定同样的JSP。

处理600包括由浏览器265请求HTML页面(620)、由网页服务器240将所请求的HTML页面发送至浏览器265(630)和由网页服务器240注意到状态改变并确定对应的VXML页面(640)。网页服务器240用关于对应的VXML页面的信息来更新JSP的内容或由JSP指出的页面内容。这些信息可包括例如对应的VXML页面的URL。网页服务器240可延迟发送所请求的HTML页面(630),直到处理600的后期,以便例如所请求的HTML页面到达浏览器265与对应的VXML页面到达语音网关285具有更好的时间。

处理600包括由语音网关285等待指定量的时间和发送更新请求(650)。在由语音网关285上的代码确定指定量的时间流逝后,语音网关285发出JSP的HTTP获取命令。当在指定量的时间内未接收到用户输入时,用户可使用非语音模式输入,结果,语音网关285需要同步。

处理600包括由网页服务器240接收到更新请求和将对应的VXML页面发送至语音网关285(660)。JSP含有对应的VXML页面的标识,该标识是例如URL或其它类型的指针。网页服务器240以对应于当前HTML页面的VXML页面而向语音网关285发出HTTP投寄消息。

处理600包括由语音网关285接收对应的VXML页面(670)。当语音网关285接收和载入对应的VXML页面而浏览器265接收和载入HTML(见630)时,同步两个网关265和285。然而有可能两个网关265和285从未同步,因为用户未输入浏览器输入,此时语音网关285在指定量的等待期间未接收到语音输入后简单地重新载入当前的VXML页面。

处理600具有固有的延迟,因为它等待语音网关285以请求更新。因此语音网关285有可能在预定延迟量级上的一段时间内不同步。当语音网关285不同步时可有数种途径来应对接收到的语音输入。最初,若输入的环境指示网关265和285不同步,则语音输入可被语音网关285忽略。例如,若用户点击链接并接着说出用于可对应于新页面的对话的命令,则语音网关285将不具有正确的对话。然而假设有冲突,则网页服务器240可确定网关265和285不同步并给任一网关赋予优先权。优先权可例如基于先输入而赋予,或优先权可给予一个网关作为默认。

融合实施方式

参考图7,系统700包括网页服务器710,其与设备730上的同步控制器720通信。设备730还包括与浏览器接口270通信的浏览器735,和与语音接口275通信的语音模式系统740。

网页服务器710可以是例如经HTTP连接提供HTML和VXML页面的标准网页服务器。设备730可以是例如计算机、便携式个人数字助理(PDA)或与因特网通信的其它电子设备。在一实施方式中,设备730是便携式设备,其允许用户使用浏览器或语音输入和输出以与因特网通信。在这种实施方式中,网页服务器710不需要重新设计,因为全部同步和通信都是由同步控制器720来应对的。

语音模式系统740存储用户感兴趣的VXML页面,并允许用户使用语音输入和输出与这些VXML页面连接。VXML页面可随意地、以各种途径来更新或改变,例如在非高峰期间从WWW下载VXML页面。语音模式系统740是语音网关,但被称作语音模式系统以强调它是改良的语音网关。语音模式系统740执行用户语音输入的语音识别并使用语音接口275以仿真语音来呈现输出。

同步控制器720还在浏览器和语音模式之间执行同步。参考图8和图9,说明了用来同步浏览器735和语音模式系统740或者是浏览器接口270和语音接口275的两个处理。

参考图8,处理800包括由同步控制器720接收浏览器对新HTML页面的请求(810)。浏览器735可被设计成将请求发送至同步控制器720,或浏览器735可将请求发送至网页服务器710,而同步控制器720可阻止浏览器请求。

处理800包括由同步控制器720确定对应于所请求的HTML页面的VXML页面(820)。在特别的实施方式中,当用户通过以浏览器735点击链接而请求新HTML页面时,HTML数据还包括对应的VXML页面的URL。进而,浏览器735将所请求的HTML页面的URL和对应的VXML页面的URL两者发送至同步控制器720。同步控制器720简单地通过从浏览器265接收对应的VXML页面的URL而确定对应的VXML页面。同步控制器720也可通过例如执行查表、访问数据库、应用HTML URL和VXML URL间的转换或从网页服务器710请求信息而确定对应的页面。

处理800包括由同步控制器720将对应的VXML页面的标识传给语音模式系统740(830)。该标识可以是例如URL。在特别的实施方式中,语音模式系统740可阻止浏览器对新HTML页面的请求,或浏览器735可将请求发送至语音模式系统740。在两种情形中,语音模式系统740可确定对应的VXML页面,而非由同步控制器720确定对应的页面(820)并发送标识(830)。

处理800包括由同步控制器720将浏览器的HTML页面请求传给服务器710(840)。同步控制器720例如可使用HTTP请求。在同步控制器720阻止浏览器请求的实施方式中,则隐含地执行操作840。同步控制器720可延迟将浏览器请求发送至服务器(840),直到处理800的后期,以便例如所请求的HTML页面到达浏览器735与对应的VXML页面到达语音模式系统740(见860)具有更好的时间。

处理800包括由浏览器接收所请求的HTML页面(850)和由语音模式系统740访问对应的VXML页面(860)。一旦这两页被载入并可供用户交互之用,则两个模式将被同步。

参考图9,处理900包括由语音模式系统740接收用户对新VXML页面的请求(910)和访问所请求的VXML页面(920)。语音模式系统740从例如存储的VXML页面访问VXML页面。访问所请求的VXML页面(920)可被延迟以与操作960中浏览器接收对应的HTML页面相同时。

处理900包括由语音模式系统740将对VXML页面的请求传给同步控制器720(930),以及由同步控制器720确定对应的HTML页面(940)。在特别的实施方式中,语音模式系统740可确定对应的HTML页面,或可将对VXML页面的请求直接传给浏览器735,而由浏览器735确定对应的HTML页面。

处理900包括由同步控制器720从网页服务器710请求对应的HTML页面(950),以及由浏览器接收对应的HTML页面(960)。同步控制器720可使用例如HTTP获取命令。

代理实施方式

参考图10,系统1000包括与同步控制器1020和语音网关1025通信的网页服务器1010。同步控制器1020进一步与语音网关1025和设备1030上的数个组件通信。设备1030包括浏览器接口270、浏览器1040和语音接口275。浏览器1040与浏览器接口270和同步控制器1020通信。语音接口275与同步控制器1020通信。

网页服务器1010能够交付HTML和VXML页面。设备1030可以是例如为两种与WWW连接的模式而装备的计算机或便携式PDA。系统1000允许两种模式被同步,而系统1000不需要网页服务器1010被增强或重新设计,因为同步控制器1020独立于网页服务器1010并与之分离。

参考图11和12,说明了2个处理,用来同步浏览器1040和语音网关1025或者是浏览器接口270和语音接口275。两者都假设用户输入是对新页面的请求,尽管也可使用其它输入。

参考图11,处理1100包括由同步控制器1020接收浏览器对新HTML页面的请求(1110)。处理1100包括由同步控制器1020将HTML请求传给网页服务器1010(1120),以及确定对应的VXML页面(1130)。这三项操作1110~1130分别大致类似于操作810、840和820,除了同步控制器的位置(比较720与1120)。同步控制器1020可延迟将浏览器请求发送至网页服务器1010(1120),直到处理1100的后期,以便例如所请求的HTML页面到达浏览器1040与对应的VXML页面到达同步控制器1020(见1150)具有更好的时间。

处理1100包括由同步控制器1020通过语音网关1025而请求对应的VXML页面(1140)。同步控制器1020可有各种途径来请求页面。例如,同步控制器1020可将仿真语音请求发送至语音网关1025,或将命令发送至语音网关1025。

处理1100包括由同步控制器1020接收对应的VXML页面(1150)。语音网关1025接收所请求的VXML页面并将其发送至同步控制器1020。在另一实施方式中,同步控制器1020不接收VXML页面,而语音网关1025进行语音识别和与用户连接,而以同步控制器1020充当导向。

参考图12,处理1200包括由同步控制器1020从语音网关275接收语音输入(1210)以请求新VXML页面。处理1200包括由同步控制器(I)解析语音输入并将对新VXML页面的请求传给语音网关1025(1220),和(II)确定对应的HTML页面(1230)。在此实施方式中,同步控制器1020访问并存储当前的VXML页面,其允许同步控制器1020分析语音输入。如上述,具有当前的VXML页面还允许同步控制器1020确定“语音点击”事件的对应的HTML页面。若用户输入不是等效点击链接的语音,而是例如说话URL,则通过具有进行语音识别的能力,同步控制器能够分析URL和请求服务器提供对应的HTML页面的URL。

处理1200包括由同步控制器1020从服务器请求对应的HTML页面(1240),和由浏览器接收所请求的HTML页面(1250)。在另一实施方式中,同步控制器1020不确定对应的页面,而是请求网页服务器1010确定对应的页面并发送对应的页面。

在还一实施方式中,同步控制器1020不解析语音输入,而是仅将VoIP请求传给语音网关1025。若语音输入是对VXML页面的请求,则语音网关1025确定对应的HTML页面并将HTML页面的URL提供给同步控制器1020。

参考图13,设备1300包括同步控制器接口1310、浏览器1320、浏览器接口270和语音接口275。浏览器1320与浏览器接口270和同步控制器接口1310通信。同步控制器接口1310进一步与语音接口275通信。设备1300与设备1030类似,除了允许浏览器1040和语音接口275与同步控制器1020通信的功能被分离成同步控制器接口1310。在一实施方式中,设备1300是移动设备。这种移动设备比起若将同步控制器也实施于移动设备上要更小和更轻。进而,因为这种移动设备不包含同步控制器的功能,而是仅包括接口,所以移动设备能够利用同步控制器的改良而不需重新设计的优点。

附加的变化

以上每一实施方式都可以有两种以上的模式来使用。例如,存货、发货或其它数据可使用三种不同模式在仓库中访问,而一个或多个访问仓库数据的机器需要被同步。第一种模式可包括键盘输入。第两种可包括语音输入。而第三种可包括从扫描货盘上的条形码而输入,以便例如请求特别的记录。任何这些模式的输出可包括例如显示输出、语音输出或打印机输出。

已说明的处理已主要地就特别的系统而解释了。然而,各处理可与集中、融合、代理或其它类型的系统的实施方式来使用。

再参考图1,服务器系统110包括一个或多个设备,用来至少是暂时地存储可由一个或多个网关访问的信息。例如,网页服务器具有存储网页的存储设备。服务器系统110可包括多台存储设备,其相对于彼此位于本地或异地。服务器系统110可包括一个或多个存储设备,其与例如设备160或第二网关185等其它组件位于本地。在各种实施方式中,服务器系统110或同步控制器120不包含在单元140中。

同步控制器120在例如网关和/或接口等两个或多个设备之间维护或建立同步。同步控制器120的组件可相对于彼此位于异地或本地并可对于例如设备160、第2网关185或发行/预定系统150等系统100中的一个或多个其它组件位于本地。

发行/预定系统150指的是接收和发送消息的系统。在特别的实施方式中,发行/预定系统150仅从所预定的实体接收消息或将消息发送至所预定的实体——除了接收预定请求。

设备160可以是电子设备、光学设备、磁设备、或某些能够与用户和其它系统通信的其它类型的设备。例如包括计算机、PDA、服务器或置顶盒。

遍及本公开的连接130、180、190、194、196及其它连接可以是直接或间接连接,可能带有一个或多个介入设备。连接可使用例如有线、无线、电缆或卫星连接一个或多个介质。连接可使用各种技术或标准,例如模拟或数字技术、分组交换、码分多址(CDMA)、时分多址(TDMA)和带有通用分组无线服务(GPRS)的全球移动系统(GSM)。连接可使用各种已建立的网络,例如因特网、WWW、广域网(WAN)、局域网(LAN)、电话网络、广播网络、电视网络、有线网络和卫星网络。

处理300~600适宜各种变化,以下是数个示例,并可应用于不同于系统200的结构。各自包括一个网关的分离设备可通过跟踪分离设备的IP地址和端口号、或通过使设备预定发行/预定系统的同一主题而同步。例如,用户可操作第一台机器上的第一模态接口,并操作第二台机器上的第二模态接口。作为另一例,两个或多个用户可位于异地并想要被同步。位于异地的用户可操作同一模态接口或不同的模态接口。

作为初始化操作320或410而讨论的语音命令和作为初始化操作520或620而讨论的浏览器命令可以是导航命令或非导航命令。导航命令包括例如指定URL和输入主页、返回或向前命令。非导航命令包括例如文本输入、改变设置选项或定标命令。

由网关接收的包括命令和数据的任何输入可由语音网关或浏览器提供给服务器。例如,即使当语音网关不需要VXML页面时,语音网关也可将文本输入和其它输入提供给服务器,从而服务器可将输入供给浏览器,以使浏览器不仅相对于新网页还相对于文本输入等保持同步。

在各种实施方式中,在操作360、460或560中到网关的服务器的消息可包括(I)实际对应的HTML/VXML页面,(II)具有恢复对应页面的命令的URL,(III)识别对应页面的JSP的URL,(IV)与对应页面或识别对应页面的JSP相关的命令,和(V)重新载入当前页面的指示,服务在当前的页面中嵌入了恢复对应页面的命令。

当第一项目包括与第一数据相关的信息时,第一项目被说成是与第一数据相关。这种信息可包括例如第一数据自身、第一数据的地址或指向第一数据的某些其它指针、第一数据的编码和识别来自第一数据的特别信息的参数。第一数据可包括在本公开中说明的任何许多示例,以及例如某些其它数据的地址、由用户输入的数据和由用户输入的命令。

在将对应的输入或对应输入的指示发送至网关(340~50、450、540~550、660)时,服务器可发送例如命令或参数。命令可包括例如请求对应页面的JavaScript命令。参数可包括例如对应页面的URL。解析参数,确定命令,以及执行命令。例如,在操作660中,不是发送对应的VXML页面,而是服务器发送消息,其具有包括这样的参数:URL(对应的VXML页面的)和语音网关应请求由URL识别页面的指示。

在处理300~600中,网页服务器240被说明为执行各种行动。如前所述,网页服务器240包括同步控制器,以及由网页服务器240执行的许多行动的特征可以是由同步控制器来执行的。

参考图8和图9,操作810和910可被一般化为允许同步控制器720接收其它浏览器输入,以及允许语音模式系统740接收其它语音输入。该输入可包括例如命令、对新页面的请求、数据输入和定标请求。在操作910的一实施方式中,语音模式系统740对于征求用户的地址的VXML页面中的字段而接收用户的城市选择。接收到城市选择造成VXML移至用来选择州的对话输入。语音模式系统740可将此选择传给浏览器735,从而可更新用户的屏幕显示。

进而,语音模式系统740可以是语音网关。在这个实施方式中,语音网关不在本地存储任何VXML页面而是从网页服务器710请求它们。同步控制器720可阻止或控制语音网关请求,类似于同步控制器720可阻止或控制浏览器请求的方式。

同步控制器720的一个或多个功能可由浏览器735或语音模式系统740来执行。例如,浏览器735可将HTML页面请求发送至语音模式系统740,而语音模式系统740可确定对应的VXML页面。

如公开的实施方式的范围所示,同步控制器可位于系统内的各种位置。进而,同步控制器的组件功能可被分离并位于系统内的不同位置。这种灵活性允许系统的复杂性瞄准一个或多个特别的设备。通过例如从移动设备上去掉同步控制器的功能,可使移动设备更轻、更低廉和更能适应同步控制器中的技术增强。通过使用代理模态,移动设备仍去掉了同步控制器,故仍享受先前的益处。进而,通过使用代理模态,众多已有网页服务器不需要被重新设计,而同步控制器可允许多种类型的移动设备与同一服务器内部构造通信。使用如所述实施方式那样或根据其它原理而工作的发行/预定系统,也可实现客户设备具有最少安装时间的结构,从而客户设备尽量不改变。

同步控制器可由一个或多个组件构成,该一个或多个组件适宜执行例如在本公开的一个或多个实施方式中的同步控制器所描述的功能。组件可以是例如硬件、软件、固件或某种组合。硬件组件包括例如控制器芯片和芯片组、通信芯片、数字逻辑和其它数字或模拟电路。

所公开的实施方式的特征可以是提供同步机制。这种同步机制包括例如,(I)将消息发送至发行/预定系统,(II)将消息发送至浏览器,其可能带有新网页或JSP的URL,(III)通过例如更新USP来更新状态信息,(IV)向网关直接发送对应的页面,(V)从介质中或从具有页面的存储地点请求对应的页面,(VI)确定对应的页面,和(VII)请求确定对应的页面,并可能请求接收该确定。可由同步控制器、网页服务器、网关或另一适宜提供这种功能的组件来执行各种所列举的机制。

许多所公开的实施方式都定着重于WWW和因特网应用。然而所描述的特征可应用于各种通信环境、网络和系统。术语“页面”的使用不是意在限定,而是指可由特别的网关、接口或其它组件使用的表中的数据。

贯穿所描述的本公开的各种行动,例如接收、访问、提供、发送、请求、确定、传给和路由。这些术语和其它类似者意图在广义地理解。相应地,这些术语不限于直接行动,而是可通过一个或多个介质而行动。例如,页面可发送至网关、提供给网关或从网关接收,尽管页面可先通过控制器或发行/预定系统。作为另一示例,对应的页面可通过请求另一组件提供对应的URL来确定。

各种实施方式包括向用户提供对数据的访问的用户接口。这些用户接口可被设计成接收各种模式的输入并交付各种模式的输出。输入和输出模式的示例例如包括手动、视觉(例如显示或打印)、听觉(例如语音或警铃)、触觉、压强、温度和嗅觉。手动模式可包括例如键盘、硬笔、数字键盘、按钮、鼠标、触摸(例如触摸屏)和其它手工输入。某些实施方式特别适合移动应用,其优选硬笔或语音输入,而其输出以视觉方式呈现在屏幕上和/或由文本至语音或录音人类语音以听觉方式呈现。

各种实施方式还将结构性语法用于语音识别。结构性语法可允许更快速的识别,在对应的数据库中更快速的搜索项目,和/或由于减小了错误识别语音输入的可能性而造成增强的语音识别。

参考图14,使用多簇法来识别搜索字串的处理1400包括使用语音输入的输入搜索字串(1410)。搜索字串可代表例如用户想找到的数据库中的项目。例如,用户可将“Sony laptop superslim 505Z”输入计算机数据库的语音识别引擎以拉出关于该(假想)计算机模态的信息。如上所述,语法是围绕数据库条目而结构化的,包括实际数据库条目、或关键字等,还可能包括附加类目描述及其它词汇条目。

处理1400包括将所输入的搜索字串解析成为处了完整搜索字串之外的至少一个组成部分(1420)。完整搜索字串也称作组成部分。组成部分可以是单词或其它可识别符号,或词组或符号。搜索字串可被解析成为其全部组成部分,或可解析出单个组成部分。解析可通过识别词、符号或其它组成部分间的哑元(silence)来执行,而语音输入系统可需要这种哑元。解析还可在以更自然的交付方式而输入的语音输入上执行,没有组成部分间的明显停顿。

处理1400包括在至少两个组成部分上执行语音识别(1430)。解析(1420)可当执行语音识别(1430)的同时执行。例如,随着搜索字串从左向右被处理,例如,可识别组成部分并在识别后可被解析(1420)。两个组成部分之一可以是完整搜索字串。

处理1400包括为至少一个语音识别操作而确定语法中的结果解答空间(1440)。解答空间代表完整搜索字串的可能的匹配。例如,第一组成部分可以是搜索字串的第一个单词,例如“Sony”,并对应于话音识别语法中的一簇。由“Sony”定义的此簇可含有或许仅是语法(和对应的数据库)中数万条目之中的100个条目。那些100个条目可形成组成部分“Sony”的解答空间。

处理1400包括为使用操作1440中确定的解答空间的至少一个组成部分的语音识别操作(1430)而修改搜索空间(1450)。继续以上的示例,若完整搜索字串是“Sony laptop superslim 505Z”,则用来对完整字串执行语音识别的搜索空间可局限于仅包括那些含组成部分“Sony”的100个语法条目。

通过局限搜索空间,可在特别的实施方式中实现一个或多个优点。例如,通过局限搜索空间,可缩小搜索语法的复杂性和搜索词汇的大小,这可增强识别精度。进而,可增加识别处理的速度。

在一实施方式中,两个识别处理(1430)至少部分地并列执行,而识别“索尼”等较小的组成部分快于识别整个搜索字串。结果,完整搜索字串的识别处理开始于语法条目的整个搜索空间,并在操作1440中确定了更小组成部分的结果解答空间后被局限。其它实施方式串行地执行语音识别处理。例如,一实施方式对较小的组成部分执行语音识别,此后使用将较小组成部分的解答空间用作较大组成部分的搜索空间而对较大组成部分执行语音识别。

处理1400包括确定完整搜索字串的一个或多个匹配的列表(1460)。语音识别算法经常返回与结果关联的确信分值(confidence score)。这些确信分值可被用来例如给结果排序并将所选择的最高分值结果数返回给用户。

匹配的列表未必是好的匹配。各种实施方式可使用阈值确信分值以确定是否找到了好的匹配。若未找到好的匹配,则可提供各种选项。例如,(I)可提示用户输入多个信息,(II)通过例如使用同义词的识别组成部分、置换组成部分等,搜索字串若未被修改则可被自动修改,或(III)对于各组成部分可将关于解答空间大小和确信分值的信息呈现给用户,该信息可揭示出系统难于识别的组成部分。

参考图15,描绘处理1400的原理流程图1500包括搜索字串1510。搜索字串1510包括第一组成部分1520和第2组成部分1530。搜索字串1510可以是例如语音段。使用解析处理1540将搜索字串1510解析成为第一和第二组成部分1520和1530。语音识别处理1550是使用搜索空间1560对各组成部分1510、1520和1530并列地执行的。解析处理1540和语音识别处理1550可使用例如处理器或其它计算设备或设备的组合来实施。

第一组成部分1520的语音识别结果得到第一解答空间1570。假设,第一组成部分1520的语音识别在第二组成部分1530和完整字串1510的语音识别之前完成,则每个更晚的语音识别操作可限制于第一解答空间1570。

第二组成部分1530的语音识别结果得到第二解答空间1580。假设,第二组成部分1530的语音识别在完整字串1510的语音识别之前完成,则完整字串1510的语音识别可限制到第一解答空间1570和第二解答空间1580的重叠1590。完整字串1510的语音识别产生第三解答空间1595。

对小组成部分执行语音识别所需的时间可通过结构化语法而减少,从而数据库条目的通用组成部分(包括在语法内)与数据库条目的其它组成部分之前的搜索字串的组成部分(也包括在语法内)做比较。进而,常用组成部分可作为语法中分离的词汇条目而输入,尽管那些组成部分不构成完整的数据库条目。例如,“Sony”一词可输入词汇,尽管它指的不是单独的产品(数据库条目)。“Sony”组成部分与含“Sony”一词并对应于完整的数据库条目的全部语法条目关联。对于例如单词“laptop”、以及双词组成部分“Sonylaptop”也是同理。这种结构可允许相对快速地识别组成部分“Sony laptop”和相应地局限识别完整搜索字串“Sony laptop superslim 505Z”的搜索空间。

注意到在处理1400中确定的匹配的列表(1460)可返回这样的匹配:其与匹配所输入的搜索字串的实际数据库条目对应。相应地,在这种实施方式中,语音识别处理可有效地同时执行数据库搜索。例如,每个所列的匹配可充当数据库的索引,以便容易检索对应的数据库条目。

然而其它实施方式可允许搜索字串包括不是数据库一部分的组成部分。例如,用户可被允许输入计算机的价格范围。在此例中,语法可包括并能够识别以确定格式输入的价格范围。语法可有各种途径来结构化,以支持识别这种搜索字串。例如,若用户仅输入价格范围,则语音识别引擎可识别搜索字串并将其与满足价格范围的一组数据库条目关联。或者,语音识别引擎可通过例如返回具有该价格范围内的计算机(假设为最终搜索的数据库内容的计算机)的制造商列表而询问用户输入多个数据。若用户输入例如制造商等附加信息,则语音识别系统可使用该附加信息来局限解答空间。若用户输入足够的信息,则语法可被结构化,以允许语音识别系统对于各种可识别的价格范围来确定语法条目,其用于满足所输入的价格范围和搜索字串的其它组成部分的实际产品(对应于实际数据库条目)。然后这些条目呈现给用户。

处理1400还可应用于不使用语音输入的系统。例如其它输入模式可需要与已述的识别处理类似方式而执行的识别处理。

参考图16,使用多级别、多参数级联法来执行搜索字串的搜索的处理1600包括为第一参数提供第一组选项(1610)。例如,到计算机数据库的用户接口可提供制造商列表作为第一组选项,而第一参数是制造商。例如在显示器上或通过语音响应系统而提供第一组选项。

处理1600包括输入从第一组选项中选择的第一参数(1620)。继续以上的示例,用户可从操作1610提供的列表中选择和输入制造商。用户可通过使用例如硬笔、键盘、触摸屏或语音输入而输入第一参数。

处理1600包括基于第一参数而为第二参数提供第二组选项(1630)。继续以上的示例,用户接口可提供产品类型的列表,包括例如台式机、膝上机和掌上机,其可从在操作1620中输入的制造商中获得。

处理1600包括输入从第二组选项中选择的第二参数(1640)。继续以上的示例,用户可从操作1630提供的列表中选择和输入产品类型。

处理1600包括基于第一和第二参数而提供匹配的列表(1650)。继续以上的示例,匹配的列表可包括数据库中由所输入的制造商制造并且是所输入产品类型的全部计算机。例如,匹配的列表可包括全部索尼膝上机。

处理1600可被用来例如不是让用户输入一次性的、完整搜索短语。处理1600呈现了一组结构化搜索或从例如下拉列表中的选择。第1和第二参数可认为是搜索字串的一部分,而累积的搜索字串产生了在操作1650中提供的匹配列表。数据库可被结构化为允许基于在操作1610和1630中提供的参数而进行有效的搜索。此外,在语音输入应用中,通过结构化数据输入,可简化每个参数的语法和词汇,于是极大地增加了识别精度和速度。

实施方式可呈现多个参数和选项组,而这些可被组织成级别。在处理1600中,一个参数用在两个级别的每一处。然而,例如多个参数可呈现在第一级别,而确定为附加的多个参数所呈现的选项列表的两个条目处于第二级别,而全部条目都确定匹配列表。这种参数可包括例如制造商、品牌、产品类型、价格范围和产品类型中产品的各种特征。计算机的特征例如包括处理器速度、随机访问存储器的量、硬盘的存储容量、视频卡速度和存储器和服务合同选项。

参考图17,用来实施处理1600的页面1700的图片包括第一级别1710和第二级别1720。第一级别1710提供产品的第一参数1730,其带有包括一组选项的对应的下拉菜单1740。下拉菜单1740中的选项组可包括例如台式机、膝上机和掌上机。第二级别1720提供品牌的第二参数1750,其带有包括选项组的对应的下拉菜单1760。下拉菜单1760中的选项组假设满足由用户在下拉菜单1740中输入的产品参数并可包括例如索尼、惠普/康柏、戴尔和IBM。假设在下拉菜单1740中选择了“膝上”,则下拉菜单1760仅包括销售膝上机的品牌(制造商)。

页面1700还包括与在第一级别1710和第二级别1720中输入的参数匹配的模态的类目1770。匹配模态可使用下拉菜单1780来观看。如页面1700所示,全部搜索字串信息以及结果可呈现在单个页面中。页面1700也可在单个屏幕中呈现,但也可使用其它单页面实施方式,例如跨越多屏幕长度并需要滚动以观看全部信息的网页。

参考图18,用来识别地址的处理1800包括确定地址的第一部分的选项列表(1810)。该地址可以是例如街道地址或因特网地址,其中因特网地址包括例如电子邮件地址和网址。若地址是街道地址,则第一部分可以是例如州标识。

处理1800包括对于地址的第一部分提示用户(1820)。该提示可例如简单地包括输入信息的请求,或它可包括选项列表。处理1800包括接收地址的第一部分(1830)。若第一部分是以听觉方式接收的,则处理1800包括执行地址的第一部分的语音识别(1840)。

处理1800包括基于接收到的第一部分而确定地址的第二部分的选项列表(1850)。继续以上的示例,第二部分可以是例如城市标识,而选项列表可包括例如仅在接收到的州标识所识别的州中的那些城市。通过在输入街道地址时倒转州和城市的通常次序,语音识别系统可简化城市标识的相关语法和词汇,从而有助于增强的语音识别精度和速度。

处理1800包括对于地址的第二部分提示用户(1860)。同样,该提示不需要包括选项列表。处理1800包括接收地址的第二部分(1870)。若第二部分是以听觉方式接收的,则处理1800包括执行地址的第二部分的语音识别(1880)。

处理1800随后可继续确定地址的后继部分的选项列表。继续以上的示例,邮政编码的选项列表可基于接收到的城市标识所识别的城市而确定。可从识别的城市中可用的邮政编码中确定这种列表。城市或邮政编码中的城市街道也可被确定。进而,国家信息可在得到州信息之前得到。

如以上示例和处理1800所示,每一随后地址信息的可能范围可通过以普通实行的倒转次序输入数据而局限,即,通过输入地理上大的类目到地理上小的类目的数据。若考虑到多个国家,则使用倒转次序的影响会更大,因为街道的标准指定随语言而异。

处理1800可有数种途径来提示用户。例如,可按特别的次序来提示用户输入地址信息,允许系统随着地址信息的输入而处理地址信息并备好选项列表。国家、州或省、城市、邮政编码、街道等输入字段可从上向下呈现在屏幕上或以话音输出而顺序地呈现。

参考图19,表示另一种途径来在处理1800中提示用户。系统可在设备屏幕上使用弹出向导1900来询问用户输入具体的地址信息。进而,系统可保存地址信息的正常次序,但是使用视觉提示例如提示用户以特别的次序来输入信息。视觉提示可包括例如给输入字段的边缘或标题增亮或着色。

处理1800可应用于使用语音模式或另一种模式而输入的数据。在每次提示时输入数据后,并在识别出使用了语音输入后,可搜索地址数据库以确定下一地址字段的选项列表。这种系统允许向前搜索基础上的数据库,而不是等待输入全部地址信息。这种系统还允许使用下拉菜单的向导输入,并在有或没有向导输入时,若用户做出了对于地址的特别部分的无效输入则在输入时刻警告用户。

处理1800还可应用于其它地址,不仅是街道地址或其它部分。例如,处理1800可应用于包括例如电子邮件地址和网址。

参考图20,用来输入电子邮件地址的格式2000包括使用用户标识2010、服务器标识2020和域标识2030。分离用户标识2010和服务器标识2020的“@符”、以及分离服务器标识2020和域标识2030的“圆点”可以是隐含和自动插入的,即毋需人介入。

在一实施方式中,域标识2030是由于少量可供此字段使用的选项而首先输入的。服务器标识2020的选项列表可基于所输入的域而生成。例如若对于域输入了“com”,则服务器标识2020的选项列表可包括例如全部“fortune 100”公司和25个访问最频繁的商业网址。对于“gov”、“net”及其它域标识2030可生成类似列表。用户标识2010的选项列表可包括例如常用姓氏和名字及其它习惯,例如名字词首后面跟着姓氏。

参考图21,用来输入网址的格式2100包括使用网络标识2110、服务器标识2120和域标识2130。分离三个标识2110、2120和2130的两个“圆点”可以是隐含和自动插入的。网络标识可从例如“www”、“www1”、“www2”中选择。

参考图22,用来搜索一个搜索字串的匹配的处理2200包括至少访问搜索字串的第一部分(2210)。这种访问可包括例如接收语音输入、硬笔输入或菜单选择,并且第一部分可包括整个搜索字串。

处理2200包括为搜索字串的第一部分的匹配搜索第一搜索空间(2220)。第一搜索空间可包括例如语音识别引擎的语法中的搜索空间、数据库中的搜索空间或在下拉菜单中呈现给用户的选项列表中的搜索空间。搜索可包括例如比较文本输入、语音波形、或代表向量量化波形的码簿中条目的代码。

处理2200包括基于在第一搜索空间搜索的结果而限制第二搜索空间(2230)。第二搜索空间可以例如类似于或等同于第一搜索空间。限制可包括例如,削减可受检查的可能语法或词汇条目、削减可受检查的可能数据库,或削减可为搜索字串的参数显示或供其使用的一些选项。以及进行削减可能性或选项,可使得例如排除不满足搜索字串的第一部分的可能性或选项。

处理2200包括至少访问搜索字串的第二部分(2240)和在受限的第二搜索空间为搜索字串的第二部分的匹配搜索(2250)。访问搜索字串的第二部分例如可包括接收语音输入、硬笔输入或菜单选择,而第二部分可包括整个搜索字串。在第二搜索空间搜索例如可与在第一搜索空间搜索的类似途径执行。如本段落和先前段落的讨论所建议的,处理2200意图在覆盖全部公开的处理。

参考图23,用来实施一个或多个以上处理的系统2300包括计算设备2310、位于计算设备2310内部的第一存储器2320、位于计算设备2310外部的第二存储器2330和位于计算设备2310外部的识别引擎2340。计算设备可以是例如台式机、膝上机和掌上机,或其它类型的能够执行一个或多个所述处理的电子设备。第1和第二存储器2320和2330可以是能够至少暂时存储数据或指令的永久或暂时存储器。识别引擎2340可以是语音识别引擎或另一输入模式的识别引擎。第二存储器2330和识别引擎2340被表示成外接至或可选择地连接至计算设备2310。然而,第二存储器2330和识别引擎2340也可集成在计算设备2310内或从系统2300略去。

可以做出以上实施方式的各种修改。例如,所公开的处理的操作不必以所示次序来执行。

在以上说明中,给出了数种允许同步第一模态网关和第二模态网关的示例,从而用户可在给定时刻使用任一或两个网关以得到给定信息或执行具体的行动。图1、7和10描绘了数种示例,并说明了其它示例。

当利用这种系统的网关同步能力时,用户可能执行的一个行动是选择网页,其链接至当前观看的网页,其中执行此选择例如可通过使用VXML页面的语音输入,或通过使用例如硬笔或鼠标来点击嵌入HTML页面的HTML链接。

用户可能执行的另一行动是将文本输入例如单个网页上的表内的多字段。例如,如上所述,图3~6中的各种处理300~600包括用来实施与特别的页面相关的命令。更具体地,在图8和图9中,各种操作810和910允许图7的同步控制器720接收浏览器输入和语音输入等输入,其中输入可包括数据输入和/或用来移至新字段的定标请求。在以上给出的关于操作910的示例中,语音模式系统740对于VXML页面中的字段而接收用户的城市选择,再接着将定标移至州选择的字段。

文本可使用例如通过键盘的手动输入或经与对应的和同步的VXML页面关联的语音识别系统而输入。图19~21的讨论说明了这种文本输入的示例;更具体地,这些附图和相关文本和示例说明了这样的技术:例如当对搜索字串执行语音识别时有选择地局限语法,或随着输入多个相关条目而逐步地局限语法。通过这些及其它技术,使用语音识别的文本输入可就速度和精度而言得以改进。

在以上讨论中允许的、用来将文本或其它信息输入表内多字段的另一技术是具有两个级别、分级式动态语法。在此技术中,有多个级别和情形的独立、分离的语法,而非更大和/或相互依赖的语法的多个子集。

图24是用来实施两个级别、动态语法的结构框图。在图24中,第一级别包括全局语法2410。全局语法2410包括由操作设备或软件识别的语音命令的词汇,无论系统或页面的当前状态如何。例如,即使当用户当前将文本信息输入页面上的多个字段之一,全局语法仍持续可操作来识别例如页面上其它字段的名称、用来激活浏览器的命令(例如,“返回”、“主页”、或“刷新”)和诸如“重启”设备命令的语音输入基准。

在图24中,第二级别包括多个具体语法。例如,第二级别可包括用来识别输入城市名的语音命令的第一语法2420,用来识别输入州名的语音命令的第二语法2430,用来识别输入街道名的语音命令的第三语法2440。

在图24中,应当理解语法2410~2440是分离、离散、独立的语法。具有独立的语法的一个结果是给定的单词可在多个语法中复制,从而增加总存储需求。例如,语法2420可包括用来标识城市名华盛顿DC的“Washington”一词。语法2430还可包括标识华盛顿州的“Washington”一词。最终,语法2440在用户住在“Washington street”的情形中可包括“Washington”一词。

相反,其它语音识别系统可具有单个、大型语法(或多个依赖的语法),其中“Washington”一词被存储一次并当检测到“Washington”一词时输入任一当前活动的字段。而且,这种系统可能比较不善长识别当存在同时活动的多个用于语音输入的字段时的语音输入。例如,姓氏和名字的字段可都存在于软件应用上的表中,并可同时活动以显示识别“Davis”(其可以是例如“名字”和“姓氏”两字段内的有效选择)等语音输入的结果。在识别语法中具有类似数据的这种字段可竞争语音识别的结果,并因此增加不精确的可能性。

于是图24的多级别语法可提供语音识别的增加的速度和/或精度。此速度和/或精度改进是缘于例如这一事实:即在第二级别的语法之中仅有一个在特别的时间是活动的。因此必须由语音识别系统搜索的词汇大小可被极度地缩小。对于较小的词汇,识别精度一般地增加了,而处理时间一般地减少了。

而且,语音识别系统总是知晓哪个语法(字段)是活动的,因而不需要相对于给定字段而明辨所识别的单词。例如,在识别了华盛顿一词的其它系统中,系统必须确定应将所识别的单词插入哪一字段,例如城市、州或地址。若使用图24的多级别、动态语法,则可避免这一(些)附加步骤。

各种语法2410、2420、2430和2440可存储于存储区域2450内。存储区域2450可代表个数据库或介质,或多个数据库(介质)。语法可存储于例如单个文件或多个文件中。

可提供语法激活和不激活系统2460以按需要打开第二级别语法2420、2430或2440之一,并同时确保其它2个被不激活。语音识别系统2470与用户交互,以便输入语音或说话数据,并将该语音或说话数据与当前活动的语法的单词或其它部分匹配。而且,输入指示系统2480向用户证明哪个语法是活动的,以及证明由语音识别系统2470执行的匹配操作的结果。

应当理解存储区域2450、语法激活和不激活系统2460、语音识别系统2470和输入指示系统2480可在单台设备或多台设备上实施。例如,图24的一个或多个器件可置于服务器系统和/或移动计算设备等本地系统。例如,输入指示系统2480可以是网页等图形用户界面上的表内的字段,如上述,从而由用户输入并由语音识别系统2470识别的语音数据可显示给用户。输入指示系统2480可以是录音或计算机生成的向用户重复所识别的单词的语音,例如可用于电话输入系统。

图25表示在便携式设备上观看的、用来输入关于用户的信息的网页2500。在图25中,页面2500可以是包括名字字段2510、姓氏字段2520、州字段2530、邮政编码字段2540、城市字段2550和街道地址字段2560的VXML页面。页面2500还描绘了多个按钮2570,其意图在描绘多个现有网页命令、例如“刷新”、“主页”、“收藏夹”等。

于是,根据以上说明,用户可使用各种技术来激活名字字段2510。例如,能够由包括全局语法2410的第一级别语法识别的语音命令选择字段2510。或者,若页面2500与HTML(和/或JSP)页面同步,如上所述,则可使用硬笔、鼠标或其它机械输入来选择字段。作为另一示例,由于字段是表中的首字段可自动增亮该字段。

在任何情形中,一旦增亮了字段2510,则激活对应于该字段的第二级别语法,而对于输入字段2510的条目仅识别来自该语法的单词。这样一来,语音识别系统2470将具有严格受限的词汇,从中可选择名字,从而可极大地改进选择名字的速度和/或精度。

图26示出再次便携式设备上观看的、用来输入关于用户的信息的网页2600。页面2600与页面2500具有基本相同的字段,然而,页面2600却描绘了增亮名字字段2610的视觉提示。该视觉提示充当用来向用户指示哪个语法当前活动的技术。这种视觉提示的各种示例可包括字段内的光标、字段的增亮、字段的具体颜色,或其它指示该特别的字段及其关联语法活动的技术。

在一实施方式中,字段2610作为页面2600上的首字段而自动增亮。在将名字填入字段2610后,通过页面2600,视觉提示可自动移至字段2520。如图所示,输入各种字段的条目可得到下拉菜单的辅助,像在字段2530和2550中那样,或可毋需下拉菜单的辅助而填入,像在字段2510(2610)、2520、2540和2560中那样。

由于存在诸如全局语法2410的第一级别语法,即使当激活了特别的一个第二级别语法时仍保持活动,则用户或可单独地选择字段,这只需简单地为所选择的一个(当前)不激活语法而提供激活信号。例如,激活信号可涉及简单地表示与被激活语法关联的想要字段的名字。而且,如早已注意到的,页面2500/2600的多模态同步允许用户利用涉及字段的物理选择(例如使用硬笔或鼠标等物理工具)的激活信号,即使该页面包括或关联于VXML页面/数据。

或者,全局语法2410可包括在独立语法2420、2430和2440内,特别是在全局语法2410比较小的情形中。在此例中,总存储器需求可能会增加。然而,可消除对于2个处理(即2个语法)同时运行的需要。

应当理解图24~26的实施方式特别有利于移动计算设备,其中计算/处理资源相对优良。而且,通常在小型移动计算设备中,文本输入很笨拙、困难或不存在,从而快速、精确的语音输入,特别是对输入网页的表,将会非常有用和有利。

尽管以上动态语法的实施方式已相对于诸如HTML、VXML或JSP等网页而讨论了,但它们事实上兼容于许多或全部以上讨论的各种实施方式。而且,实施方式可兼容于非网页或非因特网相关的实施方式。例如,图24的多级别、动态语法可用于几乎任何应输入分立数据的软件应用。

事实上,任何欲输入的数据和语音输入是可能的应用,都可受益于上述实施方式。例如,参考以上的内容,基于电话的信息输入可有助于这种情形:即录音或计算机化的语音表示字段作为名字等数据输入的提示,然后从与该字段关联的独立、分立的语法中选择。

而且,尽管以上说明了两个级别语法,但实施方式也可包括三个(或多个)级别语法。例如,具有两个分栏的网页可具有用于每个分栏的一组独立语法、用于每个分栏的全局语法和用于网页浏览器或其它应用(例如用于运行网页浏览器的设备的操作系统)的全局语法。

已说明的实施方式可整体或部分地以硬件或软件来实施。电路或设备可与其上存储了指令的存储介质相关联,并且电路、设备和/或存储介质可与可操作而实施指令的处理器相关联。

已说明一些实施方式。然而,应当理解可以进行各种修改。例如,已说明的示例可有各种未讨论的途径来组合或修改。相应地,其它实施方式也处于所附权利要求书的范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号